diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json index 5bd07057..d84ee324 100644 --- a/.claude-plugin/plugin.json +++ b/.claude-plugin/plugin.json @@ -1,17 +1,24 @@ { "name": "claude-mem", - "version": "10.4.1", - "description": "Persistent memory system for Claude Code - seamlessly preserve context across sessions", + "version": "11.0.1", + "description": "Memory compression system for Claude Code - persist context across sessions", "author": { "name": "Alex Newman" }, "repository": "https://github.com/thedotmack/claude-mem", "license": "AGPL-3.0", "keywords": [ + "claude", + "claude-code", + "claude-agent-sdk", + "mcp", + "plugin", "memory", - "context", - "persistence", - "hooks", - "mcp" - ] + "compression", + "knowledge-graph", + "transcript", + "typescript", + "nodejs" + ], + "homepage": "https://github.com/thedotmack/claude-mem#readme" } diff --git a/.codex-plugin/plugin.json b/.codex-plugin/plugin.json new file mode 100644 index 00000000..e9107755 --- /dev/null +++ b/.codex-plugin/plugin.json @@ -0,0 +1,43 @@ +{ + "name": "claude-mem", + "version": "11.0.1", + "description": "Memory compression system for Claude Code - persist context across sessions", + "author": { + "name": "Alex Newman", + "url": "https://github.com/thedotmack" + }, + "homepage": "https://github.com/thedotmack/claude-mem#readme", + "repository": "https://github.com/thedotmack/claude-mem", + "license": "AGPL-3.0", + "keywords": [ + "claude", + "claude-code", + "claude-agent-sdk", + "mcp", + "plugin", + "memory", + "compression", + "knowledge-graph", + "transcript", + "typescript", + "nodejs" + ], + "interface": { + "displayName": "claude-mem", + "shortDescription": "Persistent memory and context compression across coding sessions.", + "longDescription": "claude-mem captures coding-session activity, compresses it into reusable observations, and injects relevant context back into future Claude Code and Codex-compatible sessions.", + "developerName": "Alex Newman", + "category": "Productivity", + "capabilities": [ + "Interactive", + "Write" + ], + "websiteURL": "https://github.com/thedotmack/claude-mem", + "defaultPrompt": [ + "Find what I already learned about this codebase before I start a new task.", + "Show recent observations related to the files I am editing right now.", + "Summarize the last session and inject the most relevant context into this one." + ], + "brandColor": "#1F6FEB" + } +} diff --git a/.github/workflows/summary.yml b/.github/workflows/summary.yml index 731e3ca5..a4afa9e1 100644 --- a/.github/workflows/summary.yml +++ b/.github/workflows/summary.yml @@ -27,7 +27,7 @@ jobs: - name: Comment with AI summary run: | - gh issue comment $ISSUE_NUMBER --body '${{ steps.inference.outputs.response }}' + gh issue comment "$ISSUE_NUMBER" --body "$RESPONSE" env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} ISSUE_NUMBER: ${{ github.event.issue.number }} diff --git a/.npmrc b/.npmrc new file mode 100644 index 00000000..521a9f7c --- /dev/null +++ b/.npmrc @@ -0,0 +1 @@ +legacy-peer-deps=true diff --git a/docs/SESSION_ID_ARCHITECTURE.md b/docs/SESSION_ID_ARCHITECTURE.md index 3a25cc4b..3570dcf7 100644 --- a/docs/SESSION_ID_ARCHITECTURE.md +++ b/docs/SESSION_ID_ARCHITECTURE.md @@ -23,14 +23,14 @@ Claude-mem uses **two distinct session IDs** to track conversations and memory: ↓ ┌─────────────────────────────────────────────────────────────┐ │ 2. SDKAgent starts, checks hasRealMemorySessionId │ -│ const hasReal = memorySessionId !== null │ +│ const hasReal = !!memorySessionId │ │ → FALSE (it's NULL) │ │ → Resume NOT used (fresh SDK session) │ └─────────────────────────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────────────────────────┐ │ 3. First SDK message arrives with session_id │ -│ updateMemorySessionId(sessionDbId, "sdk-gen-abc123") │ +│ ensureMemorySessionIdRegistered(sessionDbId, "sdk-gen-abc123") │ │ │ │ Database state: │ │ ├─ content_session_id: "user-session-123" │ @@ -38,45 +38,43 @@ Claude-mem uses **two distinct session IDs** to track conversations and memory: └─────────────────────────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────────────────────────┐ -│ 4. Subsequent prompts use resume │ -│ const hasReal = memorySessionId !== null │ -│ → TRUE (it's not NULL) │ +│ 4. Subsequent prompts may use resume │ +│ const shouldResume = │ +│ !!memorySessionId && lastPromptNumber > 1 && !forceInit│ +│ → TRUE only for continuation prompts in the same runtime │ │ → Resume parameter: { resume: "sdk-gen-abc123" } │ └─────────────────────────────────────────────────────────────┘ ``` ### Observation Storage -**CRITICAL**: Observations are stored with `contentSessionId`, NOT the captured SDK `memorySessionId`. +**CRITICAL**: Observations are stored with the real `memorySessionId`, NOT `contentSessionId`. ```typescript -// SDKAgent.ts line 332-333 -this.dbManager.getSessionStore().storeObservation( - session.contentSessionId, // ← contentSessionId, not memorySessionId! - session.project, - obs, - // ... -); +// SessionStore.ts +storeObservation(memorySessionId, project, observation, ...); ``` -Even though the parameter is named `memorySessionId`, it receives `contentSessionId`. This means: +This means: - Database column: `observations.memory_session_id` -- Stored value: `contentSessionId` (the user's session ID) +- Stored value: the captured or synthesized `memorySessionId` - Foreign key: References `sdk_sessions.memory_session_id` -The observations are linked to the session via `contentSessionId`, which remains constant throughout the session lifecycle. +Observation storage is blocked until a real `memorySessionId` is registered in `sdk_sessions`. +This is why `SDKAgent` persists the SDK-returned `session_id` immediately through +`ensureMemorySessionIdRegistered(...)` before any observation insert can succeed. ## Key Invariants ### 1. NULL-Based Detection ```typescript -const hasRealMemorySessionId = session.memorySessionId !== null; +const hasRealMemorySessionId = !!session.memorySessionId; ``` -- When `memorySessionId === null` → Not yet captured -- When `memorySessionId !== null` → Real SDK session captured +- When `memorySessionId` is falsy → Not yet captured +- When `memorySessionId` is truthy → Real SDK session captured ### 2. Resume Safety @@ -86,12 +84,20 @@ const hasRealMemorySessionId = session.memorySessionId !== null; // ❌ FORBIDDEN - Would resume user's session instead of memory session! query({ resume: contentSessionId }) -// ✅ CORRECT - Only resume when we have real memory session ID +// ✅ CORRECT - Only resume for a continuation prompt in a valid runtime query({ - ...(hasRealMemorySessionId && { resume: memorySessionId }) + ...( + !!memorySessionId && + lastPromptNumber > 1 && + !forceInit && + { resume: memorySessionId } + ) }) ``` +`memorySessionId` is necessary but not sufficient. +Worker restart and crash-recovery paths may still carry a persisted ID while forcing a fresh INIT run. + ### 3. Session Isolation - Each `contentSessionId` maps to exactly one database session @@ -103,7 +109,8 @@ query({ - Observations reference `sdk_sessions.memory_session_id` - Initially, `sdk_sessions.memory_session_id` is NULL (no observations can be stored yet) - When SDK session ID is captured, `sdk_sessions.memory_session_id` is set to the real value -- Observations are stored using `contentSessionId` and remain retrievable via `contentSessionId` +- Observations are stored using that real `memory_session_id` +- Queries can still find the session from `content_session_id`, but observation rows themselves stay keyed by `memory_session_id` ## Testing Strategy @@ -116,8 +123,8 @@ The test suite validates all critical invariants: ### Test Categories 1. **NULL-Based Detection** - Validates `hasRealMemorySessionId` logic -2. **Observation Storage** - Confirms observations use `contentSessionId` -3. **Resume Safety** - Prevents `contentSessionId` from being used for resume +2. **Observation Storage** - Confirms observations use real `memorySessionId` values after registration +3. **Resume Safety** - Prevents `contentSessionId` and stale INIT sessions from being used for resume 4. **Cross-Contamination Prevention** - Ensures session isolation 5. **Foreign Key Integrity** - Validates cascade behavior 6. **Session Lifecycle** - Tests create → capture → resume flow @@ -141,14 +148,14 @@ bun test --verbose ### ❌ Using memorySessionId for observations ```typescript -// WRONG - Don't use the captured SDK session ID -storeObservation(session.memorySessionId, ...) +// WRONG - Don't store observations before memorySessionId is available +storeObservation(session.contentSessionId, ...) ``` ### ❌ Resuming without checking for NULL ```typescript -// WRONG - memorySessionId could be NULL! +// WRONG - memorySessionId alone is not enough if (session.memorySessionId) { query({ resume: session.memorySessionId }) } @@ -166,14 +173,14 @@ const resumeId = session.memorySessionId ### ✅ Storing observations ```typescript -// Always use contentSessionId -storeObservation(session.contentSessionId, project, obs, ...) +// Only store after a real memorySessionId has been captured or synthesized +storeObservation(session.memorySessionId, project, obs, ...) ``` ### ✅ Checking for real memory session ID ```typescript -const hasRealMemorySessionId = session.memorySessionId !== null; +const hasRealMemorySessionId = !!session.memorySessionId; ``` ### ✅ Using resume parameter @@ -182,7 +189,12 @@ const hasRealMemorySessionId = session.memorySessionId !== null; query({ prompt: messageGenerator, options: { - ...(hasRealMemorySessionId && { resume: session.memorySessionId }), + ...( + hasRealMemorySessionId && + session.lastPromptNumber > 1 && + !session.forceInit && + { resume: session.memorySessionId } + ), // ... other options } }) @@ -234,6 +246,6 @@ WHERE s.content_session_id = 'your-session-id'; ## References - **Implementation**: `src/services/worker/SDKAgent.ts` (lines 72-94) -- **Database Schema**: `src/services/sqlite/SessionStore.ts` (line 95-104) +- **Session Store**: `src/services/sqlite/SessionStore.ts` - **Tests**: `tests/session_id_usage_validation.test.ts` - **Related Tests**: `tests/session_id_refactor.test.ts` diff --git a/docs/context/agent-sdk-v2-preview.md b/docs/context/agent-sdk-v2-preview.md index 88d8d580..0ec086b0 100644 --- a/docs/context/agent-sdk-v2-preview.md +++ b/docs/context/agent-sdk-v2-preview.md @@ -32,7 +32,7 @@ For simple single-turn queries where you don't need to maintain a session, use ` import { unstable_v2_prompt } from '@anthropic-ai/claude-agent-sdk' const result = await unstable_v2_prompt('What is 2 + 2?', { - model: 'claude-sonnet-4-5-20250929' + model: 'claude-sonnet-4-6-20250929' }) console.log(result.result) ``` @@ -45,7 +45,7 @@ import { query } from '@anthropic-ai/claude-agent-sdk' const q = query({ prompt: 'What is 2 + 2?', - options: { model: 'claude-sonnet-4-5-20250929' } + options: { model: 'claude-sonnet-4-6-20250929' } }) for await (const msg of q) { @@ -71,7 +71,7 @@ The example below creates a session, sends "Hello!" to Claude, and prints the te import { unstable_v2_createSession } from '@anthropic-ai/claude-agent-sdk' await using session = unstable_v2_createSession({ - model: 'claude-sonnet-4-5-20250929' + model: 'claude-sonnet-4-6-20250929' }) await session.send('Hello!') @@ -97,7 +97,7 @@ import { query } from '@anthropic-ai/claude-agent-sdk' const q = query({ prompt: 'Hello!', - options: { model: 'claude-sonnet-4-5-20250929' } + options: { model: 'claude-sonnet-4-6-20250929' } }) for await (const msg of q) { @@ -123,7 +123,7 @@ This example asks a math question, then asks a follow-up that references the pre import { unstable_v2_createSession } from '@anthropic-ai/claude-agent-sdk' await using session = unstable_v2_createSession({ - model: 'claude-sonnet-4-5-20250929' + model: 'claude-sonnet-4-6-20250929' }) // Turn 1 @@ -177,7 +177,7 @@ async function* createInputStream() { const q = query({ prompt: createInputStream(), - options: { model: 'claude-sonnet-4-5-20250929' } + options: { model: 'claude-sonnet-4-6-20250929' } }) for await (const msg of q) { @@ -217,7 +217,7 @@ function getAssistantText(msg: SDKMessage): string | null { // Create initial session and have a conversation const session = unstable_v2_createSession({ - model: 'claude-sonnet-4-5-20250929' + model: 'claude-sonnet-4-6-20250929' }) await session.send('Remember this number: 42') @@ -235,7 +235,7 @@ session.close() // Later: resume the session using the stored ID await using resumedSession = unstable_v2_resumeSession(sessionId!, { - model: 'claude-sonnet-4-5-20250929' + model: 'claude-sonnet-4-6-20250929' }) await resumedSession.send('What number did I ask you to remember?') @@ -254,7 +254,7 @@ import { query } from '@anthropic-ai/claude-agent-sdk' // Create initial session const initialQuery = query({ prompt: 'Remember this number: 42', - options: { model: 'claude-sonnet-4-5-20250929' } + options: { model: 'claude-sonnet-4-6-20250929' } }) // Get session ID from any message @@ -276,7 +276,7 @@ console.log('Session ID:', sessionId) const resumedQuery = query({ prompt: 'What number did I ask you to remember?', options: { - model: 'claude-sonnet-4-5-20250929', + model: 'claude-sonnet-4-6-20250929', resume: sessionId } }) @@ -304,7 +304,7 @@ Sessions can be closed manually or automatically using [`await using`](https://w import { unstable_v2_createSession } from '@anthropic-ai/claude-agent-sdk' await using session = unstable_v2_createSession({ - model: 'claude-sonnet-4-5-20250929' + model: 'claude-sonnet-4-6-20250929' }) // Session closes automatically when the block exits ``` @@ -315,7 +315,7 @@ await using session = unstable_v2_createSession({ import { unstable_v2_createSession } from '@anthropic-ai/claude-agent-sdk' const session = unstable_v2_createSession({ - model: 'claude-sonnet-4-5-20250929' + model: 'claude-sonnet-4-6-20250929' }) // ... use the session ... session.close() diff --git a/docs/public/architecture/hooks.mdx b/docs/public/architecture/hooks.mdx index 02991b44..c913fe4b 100644 --- a/docs/public/architecture/hooks.mdx +++ b/docs/public/architecture/hooks.mdx @@ -860,7 +860,7 @@ async startSession(session: ActiveSession, worker?: any) { const queryResult = query({ prompt: messageGenerator, options: { - model: 'claude-sonnet-4-5', + model: 'claude-sonnet-4-6', disallowedTools: ['Bash', 'Read', 'Write', ...], // Observer-only abortController: session.abortController } diff --git a/docs/public/docs.json b/docs/public/docs.json index 7170bcce..31416e59 100644 --- a/docs/public/docs.json +++ b/docs/public/docs.json @@ -70,6 +70,7 @@ "pages": [ "context-engineering", "progressive-disclosure", + "file-read-gate", "smart-explore-benchmark" ] }, diff --git a/docs/public/file-read-gate.mdx b/docs/public/file-read-gate.mdx new file mode 100644 index 00000000..95a69946 --- /dev/null +++ b/docs/public/file-read-gate.mdx @@ -0,0 +1,180 @@ +--- +title: "File Read Gate" +description: "How claude-mem intercepts file reads to save tokens using observation history" +--- + +# File Read Gate + +## What It Is + +The File Read Gate is a **PreToolUse hook** that intercepts Claude's `Read` tool calls. When Claude tries to read a file that has prior observations in the database, the gate blocks the read and instead shows a compact timeline of past work on that file. Claude then decides the cheapest path to get the context it needs. + +This is a concrete implementation of [progressive disclosure](/progressive-disclosure) -- show what exists first, let the agent decide what to fetch. + +--- + +## How It Works + +``` +Claude calls Read("src/services/worker-service.ts") + ↓ + PreToolUse hook fires + ↓ + File size < 1,500 bytes? ──→ Allow read (timeline costs more than file) + ↓ No + Project excluded? ──→ Allow read + ↓ No + Query worker: GET /api/observations/by-file + ↓ + No observations found? ──→ Allow read + ↓ Has observations + Deduplicate (1 per session) + Rank by specificity + Limit to 15 + ↓ + DENY read with timeline +``` + +When the gate fires, Claude sees a message like this: + +``` +Current: 2026-04-07 3:25pm PDT +Read blocked: This file has prior observations. Choose the cheapest path: +- Already know enough? The timeline below may be all you need (semantic priming). +- Need details? get_observations([IDs]) -- ~300 tokens each. +- Need current code? smart_outline("path") for structure (~1-2k tokens), + smart_unfold("path", "") for a specific function (~400-2k tokens). +- Need to edit? Use smart tools for line numbers, then sed via Bash. + +### Apr 5, 2026 +42301 2:15pm Fixed database connection pooling +42298 1:50pm Refactored worker startup sequence + +### Mar 28, 2026 +41890 4:30pm Added health check endpoint +``` + +--- + +## The Decision Tree + +Claude has four options after seeing the timeline, ordered from cheapest to most expensive: + +| Option | Token Cost | When to Use | +|--------|-----------|-------------| +| **Semantic priming** | 0 extra | Timeline titles tell Claude enough to proceed | +| **get_observations([IDs])** | ~300 each | Need specific details from past work | +| **smart_outline / smart_unfold** | ~1-2k | Need current code structure or a specific function | +| **Full file read** | 5k-50k | File has changed significantly since observations | + +In practice, most file reads resolve at the semantic priming or get_observations level, saving thousands of tokens per interaction. + +--- + +## Current Date/Time for Temporal Reasoning + +The timeline includes the current date and time as its first line: + +``` +Current: 2026-04-07 3:25pm PDT +``` + +This lets Claude reason about how recent the observations are relative to now. For example: + +- **Observations from today** -- likely still accurate, semantic priming is safe +- **Observations from last week** -- probably accurate, get_observations for details +- **Observations from months ago** -- file may have changed, consider smart_outline or full read + +The timestamp format matches the session start context header (`YYYY-MM-DD time timezone`), so Claude sees consistent temporal markers throughout its session. + +--- + +## Token Economics + +A typical source file costs **5,000-50,000 tokens** to read in full. The File Read Gate replaces that with: + +| Component | Tokens | +|-----------|--------| +| Timeline header + instructions | ~120 | +| 15 observation entries | ~250 | +| **Total timeline** | **~370** | + +If Claude needs more detail, it fetches individual observations at ~300 tokens each. Even fetching 3 observations totals ~1,270 tokens -- still a **75-97% savings** over reading the full file. + +### Real-World Example + +Without the gate (reading `worker-service.ts`): +``` +Read: 18,000 tokens +``` + +With the gate: +``` +Timeline: 370 tokens ++ 2 observations: 600 tokens +Total: 970 tokens (95% savings) +``` + +--- + +## Specificity Ranking + +Not all observations about a file are equally relevant. The gate scores each observation by how specifically it relates to the target file: + +| Signal | Score Bonus | +|--------|------------| +| File was **modified** (not just read) | +2 | +| Observation covers **3 or fewer** total files | +2 | +| Observation covers **4-8** total files | +1 | +| Observation covers **9+** files (survey-like) | +0 | + +Higher-scoring observations appear first in the timeline. An observation where the file was the primary modification target ranks above one where the file was incidentally read alongside 20 others. + +--- + +## Configuration + +### Small File Bypass + +Files smaller than **1,500 bytes** always pass through the gate without interception. At that size, the timeline (~370 tokens) would cost more than reading the file directly. This threshold is hardcoded in `src/cli/handlers/file-context.ts`. + +### Project Exclusions + +Projects matching patterns in `CLAUDE_MEM_EXCLUDED_PROJECTS` skip the gate entirely. Configure this in `~/.claude-mem/settings.json`: + +```json +{ + "CLAUDE_MEM_EXCLUDED_PROJECTS": "/tmp/*,/scratch/*" +} +``` + +### How to Disable the Gate + +The File Read Gate is implemented as a PreToolUse hook on the `Read` tool matcher. To disable it, remove the `Read` matcher entry from the hooks configuration: + +1. Open your Claude Code settings: + ``` + ~/.claude/settings.json + ``` + +2. Find the claude-mem hooks section under `hooks.PreToolUse` and remove the entry with the `Read` matcher. + +Alternatively, if you want to keep the gate installed but bypass it for a specific read, Claude can ask you to allow the read -- the gate's deny decision is presented to the user, who can override it. + + +Disabling the gate means Claude will read full files every time, which increases token usage but ensures it always sees the latest code. This is a reasonable choice for small projects or when observations are sparse. + + +--- + +## How It Fits Together + +The File Read Gate is one piece of claude-mem's layered context strategy: + +1. **Session Start**: Inject timeline of recent observations (layer 1 -- metadata) +2. **File Read Gate**: Intercept reads with observation history (layer 1 -- metadata) +3. **get_observations**: Fetch specific observation details on demand (layer 2 -- details) +4. **smart_outline / smart_unfold**: Read current code structure efficiently (layer 3 -- source) +5. **Full file read**: Last resort when everything else is insufficient + +Each layer is progressively more expensive. The gate ensures Claude starts at the cheapest layer and escalates only when needed. diff --git a/docs/public/platform-integration.mdx b/docs/public/platform-integration.mdx index db17de99..a9d06846 100644 --- a/docs/public/platform-integration.mdx +++ b/docs/public/platform-integration.mdx @@ -46,7 +46,7 @@ GET /api/context/recent?project=my-project&limit=3 ### Environment Variables ```bash -CLAUDE_MEM_MODEL=claude-sonnet-4-5 # Model for observations/summaries +CLAUDE_MEM_MODEL=claude-sonnet-4-6 # Model for observations/summaries CLAUDE_MEM_CONTEXT_OBSERVATIONS=50 # Observations injected at SessionStart CLAUDE_MEM_WORKER_PORT=37777 # Worker service port CLAUDE_MEM_PYTHON_VERSION=3.13 # Python version for chroma-mcp diff --git a/openclaw/install.sh b/openclaw/install.sh index bd509fc4..a348eb99 100755 --- a/openclaw/install.sh +++ b/openclaw/install.sh @@ -80,17 +80,18 @@ setup_tty() { if [[ -t 0 ]]; then # stdin IS a terminal — use it directly TTY_FD=0 - elif [[ -e /dev/tty ]]; then - # stdin is piped (curl | bash) but /dev/tty is available + elif [[ "$NON_INTERACTIVE" == "true" ]]; then + # In non-interactive mode, do not require /dev/tty + TTY_FD=0 + elif [[ -r /dev/tty ]]; then + # stdin is piped (curl | bash) but /dev/tty is available and readable exec 3&2 - echo "Use --non-interactive or run directly: bash install.sh" >&2 - exit 1 - fi + echo "Error: No terminal available for interactive prompts." >&2 + echo "Use --non-interactive or run directly: bash install.sh" >&2 + exit 1 fi } @@ -787,11 +788,16 @@ install_plugin() { const configPath = process.env.INSTALLER_CONFIG_FILE; const config = JSON.parse(fs.readFileSync(configPath, 'utf8')); const entry = config?.plugins?.entries?.['claude-mem']; - if (entry || config?.plugins?.slots?.memory === 'claude-mem') { + const allowHasClaudeMem = Array.isArray(config?.plugins?.allow) && config.plugins.allow.includes('claude-mem'); + if (entry || config?.plugins?.slots?.memory === 'claude-mem' || allowHasClaudeMem) { // Save the config block so we can restore it after install process.stdout.write(JSON.stringify(entry?.config || {})); // Remove the stale entry so OpenClaw CLI can run if (entry) delete config.plugins.entries['claude-mem']; + // Also remove stale allowlist reference — this alone can block ALL CLI commands + if (Array.isArray(config?.plugins?.allow)) { + config.plugins.allow = config.plugins.allow.filter((x) => x !== 'claude-mem'); + } // Also remove the slot reference — if the slot points to a plugin // that isn't in entries, OpenClaw's config validator rejects ALL commands if (config?.plugins?.slots?.memory === 'claude-mem') { @@ -818,6 +824,49 @@ install_plugin() { exit 1 fi + # Ensure claude-mem is present in plugins.allow after successful install+enable. + # Some OpenClaw environments require explicit allowlisting for local plugins. + # This write is guaranteed: if config doesn't exist, configure_memory_slot() will create it. + if [[ -f "$oc_config" ]]; then + if ! INSTALLER_CONFIG_FILE="$oc_config" node -e " + const fs = require('fs'); + const configPath = process.env.INSTALLER_CONFIG_FILE; + const config = JSON.parse(fs.readFileSync(configPath, 'utf8')); + if (!config.plugins) config.plugins = {}; + if (!Array.isArray(config.plugins.allow)) config.plugins.allow = []; + if (!config.plugins.allow.includes('claude-mem')) { + config.plugins.allow.push('claude-mem'); + fs.writeFileSync(configPath, JSON.stringify(config, null, 2)); + console.log('Added claude-mem to plugins.allow'); + } else { + console.log('claude-mem already in plugins.allow'); + } + " 2>&1; then + warn "Failed to write plugins.allow — claude-mem may need manual allowlisting" + fi + else + # Config doesn't exist yet; configure_memory_slot() will create it with plugins.allow + # We'll add claude-mem to the allowlist in a follow-up step after config is materialized + info "OpenClaw config not yet materialized; will ensure allowlist in post-install" + # Force config materialization by running a harmless OpenClaw command + if run_openclaw status --json >/dev/null 2>&1 && [[ -f "$oc_config" ]]; then + if ! INSTALLER_CONFIG_FILE="$oc_config" node -e " + const fs = require('fs'); + const configPath = process.env.INSTALLER_CONFIG_FILE; + const config = JSON.parse(fs.readFileSync(configPath, 'utf8')); + if (!config.plugins) config.plugins = {}; + if (!Array.isArray(config.plugins.allow)) config.plugins.allow = []; + if (!config.plugins.allow.includes('claude-mem')) { + config.plugins.allow.push('claude-mem'); + fs.writeFileSync(configPath, JSON.stringify(config, null, 2)); + console.log('Added claude-mem to plugins.allow (post-materialization)'); + } + " 2>&1; then + warn "Failed to write plugins.allow after materialization — configure manually" + fi + fi + fi + # Restore saved plugin config (workerPort, syncMemoryFile, observationFeed, etc.) # from any pre-existing installation that was temporarily removed above. if [[ -n "$saved_plugin_config" && "$saved_plugin_config" != "{}" ]]; then @@ -1101,7 +1150,7 @@ write_settings() { // All defaults from SettingsDefaultsManager.ts const defaults = { - CLAUDE_MEM_MODEL: 'claude-sonnet-4-5', + CLAUDE_MEM_MODEL: 'claude-sonnet-4-6', CLAUDE_MEM_CONTEXT_OBSERVATIONS: '50', CLAUDE_MEM_WORKER_PORT: '37777', CLAUDE_MEM_WORKER_HOST: '127.0.0.1', diff --git a/openclaw/openclaw.plugin.json b/openclaw/openclaw.plugin.json index 6c52b962..ce0de1db 100644 --- a/openclaw/openclaw.plugin.json +++ b/openclaw/openclaw.plugin.json @@ -27,6 +27,11 @@ "default": 37777, "description": "Port for Claude-Mem worker service" }, + "workerHost": { + "type": "string", + "default": "127.0.0.1", + "description": "Hostname for Claude-Mem worker service. Set to host.docker.internal when the gateway runs in Docker and the worker runs on the host." + }, "project": { "type": "string", "default": "openclaw", diff --git a/openclaw/src/index.ts b/openclaw/src/index.ts index 7e4ac304..e8623e5e 100644 --- a/openclaw/src/index.ts +++ b/openclaw/src/index.ts @@ -183,6 +183,7 @@ interface ClaudeMemPluginConfig { syncMemoryFileExclude?: string[]; project?: string; workerPort?: number; + workerHost?: string; observationFeed?: { enabled?: boolean; channel?: string; @@ -198,6 +199,7 @@ interface ClaudeMemPluginConfig { const MAX_SSE_BUFFER_SIZE = 1024 * 1024; // 1MB const DEFAULT_WORKER_PORT = 37777; +const DEFAULT_WORKER_HOST = "127.0.0.1"; // Emoji pool for deterministic auto-assignment to unknown agents. // Uses a hash of the agentId to pick a consistent emoji — no persistent state needed. @@ -256,8 +258,10 @@ function buildGetSourceLabel( // Worker HTTP Client // ============================================================================ +let _workerHost = DEFAULT_WORKER_HOST; + function workerBaseUrl(port: number): string { - return `http://127.0.0.1:${port}`; + return `http://${_workerHost}:${port}`; } async function workerPost( @@ -533,6 +537,7 @@ async function connectToSSEStream( export default function claudeMemPlugin(api: OpenClawPluginApi): void { const userConfig = (api.pluginConfig || {}) as ClaudeMemPluginConfig; const workerPort = userConfig.workerPort || DEFAULT_WORKER_PORT; + _workerHost = userConfig.workerHost || DEFAULT_WORKER_HOST; const baseProjectName = userConfig.project || "openclaw"; const getSourceLabel = buildGetSourceLabel(userConfig.observationFeed?.emojis); @@ -547,6 +552,14 @@ export default function claudeMemPlugin(api: OpenClawPluginApi): void { // Session tracking for observation I/O // ------------------------------------------------------------------ const sessionIds = new Map(); + const canonicalSessionKeys = new Map(); + const sessionAliasesByCanonicalKey = new Map>(); + const pendingCompletionTimers = new Map>(); + const recentPromptInits = new Map(); + const completionDelayMs = (() => { + const val = Number((userConfig as Record).completionDelayMs); + return Number.isFinite(val) ? Math.max(0, val) : 5000; + })(); const syncMemoryFile = userConfig.syncMemoryFile !== false; // default true const syncMemoryFileExclude = new Set(userConfig.syncMemoryFileExclude || []); @@ -565,6 +578,83 @@ export default function claudeMemPlugin(api: OpenClawPluginApi): void { return true; } + type SessionTrackingContext = { + sessionKey?: string; + workspaceDir?: string; + channelId?: string; + conversationId?: string; + }; + + function getSessionAliases(ctx: SessionTrackingContext): string[] { + const aliases = new Set(); + for (const rawKey of [ctx.sessionKey, ctx.conversationId, ctx.channelId]) { + const key = typeof rawKey === "string" ? rawKey.trim() : ""; + if (key) aliases.add(key); + } + if (aliases.size === 0) aliases.add("default"); + return Array.from(aliases); + } + + function rememberSessionContext(ctx: SessionTrackingContext): { canonicalKey: string; contentSessionId: string } { + const aliases = getSessionAliases(ctx); + let canonicalKey = aliases.find((alias) => canonicalSessionKeys.has(alias)); + canonicalKey = canonicalKey ? canonicalSessionKeys.get(canonicalKey)! : aliases[0]; + let aliasSet = sessionAliasesByCanonicalKey.get(canonicalKey); + if (!aliasSet) { + aliasSet = new Set([canonicalKey]); + sessionAliasesByCanonicalKey.set(canonicalKey, aliasSet); + } + for (const alias of aliases) { + aliasSet.add(alias); + canonicalSessionKeys.set(alias, canonicalKey); + } + const contentSessionId = getContentSessionId(canonicalKey); + for (const alias of aliasSet) { + sessionIds.set(alias, contentSessionId); + } + return { canonicalKey, contentSessionId }; + } + + function shouldSkipDuplicatePromptInit(contentSessionId: string, project: string, prompt: string): boolean { + const now = Date.now(); + for (const [key, timestamp] of recentPromptInits) { + if (now - timestamp > 2000) recentPromptInits.delete(key); + } + const cacheKey = `${contentSessionId}::${project}::${prompt}`; + const lastSeenAt = recentPromptInits.get(cacheKey); + // Note: cache is set unconditionally before return. If workerPost fails + // after this check, a retry within 2s would be incorrectly skipped. + // Acceptable because before_agent_start is not retried by the runtime. + recentPromptInits.set(cacheKey, now); + return typeof lastSeenAt === "number" && now - lastSeenAt <= 2000; + } + + function clearSessionContext(ctx: SessionTrackingContext): void { + const aliases = getSessionAliases(ctx); + const canonicalKey = aliases + .map((alias) => canonicalSessionKeys.get(alias)) + .find(Boolean) || aliases[0]; + const knownAliases = sessionAliasesByCanonicalKey.get(canonicalKey) || new Set([canonicalKey, ...aliases]); + for (const alias of knownAliases) { + canonicalSessionKeys.delete(alias); + sessionIds.delete(alias); + } + sessionAliasesByCanonicalKey.delete(canonicalKey); + sessionIds.delete(canonicalKey); + } + + function scheduleSessionComplete(contentSessionId: string): void { + const existingTimer = pendingCompletionTimers.get(contentSessionId); + if (existingTimer) clearTimeout(existingTimer); + const timer = setTimeout(() => { + pendingCompletionTimers.delete(contentSessionId); + workerPostFireAndForget(workerPort, "/api/sessions/complete", { + contentSessionId, + }, api.logger); + }, completionDelayMs); + pendingCompletionTimers.set(contentSessionId, timer); + } + // TTL cache for context injection to avoid re-fetching on every LLM turn. // before_prompt_build fires on every turn; caching for 60s keeps the worker // load manageable while still picking up new observations reasonably quickly. @@ -600,61 +690,54 @@ export default function claudeMemPlugin(api: OpenClawPluginApi): void { } // ------------------------------------------------------------------ - // Event: session_start — init claude-mem session (fires on /new, /reset) + // Event: session_start — track session (fires on /new, /reset) + // Init is deferred to before_agent_start to avoid duplicate prompt records. // ------------------------------------------------------------------ api.on("session_start", async (_event, ctx) => { - const contentSessionId = getContentSessionId(ctx.sessionKey); - - await workerPost(workerPort, "/api/sessions/init", { - contentSessionId, - project: getProjectName(ctx), - prompt: "", - }, api.logger); - - api.logger.info(`[claude-mem] Session initialized: ${contentSessionId}`); + const { contentSessionId } = rememberSessionContext(ctx); + api.logger.info(`[claude-mem] Session tracking initialized: ${contentSessionId}`); }); // ------------------------------------------------------------------ - // Event: message_received — capture inbound user prompts from channels + // Event: message_received — alias tracking only; init deferred to before_agent_start // ------------------------------------------------------------------ api.on("message_received", async (event, ctx) => { - const sessionKey = ctx.conversationId || ctx.channelId || "default"; - const contentSessionId = getContentSessionId(sessionKey); - - await workerPost(workerPort, "/api/sessions/init", { - contentSessionId, - project: baseProjectName, - prompt: event.content || "[media prompt]", - }, api.logger); + const { canonicalKey, contentSessionId } = rememberSessionContext(ctx); + api.logger.info(`[claude-mem] Message received — prompt capture deferred to before_agent_start: session=${canonicalKey} contentSessionId=${contentSessionId} hasContent=${Boolean(event.content)}`); }); // ------------------------------------------------------------------ - // Event: after_compaction — re-init session after context compaction + // Event: after_compaction — preserve session tracking after context compaction. + // Re-init is intentionally NOT called here; the worker retains session state + // independently and re-initializing would create duplicate prompt records. // ------------------------------------------------------------------ api.on("after_compaction", async (_event, ctx) => { - const contentSessionId = getContentSessionId(ctx.sessionKey); - - await workerPost(workerPort, "/api/sessions/init", { - contentSessionId, - project: getProjectName(ctx), - prompt: "", - }, api.logger); - - api.logger.info(`[claude-mem] Session re-initialized after compaction: ${contentSessionId}`); + const { contentSessionId } = rememberSessionContext(ctx); + api.logger.info(`[claude-mem] Session preserved after compaction: ${contentSessionId}`); }); // ------------------------------------------------------------------ - // Event: before_agent_start — init session + // Event: before_agent_start — single init point with dedup guard // ------------------------------------------------------------------ api.on("before_agent_start", async (event, ctx) => { + const { contentSessionId } = rememberSessionContext(ctx); + const projectName = getProjectName(ctx); + const promptText = event.prompt || "agent run"; + + if (shouldSkipDuplicatePromptInit(contentSessionId, projectName, promptText)) { + api.logger.info(`[claude-mem] Skipping duplicate prompt init: contentSessionId=${contentSessionId} project=${projectName}`); + return; + } + // Initialize session in the worker so observations are not skipped // (the privacy check requires a stored user prompt to exist) - const contentSessionId = getContentSessionId(ctx.sessionKey); await workerPost(workerPort, "/api/sessions/init", { contentSessionId, - project: getProjectName(ctx), - prompt: event.prompt || "agent run", + project: projectName, + prompt: promptText, }, api.logger); + + api.logger.info(`[claude-mem] Session initialized via before_agent_start: contentSessionId=${contentSessionId} project=${projectName}`); }); // ------------------------------------------------------------------ @@ -686,7 +769,7 @@ export default function claudeMemPlugin(api: OpenClawPluginApi): void { // Skip memory_ tools to prevent recursive observation loops if (toolName.startsWith("memory_")) return; - const contentSessionId = getContentSessionId(ctx.sessionKey); + const { canonicalKey, contentSessionId } = rememberSessionContext(ctx); // Extract result text from all content blocks let toolResponseText = ""; @@ -704,13 +787,23 @@ export default function claudeMemPlugin(api: OpenClawPluginApi): void { toolResponseText = toolResponseText.slice(0, MAX_TOOL_RESPONSE_LENGTH); } + // Resolve workspaceDir with fallback chain. + // Empty cwd causes worker-side observation queueing failures, + // so we drop the observation rather than sending cwd: "". + const workspaceDir = ctx.workspaceDir; + + if (!workspaceDir) { + api.logger.warn(`[claude-mem] Skipping observation persist because workspaceDir is unavailable: session=${canonicalKey} tool=${toolName}`); + return; + } + // Fire-and-forget: send observation to worker workerPostFireAndForget(workerPort, "/api/sessions/observations", { contentSessionId, tool_name: toolName, tool_input: event.params || {}, tool_response: toolResponseText, - cwd: "", + cwd: workspaceDir, }, api.logger); }); @@ -718,7 +811,7 @@ export default function claudeMemPlugin(api: OpenClawPluginApi): void { // Event: agent_end — summarize and complete session // ------------------------------------------------------------------ api.on("agent_end", async (event, ctx) => { - const contentSessionId = getContentSessionId(ctx.sessionKey); + const { contentSessionId } = rememberSessionContext(ctx); // Extract last assistant message for summarization let lastAssistantMessage = ""; @@ -747,17 +840,16 @@ export default function claudeMemPlugin(api: OpenClawPluginApi): void { last_assistant_message: lastAssistantMessage, }, api.logger); - workerPostFireAndForget(workerPort, "/api/sessions/complete", { - contentSessionId, - }, api.logger); + api.logger.info(`[claude-mem] Scheduling session complete in ${completionDelayMs}ms: ${contentSessionId}`); + scheduleSessionComplete(contentSessionId); }); // ------------------------------------------------------------------ // Event: session_end — clean up session tracking to prevent unbounded growth // ------------------------------------------------------------------ api.on("session_end", async (_event, ctx) => { - const key = ctx.sessionKey || "default"; - sessionIds.delete(key); + clearSessionContext(ctx); + api.logger.info(`[claude-mem] Session tracking cleaned up`); }); // ------------------------------------------------------------------ @@ -766,6 +858,13 @@ export default function claudeMemPlugin(api: OpenClawPluginApi): void { api.on("gateway_start", async () => { sessionIds.clear(); contextCache.clear(); + recentPromptInits.clear(); + canonicalSessionKeys.clear(); + sessionAliasesByCanonicalKey.clear(); + for (const timer of pendingCompletionTimers.values()) { + clearTimeout(timer); + } + pendingCompletionTimers.clear(); api.logger.info("[claude-mem] Gateway started — session tracking reset"); }); @@ -1047,5 +1146,5 @@ export default function claudeMemPlugin(api: OpenClawPluginApi): void { }, }); - api.logger.info(`[claude-mem] OpenClaw plugin loaded — v1.0.0 (worker: 127.0.0.1:${workerPort})`); + api.logger.info(`[claude-mem] OpenClaw plugin loaded — v1.0.0 (worker: ${_workerHost}:${workerPort})`); } diff --git a/openclaw/test-install.sh b/openclaw/test-install.sh index be2c2a64..888d1224 100755 --- a/openclaw/test-install.sh +++ b/openclaw/test-install.sh @@ -643,7 +643,7 @@ test_write_settings_new_file() { local model model="$(node -e "const s = JSON.parse(require('fs').readFileSync('${settings_file}','utf8')); console.log(s.CLAUDE_MEM_MODEL);")" - assert_eq "claude-sonnet-4-5" "$model" "CLAUDE_MEM_MODEL defaults to claude-sonnet-4-5" + assert_eq "claude-sonnet-4-6" "$model" "CLAUDE_MEM_MODEL defaults to claude-sonnet-4-6" HOME="$ORIGINAL_HOME" rm -rf "$fake_home" diff --git a/package.json b/package.json index 8970f40a..b54b1f1e 100644 --- a/package.json +++ b/package.json @@ -60,7 +60,7 @@ }, "scripts": { "dev": "npm run build-and-sync", - "build": "node scripts/build-hooks.js", + "build": "node scripts/sync-plugin-manifests.js && node scripts/build-hooks.js", "build-and-sync": "npm run build && npm run sync-marketplace && sleep 1 && cd ~/.claude/plugins/marketplaces/thedotmack && npm run worker:restart", "sync-marketplace": "node scripts/sync-marketplace.cjs", "sync-marketplace:force": "node scripts/sync-marketplace.cjs --force", @@ -124,6 +124,12 @@ "zod-to-json-schema": "^3.24.6" }, "devDependencies": { + "@derekstride/tree-sitter-sql": "^0.3.11", + "@tree-sitter-grammars/tree-sitter-lua": "^0.4.1", + "@tree-sitter-grammars/tree-sitter-markdown": "^0.3.2", + "@tree-sitter-grammars/tree-sitter-toml": "^0.7.0", + "@tree-sitter-grammars/tree-sitter-yaml": "^0.7.1", + "@tree-sitter-grammars/tree-sitter-zig": "^1.1.2", "@types/cors": "^2.8.19", "@types/dompurify": "^3.0.5", "@types/express": "^4.17.21", @@ -132,15 +138,24 @@ "@types/react-dom": "^18.3.0", "esbuild": "^0.27.2", "np": "^11.0.2", + "tree-sitter-bash": "^0.25.1", "tree-sitter-c": "^0.24.1", "tree-sitter-cli": "^0.26.5", "tree-sitter-cpp": "^0.23.4", + "tree-sitter-css": "^0.25.0", + "tree-sitter-elixir": "^0.3.5", "tree-sitter-go": "^0.25.0", + "tree-sitter-haskell": "^0.23.1", "tree-sitter-java": "^0.23.5", "tree-sitter-javascript": "^0.25.0", + "tree-sitter-kotlin": "^0.3.8", + "tree-sitter-php": "^0.24.2", "tree-sitter-python": "^0.25.0", "tree-sitter-ruby": "^0.23.1", "tree-sitter-rust": "^0.24.0", + "tree-sitter-scala": "^0.24.0", + "tree-sitter-scss": "^1.0.0", + "tree-sitter-swift": "^0.7.1", "tree-sitter-typescript": "^0.23.2", "tsx": "^4.20.6", "typescript": "^5.3.0" diff --git a/plugin/hooks/hooks.json b/plugin/hooks/hooks.json index 09c5acd0..56b0e72d 100644 --- a/plugin/hooks/hooks.json +++ b/plugin/hooks/hooks.json @@ -7,7 +7,7 @@ "hooks": [ { "type": "command", - "command": "_R=\"${CLAUDE_PLUGIN_ROOT}\"; [ -z \"$_R\" ] && _R=\"$HOME/.claude/plugins/marketplaces/thedotmack/plugin\"; \"$_R/scripts/setup.sh\"", + "command": "_R=\"${CLAUDE_PLUGIN_ROOT}\"; [ -z \"$_R\" ] && _R=$(ls -dt $HOME/.claude/plugins/cache/thedotmack/claude-mem/[0-9]*/ 2>/dev/null | head -1); _R=\"${_R%/}\"; [ -z \"$_R\" ] && _R=\"$HOME/.claude/plugins/marketplaces/thedotmack/plugin\"; \"$_R/scripts/setup.sh\"", "timeout": 300 } ] @@ -19,17 +19,17 @@ "hooks": [ { "type": "command", - "command": "_R=\"${CLAUDE_PLUGIN_ROOT}\"; [ -z \"$_R\" ] && _R=\"$HOME/.claude/plugins/marketplaces/thedotmack/plugin\"; node \"$_R/scripts/smart-install.js\"", + "command": "export PATH=\"$HOME/.nvm/versions/node/v$(ls \\\"$HOME/.nvm/versions/node\\\" 2>/dev/null | sed 's/^v//' | sort -t. -k1,1n -k2,2n -k3,3n | tail -1)/bin:$HOME/.local/bin:/usr/local/bin:/opt/homebrew/bin:$PATH\"; _R=\"${CLAUDE_PLUGIN_ROOT}\"; [ -z \"$_R\" ] && _R=$(ls -dt $HOME/.claude/plugins/cache/thedotmack/claude-mem/[0-9]*/ 2>/dev/null | head -1); _R=\"${_R%/}\"; [ -z \"$_R\" ] && _R=\"$HOME/.claude/plugins/marketplaces/thedotmack/plugin\"; node \"$_R/scripts/smart-install.js\"", "timeout": 300 }, { "type": "command", - "command": "_R=\"${CLAUDE_PLUGIN_ROOT}\"; [ -z \"$_R\" ] && _R=\"$HOME/.claude/plugins/marketplaces/thedotmack/plugin\"; node \"$_R/scripts/bun-runner.js\" \"$_R/scripts/worker-service.cjs\" start", +"command": "export PATH=\"$HOME/.nvm/versions/node/v$(ls \\\"$HOME/.nvm/versions/node\\\" 2>/dev/null | sed 's/^v//' | sort -t. -k1,1n -k2,2n -k3,3n | tail -1)/bin:$HOME/.local/bin:/usr/local/bin:/opt/homebrew/bin:$PATH\"; _R=\"${CLAUDE_PLUGIN_ROOT}\"; [ -z \"$_R\" ] && _R=$(ls -dt $HOME/.claude/plugins/cache/thedotmack/claude-mem/[0-9]*/ 2>/dev/null | head -1); _R=\"${_R%/}\"; [ -z \"$_R\" ] && _R=\"$HOME/.claude/plugins/marketplaces/thedotmack/plugin\"; node \"$_R/scripts/bun-runner.js\" \"$_R/scripts/worker-service.cjs\" start; for i in 1 2 3 4 5 6 7 8; do curl -sf http://localhost:37777/health >/dev/null 2>&1 && break; sleep 1; done; curl -sf http://localhost:37777/health >/dev/null 2>&1 || exit 1; echo '{\"continue\":true,\"suppressOutput\":true}'", "timeout": 60 }, { "type": "command", - "command": "_R=\"${CLAUDE_PLUGIN_ROOT}\"; [ -z \"$_R\" ] && _R=\"$HOME/.claude/plugins/marketplaces/thedotmack/plugin\"; node \"$_R/scripts/bun-runner.js\" \"$_R/scripts/worker-service.cjs\" hook claude-code context", +"command": "export PATH=\"$HOME/.nvm/versions/node/v$(ls \\\"$HOME/.nvm/versions/node\\\" 2>/dev/null | sed 's/^v//' | sort -t. -k1,1n -k2,2n -k3,3n | tail -1)/bin:$HOME/.local/bin:/usr/local/bin:/opt/homebrew/bin:$PATH\"; _R=\"${CLAUDE_PLUGIN_ROOT}\"; [ -z \"$_R\" ] && _R=$(ls -dt $HOME/.claude/plugins/cache/thedotmack/claude-mem/[0-9]*/ 2>/dev/null | head -1); _R=\"${_R%/}\"; [ -z \"$_R\" ] && _R=\"$HOME/.claude/plugins/marketplaces/thedotmack/plugin\"; for i in 1 2 3 4 5 6 7 8; do curl -sf http://localhost:37777/health >/dev/null 2>&1 && break; sleep 1; done; node \"$_R/scripts/bun-runner.js\" \"$_R/scripts/worker-service.cjs\" hook claude-code context", "timeout": 60 } ] @@ -40,7 +40,7 @@ "hooks": [ { "type": "command", - "command": "_R=\"${CLAUDE_PLUGIN_ROOT}\"; [ -z \"$_R\" ] && _R=\"$HOME/.claude/plugins/marketplaces/thedotmack/plugin\"; node \"$_R/scripts/bun-runner.js\" \"$_R/scripts/worker-service.cjs\" hook claude-code session-init", + "command": "export PATH=\"$HOME/.nvm/versions/node/v$(ls \\\"$HOME/.nvm/versions/node\\\" 2>/dev/null | sed 's/^v//' | sort -t. -k1,1n -k2,2n -k3,3n | tail -1)/bin:$HOME/.local/bin:/usr/local/bin:/opt/homebrew/bin:$PATH\"; _R=\"${CLAUDE_PLUGIN_ROOT}\"; [ -z \"$_R\" ] && _R=$(ls -dt $HOME/.claude/plugins/cache/thedotmack/claude-mem/[0-9]*/ 2>/dev/null | head -1); _R=\"${_R%/}\"; [ -z \"$_R\" ] && _R=\"$HOME/.claude/plugins/marketplaces/thedotmack/plugin\"; node \"$_R/scripts/bun-runner.js\" \"$_R/scripts/worker-service.cjs\" hook claude-code session-init", "timeout": 60 } ] @@ -52,18 +52,30 @@ "hooks": [ { "type": "command", - "command": "_R=\"${CLAUDE_PLUGIN_ROOT}\"; [ -z \"$_R\" ] && _R=\"$HOME/.claude/plugins/marketplaces/thedotmack/plugin\"; node \"$_R/scripts/bun-runner.js\" \"$_R/scripts/worker-service.cjs\" hook claude-code observation", + "command": "export PATH=\"$HOME/.nvm/versions/node/v$(ls \\\"$HOME/.nvm/versions/node\\\" 2>/dev/null | sed 's/^v//' | sort -t. -k1,1n -k2,2n -k3,3n | tail -1)/bin:$HOME/.local/bin:/usr/local/bin:/opt/homebrew/bin:$PATH\"; _R=\"${CLAUDE_PLUGIN_ROOT}\"; [ -z \"$_R\" ] && _R=$(ls -dt $HOME/.claude/plugins/cache/thedotmack/claude-mem/[0-9]*/ 2>/dev/null | head -1); _R=\"${_R%/}\"; [ -z \"$_R\" ] && _R=\"$HOME/.claude/plugins/marketplaces/thedotmack/plugin\"; node \"$_R/scripts/bun-runner.js\" \"$_R/scripts/worker-service.cjs\" hook claude-code observation", "timeout": 120 } ] } ], + "PreToolUse": [ + { + "matcher": "Read", + "hooks": [ + { + "type": "command", + "command": "_R=\"${CLAUDE_PLUGIN_ROOT}\"; [ -z \"$_R\" ] && _R=\"$HOME/.claude/plugins/marketplaces/thedotmack/plugin\"; node \"$_R/scripts/bun-runner.js\" \"$_R/scripts/worker-service.cjs\" hook claude-code file-context", + "timeout": 2000 + } + ] + } + ], "Stop": [ { "hooks": [ { "type": "command", - "command": "_R=\"${CLAUDE_PLUGIN_ROOT}\"; [ -z \"$_R\" ] && _R=\"$HOME/.claude/plugins/marketplaces/thedotmack/plugin\"; node \"$_R/scripts/bun-runner.js\" \"$_R/scripts/worker-service.cjs\" hook claude-code summarize", + "command": "export PATH=\"$HOME/.nvm/versions/node/v$(ls \\\"$HOME/.nvm/versions/node\\\" 2>/dev/null | sed 's/^v//' | sort -t. -k1,1n -k2,2n -k3,3n | tail -1)/bin:$HOME/.local/bin:/usr/local/bin:/opt/homebrew/bin:$PATH\"; _R=\"${CLAUDE_PLUGIN_ROOT}\"; [ -z \"$_R\" ] && _R=$(ls -dt $HOME/.claude/plugins/cache/thedotmack/claude-mem/[0-9]*/ 2>/dev/null | head -1); _R=\"${_R%/}\"; [ -z \"$_R\" ] && _R=\"$HOME/.claude/plugins/marketplaces/thedotmack/plugin\"; node \"$_R/scripts/bun-runner.js\" \"$_R/scripts/worker-service.cjs\" hook claude-code summarize", "timeout": 120 } ] @@ -74,8 +86,8 @@ "hooks": [ { "type": "command", - "command": "node -e \"let d='';process.stdin.on('data',c=>d+=c);process.stdin.on('end',()=>{try{const{sessionId:s}=JSON.parse(d);if(!s){process.exit(0)}const r=require('http').request({hostname:'127.0.0.1',port:37777,path:'/api/sessions/complete',method:'POST',headers:{'Content-Type':'application/json'}});r.on('error',()=>{});r.end(JSON.stringify({contentSessionId:s}));process.exit(0)}catch{process.exit(0)}})\"", - "timeout": 2 +"command": "export PATH=\"$HOME/.nvm/versions/node/v$(ls \\\"$HOME/.nvm/versions/node\\\" 2>/dev/null | sed 's/^v//' | sort -t. -k1,1n -k2,2n -k3,3n | tail -1)/bin:$HOME/.local/bin:/usr/local/bin:/opt/homebrew/bin:$PATH\"; _R=\"${CLAUDE_PLUGIN_ROOT}\"; [ -z \"$_R\" ] && _R=$(ls -dt $HOME/.claude/plugins/cache/thedotmack/claude-mem/[0-9]*/ 2>/dev/null | head -1); _R=\"${_R%/}\"; [ -z \"$_R\" ] && _R=\"$HOME/.claude/plugins/marketplaces/thedotmack/plugin\"; node \"$_R/scripts/bun-runner.js\" \"$_R/scripts/worker-service.cjs\" hook claude-code session-complete", + "timeout": 30 } ] } diff --git a/plugin/package.json b/plugin/package.json index 87caf126..5d2834bb 100644 --- a/plugin/package.json +++ b/plugin/package.json @@ -14,7 +14,22 @@ "tree-sitter-python": "^0.25.0", "tree-sitter-ruby": "^0.23.1", "tree-sitter-rust": "^0.24.0", - "tree-sitter-typescript": "^0.23.2" + "tree-sitter-typescript": "^0.23.2", + "tree-sitter-kotlin": "^0.3.8", + "tree-sitter-swift": "^0.7.1", + "tree-sitter-php": "^0.24.2", + "tree-sitter-elixir": "^0.3.5", + "@tree-sitter-grammars/tree-sitter-lua": "^0.4.1", + "tree-sitter-scala": "^0.24.0", + "tree-sitter-bash": "^0.25.1", + "tree-sitter-haskell": "^0.23.1", + "@tree-sitter-grammars/tree-sitter-zig": "^1.1.2", + "tree-sitter-css": "^0.25.0", + "tree-sitter-scss": "^1.0.0", + "@tree-sitter-grammars/tree-sitter-toml": "^0.7.0", + "@tree-sitter-grammars/tree-sitter-yaml": "^0.7.1", + "@derekstride/tree-sitter-sql": "^0.3.11", + "@tree-sitter-grammars/tree-sitter-markdown": "^0.3.2" }, "engines": { "node": ">=18.0.0", diff --git a/plugin/scripts/bun-runner.js b/plugin/scripts/bun-runner.js index 90ee0997..6804f8fe 100644 --- a/plugin/scripts/bun-runner.js +++ b/plugin/scripts/bun-runner.js @@ -55,6 +55,13 @@ function findBun() { }); if (pathCheck.status === 0 && pathCheck.stdout.trim()) { + // On Windows, prefer bun.cmd over bun (bun is a shell script, bun.cmd is the Windows batch file) + if (IS_WINDOWS) { + const bunCmdPath = pathCheck.stdout.split('\n').find(line => line.trim().endsWith('bun.cmd')); + if (bunCmdPath) { + return bunCmdPath.trim(); + } + } return 'bun'; // Found in PATH } @@ -152,17 +159,31 @@ const stdinData = await collectStdin(); // Spawn Bun with the provided script and args // Use spawn (not spawnSync) to properly handle stdio -// Note: Don't use shell mode on Windows - it breaks paths with spaces in usernames +// On Windows, use cmd.exe to execute bun.cmd since npm-installed bun is a batch file // Use windowsHide to prevent a visible console window from spawning on Windows -const child = spawn(bunPath, args, { - stdio: [stdinData ? 'pipe' : 'ignore', 'inherit', 'inherit'], +const spawnOptions = { + stdio: ['pipe', 'inherit', 'inherit'], windowsHide: true, env: process.env -}); +}; -// Write buffered stdin to child's pipe, then close it so the child sees EOF -if (stdinData && child.stdin) { - child.stdin.write(stdinData); +let spawnCmd = bunPath; +let spawnArgs = args; + +if (IS_WINDOWS) { + // On Windows, bun.cmd must be executed via cmd /c + spawnCmd = 'cmd'; + spawnArgs = ['/c', bunPath, ...args]; +} + +const child = spawn(spawnCmd, spawnArgs, spawnOptions); + +// Write buffered stdin to child's pipe, then close it so the child sees EOF. +// Fall back to '{}' when no stdin data is available so worker-service.cjs +// always receives valid JSON input even when Claude Code doesn't pipe stdin +// (e.g. during SessionStart on some platforms). Fixes #1560. +if (child.stdin) { + child.stdin.write(stdinData || '{}'); child.stdin.end(); } @@ -171,6 +192,12 @@ child.on('error', (err) => { process.exit(1); }); -child.on('close', (code) => { +child.on('close', (code, signal) => { + // Fix #1505: When the "start" subcommand forks a daemon, the parent bun + // process may be killed by signal (e.g. SIGKILL, exit code 137). The daemon + // is running fine — treat signal-based exits for "start" as success. + if ((signal || code > 128) && args.includes('start')) { + process.exit(0); + } process.exit(code || 0); }); diff --git a/plugin/scripts/context-generator.cjs b/plugin/scripts/context-generator.cjs index 7f51fe0d..88ec32bc 100644 --- a/plugin/scripts/context-generator.cjs +++ b/plugin/scripts/context-generator.cjs @@ -1,12 +1,12 @@ -"use strict";var Tt=Object.create;var x=Object.defineProperty;var gt=Object.getOwnPropertyDescriptor;var ft=Object.getOwnPropertyNames;var St=Object.getPrototypeOf,bt=Object.prototype.hasOwnProperty;var ht=(r,e)=>{for(var t in e)x(r,t,{get:e[t],enumerable:!0})},de=(r,e,t,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of ft(e))!bt.call(r,n)&&n!==t&&x(r,n,{get:()=>e[n],enumerable:!(s=gt(e,n))||s.enumerable});return r};var M=(r,e,t)=>(t=r!=null?Tt(St(r)):{},de(e||!r||!r.__esModule?x(t,"default",{value:r,enumerable:!0}):t,r)),Ot=r=>de(x({},"__esModule",{value:!0}),r);var Pt={};ht(Pt,{generateContext:()=>ae});module.exports=Ot(Pt);var mt=M(require("path"),1),ut=require("os"),lt=require("fs");var Te=require("bun:sqlite");var b=require("path"),K=require("os"),k=require("fs");var pe=require("url");var I=require("fs"),L=require("path"),ce=require("os"),q=(o=>(o[o.DEBUG=0]="DEBUG",o[o.INFO=1]="INFO",o[o.WARN=2]="WARN",o[o.ERROR=3]="ERROR",o[o.SILENT=4]="SILENT",o))(q||{}),_e=(0,L.join)((0,ce.homedir)(),".claude-mem"),V=class{level=null;useColor;logFilePath=null;logFileInitialized=!1;constructor(){this.useColor=process.stdout.isTTY??!1}ensureLogFileInitialized(){if(!this.logFileInitialized){this.logFileInitialized=!0;try{let e=(0,L.join)(_e,"logs");(0,I.existsSync)(e)||(0,I.mkdirSync)(e,{recursive:!0});let t=new Date().toISOString().split("T")[0];this.logFilePath=(0,L.join)(e,`claude-mem-${t}.log`)}catch(e){console.error("[LOGGER] Failed to initialize log file:",e),this.logFilePath=null}}}getLevel(){if(this.level===null)try{let e=(0,L.join)(_e,"settings.json");if((0,I.existsSync)(e)){let t=(0,I.readFileSync)(e,"utf-8"),n=(JSON.parse(t).CLAUDE_MEM_LOG_LEVEL||"INFO").toUpperCase();this.level=q[n]??1}else this.level=1}catch{this.level=1}return this.level}correlationId(e,t){return`obs-${e}-${t}`}sessionId(e){return`session-${e}`}formatData(e){if(e==null)return"";if(typeof e=="string")return e;if(typeof e=="number"||typeof e=="boolean")return e.toString();if(typeof e=="object"){if(e instanceof Error)return this.getLevel()===0?`${e.message} -${e.stack}`:e.message;if(Array.isArray(e))return`[${e.length} items]`;let t=Object.keys(e);return t.length===0?"{}":t.length<=3?JSON.stringify(e):`{${t.length} keys: ${t.slice(0,3).join(", ")}...}`}return String(e)}formatTool(e,t){if(!t)return e;let s=t;if(typeof t=="string")try{s=JSON.parse(t)}catch{s=t}if(e==="Bash"&&s.command)return`${e}(${s.command})`;if(s.file_path)return`${e}(${s.file_path})`;if(s.notebook_path)return`${e}(${s.notebook_path})`;if(e==="Glob"&&s.pattern)return`${e}(${s.pattern})`;if(e==="Grep"&&s.pattern)return`${e}(${s.pattern})`;if(s.url)return`${e}(${s.url})`;if(s.query)return`${e}(${s.query})`;if(e==="Task"){if(s.subagent_type)return`${e}(${s.subagent_type})`;if(s.description)return`${e}(${s.description})`}return e==="Skill"&&s.skill?`${e}(${s.skill})`:e==="LSP"&&s.operation?`${e}(${s.operation})`:e}formatTimestamp(e){let t=e.getFullYear(),s=String(e.getMonth()+1).padStart(2,"0"),n=String(e.getDate()).padStart(2,"0"),o=String(e.getHours()).padStart(2,"0"),i=String(e.getMinutes()).padStart(2,"0"),a=String(e.getSeconds()).padStart(2,"0"),d=String(e.getMilliseconds()).padStart(3,"0");return`${t}-${s}-${n} ${o}:${i}:${a}.${d}`}log(e,t,s,n,o){if(e{for(var t in e)F(r,t,{get:e[t],enumerable:!0})},pe=(r,e,t,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Nt(e))!It.call(r,n)&&n!==t&&F(r,n,{get:()=>e[n],enumerable:!(s=Rt(e,n))||s.enumerable});return r};var D=(r,e,t)=>(t=r!=null?At(Ct(r)):{},pe(e||!r||!r.__esModule?F(t,"default",{value:r,enumerable:!0}):t,r)),yt=r=>pe(F({},"__esModule",{value:!0}),r);var Kt={};Lt(Kt,{generateContext:()=>me});module.exports=yt(Kt);var St=D(require("path"),1),bt=require("os"),ht=require("fs");var Oe=require("bun:sqlite");var f=require("path"),z=require("os"),w=require("fs");var ge=require("url");var I=require("fs"),M=require("path"),Ee=require("os"),K=(o=>(o[o.DEBUG=0]="DEBUG",o[o.INFO=1]="INFO",o[o.WARN=2]="WARN",o[o.ERROR=3]="ERROR",o[o.SILENT=4]="SILENT",o))(K||{}),le=(0,M.join)((0,Ee.homedir)(),".claude-mem"),J=class{level=null;useColor;logFilePath=null;logFileInitialized=!1;constructor(){this.useColor=process.stdout.isTTY??!1}ensureLogFileInitialized(){if(!this.logFileInitialized){this.logFileInitialized=!0;try{let e=(0,M.join)(le,"logs");(0,I.existsSync)(e)||(0,I.mkdirSync)(e,{recursive:!0});let t=new Date().toISOString().split("T")[0];this.logFilePath=(0,M.join)(e,`claude-mem-${t}.log`)}catch(e){console.error("[LOGGER] Failed to initialize log file:",e),this.logFilePath=null}}}getLevel(){if(this.level===null)try{let e=(0,M.join)(le,"settings.json");if((0,I.existsSync)(e)){let t=(0,I.readFileSync)(e,"utf-8"),n=(JSON.parse(t).CLAUDE_MEM_LOG_LEVEL||"INFO").toUpperCase();this.level=K[n]??1}else this.level=1}catch{this.level=1}return this.level}correlationId(e,t){return`obs-${e}-${t}`}sessionId(e){return`session-${e}`}formatData(e){if(e==null)return"";if(typeof e=="string")return e;if(typeof e=="number"||typeof e=="boolean")return e.toString();if(typeof e=="object"){if(e instanceof Error)return this.getLevel()===0?`${e.message} +${e.stack}`:e.message;if(Array.isArray(e))return`[${e.length} items]`;let t=Object.keys(e);return t.length===0?"{}":t.length<=3?JSON.stringify(e):`{${t.length} keys: ${t.slice(0,3).join(", ")}...}`}return String(e)}formatTool(e,t){if(!t)return e;let s=t;if(typeof t=="string")try{s=JSON.parse(t)}catch{s=t}if(e==="Bash"&&s.command)return`${e}(${s.command})`;if(s.file_path)return`${e}(${s.file_path})`;if(s.notebook_path)return`${e}(${s.notebook_path})`;if(e==="Glob"&&s.pattern)return`${e}(${s.pattern})`;if(e==="Grep"&&s.pattern)return`${e}(${s.pattern})`;if(s.url)return`${e}(${s.url})`;if(s.query)return`${e}(${s.query})`;if(e==="Task"){if(s.subagent_type)return`${e}(${s.subagent_type})`;if(s.description)return`${e}(${s.description})`}return e==="Skill"&&s.skill?`${e}(${s.skill})`:e==="LSP"&&s.operation?`${e}(${s.operation})`:e}formatTimestamp(e){let t=e.getFullYear(),s=String(e.getMonth()+1).padStart(2,"0"),n=String(e.getDate()).padStart(2,"0"),o=String(e.getHours()).padStart(2,"0"),i=String(e.getMinutes()).padStart(2,"0"),a=String(e.getSeconds()).padStart(2,"0"),d=String(e.getMilliseconds()).padStart(3,"0");return`${t}-${s}-${n} ${o}:${i}:${a}.${d}`}log(e,t,s,n,o){if(e0&&(l=` {${Object.entries(u).map(([g,h])=>`${g}=${h}`).join(", ")}}`)}let T=`[${i}] [${a}] [${d}] ${c}${s}${l}${m}`;if(this.logFilePath)try{(0,I.appendFileSync)(this.logFilePath,T+` -`,"utf8")}catch(E){process.stderr.write(`[LOGGER] Failed to write to log file: ${E} -`)}else process.stderr.write(T+` -`)}debug(e,t,s,n){this.log(0,e,t,s,n)}info(e,t,s,n){this.log(1,e,t,s,n)}warn(e,t,s,n){this.log(2,e,t,s,n)}error(e,t,s,n){this.log(3,e,t,s,n)}dataIn(e,t,s,n){this.info(e,`\u2192 ${t}`,s,n)}dataOut(e,t,s,n){this.info(e,`\u2190 ${t}`,s,n)}success(e,t,s,n){this.info(e,`\u2713 ${t}`,s,n)}failure(e,t,s,n){this.error(e,`\u2717 ${t}`,s,n)}timing(e,t,s,n){this.info(e,`\u23F1 ${t}`,n,{duration:`${s}ms`})}happyPathError(e,t,s,n,o=""){let c=((new Error().stack||"").split(` -`)[2]||"").match(/at\s+(?:.*\s+)?\(?([^:]+):(\d+):(\d+)\)?/),m=c?`${c[1].split("/").pop()}:${c[2]}`:"unknown",l={...s,location:m};return this.warn(e,`[HAPPY-PATH] ${t}`,l,n),o}},p=new V;var It={};function Rt(){return typeof __dirname<"u"?__dirname:(0,b.dirname)((0,pe.fileURLToPath)(It.url))}var Ct=Rt();function Nt(){if(process.env.CLAUDE_MEM_DATA_DIR)return process.env.CLAUDE_MEM_DATA_DIR;let r=(0,b.join)((0,K.homedir)(),".claude-mem"),e=(0,b.join)(r,"settings.json");try{if((0,k.existsSync)(e)){let{readFileSync:t}=require("fs"),s=JSON.parse(t(e,"utf-8")),n=s.env??s;if(n.CLAUDE_MEM_DATA_DIR)return n.CLAUDE_MEM_DATA_DIR}}catch{}return r}var C=Nt(),A=process.env.CLAUDE_CONFIG_DIR||(0,b.join)((0,K.homedir)(),".claude"),Bt=(0,b.join)(A,"plugins","marketplaces","thedotmack"),Wt=(0,b.join)(C,"archives"),Yt=(0,b.join)(C,"logs"),qt=(0,b.join)(C,"trash"),Vt=(0,b.join)(C,"backups"),Kt=(0,b.join)(C,"modes"),Jt=(0,b.join)(C,"settings.json"),me=(0,b.join)(C,"claude-mem.db"),Qt=(0,b.join)(C,"vector-db"),zt=(0,b.join)(C,"observer-sessions"),Zt=(0,b.join)(A,"settings.json"),es=(0,b.join)(A,"commands"),ts=(0,b.join)(A,"CLAUDE.md");function ue(r){(0,k.mkdirSync)(r,{recursive:!0})}function le(){return(0,b.join)(Ct,"..")}var Ee=require("crypto");var At=3e4;function w(r,e,t){return(0,Ee.createHash)("sha256").update((r||"")+(e||"")+(t||"")).digest("hex").slice(0,16)}function $(r,e,t){let s=t-At;return r.prepare("SELECT id, created_at_epoch FROM observations WHERE content_hash = ? AND created_at_epoch > ?").get(e,s)}var F=class{db;constructor(e=me){e!==":memory:"&&ue(C),this.db=new Te.Database(e),this.db.run("PRAGMA journal_mode = WAL"),this.db.run("PRAGMA synchronous = NORMAL"),this.db.run("PRAGMA foreign_keys = ON"),this.initializeSchema(),this.ensureWorkerPortColumn(),this.ensurePromptTrackingColumns(),this.removeSessionSummariesUniqueConstraint(),this.addObservationHierarchicalFields(),this.makeObservationsTextNullable(),this.createUserPromptsTable(),this.ensureDiscoveryTokensColumn(),this.createPendingMessagesTable(),this.renameSessionIdColumns(),this.repairSessionIdColumnRename(),this.addFailedAtEpochColumn(),this.addOnUpdateCascadeToForeignKeys(),this.addObservationContentHashColumn(),this.addSessionCustomTitleColumn()}initializeSchema(){this.db.run(` +${o.stack}`:` ${o.message}`:this.getLevel()===0&&typeof o=="object"?_=` +`+JSON.stringify(o,null,2):_=" "+this.formatData(o));let l="";if(n){let{sessionId:T,memorySessionId:O,correlationId:S,...p}=n;Object.keys(p).length>0&&(l=` {${Object.entries(p).map(([g,b])=>`${g}=${b}`).join(", ")}}`)}let E=`[${i}] [${a}] [${d}] ${u}${s}${l}${_}`;if(this.logFilePath)try{(0,I.appendFileSync)(this.logFilePath,E+` +`,"utf8")}catch(T){process.stderr.write(`[LOGGER] Failed to write to log file: ${T} +`)}else process.stderr.write(E+` +`)}debug(e,t,s,n){this.log(0,e,t,s,n)}info(e,t,s,n){this.log(1,e,t,s,n)}warn(e,t,s,n){this.log(2,e,t,s,n)}error(e,t,s,n){this.log(3,e,t,s,n)}dataIn(e,t,s,n){this.info(e,`\u2192 ${t}`,s,n)}dataOut(e,t,s,n){this.info(e,`\u2190 ${t}`,s,n)}success(e,t,s,n){this.info(e,`\u2713 ${t}`,s,n)}failure(e,t,s,n){this.error(e,`\u2717 ${t}`,s,n)}timing(e,t,s,n){this.info(e,`\u23F1 ${t}`,n,{duration:`${s}ms`})}happyPathError(e,t,s,n,o=""){let u=((new Error().stack||"").split(` +`)[2]||"").match(/at\s+(?:.*\s+)?\(?([^:]+):(\d+):(\d+)\)?/),_=u?`${u[1].split("/").pop()}:${u[2]}`:"unknown",l={...s,location:_};return this.warn(e,`[HAPPY-PATH] ${t}`,l,n),o}},m=new J;var Ut={};function Dt(){return typeof __dirname<"u"?__dirname:(0,f.dirname)((0,ge.fileURLToPath)(Ut.url))}var Mt=Dt();function vt(){if(process.env.CLAUDE_MEM_DATA_DIR)return process.env.CLAUDE_MEM_DATA_DIR;let r=(0,f.join)((0,z.homedir)(),".claude-mem"),e=(0,f.join)(r,"settings.json");try{if((0,w.existsSync)(e)){let{readFileSync:t}=require("fs"),s=JSON.parse(t(e,"utf-8")),n=s.env??s;if(n.CLAUDE_MEM_DATA_DIR)return n.CLAUDE_MEM_DATA_DIR}}catch{}return r}var N=vt(),L=process.env.CLAUDE_CONFIG_DIR||(0,f.join)((0,z.homedir)(),".claude"),es=(0,f.join)(L,"plugins","marketplaces","thedotmack"),ts=(0,f.join)(N,"archives"),ss=(0,f.join)(N,"logs"),rs=(0,f.join)(N,"trash"),ns=(0,f.join)(N,"backups"),os=(0,f.join)(N,"modes"),is=(0,f.join)(N,"settings.json"),Te=(0,f.join)(N,"claude-mem.db"),as=(0,f.join)(N,"vector-db"),ds=(0,f.join)(N,"observer-sessions"),cs=(0,f.join)(L,"settings.json"),us=(0,f.join)(L,"commands"),ms=(0,f.join)(L,"CLAUDE.md");function fe(r){(0,w.mkdirSync)(r,{recursive:!0})}function Se(){return(0,f.join)(Mt,"..")}var be=require("crypto");var xt=3e4;function P(r,e,t){return(0,be.createHash)("sha256").update([r||"",e||"",t||""].join("\0")).digest("hex").slice(0,16)}function H(r,e,t){let s=t-xt;return r.prepare("SELECT id, created_at_epoch FROM observations WHERE content_hash = ? AND created_at_epoch > ?").get(e,s)}function Q(r){if(!r)return[];try{let e=JSON.parse(r);return Array.isArray(e)?e:[String(e)]}catch{return[r]}}var h="claude";function kt(r){return r.trim().toLowerCase().replace(/\s+/g,"-")}function y(r){if(!r)return h;let e=kt(r);return e?e==="transcript"||e.includes("codex")?"codex":e.includes("cursor")?"cursor":e.includes("claude")?"claude":e:h}function he(r){let e=["claude","codex","cursor"];return[...r].sort((t,s)=>{let n=e.indexOf(t),o=e.indexOf(s);return n!==-1||o!==-1?n===-1?1:o===-1?-1:n-o:t.localeCompare(s)})}function $t(r,e){return{customTitle:r,platformSource:e?y(e):void 0}}var X=class{db;constructor(e=Te){e!==":memory:"&&fe(N),this.db=new Oe.Database(e),this.db.run("PRAGMA journal_mode = WAL"),this.db.run("PRAGMA synchronous = NORMAL"),this.db.run("PRAGMA foreign_keys = ON"),this.initializeSchema(),this.ensureWorkerPortColumn(),this.ensurePromptTrackingColumns(),this.removeSessionSummariesUniqueConstraint(),this.addObservationHierarchicalFields(),this.makeObservationsTextNullable(),this.createUserPromptsTable(),this.ensureDiscoveryTokensColumn(),this.createPendingMessagesTable(),this.renameSessionIdColumns(),this.repairSessionIdColumnRename(),this.addFailedAtEpochColumn(),this.addOnUpdateCascadeToForeignKeys(),this.addObservationContentHashColumn(),this.addSessionCustomTitleColumn(),this.addSessionPlatformSourceColumn(),this.addObservationModelColumns()}initializeSchema(){this.db.run(` CREATE TABLE IF NOT EXISTS schema_versions ( id INTEGER PRIMARY KEY, version INTEGER UNIQUE NOT NULL, @@ -18,6 +18,7 @@ ${o.stack}`:` ${o.message}`:this.getLevel()===0&&typeof o=="object"?m=` content_session_id TEXT UNIQUE NOT NULL, memory_session_id TEXT UNIQUE, project TEXT NOT NULL, + platform_source TEXT NOT NULL DEFAULT 'claude', user_prompt TEXT, started_at TEXT NOT NULL, started_at_epoch INTEGER NOT NULL, @@ -68,7 +69,7 @@ ${o.stack}`:` ${o.message}`:this.getLevel()===0&&typeof o=="object"?m=` CREATE INDEX IF NOT EXISTS idx_session_summaries_sdk_session ON session_summaries(memory_session_id); CREATE INDEX IF NOT EXISTS idx_session_summaries_project ON session_summaries(project); CREATE INDEX IF NOT EXISTS idx_session_summaries_created ON session_summaries(created_at_epoch DESC); - `),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(4,new Date().toISOString())}ensureWorkerPortColumn(){this.db.query("PRAGMA table_info(sdk_sessions)").all().some(s=>s.name==="worker_port")||(this.db.run("ALTER TABLE sdk_sessions ADD COLUMN worker_port INTEGER"),p.debug("DB","Added worker_port column to sdk_sessions table")),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(5,new Date().toISOString())}ensurePromptTrackingColumns(){this.db.query("PRAGMA table_info(sdk_sessions)").all().some(a=>a.name==="prompt_counter")||(this.db.run("ALTER TABLE sdk_sessions ADD COLUMN prompt_counter INTEGER DEFAULT 0"),p.debug("DB","Added prompt_counter column to sdk_sessions table")),this.db.query("PRAGMA table_info(observations)").all().some(a=>a.name==="prompt_number")||(this.db.run("ALTER TABLE observations ADD COLUMN prompt_number INTEGER"),p.debug("DB","Added prompt_number column to observations table")),this.db.query("PRAGMA table_info(session_summaries)").all().some(a=>a.name==="prompt_number")||(this.db.run("ALTER TABLE session_summaries ADD COLUMN prompt_number INTEGER"),p.debug("DB","Added prompt_number column to session_summaries table")),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(6,new Date().toISOString())}removeSessionSummariesUniqueConstraint(){if(!this.db.query("PRAGMA index_list(session_summaries)").all().some(s=>s.unique===1)){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(7,new Date().toISOString());return}p.debug("DB","Removing UNIQUE constraint from session_summaries.memory_session_id"),this.db.run("BEGIN TRANSACTION"),this.db.run("DROP TABLE IF EXISTS session_summaries_new"),this.db.run(` + `),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(4,new Date().toISOString())}ensureWorkerPortColumn(){this.db.query("PRAGMA table_info(sdk_sessions)").all().some(s=>s.name==="worker_port")||(this.db.run("ALTER TABLE sdk_sessions ADD COLUMN worker_port INTEGER"),m.debug("DB","Added worker_port column to sdk_sessions table")),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(5,new Date().toISOString())}ensurePromptTrackingColumns(){this.db.query("PRAGMA table_info(sdk_sessions)").all().some(a=>a.name==="prompt_counter")||(this.db.run("ALTER TABLE sdk_sessions ADD COLUMN prompt_counter INTEGER DEFAULT 0"),m.debug("DB","Added prompt_counter column to sdk_sessions table")),this.db.query("PRAGMA table_info(observations)").all().some(a=>a.name==="prompt_number")||(this.db.run("ALTER TABLE observations ADD COLUMN prompt_number INTEGER"),m.debug("DB","Added prompt_number column to observations table")),this.db.query("PRAGMA table_info(session_summaries)").all().some(a=>a.name==="prompt_number")||(this.db.run("ALTER TABLE session_summaries ADD COLUMN prompt_number INTEGER"),m.debug("DB","Added prompt_number column to session_summaries table")),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(6,new Date().toISOString())}removeSessionSummariesUniqueConstraint(){if(!this.db.query("PRAGMA index_list(session_summaries)").all().some(s=>s.unique===1)){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(7,new Date().toISOString());return}m.debug("DB","Removing UNIQUE constraint from session_summaries.memory_session_id"),this.db.run("BEGIN TRANSACTION"),this.db.run("DROP TABLE IF EXISTS session_summaries_new"),this.db.run(` CREATE TABLE session_summaries_new ( id INTEGER PRIMARY KEY AUTOINCREMENT, memory_session_id TEXT NOT NULL, @@ -96,7 +97,7 @@ ${o.stack}`:` ${o.message}`:this.getLevel()===0&&typeof o=="object"?m=` CREATE INDEX idx_session_summaries_sdk_session ON session_summaries(memory_session_id); CREATE INDEX idx_session_summaries_project ON session_summaries(project); CREATE INDEX idx_session_summaries_created ON session_summaries(created_at_epoch DESC); - `),this.db.run("COMMIT"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(7,new Date().toISOString()),p.debug("DB","Successfully removed UNIQUE constraint from session_summaries.memory_session_id")}addObservationHierarchicalFields(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(8))return;if(this.db.query("PRAGMA table_info(observations)").all().some(n=>n.name==="title")){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(8,new Date().toISOString());return}p.debug("DB","Adding hierarchical fields to observations table"),this.db.run(` + `),this.db.run("COMMIT"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(7,new Date().toISOString()),m.debug("DB","Successfully removed UNIQUE constraint from session_summaries.memory_session_id")}addObservationHierarchicalFields(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(8))return;if(this.db.query("PRAGMA table_info(observations)").all().some(n=>n.name==="title")){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(8,new Date().toISOString());return}m.debug("DB","Adding hierarchical fields to observations table"),this.db.run(` ALTER TABLE observations ADD COLUMN title TEXT; ALTER TABLE observations ADD COLUMN subtitle TEXT; ALTER TABLE observations ADD COLUMN facts TEXT; @@ -104,7 +105,7 @@ ${o.stack}`:` ${o.message}`:this.getLevel()===0&&typeof o=="object"?m=` ALTER TABLE observations ADD COLUMN concepts TEXT; ALTER TABLE observations ADD COLUMN files_read TEXT; ALTER TABLE observations ADD COLUMN files_modified TEXT; - `),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(8,new Date().toISOString()),p.debug("DB","Successfully added hierarchical fields to observations table")}makeObservationsTextNullable(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(9))return;let s=this.db.query("PRAGMA table_info(observations)").all().find(n=>n.name==="text");if(!s||s.notnull===0){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(9,new Date().toISOString());return}p.debug("DB","Making observations.text nullable"),this.db.run("BEGIN TRANSACTION"),this.db.run("DROP TABLE IF EXISTS observations_new"),this.db.run(` + `),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(8,new Date().toISOString()),m.debug("DB","Successfully added hierarchical fields to observations table")}makeObservationsTextNullable(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(9))return;let s=this.db.query("PRAGMA table_info(observations)").all().find(n=>n.name==="text");if(!s||s.notnull===0){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(9,new Date().toISOString());return}m.debug("DB","Making observations.text nullable"),this.db.run("BEGIN TRANSACTION"),this.db.run("DROP TABLE IF EXISTS observations_new"),this.db.run(` CREATE TABLE observations_new ( id INTEGER PRIMARY KEY AUTOINCREMENT, memory_session_id TEXT NOT NULL, @@ -134,7 +135,7 @@ ${o.stack}`:` ${o.message}`:this.getLevel()===0&&typeof o=="object"?m=` CREATE INDEX idx_observations_project ON observations(project); CREATE INDEX idx_observations_type ON observations(type); CREATE INDEX idx_observations_created ON observations(created_at_epoch DESC); - `),this.db.run("COMMIT"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(9,new Date().toISOString()),p.debug("DB","Successfully made observations.text nullable")}createUserPromptsTable(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(10))return;if(this.db.query("PRAGMA table_info(user_prompts)").all().length>0){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(10,new Date().toISOString());return}p.debug("DB","Creating user_prompts table with FTS5 support"),this.db.run("BEGIN TRANSACTION"),this.db.run(` + `),this.db.run("COMMIT"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(9,new Date().toISOString()),m.debug("DB","Successfully made observations.text nullable")}createUserPromptsTable(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(10))return;if(this.db.query("PRAGMA table_info(user_prompts)").all().length>0){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(10,new Date().toISOString());return}m.debug("DB","Creating user_prompts table with FTS5 support"),this.db.run("BEGIN TRANSACTION"),this.db.run(` CREATE TABLE user_prompts ( id INTEGER PRIMARY KEY AUTOINCREMENT, content_session_id TEXT NOT NULL, @@ -172,7 +173,7 @@ ${o.stack}`:` ${o.message}`:this.getLevel()===0&&typeof o=="object"?m=` INSERT INTO user_prompts_fts(rowid, prompt_text) VALUES (new.id, new.prompt_text); END; - `)}catch(s){p.warn("DB","FTS5 not available \u2014 user_prompts_fts skipped (search uses ChromaDB)",{},s)}this.db.run("COMMIT"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(10,new Date().toISOString()),p.debug("DB","Successfully created user_prompts table")}ensureDiscoveryTokensColumn(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(11))return;this.db.query("PRAGMA table_info(observations)").all().some(i=>i.name==="discovery_tokens")||(this.db.run("ALTER TABLE observations ADD COLUMN discovery_tokens INTEGER DEFAULT 0"),p.debug("DB","Added discovery_tokens column to observations table")),this.db.query("PRAGMA table_info(session_summaries)").all().some(i=>i.name==="discovery_tokens")||(this.db.run("ALTER TABLE session_summaries ADD COLUMN discovery_tokens INTEGER DEFAULT 0"),p.debug("DB","Added discovery_tokens column to session_summaries table")),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(11,new Date().toISOString())}createPendingMessagesTable(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(16))return;if(this.db.query("SELECT name FROM sqlite_master WHERE type='table' AND name='pending_messages'").all().length>0){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(16,new Date().toISOString());return}p.debug("DB","Creating pending_messages table"),this.db.run(` + `)}catch(s){m.warn("DB","FTS5 not available \u2014 user_prompts_fts skipped (search uses ChromaDB)",{},s)}this.db.run("COMMIT"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(10,new Date().toISOString()),m.debug("DB","Successfully created user_prompts table")}ensureDiscoveryTokensColumn(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(11))return;this.db.query("PRAGMA table_info(observations)").all().some(i=>i.name==="discovery_tokens")||(this.db.run("ALTER TABLE observations ADD COLUMN discovery_tokens INTEGER DEFAULT 0"),m.debug("DB","Added discovery_tokens column to observations table")),this.db.query("PRAGMA table_info(session_summaries)").all().some(i=>i.name==="discovery_tokens")||(this.db.run("ALTER TABLE session_summaries ADD COLUMN discovery_tokens INTEGER DEFAULT 0"),m.debug("DB","Added discovery_tokens column to session_summaries table")),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(11,new Date().toISOString())}createPendingMessagesTable(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(16))return;if(this.db.query("SELECT name FROM sqlite_master WHERE type='table' AND name='pending_messages'").all().length>0){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(16,new Date().toISOString());return}m.debug("DB","Creating pending_messages table"),this.db.run(` CREATE TABLE pending_messages ( id INTEGER PRIMARY KEY AUTOINCREMENT, session_db_id INTEGER NOT NULL, @@ -192,7 +193,7 @@ ${o.stack}`:` ${o.message}`:this.getLevel()===0&&typeof o=="object"?m=` completed_at_epoch INTEGER, FOREIGN KEY (session_db_id) REFERENCES sdk_sessions(id) ON DELETE CASCADE ) - `),this.db.run("CREATE INDEX IF NOT EXISTS idx_pending_messages_session ON pending_messages(session_db_id)"),this.db.run("CREATE INDEX IF NOT EXISTS idx_pending_messages_status ON pending_messages(status)"),this.db.run("CREATE INDEX IF NOT EXISTS idx_pending_messages_claude_session ON pending_messages(content_session_id)"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(16,new Date().toISOString()),p.debug("DB","pending_messages table created successfully")}renameSessionIdColumns(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(17))return;p.debug("DB","Checking session ID columns for semantic clarity rename");let t=0,s=(n,o,i)=>{let a=this.db.query(`PRAGMA table_info(${n})`).all(),d=a.some(m=>m.name===o);return a.some(m=>m.name===i)?!1:d?(this.db.run(`ALTER TABLE ${n} RENAME COLUMN ${o} TO ${i}`),p.debug("DB",`Renamed ${n}.${o} to ${i}`),!0):(p.warn("DB",`Column ${o} not found in ${n}, skipping rename`),!1)};s("sdk_sessions","claude_session_id","content_session_id")&&t++,s("sdk_sessions","sdk_session_id","memory_session_id")&&t++,s("pending_messages","claude_session_id","content_session_id")&&t++,s("observations","sdk_session_id","memory_session_id")&&t++,s("session_summaries","sdk_session_id","memory_session_id")&&t++,s("user_prompts","claude_session_id","content_session_id")&&t++,this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(17,new Date().toISOString()),t>0?p.debug("DB",`Successfully renamed ${t} session ID columns`):p.debug("DB","No session ID column renames needed (already up to date)")}repairSessionIdColumnRename(){this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(19)||this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(19,new Date().toISOString())}addFailedAtEpochColumn(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(20))return;this.db.query("PRAGMA table_info(pending_messages)").all().some(n=>n.name==="failed_at_epoch")||(this.db.run("ALTER TABLE pending_messages ADD COLUMN failed_at_epoch INTEGER"),p.debug("DB","Added failed_at_epoch column to pending_messages table")),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(20,new Date().toISOString())}addOnUpdateCascadeToForeignKeys(){if(!this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(21)){p.debug("DB","Adding ON UPDATE CASCADE to FK constraints on observations and session_summaries"),this.db.run("PRAGMA foreign_keys = OFF"),this.db.run("BEGIN TRANSACTION");try{this.db.run("DROP TRIGGER IF EXISTS observations_ai"),this.db.run("DROP TRIGGER IF EXISTS observations_ad"),this.db.run("DROP TRIGGER IF EXISTS observations_au"),this.db.run("DROP TABLE IF EXISTS observations_new"),this.db.run(` + `),this.db.run("CREATE INDEX IF NOT EXISTS idx_pending_messages_session ON pending_messages(session_db_id)"),this.db.run("CREATE INDEX IF NOT EXISTS idx_pending_messages_status ON pending_messages(status)"),this.db.run("CREATE INDEX IF NOT EXISTS idx_pending_messages_claude_session ON pending_messages(content_session_id)"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(16,new Date().toISOString()),m.debug("DB","pending_messages table created successfully")}renameSessionIdColumns(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(17))return;m.debug("DB","Checking session ID columns for semantic clarity rename");let t=0,s=(n,o,i)=>{let a=this.db.query(`PRAGMA table_info(${n})`).all(),d=a.some(_=>_.name===o);return a.some(_=>_.name===i)?!1:d?(this.db.run(`ALTER TABLE ${n} RENAME COLUMN ${o} TO ${i}`),m.debug("DB",`Renamed ${n}.${o} to ${i}`),!0):(m.warn("DB",`Column ${o} not found in ${n}, skipping rename`),!1)};s("sdk_sessions","claude_session_id","content_session_id")&&t++,s("sdk_sessions","sdk_session_id","memory_session_id")&&t++,s("pending_messages","claude_session_id","content_session_id")&&t++,s("observations","sdk_session_id","memory_session_id")&&t++,s("session_summaries","sdk_session_id","memory_session_id")&&t++,s("user_prompts","claude_session_id","content_session_id")&&t++,this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(17,new Date().toISOString()),t>0?m.debug("DB",`Successfully renamed ${t} session ID columns`):m.debug("DB","No session ID column renames needed (already up to date)")}repairSessionIdColumnRename(){this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(19)||this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(19,new Date().toISOString())}addFailedAtEpochColumn(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(20))return;this.db.query("PRAGMA table_info(pending_messages)").all().some(n=>n.name==="failed_at_epoch")||(this.db.run("ALTER TABLE pending_messages ADD COLUMN failed_at_epoch INTEGER"),m.debug("DB","Added failed_at_epoch column to pending_messages table")),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(20,new Date().toISOString())}addOnUpdateCascadeToForeignKeys(){if(!this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(21)){m.debug("DB","Adding ON UPDATE CASCADE to FK constraints on observations and session_summaries"),this.db.run("PRAGMA foreign_keys = OFF"),this.db.run("BEGIN TRANSACTION");try{this.db.run("DROP TRIGGER IF EXISTS observations_ai"),this.db.run("DROP TRIGGER IF EXISTS observations_ad"),this.db.run("DROP TRIGGER IF EXISTS observations_au"),this.db.run("DROP TABLE IF EXISTS observations_new"),this.db.run(` CREATE TABLE observations_new ( id INTEGER PRIMARY KEY AUTOINCREMENT, memory_session_id TEXT NOT NULL, @@ -286,15 +287,23 @@ ${o.stack}`:` ${o.message}`:this.getLevel()===0&&typeof o=="object"?m=` INSERT INTO session_summaries_fts(rowid, request, investigated, learned, completed, next_steps, notes) VALUES (new.id, new.request, new.investigated, new.learned, new.completed, new.next_steps, new.notes); END; - `),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(21,new Date().toISOString()),this.db.run("COMMIT"),this.db.run("PRAGMA foreign_keys = ON"),p.debug("DB","Successfully added ON UPDATE CASCADE to FK constraints")}catch(t){throw this.db.run("ROLLBACK"),this.db.run("PRAGMA foreign_keys = ON"),t}}}addObservationContentHashColumn(){if(this.db.query("PRAGMA table_info(observations)").all().some(s=>s.name==="content_hash")){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(22,new Date().toISOString());return}this.db.run("ALTER TABLE observations ADD COLUMN content_hash TEXT"),this.db.run("UPDATE observations SET content_hash = substr(hex(randomblob(8)), 1, 16) WHERE content_hash IS NULL"),this.db.run("CREATE INDEX IF NOT EXISTS idx_observations_content_hash ON observations(content_hash, created_at_epoch)"),p.debug("DB","Added content_hash column to observations table with backfill and index"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(22,new Date().toISOString())}addSessionCustomTitleColumn(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(23))return;this.db.query("PRAGMA table_info(sdk_sessions)").all().some(n=>n.name==="custom_title")||(this.db.run("ALTER TABLE sdk_sessions ADD COLUMN custom_title TEXT"),p.debug("DB","Added custom_title column to sdk_sessions table")),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(23,new Date().toISOString())}updateMemorySessionId(e,t){this.db.prepare(` + `),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(21,new Date().toISOString()),this.db.run("COMMIT"),this.db.run("PRAGMA foreign_keys = ON"),m.debug("DB","Successfully added ON UPDATE CASCADE to FK constraints")}catch(t){throw this.db.run("ROLLBACK"),this.db.run("PRAGMA foreign_keys = ON"),t}}}addObservationContentHashColumn(){if(this.db.query("PRAGMA table_info(observations)").all().some(s=>s.name==="content_hash")){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(22,new Date().toISOString());return}this.db.run("ALTER TABLE observations ADD COLUMN content_hash TEXT"),this.db.run("UPDATE observations SET content_hash = substr(hex(randomblob(8)), 1, 16) WHERE content_hash IS NULL"),this.db.run("CREATE INDEX IF NOT EXISTS idx_observations_content_hash ON observations(content_hash, created_at_epoch)"),m.debug("DB","Added content_hash column to observations table with backfill and index"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(22,new Date().toISOString())}addSessionCustomTitleColumn(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(23))return;this.db.query("PRAGMA table_info(sdk_sessions)").all().some(n=>n.name==="custom_title")||(this.db.run("ALTER TABLE sdk_sessions ADD COLUMN custom_title TEXT"),m.debug("DB","Added custom_title column to sdk_sessions table")),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(23,new Date().toISOString())}addSessionPlatformSourceColumn(){let t=this.db.query("PRAGMA table_info(sdk_sessions)").all().some(i=>i.name==="platform_source"),n=this.db.query("PRAGMA index_list(sdk_sessions)").all().some(i=>i.name==="idx_sdk_sessions_platform_source");this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(24)&&t&&n||(t||(this.db.run(`ALTER TABLE sdk_sessions ADD COLUMN platform_source TEXT NOT NULL DEFAULT '${h}'`),m.debug("DB","Added platform_source column to sdk_sessions table")),this.db.run(` + UPDATE sdk_sessions + SET platform_source = '${h}' + WHERE platform_source IS NULL OR platform_source = '' + `),n||this.db.run("CREATE INDEX IF NOT EXISTS idx_sdk_sessions_platform_source ON sdk_sessions(platform_source)"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(24,new Date().toISOString()))}addObservationModelColumns(){let e=this.db.query("PRAGMA table_info(observations)").all(),t=e.some(n=>n.name==="generated_by_model"),s=e.some(n=>n.name==="relevance_count");t&&s||(t||this.db.run("ALTER TABLE observations ADD COLUMN generated_by_model TEXT"),s||this.db.run("ALTER TABLE observations ADD COLUMN relevance_count INTEGER DEFAULT 0"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(26,new Date().toISOString()))}updateMemorySessionId(e,t){this.db.prepare(` UPDATE sdk_sessions SET memory_session_id = ? WHERE id = ? - `).run(t,e)}ensureMemorySessionIdRegistered(e,t){let s=this.db.prepare(` + `).run(t,e)}markSessionCompleted(e){let t=Date.now(),s=new Date(t).toISOString();this.db.prepare(` + UPDATE sdk_sessions + SET status = 'completed', completed_at = ?, completed_at_epoch = ? + WHERE id = ? + `).run(s,t,e)}ensureMemorySessionIdRegistered(e,t){let s=this.db.prepare(` SELECT id, memory_session_id FROM sdk_sessions WHERE id = ? `).get(e);if(!s)throw new Error(`Session ${e} not found in sdk_sessions`);s.memory_session_id!==t&&(this.db.prepare(` UPDATE sdk_sessions SET memory_session_id = ? WHERE id = ? - `).run(t,e),p.info("DB","Registered memory_session_id before storage (FK fix)",{sessionDbId:e,oldId:s.memory_session_id,newId:t}))}getRecentSummaries(e,t=10){return this.db.prepare(` + `).run(t,e),m.info("DB","Registered memory_session_id before storage (FK fix)",{sessionDbId:e,oldId:s.memory_session_id,newId:t}))}getRecentSummaries(e,t=10){return this.db.prepare(` SELECT request, investigated, learned, completed, next_steps, files_read, files_edited, notes, prompt_number, created_at @@ -317,22 +326,47 @@ ${o.stack}`:` ${o.message}`:this.getLevel()===0&&typeof o=="object"?m=` ORDER BY created_at_epoch DESC LIMIT ? `).all(e,t)}getAllRecentObservations(e=100){return this.db.prepare(` - SELECT id, type, title, subtitle, text, project, prompt_number, created_at, created_at_epoch - FROM observations - ORDER BY created_at_epoch DESC + SELECT + o.id, + o.type, + o.title, + o.subtitle, + o.text, + o.project, + COALESCE(s.platform_source, '${h}') as platform_source, + o.prompt_number, + o.created_at, + o.created_at_epoch + FROM observations o + LEFT JOIN sdk_sessions s ON o.memory_session_id = s.memory_session_id + ORDER BY o.created_at_epoch DESC LIMIT ? `).all(e)}getAllRecentSummaries(e=50){return this.db.prepare(` - SELECT id, request, investigated, learned, completed, next_steps, - files_read, files_edited, notes, project, prompt_number, - created_at, created_at_epoch - FROM session_summaries - ORDER BY created_at_epoch DESC + SELECT + ss.id, + ss.request, + ss.investigated, + ss.learned, + ss.completed, + ss.next_steps, + ss.files_read, + ss.files_edited, + ss.notes, + ss.project, + COALESCE(s.platform_source, '${h}') as platform_source, + ss.prompt_number, + ss.created_at, + ss.created_at_epoch + FROM session_summaries ss + LEFT JOIN sdk_sessions s ON ss.memory_session_id = s.memory_session_id + ORDER BY ss.created_at_epoch DESC LIMIT ? `).all(e)}getAllRecentUserPrompts(e=100){return this.db.prepare(` SELECT up.id, up.content_session_id, s.project, + COALESCE(s.platform_source, '${h}') as platform_source, up.prompt_number, up.prompt_text, up.created_at, @@ -341,16 +375,25 @@ ${o.stack}`:` ${o.message}`:this.getLevel()===0&&typeof o=="object"?m=` LEFT JOIN sdk_sessions s ON up.content_session_id = s.content_session_id ORDER BY up.created_at_epoch DESC LIMIT ? - `).all(e)}getAllProjects(){return this.db.prepare(` + `).all(e)}getAllProjects(e){let t=e?y(e):void 0,s=` SELECT DISTINCT project FROM sdk_sessions WHERE project IS NOT NULL AND project != '' - ORDER BY project ASC - `).all().map(s=>s.project)}getLatestUserPrompt(e){return this.db.prepare(` + `,n=[];return t&&(s+=" AND COALESCE(platform_source, ?) = ?",n.push(h,t)),s+=" ORDER BY project ASC",this.db.prepare(s).all(...n).map(i=>i.project)}getProjectCatalog(){let e=this.db.prepare(` + SELECT + COALESCE(platform_source, '${h}') as platform_source, + project, + MAX(started_at_epoch) as latest_epoch + FROM sdk_sessions + WHERE project IS NOT NULL AND project != '' + GROUP BY COALESCE(platform_source, '${h}'), project + ORDER BY latest_epoch DESC + `).all(),t=[],s=new Set,n={};for(let i of e){let a=y(i.platform_source);n[a]||(n[a]=[]),n[a].includes(i.project)||n[a].push(i.project),s.has(i.project)||(s.add(i.project),t.push(i.project))}let o=he(Object.keys(n));return{projects:t,sources:o,projectsBySource:Object.fromEntries(o.map(i=>[i,n[i]||[]]))}}getLatestUserPrompt(e){return this.db.prepare(` SELECT up.*, s.memory_session_id, - s.project + s.project, + COALESCE(s.platform_source, '${h}') as platform_source FROM user_prompts up JOIN sdk_sessions s ON up.content_session_id = s.content_session_id WHERE up.content_session_id = ? @@ -382,13 +425,13 @@ ${o.stack}`:` ${o.message}`:this.getLevel()===0&&typeof o=="object"?m=` SELECT * FROM observations WHERE id = ? - `).get(e)||null}getObservationsByIds(e,t={}){if(e.length===0)return[];let{orderBy:s="date_desc",limit:n,project:o,type:i,concepts:a,files:d}=t,c=s==="date_asc"?"ASC":"DESC",m=n?`LIMIT ${n}`:"",l=e.map(()=>"?").join(","),T=[...e],E=[];if(o&&(E.push("project = ?"),T.push(o)),i)if(Array.isArray(i)){let u=i.map(()=>"?").join(",");E.push(`type IN (${u})`),T.push(...i)}else E.push("type = ?"),T.push(i);if(a){let u=Array.isArray(a)?a:[a],S=u.map(()=>"EXISTS (SELECT 1 FROM json_each(concepts) WHERE value = ?)");T.push(...u),E.push(`(${S.join(" OR ")})`)}if(d){let u=Array.isArray(d)?d:[d],S=u.map(()=>"(EXISTS (SELECT 1 FROM json_each(files_read) WHERE value LIKE ?) OR EXISTS (SELECT 1 FROM json_each(files_modified) WHERE value LIKE ?))");u.forEach(g=>{T.push(`%${g}%`,`%${g}%`)}),E.push(`(${S.join(" OR ")})`)}let f=E.length>0?`WHERE id IN (${l}) AND ${E.join(" AND ")}`:`WHERE id IN (${l})`;return this.db.prepare(` + `).get(e)||null}getObservationsByIds(e,t={}){if(e.length===0)return[];let{orderBy:s="date_desc",limit:n,project:o,type:i,concepts:a,files:d}=t,u=s==="date_asc"?"ASC":"DESC",_=n?`LIMIT ${n}`:"",l=e.map(()=>"?").join(","),E=[...e],T=[];if(o&&(T.push("project = ?"),E.push(o)),i)if(Array.isArray(i)){let p=i.map(()=>"?").join(",");T.push(`type IN (${p})`),E.push(...i)}else T.push("type = ?"),E.push(i);if(a){let p=Array.isArray(a)?a:[a],R=p.map(()=>"EXISTS (SELECT 1 FROM json_each(concepts) WHERE value = ?)");E.push(...p),T.push(`(${R.join(" OR ")})`)}if(d){let p=Array.isArray(d)?d:[d],R=p.map(()=>"(EXISTS (SELECT 1 FROM json_each(files_read) WHERE value LIKE ?) OR EXISTS (SELECT 1 FROM json_each(files_modified) WHERE value LIKE ?))");p.forEach(g=>{E.push(`%${g}%`,`%${g}%`)}),T.push(`(${R.join(" OR ")})`)}let O=T.length>0?`WHERE id IN (${l}) AND ${T.join(" AND ")}`:`WHERE id IN (${l})`;return this.db.prepare(` SELECT * FROM observations - ${f} - ORDER BY created_at_epoch ${c} - ${m} - `).all(...T)}getSummaryForSession(e){return this.db.prepare(` + ${O} + ORDER BY created_at_epoch ${u} + ${_} + `).all(...E)}getSummaryForSession(e){return this.db.prepare(` SELECT request, investigated, learned, completed, next_steps, files_read, files_edited, notes, prompt_number, created_at, @@ -401,32 +444,40 @@ ${o.stack}`:` ${o.message}`:this.getLevel()===0&&typeof o=="object"?m=` SELECT files_read, files_modified FROM observations WHERE memory_session_id = ? - `).all(e),n=new Set,o=new Set;for(let i of s){if(i.files_read){let a=JSON.parse(i.files_read);Array.isArray(a)&&a.forEach(d=>n.add(d))}if(i.files_modified){let a=JSON.parse(i.files_modified);Array.isArray(a)&&a.forEach(d=>o.add(d))}}return{filesRead:Array.from(n),filesModified:Array.from(o)}}getSessionById(e){return this.db.prepare(` - SELECT id, content_session_id, memory_session_id, project, user_prompt, custom_title + `).all(e),n=new Set,o=new Set;for(let i of s)Q(i.files_read).forEach(a=>n.add(a)),Q(i.files_modified).forEach(a=>o.add(a));return{filesRead:Array.from(n),filesModified:Array.from(o)}}getSessionById(e){return this.db.prepare(` + SELECT id, content_session_id, memory_session_id, project, + COALESCE(platform_source, '${h}') as platform_source, + user_prompt, custom_title FROM sdk_sessions WHERE id = ? LIMIT 1 `).get(e)||null}getSdkSessionsBySessionIds(e){if(e.length===0)return[];let t=e.map(()=>"?").join(",");return this.db.prepare(` - SELECT id, content_session_id, memory_session_id, project, user_prompt, custom_title, + SELECT id, content_session_id, memory_session_id, project, + COALESCE(platform_source, '${h}') as platform_source, + user_prompt, custom_title, started_at, started_at_epoch, completed_at, completed_at_epoch, status FROM sdk_sessions WHERE memory_session_id IN (${t}) ORDER BY started_at_epoch DESC `).all(...e)}getPromptNumberFromUserPrompts(e){return this.db.prepare(` SELECT COUNT(*) as count FROM user_prompts WHERE content_session_id = ? - `).get(e).count}createSDKSession(e,t,s,n){let o=new Date,i=o.getTime(),a=this.db.prepare(` - SELECT id FROM sdk_sessions WHERE content_session_id = ? - `).get(e);return a?(t&&this.db.prepare(` + `).get(e).count}createSDKSession(e,t,s,n,o){let i=new Date,a=i.getTime(),d=$t(n,o),u=d.platformSource??h,_=this.db.prepare(` + SELECT id, platform_source FROM sdk_sessions WHERE content_session_id = ? + `).get(e);if(_){if(t&&this.db.prepare(` UPDATE sdk_sessions SET project = ? WHERE content_session_id = ? AND (project IS NULL OR project = '') - `).run(t,e),n&&this.db.prepare(` + `).run(t,e),d.customTitle&&this.db.prepare(` UPDATE sdk_sessions SET custom_title = ? WHERE content_session_id = ? AND custom_title IS NULL - `).run(n,e),a.id):(this.db.prepare(` + `).run(d.customTitle,e),d.platformSource){let E=_.platform_source?.trim()?y(_.platform_source):void 0;if(!E)this.db.prepare(` + UPDATE sdk_sessions SET platform_source = ? + WHERE content_session_id = ? + AND COALESCE(platform_source, '') = '' + `).run(d.platformSource,e);else if(E!==d.platformSource)throw new Error(`Platform source conflict for session ${e}: existing=${E}, received=${d.platformSource}`)}return _.id}return this.db.prepare(` INSERT INTO sdk_sessions - (content_session_id, memory_session_id, project, user_prompt, custom_title, started_at, started_at_epoch, status) - VALUES (?, NULL, ?, ?, ?, ?, ?, 'active') - `).run(e,t,s,n||null,o.toISOString(),i),this.db.prepare("SELECT id FROM sdk_sessions WHERE content_session_id = ?").get(e).id)}saveUserPrompt(e,t,s){let n=new Date,o=n.getTime();return this.db.prepare(` + (content_session_id, memory_session_id, project, platform_source, user_prompt, custom_title, started_at, started_at_epoch, status) + VALUES (?, NULL, ?, ?, ?, ?, ?, ?, 'active') + `).run(e,t,u,s,d.customTitle||null,i.toISOString(),a),this.db.prepare("SELECT id FROM sdk_sessions WHERE content_session_id = ?").get(e).id}saveUserPrompt(e,t,s){let n=new Date,o=n.getTime();return this.db.prepare(` INSERT INTO user_prompts (content_session_id, prompt_number, prompt_text, created_at, created_at_epoch) VALUES (?, ?, ?, ?, ?) @@ -435,37 +486,40 @@ ${o.stack}`:` ${o.message}`:this.getLevel()===0&&typeof o=="object"?m=` FROM user_prompts WHERE content_session_id = ? AND prompt_number = ? LIMIT 1 - `).get(e,t)?.prompt_text??null}storeObservation(e,t,s,n,o=0,i){let a=i??Date.now(),d=new Date(a).toISOString(),c=w(e,s.title,s.narrative),m=$(this.db,c,a);if(m)return{id:m.id,createdAtEpoch:m.created_at_epoch};let T=this.db.prepare(` + `).get(e,t)?.prompt_text??null}storeObservation(e,t,s,n,o=0,i,a){let d=i??Date.now(),u=new Date(d).toISOString(),_=P(e,s.title,s.narrative),l=H(this.db,_,d);if(l)return{id:l.id,createdAtEpoch:l.created_at_epoch};let T=this.db.prepare(` INSERT INTO observations (memory_session_id, project, type, title, subtitle, facts, narrative, concepts, - files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch) - VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) - `).run(e,t,s.type,s.title,s.subtitle,JSON.stringify(s.facts),s.narrative,JSON.stringify(s.concepts),JSON.stringify(s.files_read),JSON.stringify(s.files_modified),n||null,o,c,d,a);return{id:Number(T.lastInsertRowid),createdAtEpoch:a}}storeSummary(e,t,s,n,o=0,i){let a=i??Date.now(),d=new Date(a).toISOString(),m=this.db.prepare(` + files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch, + generated_by_model) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `).run(e,t,s.type,s.title,s.subtitle,JSON.stringify(s.facts),s.narrative,JSON.stringify(s.concepts),JSON.stringify(s.files_read),JSON.stringify(s.files_modified),n||null,o,_,u,d,a||null);return{id:Number(T.lastInsertRowid),createdAtEpoch:d}}storeSummary(e,t,s,n,o=0,i){let a=i??Date.now(),d=new Date(a).toISOString(),_=this.db.prepare(` INSERT INTO session_summaries (memory_session_id, project, request, investigated, learned, completed, next_steps, notes, prompt_number, discovery_tokens, created_at, created_at_epoch) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) - `).run(e,t,s.request,s.investigated,s.learned,s.completed,s.next_steps,s.notes,n||null,o,d,a);return{id:Number(m.lastInsertRowid),createdAtEpoch:a}}storeObservations(e,t,s,n,o,i=0,a){let d=a??Date.now(),c=new Date(d).toISOString();return this.db.transaction(()=>{let l=[],T=this.db.prepare(` + `).run(e,t,s.request,s.investigated,s.learned,s.completed,s.next_steps,s.notes,n||null,o,d,a);return{id:Number(_.lastInsertRowid),createdAtEpoch:a}}storeObservations(e,t,s,n,o,i=0,a,d){let u=a??Date.now(),_=new Date(u).toISOString();return this.db.transaction(()=>{let E=[],T=this.db.prepare(` INSERT INTO observations (memory_session_id, project, type, title, subtitle, facts, narrative, concepts, - files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch) - VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) - `);for(let f of s){let R=w(e,f.title,f.narrative),u=$(this.db,R,d);if(u){l.push(u.id);continue}let S=T.run(e,t,f.type,f.title,f.subtitle,JSON.stringify(f.facts),f.narrative,JSON.stringify(f.concepts),JSON.stringify(f.files_read),JSON.stringify(f.files_modified),o||null,i,R,c,d);l.push(Number(S.lastInsertRowid))}let E=null;if(n){let R=this.db.prepare(` + files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch, + generated_by_model) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `);for(let S of s){let p=P(e,S.title,S.narrative),R=H(this.db,p,u);if(R){E.push(R.id);continue}let g=T.run(e,t,S.type,S.title,S.subtitle,JSON.stringify(S.facts),S.narrative,JSON.stringify(S.concepts),JSON.stringify(S.files_read),JSON.stringify(S.files_modified),o||null,i,p,_,u,d||null);E.push(Number(g.lastInsertRowid))}let O=null;if(n){let p=this.db.prepare(` INSERT INTO session_summaries (memory_session_id, project, request, investigated, learned, completed, next_steps, notes, prompt_number, discovery_tokens, created_at, created_at_epoch) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) - `).run(e,t,n.request,n.investigated,n.learned,n.completed,n.next_steps,n.notes,o||null,i,c,d);E=Number(R.lastInsertRowid)}return{observationIds:l,summaryId:E,createdAtEpoch:d}})()}storeObservationsAndMarkComplete(e,t,s,n,o,i,a,d=0,c){let m=c??Date.now(),l=new Date(m).toISOString();return this.db.transaction(()=>{let E=[],f=this.db.prepare(` + `).run(e,t,n.request,n.investigated,n.learned,n.completed,n.next_steps,n.notes,o||null,i,_,u);O=Number(p.lastInsertRowid)}return{observationIds:E,summaryId:O,createdAtEpoch:u}})()}storeObservationsAndMarkComplete(e,t,s,n,o,i,a,d=0,u,_){let l=u??Date.now(),E=new Date(l).toISOString();return this.db.transaction(()=>{let O=[],S=this.db.prepare(` INSERT INTO observations (memory_session_id, project, type, title, subtitle, facts, narrative, concepts, - files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch) - VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) - `);for(let S of s){let g=w(e,S.title,S.narrative),h=$(this.db,g,m);if(h){E.push(h.id);continue}let Et=f.run(e,t,S.type,S.title,S.subtitle,JSON.stringify(S.facts),S.narrative,JSON.stringify(S.concepts),JSON.stringify(S.files_read),JSON.stringify(S.files_modified),a||null,d,g,l,m);E.push(Number(Et.lastInsertRowid))}let R;if(n){let g=this.db.prepare(` + files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch, + generated_by_model) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `);for(let g of s){let b=P(e,g.title,g.narrative),_e=H(this.db,b,l);if(_e){O.push(_e.id);continue}let Ot=S.run(e,t,g.type,g.title,g.subtitle,JSON.stringify(g.facts),g.narrative,JSON.stringify(g.concepts),JSON.stringify(g.files_read),JSON.stringify(g.files_modified),a||null,d,b,E,l,_||null);O.push(Number(Ot.lastInsertRowid))}let p;if(n){let b=this.db.prepare(` INSERT INTO session_summaries (memory_session_id, project, request, investigated, learned, completed, next_steps, notes, prompt_number, discovery_tokens, created_at, created_at_epoch) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) - `).run(e,t,n.request,n.investigated,n.learned,n.completed,n.next_steps,n.notes,a||null,d,l,m);R=Number(g.lastInsertRowid)}return this.db.prepare(` + `).run(e,t,n.request,n.investigated,n.learned,n.completed,n.next_steps,n.notes,a||null,d,E,l);p=Number(b.lastInsertRowid)}return this.db.prepare(` UPDATE pending_messages SET status = 'processed', @@ -473,46 +527,46 @@ ${o.stack}`:` ${o.message}`:this.getLevel()===0&&typeof o=="object"?m=` tool_input = NULL, tool_response = NULL WHERE id = ? AND status = 'processing' - `).run(m,o),{observationIds:E,summaryId:R,createdAtEpoch:m}})()}getSessionSummariesByIds(e,t={}){if(e.length===0)return[];let{orderBy:s="date_desc",limit:n,project:o}=t,i=s==="date_asc"?"ASC":"DESC",a=n?`LIMIT ${n}`:"",d=e.map(()=>"?").join(","),c=[...e],m=o?`WHERE id IN (${d}) AND project = ?`:`WHERE id IN (${d})`;return o&&c.push(o),this.db.prepare(` + `).run(l,o),{observationIds:O,summaryId:p,createdAtEpoch:l}})()}getSessionSummariesByIds(e,t={}){if(e.length===0)return[];let{orderBy:s="date_desc",limit:n,project:o}=t,i=s==="date_asc"?"ASC":"DESC",a=n?`LIMIT ${n}`:"",d=e.map(()=>"?").join(","),u=[...e],_=o?`WHERE id IN (${d}) AND project = ?`:`WHERE id IN (${d})`;return o&&u.push(o),this.db.prepare(` SELECT * FROM session_summaries - ${m} + ${_} ORDER BY created_at_epoch ${i} ${a} - `).all(...c)}getUserPromptsByIds(e,t={}){if(e.length===0)return[];let{orderBy:s="date_desc",limit:n,project:o}=t,i=s==="date_asc"?"ASC":"DESC",a=n?`LIMIT ${n}`:"",d=e.map(()=>"?").join(","),c=[...e],m=o?"AND s.project = ?":"";return o&&c.push(o),this.db.prepare(` + `).all(...u)}getUserPromptsByIds(e,t={}){if(e.length===0)return[];let{orderBy:s="date_desc",limit:n,project:o}=t,i=s==="date_asc"?"ASC":"DESC",a=n?`LIMIT ${n}`:"",d=e.map(()=>"?").join(","),u=[...e],_=o?"AND s.project = ?":"";return o&&u.push(o),this.db.prepare(` SELECT up.*, s.project, s.memory_session_id FROM user_prompts up JOIN sdk_sessions s ON up.content_session_id = s.content_session_id - WHERE up.id IN (${d}) ${m} + WHERE up.id IN (${d}) ${_} ORDER BY up.created_at_epoch ${i} ${a} - `).all(...c)}getTimelineAroundTimestamp(e,t=10,s=10,n){return this.getTimelineAroundObservation(null,e,t,s,n)}getTimelineAroundObservation(e,t,s=10,n=10,o){let i=o?"AND project = ?":"",a=o?[o]:[],d,c;if(e!==null){let u=` + `).all(...u)}getTimelineAroundTimestamp(e,t=10,s=10,n){return this.getTimelineAroundObservation(null,e,t,s,n)}getTimelineAroundObservation(e,t,s=10,n=10,o){let i=o?"AND project = ?":"",a=o?[o]:[],d,u;if(e!==null){let p=` SELECT id, created_at_epoch FROM observations WHERE id <= ? ${i} ORDER BY id DESC LIMIT ? - `,S=` + `,R=` SELECT id, created_at_epoch FROM observations WHERE id >= ? ${i} ORDER BY id ASC LIMIT ? - `;try{let g=this.db.prepare(u).all(e,...a,s+1),h=this.db.prepare(S).all(e,...a,n+1);if(g.length===0&&h.length===0)return{observations:[],sessions:[],prompts:[]};d=g.length>0?g[g.length-1].created_at_epoch:t,c=h.length>0?h[h.length-1].created_at_epoch:t}catch(g){return p.error("DB","Error getting boundary observations",void 0,{error:g,project:o}),{observations:[],sessions:[],prompts:[]}}}else{let u=` + `;try{let g=this.db.prepare(p).all(e,...a,s+1),b=this.db.prepare(R).all(e,...a,n+1);if(g.length===0&&b.length===0)return{observations:[],sessions:[],prompts:[]};d=g.length>0?g[g.length-1].created_at_epoch:t,u=b.length>0?b[b.length-1].created_at_epoch:t}catch(g){return m.error("DB","Error getting boundary observations",void 0,{error:g,project:o}),{observations:[],sessions:[],prompts:[]}}}else{let p=` SELECT created_at_epoch FROM observations WHERE created_at_epoch <= ? ${i} ORDER BY created_at_epoch DESC LIMIT ? - `,S=` + `,R=` SELECT created_at_epoch FROM observations WHERE created_at_epoch >= ? ${i} ORDER BY created_at_epoch ASC LIMIT ? - `;try{let g=this.db.prepare(u).all(t,...a,s),h=this.db.prepare(S).all(t,...a,n+1);if(g.length===0&&h.length===0)return{observations:[],sessions:[],prompts:[]};d=g.length>0?g[g.length-1].created_at_epoch:t,c=h.length>0?h[h.length-1].created_at_epoch:t}catch(g){return p.error("DB","Error getting boundary timestamps",void 0,{error:g,project:o}),{observations:[],sessions:[],prompts:[]}}}let m=` + `;try{let g=this.db.prepare(p).all(t,...a,s),b=this.db.prepare(R).all(t,...a,n+1);if(g.length===0&&b.length===0)return{observations:[],sessions:[],prompts:[]};d=g.length>0?g[g.length-1].created_at_epoch:t,u=b.length>0?b[b.length-1].created_at_epoch:t}catch(g){return m.error("DB","Error getting boundary timestamps",void 0,{error:g,project:o}),{observations:[],sessions:[],prompts:[]}}}let _=` SELECT * FROM observations WHERE created_at_epoch >= ? AND created_at_epoch <= ? ${i} @@ -522,13 +576,13 @@ ${o.stack}`:` ${o.message}`:this.getLevel()===0&&typeof o=="object"?m=` FROM session_summaries WHERE created_at_epoch >= ? AND created_at_epoch <= ? ${i} ORDER BY created_at_epoch ASC - `,T=` + `,E=` SELECT up.*, s.project, s.memory_session_id FROM user_prompts up JOIN sdk_sessions s ON up.content_session_id = s.content_session_id WHERE up.created_at_epoch >= ? AND up.created_at_epoch <= ? ${i.replace("project","s.project")} ORDER BY up.created_at_epoch ASC - `,E=this.db.prepare(m).all(d,c,...a),f=this.db.prepare(l).all(d,c,...a),R=this.db.prepare(T).all(d,c,...a);return{observations:E,sessions:f.map(u=>({id:u.id,memory_session_id:u.memory_session_id,project:u.project,request:u.request,completed:u.completed,next_steps:u.next_steps,created_at:u.created_at,created_at_epoch:u.created_at_epoch})),prompts:R.map(u=>({id:u.id,content_session_id:u.content_session_id,prompt_number:u.prompt_number,prompt_text:u.prompt_text,project:u.project,created_at:u.created_at,created_at_epoch:u.created_at_epoch}))}}getPromptById(e){return this.db.prepare(` + `,T=this.db.prepare(_).all(d,u,...a),O=this.db.prepare(l).all(d,u,...a),S=this.db.prepare(E).all(d,u,...a);return{observations:T,sessions:O.map(p=>({id:p.id,memory_session_id:p.memory_session_id,project:p.project,request:p.request,completed:p.completed,next_steps:p.next_steps,created_at:p.created_at,created_at_epoch:p.created_at_epoch})),prompts:S.map(p=>({id:p.id,content_session_id:p.content_session_id,prompt_number:p.prompt_number,prompt_text:p.prompt_text,project:p.project,created_at:p.created_at,created_at_epoch:p.created_at_epoch}))}}getPromptById(e){return this.db.prepare(` SELECT p.id, p.content_session_id, @@ -570,14 +624,14 @@ ${o.stack}`:` ${o.message}`:this.getLevel()===0&&typeof o=="object"?m=` WHERE id = ? LIMIT 1 `).get(e)||null}getOrCreateManualSession(e){let t=`manual-${e}`,s=`manual-content-${e}`;if(this.db.prepare("SELECT memory_session_id FROM sdk_sessions WHERE memory_session_id = ?").get(t))return t;let o=new Date;return this.db.prepare(` - INSERT INTO sdk_sessions (memory_session_id, content_session_id, project, started_at, started_at_epoch, status) - VALUES (?, ?, ?, ?, ?, 'active') - `).run(t,s,e,o.toISOString(),o.getTime()),p.info("SESSION","Created manual session",{memorySessionId:t,project:e}),t}close(){this.db.close()}importSdkSession(e){let t=this.db.prepare("SELECT id FROM sdk_sessions WHERE content_session_id = ?").get(e.content_session_id);return t?{imported:!1,id:t.id}:{imported:!0,id:this.db.prepare(` + INSERT INTO sdk_sessions (memory_session_id, content_session_id, project, platform_source, started_at, started_at_epoch, status) + VALUES (?, ?, ?, ?, ?, ?, 'active') + `).run(t,s,e,h,o.toISOString(),o.getTime()),m.info("SESSION","Created manual session",{memorySessionId:t,project:e}),t}close(){this.db.close()}importSdkSession(e){let t=this.db.prepare("SELECT id FROM sdk_sessions WHERE content_session_id = ?").get(e.content_session_id);return t?{imported:!1,id:t.id}:{imported:!0,id:this.db.prepare(` INSERT INTO sdk_sessions ( - content_session_id, memory_session_id, project, user_prompt, + content_session_id, memory_session_id, project, platform_source, user_prompt, started_at, started_at_epoch, completed_at, completed_at_epoch, status - ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?) - `).run(e.content_session_id,e.memory_session_id,e.project,e.user_prompt,e.started_at,e.started_at_epoch,e.completed_at,e.completed_at_epoch,e.status).lastInsertRowid}}importSessionSummary(e){let t=this.db.prepare("SELECT id FROM session_summaries WHERE memory_session_id = ?").get(e.memory_session_id);return t?{imported:!1,id:t.id}:{imported:!0,id:this.db.prepare(` + ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `).run(e.content_session_id,e.memory_session_id,e.project,y(e.platform_source),e.user_prompt,e.started_at,e.started_at_epoch,e.completed_at,e.completed_at_epoch,e.status).lastInsertRowid}}importSessionSummary(e){let t=this.db.prepare("SELECT id FROM session_summaries WHERE memory_session_id = ?").get(e.memory_session_id);return t?{imported:!1,id:t.id}:{imported:!0,id:this.db.prepare(` INSERT INTO session_summaries ( memory_session_id, project, request, investigated, learned, completed, next_steps, files_read, files_edited, notes, @@ -600,54 +654,106 @@ ${o.stack}`:` ${o.message}`:this.getLevel()===0&&typeof o=="object"?m=` content_session_id, prompt_number, prompt_text, created_at, created_at_epoch ) VALUES (?, ?, ?, ?, ?) - `).run(e.content_session_id,e.prompt_number,e.prompt_text,e.created_at,e.created_at_epoch).lastInsertRowid}}};var ge=M(require("path"),1);function fe(r){if(!r||r.trim()==="")return p.warn("PROJECT_NAME","Empty cwd provided, using fallback",{cwd:r}),"unknown-project";let e=ge.default.basename(r);if(e===""){if(process.platform==="win32"){let s=r.match(/^([A-Z]):\\/i);if(s){let o=`drive-${s[1].toUpperCase()}`;return p.info("PROJECT_NAME","Drive root detected",{cwd:r,projectName:o}),o}}return p.warn("PROJECT_NAME","Root directory detected, using fallback",{cwd:r}),"unknown-project"}return e}var be=M(require("path"),1),he=require("os");var N=require("fs"),X=require("path"),Se=require("os"),P=class{static DEFAULTS={CLAUDE_MEM_MODEL:"claude-sonnet-4-5",CLAUDE_MEM_CONTEXT_OBSERVATIONS:"50",CLAUDE_MEM_WORKER_PORT:"37777",CLAUDE_MEM_WORKER_HOST:"127.0.0.1",CLAUDE_MEM_SKIP_TOOLS:"ListMcpResourcesTool,SlashCommand,Skill,TodoWrite,AskUserQuestion",CLAUDE_MEM_PROVIDER:"claude",CLAUDE_MEM_CLAUDE_AUTH_METHOD:"cli",CLAUDE_MEM_GEMINI_API_KEY:"",CLAUDE_MEM_GEMINI_MODEL:"gemini-2.5-flash-lite",CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED:"true",CLAUDE_MEM_OPENROUTER_API_KEY:"",CLAUDE_MEM_OPENROUTER_MODEL:"xiaomi/mimo-v2-flash:free",CLAUDE_MEM_OPENROUTER_SITE_URL:"",CLAUDE_MEM_OPENROUTER_APP_NAME:"claude-mem",CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES:"20",CLAUDE_MEM_OPENROUTER_MAX_TOKENS:"100000",CLAUDE_MEM_DATA_DIR:(0,X.join)((0,Se.homedir)(),".claude-mem"),CLAUDE_MEM_LOG_LEVEL:"INFO",CLAUDE_MEM_PYTHON_VERSION:"3.13",CLAUDE_CODE_PATH:"",CLAUDE_MEM_MODE:"code",CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT:"true",CLAUDE_MEM_CONTEXT_FULL_COUNT:"0",CLAUDE_MEM_CONTEXT_FULL_FIELD:"narrative",CLAUDE_MEM_CONTEXT_SESSION_COUNT:"10",CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY:"true",CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE:"false",CLAUDE_MEM_CONTEXT_SHOW_TERMINAL_OUTPUT:"true",CLAUDE_MEM_FOLDER_CLAUDEMD_ENABLED:"false",CLAUDE_MEM_MAX_CONCURRENT_AGENTS:"2",CLAUDE_MEM_EXCLUDED_PROJECTS:"",CLAUDE_MEM_FOLDER_MD_EXCLUDE:"[]",CLAUDE_MEM_SEMANTIC_INJECT:"false",CLAUDE_MEM_SEMANTIC_INJECT_LIMIT:"5",CLAUDE_MEM_TIER_ROUTING_ENABLED:"true",CLAUDE_MEM_TIER_SIMPLE_MODEL:"haiku",CLAUDE_MEM_TIER_SUMMARY_MODEL:"",CLAUDE_MEM_CHROMA_ENABLED:"true",CLAUDE_MEM_CHROMA_MODE:"local",CLAUDE_MEM_CHROMA_HOST:"127.0.0.1",CLAUDE_MEM_CHROMA_PORT:"8000",CLAUDE_MEM_CHROMA_SSL:"false",CLAUDE_MEM_CHROMA_API_KEY:"",CLAUDE_MEM_CHROMA_TENANT:"default_tenant",CLAUDE_MEM_CHROMA_DATABASE:"default_database"};static getAllDefaults(){return{...this.DEFAULTS}}static get(e){return process.env[e]??this.DEFAULTS[e]}static getInt(e){let t=this.get(e);return parseInt(t,10)}static getBool(e){let t=this.get(e);return t==="true"||t===!0}static applyEnvOverrides(e){let t={...e};for(let s of Object.keys(this.DEFAULTS))process.env[s]!==void 0&&(t[s]=process.env[s]);return t}static loadFromFile(e){try{if(!(0,N.existsSync)(e)){let i=this.getAllDefaults();try{let a=(0,X.dirname)(e);(0,N.existsSync)(a)||(0,N.mkdirSync)(a,{recursive:!0}),(0,N.writeFileSync)(e,JSON.stringify(i,null,2),"utf-8"),console.log("[SETTINGS] Created settings file with defaults:",e)}catch(a){console.warn("[SETTINGS] Failed to create settings file, using in-memory defaults:",e,a)}return this.applyEnvOverrides(i)}let t=(0,N.readFileSync)(e,"utf-8"),s=JSON.parse(t),n=s;if(s.env&&typeof s.env=="object"){n=s.env;try{(0,N.writeFileSync)(e,JSON.stringify(n,null,2),"utf-8"),console.log("[SETTINGS] Migrated settings file from nested to flat schema:",e)}catch(i){console.warn("[SETTINGS] Failed to auto-migrate settings file:",e,i)}}let o={...this.DEFAULTS};for(let i of Object.keys(this.DEFAULTS))n[i]!==void 0&&(o[i]=n[i]);return this.applyEnvOverrides(o)}catch(t){return console.warn("[SETTINGS] Failed to load settings, using defaults:",e,t),this.applyEnvOverrides(this.getAllDefaults())}}};var y=require("fs"),j=require("path");var O=class r{static instance=null;activeMode=null;modesDir;constructor(){let e=le(),t=[(0,j.join)(e,"modes"),(0,j.join)(e,"..","plugin","modes")],s=t.find(n=>(0,y.existsSync)(n));this.modesDir=s||t[0]}static getInstance(){return r.instance||(r.instance=new r),r.instance}parseInheritance(e){let t=e.split("--");if(t.length===1)return{hasParent:!1,parentId:"",overrideId:""};if(t.length>2)throw new Error(`Invalid mode inheritance: ${e}. Only one level of inheritance supported (parent--override)`);return{hasParent:!0,parentId:t[0],overrideId:e}}isPlainObject(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}deepMerge(e,t){let s={...e};for(let n in t){let o=t[n],i=e[n];this.isPlainObject(o)&&this.isPlainObject(i)?s[n]=this.deepMerge(i,o):s[n]=o}return s}loadModeFile(e){let t=(0,j.join)(this.modesDir,`${e}.json`);if(!(0,y.existsSync)(t))throw new Error(`Mode file not found: ${t}`);let s=(0,y.readFileSync)(t,"utf-8");return JSON.parse(s)}loadMode(e){let t=this.parseInheritance(e);if(!t.hasParent)try{let d=this.loadModeFile(e);return this.activeMode=d,p.debug("SYSTEM",`Loaded mode: ${d.name} (${e})`,void 0,{types:d.observation_types.map(c=>c.id),concepts:d.observation_concepts.map(c=>c.id)}),d}catch{if(p.warn("SYSTEM",`Mode file not found: ${e}, falling back to 'code'`),e==="code")throw new Error("Critical: code.json mode file missing");return this.loadMode("code")}let{parentId:s,overrideId:n}=t,o;try{o=this.loadMode(s)}catch{p.warn("SYSTEM",`Parent mode '${s}' not found for ${e}, falling back to 'code'`),o=this.loadMode("code")}let i;try{i=this.loadModeFile(n),p.debug("SYSTEM",`Loaded override file: ${n} for parent ${s}`)}catch{return p.warn("SYSTEM",`Override file '${n}' not found, using parent mode '${s}' only`),this.activeMode=o,o}if(!i)return p.warn("SYSTEM",`Invalid override file: ${n}, using parent mode '${s}' only`),this.activeMode=o,o;let a=this.deepMerge(o,i);return this.activeMode=a,p.debug("SYSTEM",`Loaded mode with inheritance: ${a.name} (${e} = ${s} + ${n})`,void 0,{parent:s,override:n,types:a.observation_types.map(d=>d.id),concepts:a.observation_concepts.map(d=>d.id)}),a}getActiveMode(){if(!this.activeMode)throw new Error("No mode loaded. Call loadMode() first.");return this.activeMode}getObservationTypes(){return this.getActiveMode().observation_types}getObservationConcepts(){return this.getActiveMode().observation_concepts}getTypeIcon(e){return this.getObservationTypes().find(s=>s.id===e)?.emoji||"\u{1F4DD}"}getWorkEmoji(e){return this.getObservationTypes().find(s=>s.id===e)?.work_emoji||"\u{1F4DD}"}validateType(e){return this.getObservationTypes().some(t=>t.id===e)}getTypeLabel(e){return this.getObservationTypes().find(s=>s.id===e)?.label||e}};function J(){let r=be.default.join((0,he.homedir)(),".claude-mem","settings.json"),e=P.loadFromFile(r),t=O.getInstance().getActiveMode(),s=new Set(t.observation_types.map(o=>o.id)),n=new Set(t.observation_concepts.map(o=>o.id));return{totalObservationCount:parseInt(e.CLAUDE_MEM_CONTEXT_OBSERVATIONS,10),fullObservationCount:parseInt(e.CLAUDE_MEM_CONTEXT_FULL_COUNT,10),sessionCount:parseInt(e.CLAUDE_MEM_CONTEXT_SESSION_COUNT,10),showReadTokens:e.CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS==="true",showWorkTokens:e.CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS==="true",showSavingsAmount:e.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT==="true",showSavingsPercent:e.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT==="true",observationTypes:s,observationConcepts:n,fullObservationField:e.CLAUDE_MEM_CONTEXT_FULL_FIELD,showLastSummary:e.CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY==="true",showLastMessage:e.CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE==="true"}}var _={reset:"\x1B[0m",bright:"\x1B[1m",dim:"\x1B[2m",cyan:"\x1B[36m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",gray:"\x1B[90m",red:"\x1B[31m"},Oe=4,Q=1;function z(r){let e=(r.title?.length||0)+(r.subtitle?.length||0)+(r.narrative?.length||0)+JSON.stringify(r.facts||[]).length;return Math.ceil(e/Oe)}function Z(r){let e=r.length,t=r.reduce((i,a)=>i+z(a),0),s=r.reduce((i,a)=>i+(a.discovery_tokens||0),0),n=s-t,o=s>0?Math.round(n/s*100):0;return{totalObservations:e,totalReadTokens:t,totalDiscoveryTokens:s,savings:n,savingsPercent:o}}function Mt(r){return O.getInstance().getWorkEmoji(r)}function v(r,e){let t=z(r),s=r.discovery_tokens||0,n=Mt(r.type),o=s>0?`${n} ${s.toLocaleString()}`:"-";return{readTokens:t,discoveryTokens:s,discoveryDisplay:o,workEmoji:n}}function G(r){return r.showReadTokens||r.showWorkTokens||r.showSavingsAmount||r.showSavingsPercent}var Re=M(require("path"),1),H=require("fs");function ee(r,e,t){let s=Array.from(t.observationTypes),n=s.map(()=>"?").join(","),o=Array.from(t.observationConcepts),i=o.map(()=>"?").join(",");return r.db.prepare(` + `).run(e.content_session_id,e.prompt_number,e.prompt_text,e.created_at,e.created_at_epoch).lastInsertRowid}}};var Ae=require("os"),Re=D(require("path"),1);function Ft(r){return r==="~"||r.startsWith("~/")?r.replace(/^~/,(0,Ae.homedir)()):r}function Ne(r){if(!r||r.trim()==="")return m.warn("PROJECT_NAME","Empty cwd provided, using fallback",{cwd:r}),"unknown-project";let e=Ft(r),t=Re.default.basename(e);if(t===""){if(process.platform==="win32"){let n=r.match(/^([A-Z]):\\/i);if(n){let i=`drive-${n[1].toUpperCase()}`;return m.info("PROJECT_NAME","Drive root detected",{cwd:r,projectName:i}),i}}return m.warn("PROJECT_NAME","Root directory detected, using fallback",{cwd:r}),"unknown-project"}return t}var Ce=D(require("path"),1),Ie=require("os");var C=require("fs"),v=require("path"),Z=require("os"),j=class{static DEFAULTS={CLAUDE_MEM_MODEL:"claude-sonnet-4-6",CLAUDE_MEM_CONTEXT_OBSERVATIONS:"50",CLAUDE_MEM_WORKER_PORT:"37777",CLAUDE_MEM_WORKER_HOST:"127.0.0.1",CLAUDE_MEM_SKIP_TOOLS:"ListMcpResourcesTool,SlashCommand,Skill,TodoWrite,AskUserQuestion",CLAUDE_MEM_PROVIDER:"claude",CLAUDE_MEM_CLAUDE_AUTH_METHOD:"cli",CLAUDE_MEM_GEMINI_API_KEY:"",CLAUDE_MEM_GEMINI_MODEL:"gemini-2.5-flash-lite",CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED:"true",CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES:"20",CLAUDE_MEM_GEMINI_MAX_TOKENS:"100000",CLAUDE_MEM_OPENROUTER_API_KEY:"",CLAUDE_MEM_OPENROUTER_MODEL:"xiaomi/mimo-v2-flash:free",CLAUDE_MEM_OPENROUTER_SITE_URL:"",CLAUDE_MEM_OPENROUTER_APP_NAME:"claude-mem",CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES:"20",CLAUDE_MEM_OPENROUTER_MAX_TOKENS:"100000",CLAUDE_MEM_DATA_DIR:(0,v.join)((0,Z.homedir)(),".claude-mem"),CLAUDE_MEM_LOG_LEVEL:"INFO",CLAUDE_MEM_PYTHON_VERSION:"3.13",CLAUDE_CODE_PATH:"",CLAUDE_MEM_MODE:"code",CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT:"true",CLAUDE_MEM_CONTEXT_FULL_COUNT:"0",CLAUDE_MEM_CONTEXT_FULL_FIELD:"narrative",CLAUDE_MEM_CONTEXT_SESSION_COUNT:"10",CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY:"true",CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE:"false",CLAUDE_MEM_CONTEXT_SHOW_TERMINAL_OUTPUT:"true",CLAUDE_MEM_FOLDER_CLAUDEMD_ENABLED:"false",CLAUDE_MEM_FOLDER_USE_LOCAL_MD:"false",CLAUDE_MEM_TRANSCRIPTS_ENABLED:"true",CLAUDE_MEM_TRANSCRIPTS_CONFIG_PATH:(0,v.join)((0,Z.homedir)(),".claude-mem","transcript-watch.json"),CLAUDE_MEM_MAX_CONCURRENT_AGENTS:"2",CLAUDE_MEM_EXCLUDED_PROJECTS:"",CLAUDE_MEM_FOLDER_MD_EXCLUDE:"[]",CLAUDE_MEM_SEMANTIC_INJECT:"false",CLAUDE_MEM_SEMANTIC_INJECT_LIMIT:"5",CLAUDE_MEM_TIER_ROUTING_ENABLED:"true",CLAUDE_MEM_TIER_SIMPLE_MODEL:"haiku",CLAUDE_MEM_TIER_SUMMARY_MODEL:"",CLAUDE_MEM_CHROMA_ENABLED:"true",CLAUDE_MEM_CHROMA_MODE:"local",CLAUDE_MEM_CHROMA_HOST:"127.0.0.1",CLAUDE_MEM_CHROMA_PORT:"8000",CLAUDE_MEM_CHROMA_SSL:"false",CLAUDE_MEM_CHROMA_API_KEY:"",CLAUDE_MEM_CHROMA_TENANT:"default_tenant",CLAUDE_MEM_CHROMA_DATABASE:"default_database"};static getAllDefaults(){return{...this.DEFAULTS}}static get(e){return process.env[e]??this.DEFAULTS[e]}static getInt(e){let t=this.get(e);return parseInt(t,10)}static getBool(e){let t=this.get(e);return t==="true"||t===!0}static applyEnvOverrides(e){let t={...e};for(let s of Object.keys(this.DEFAULTS))process.env[s]!==void 0&&(t[s]=process.env[s]);return t}static loadFromFile(e){try{if(!(0,C.existsSync)(e)){let i=this.getAllDefaults();try{let a=(0,v.dirname)(e);(0,C.existsSync)(a)||(0,C.mkdirSync)(a,{recursive:!0}),(0,C.writeFileSync)(e,JSON.stringify(i,null,2),"utf-8"),console.log("[SETTINGS] Created settings file with defaults:",e)}catch(a){console.warn("[SETTINGS] Failed to create settings file, using in-memory defaults:",e,a)}return this.applyEnvOverrides(i)}let t=(0,C.readFileSync)(e,"utf-8"),s=JSON.parse(t),n=s;if(s.env&&typeof s.env=="object"){n=s.env;try{(0,C.writeFileSync)(e,JSON.stringify(n,null,2),"utf-8"),console.log("[SETTINGS] Migrated settings file from nested to flat schema:",e)}catch(i){console.warn("[SETTINGS] Failed to auto-migrate settings file:",e,i)}}let o={...this.DEFAULTS};for(let i of Object.keys(this.DEFAULTS))n[i]!==void 0&&(o[i]=n[i]);return this.applyEnvOverrides(o)}catch(t){return console.warn("[SETTINGS] Failed to load settings, using defaults:",e,t),this.applyEnvOverrides(this.getAllDefaults())}}};var U=require("fs"),G=require("path");var A=class r{static instance=null;activeMode=null;modesDir;constructor(){let e=Se(),t=[(0,G.join)(e,"modes"),(0,G.join)(e,"..","plugin","modes")],s=t.find(n=>(0,U.existsSync)(n));this.modesDir=s||t[0]}static getInstance(){return r.instance||(r.instance=new r),r.instance}parseInheritance(e){let t=e.split("--");if(t.length===1)return{hasParent:!1,parentId:"",overrideId:""};if(t.length>2)throw new Error(`Invalid mode inheritance: ${e}. Only one level of inheritance supported (parent--override)`);return{hasParent:!0,parentId:t[0],overrideId:e}}isPlainObject(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}deepMerge(e,t){let s={...e};for(let n in t){let o=t[n],i=e[n];this.isPlainObject(o)&&this.isPlainObject(i)?s[n]=this.deepMerge(i,o):s[n]=o}return s}loadModeFile(e){let t=(0,G.join)(this.modesDir,`${e}.json`);if(!(0,U.existsSync)(t))throw new Error(`Mode file not found: ${t}`);let s=(0,U.readFileSync)(t,"utf-8");return JSON.parse(s)}loadMode(e){let t=this.parseInheritance(e);if(!t.hasParent)try{let d=this.loadModeFile(e);return this.activeMode=d,m.debug("SYSTEM",`Loaded mode: ${d.name} (${e})`,void 0,{types:d.observation_types.map(u=>u.id),concepts:d.observation_concepts.map(u=>u.id)}),d}catch{if(m.warn("SYSTEM",`Mode file not found: ${e}, falling back to 'code'`),e==="code")throw new Error("Critical: code.json mode file missing");return this.loadMode("code")}let{parentId:s,overrideId:n}=t,o;try{o=this.loadMode(s)}catch{m.warn("SYSTEM",`Parent mode '${s}' not found for ${e}, falling back to 'code'`),o=this.loadMode("code")}let i;try{i=this.loadModeFile(n),m.debug("SYSTEM",`Loaded override file: ${n} for parent ${s}`)}catch{return m.warn("SYSTEM",`Override file '${n}' not found, using parent mode '${s}' only`),this.activeMode=o,o}if(!i)return m.warn("SYSTEM",`Invalid override file: ${n}, using parent mode '${s}' only`),this.activeMode=o,o;let a=this.deepMerge(o,i);return this.activeMode=a,m.debug("SYSTEM",`Loaded mode with inheritance: ${a.name} (${e} = ${s} + ${n})`,void 0,{parent:s,override:n,types:a.observation_types.map(d=>d.id),concepts:a.observation_concepts.map(d=>d.id)}),a}getActiveMode(){if(!this.activeMode)throw new Error("No mode loaded. Call loadMode() first.");return this.activeMode}getObservationTypes(){return this.getActiveMode().observation_types}getObservationConcepts(){return this.getActiveMode().observation_concepts}getTypeIcon(e){return this.getObservationTypes().find(s=>s.id===e)?.emoji||"\u{1F4DD}"}getWorkEmoji(e){return this.getObservationTypes().find(s=>s.id===e)?.work_emoji||"\u{1F4DD}"}validateType(e){return this.getObservationTypes().some(t=>t.id===e)}getTypeLabel(e){return this.getObservationTypes().find(s=>s.id===e)?.label||e}};function ee(){let r=Ce.default.join((0,Ie.homedir)(),".claude-mem","settings.json"),e=j.loadFromFile(r),t=A.getInstance().getActiveMode(),s=new Set(t.observation_types.map(o=>o.id)),n=new Set(t.observation_concepts.map(o=>o.id));return{totalObservationCount:parseInt(e.CLAUDE_MEM_CONTEXT_OBSERVATIONS,10),fullObservationCount:parseInt(e.CLAUDE_MEM_CONTEXT_FULL_COUNT,10),sessionCount:parseInt(e.CLAUDE_MEM_CONTEXT_SESSION_COUNT,10),showReadTokens:e.CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS==="true",showWorkTokens:e.CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS==="true",showSavingsAmount:e.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT==="true",showSavingsPercent:e.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT==="true",observationTypes:s,observationConcepts:n,fullObservationField:e.CLAUDE_MEM_CONTEXT_FULL_FIELD,showLastSummary:e.CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY==="true",showLastMessage:e.CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE==="true"}}var c={reset:"\x1B[0m",bright:"\x1B[1m",dim:"\x1B[2m",cyan:"\x1B[36m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",gray:"\x1B[90m",red:"\x1B[31m"},Le=4,te=1;function se(r){let e=(r.title?.length||0)+(r.subtitle?.length||0)+(r.narrative?.length||0)+JSON.stringify(r.facts||[]).length;return Math.ceil(e/Le)}function re(r){let e=r.length,t=r.reduce((i,a)=>i+se(a),0),s=r.reduce((i,a)=>i+(a.discovery_tokens||0),0),n=s-t,o=s>0?Math.round(n/s*100):0;return{totalObservations:e,totalReadTokens:t,totalDiscoveryTokens:s,savings:n,savingsPercent:o}}function wt(r){return A.getInstance().getWorkEmoji(r)}function x(r,e){let t=se(r),s=r.discovery_tokens||0,n=wt(r.type),o=s>0?`${n} ${s.toLocaleString()}`:"-";return{readTokens:t,discoveryTokens:s,discoveryDisplay:o,workEmoji:n}}function B(r){return r.showReadTokens||r.showWorkTokens||r.showSavingsAmount||r.showSavingsPercent}var De=D(require("path"),1),W=require("fs");var ye=/[\s\S]*?<\/system-reminder>/g;function ne(r,e,t,s){let n=Array.from(t.observationTypes),o=n.map(()=>"?").join(","),i=Array.from(t.observationConcepts),a=i.map(()=>"?").join(",");return r.db.prepare(` SELECT - id, memory_session_id, type, title, subtitle, narrative, - facts, concepts, files_read, files_modified, discovery_tokens, - created_at, created_at_epoch - FROM observations - WHERE project = ? - AND type IN (${n}) + o.id, + o.memory_session_id, + COALESCE(s.platform_source, 'claude') as platform_source, + o.type, + o.title, + o.subtitle, + o.narrative, + o.facts, + o.concepts, + o.files_read, + o.files_modified, + o.discovery_tokens, + o.created_at, + o.created_at_epoch + FROM observations o + LEFT JOIN sdk_sessions s ON o.memory_session_id = s.memory_session_id + WHERE o.project = ? + AND type IN (${o}) AND EXISTS ( - SELECT 1 FROM json_each(concepts) - WHERE value IN (${i}) + SELECT 1 FROM json_each(o.concepts) + WHERE value IN (${a}) ) - ORDER BY created_at_epoch DESC + ${s?"AND COALESCE(s.platform_source, 'claude') = ?":""} + ORDER BY o.created_at_epoch DESC LIMIT ? - `).all(e,...s,...o,t.totalObservationCount)}function te(r,e,t){return r.db.prepare(` - SELECT id, memory_session_id, request, investigated, learned, completed, next_steps, created_at, created_at_epoch - FROM session_summaries - WHERE project = ? - ORDER BY created_at_epoch DESC - LIMIT ? - `).all(e,t.sessionCount+Q)}function Ce(r,e,t){let s=Array.from(t.observationTypes),n=s.map(()=>"?").join(","),o=Array.from(t.observationConcepts),i=o.map(()=>"?").join(","),a=e.map(()=>"?").join(",");return r.db.prepare(` + `).all(e,...n,...i,...s?[s]:[],t.totalObservationCount)}function oe(r,e,t,s){return r.db.prepare(` SELECT - id, memory_session_id, type, title, subtitle, narrative, - facts, concepts, files_read, files_modified, discovery_tokens, - created_at, created_at_epoch, project - FROM observations - WHERE project IN (${a}) - AND type IN (${n}) + ss.id, + ss.memory_session_id, + COALESCE(s.platform_source, 'claude') as platform_source, + ss.request, + ss.investigated, + ss.learned, + ss.completed, + ss.next_steps, + ss.created_at, + ss.created_at_epoch + FROM session_summaries ss + LEFT JOIN sdk_sessions s ON ss.memory_session_id = s.memory_session_id + WHERE ss.project = ? + ${s?"AND COALESCE(s.platform_source, 'claude') = ?":""} + ORDER BY ss.created_at_epoch DESC + LIMIT ? + `).all(e,...s?[s]:[],t.sessionCount+te)}function Me(r,e,t,s){let n=Array.from(t.observationTypes),o=n.map(()=>"?").join(","),i=Array.from(t.observationConcepts),a=i.map(()=>"?").join(","),d=e.map(()=>"?").join(",");return r.db.prepare(` + SELECT + o.id, + o.memory_session_id, + COALESCE(s.platform_source, 'claude') as platform_source, + o.type, + o.title, + o.subtitle, + o.narrative, + o.facts, + o.concepts, + o.files_read, + o.files_modified, + o.discovery_tokens, + o.created_at, + o.created_at_epoch, + o.project + FROM observations o + LEFT JOIN sdk_sessions s ON o.memory_session_id = s.memory_session_id + WHERE o.project IN (${d}) + AND type IN (${o}) AND EXISTS ( - SELECT 1 FROM json_each(concepts) - WHERE value IN (${i}) + SELECT 1 FROM json_each(o.concepts) + WHERE value IN (${a}) ) - ORDER BY created_at_epoch DESC + ${s?"AND COALESCE(s.platform_source, 'claude') = ?":""} + ORDER BY o.created_at_epoch DESC LIMIT ? - `).all(...e,...s,...o,t.totalObservationCount)}function Ne(r,e,t){let s=e.map(()=>"?").join(",");return r.db.prepare(` - SELECT id, memory_session_id, request, investigated, learned, completed, next_steps, created_at, created_at_epoch, project - FROM session_summaries - WHERE project IN (${s}) - ORDER BY created_at_epoch DESC + `).all(...e,...n,...i,...s?[s]:[],t.totalObservationCount)}function ve(r,e,t,s){let n=e.map(()=>"?").join(",");return r.db.prepare(` + SELECT + ss.id, + ss.memory_session_id, + COALESCE(s.platform_source, 'claude') as platform_source, + ss.request, + ss.investigated, + ss.learned, + ss.completed, + ss.next_steps, + ss.created_at, + ss.created_at_epoch, + ss.project + FROM session_summaries ss + LEFT JOIN sdk_sessions s ON ss.memory_session_id = s.memory_session_id + WHERE ss.project IN (${n}) + ${s?"AND COALESCE(s.platform_source, 'claude') = ?":""} + ORDER BY ss.created_at_epoch DESC LIMIT ? - `).all(...e,t.sessionCount+Q)}function Lt(r){return r.replace(/\//g,"-")}function yt(r){try{if(!(0,H.existsSync)(r))return{userMessage:"",assistantMessage:""};let e=(0,H.readFileSync)(r,"utf-8").trim();if(!e)return{userMessage:"",assistantMessage:""};let t=e.split(` -`).filter(n=>n.trim()),s="";for(let n=t.length-1;n>=0;n--)try{let o=t[n];if(!o.includes('"type":"assistant"'))continue;let i=JSON.parse(o);if(i.type==="assistant"&&i.message?.content&&Array.isArray(i.message.content)){let a="";for(let d of i.message.content)d.type==="text"&&(a+=d.text);if(a=a.replace(/[\s\S]*?<\/system-reminder>/g,"").trim(),a){s=a;break}}}catch(o){p.debug("PARSER","Skipping malformed transcript line",{lineIndex:n},o);continue}return{userMessage:"",assistantMessage:s}}catch(e){return p.failure("WORKER","Failed to extract prior messages from transcript",{transcriptPath:r},e),{userMessage:"",assistantMessage:""}}}function se(r,e,t,s){if(!e.showLastMessage||r.length===0)return{userMessage:"",assistantMessage:""};let n=r.find(d=>d.memory_session_id!==t);if(!n)return{userMessage:"",assistantMessage:""};let o=n.memory_session_id,i=Lt(s),a=Re.default.join(A,"projects",i,`${o}.jsonl`);return yt(a)}function Ie(r,e){let t=e[0]?.id;return r.map((s,n)=>{let o=n===0?null:e[n+1];return{...s,displayEpoch:o?o.created_at_epoch:s.created_at_epoch,displayTime:o?o.created_at:s.created_at,shouldShowLink:s.id!==t}})}function re(r,e){let t=[...r.map(s=>({type:"observation",data:s})),...e.map(s=>({type:"summary",data:s}))];return t.sort((s,n)=>{let o=s.type==="observation"?s.data.created_at_epoch:s.data.displayEpoch,i=n.type==="observation"?n.data.created_at_epoch:n.data.displayEpoch;return o-i}),t}function Ae(r,e){return new Set(r.slice(0,e).map(t=>t.id))}function Me(){let r=new Date,e=r.toLocaleDateString("en-CA"),t=r.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0}).toLowerCase().replace(" ",""),s=r.toLocaleTimeString("en-US",{timeZoneName:"short"}).split(" ").pop();return`${e} ${t} ${s}`}function Le(r){return[`# $CMEM ${r} ${Me()}`,""]}function ye(){return[`Legend: \u{1F3AF}session ${O.getInstance().getActiveMode().observation_types.map(t=>`${t.emoji}${t.id}`).join(" ")}`,"Format: ID TIME TYPE TITLE","Fetch details: get_observations([IDs]) | Search: mem-search skill",""]}function ve(){return[]}function De(){return[]}function Ue(r,e){let t=[],s=[`${r.totalObservations} obs (${r.totalReadTokens.toLocaleString()}t read)`,`${r.totalDiscoveryTokens.toLocaleString()}t work`];return r.totalDiscoveryTokens>0&&(e.showSavingsAmount||e.showSavingsPercent)&&(e.showSavingsPercent?s.push(`${r.savingsPercent}% savings`):e.showSavingsAmount&&s.push(`${r.savings.toLocaleString()}t saved`)),t.push(`Stats: ${s.join(" | ")}`),t.push(""),t}function xe(r){return[`### ${r}`]}function ke(r){return r.toLowerCase().replace(" am","a").replace(" pm","p")}function we(r,e,t){let s=r.title||"Untitled",n=O.getInstance().getTypeIcon(r.type),o=e?ke(e):'"';return`${r.id} ${o} ${n} ${s}`}function $e(r,e,t,s){let n=[],o=r.title||"Untitled",i=O.getInstance().getTypeIcon(r.type),a=e?ke(e):'"',{readTokens:d,discoveryDisplay:c}=v(r,s);n.push(`**${r.id}** ${a} ${i} **${o}**`),t&&n.push(t);let m=[];return s.showReadTokens&&m.push(`~${d}t`),s.showWorkTokens&&m.push(c),m.length>0&&n.push(m.join(" ")),n.push(""),n}function Fe(r,e){return[`S${r.id} ${r.request||"Session started"} (${e})`]}function D(r,e){return e?[`**${r}**: ${e}`,""]:[]}function Pe(r){return r.assistantMessage?["","---","","**Previously**","",`A: ${r.assistantMessage}`,""]:[]}function Xe(r,e){return["",`Access ${Math.round(r/1e3)}k tokens of past work via get_observations([IDs]) or mem-search skill.`]}function je(r){return`# $CMEM ${r} ${Me()} + `).all(...e,...s?[s]:[],t.sessionCount+te)}function Pt(r){return r.replace(/\//g,"-")}function Ht(r){try{if(!(0,W.existsSync)(r))return{userMessage:"",assistantMessage:""};let e=(0,W.readFileSync)(r,"utf-8").trim();if(!e)return{userMessage:"",assistantMessage:""};let t=e.split(` +`).filter(n=>n.trim()),s="";for(let n=t.length-1;n>=0;n--)try{let o=t[n];if(!o.includes('"type":"assistant"'))continue;let i=JSON.parse(o);if(i.type==="assistant"&&i.message?.content&&Array.isArray(i.message.content)){let a="";for(let d of i.message.content)d.type==="text"&&(a+=d.text);if(a=a.replace(ye,"").trim(),a){s=a;break}}}catch(o){m.debug("PARSER","Skipping malformed transcript line",{lineIndex:n},o);continue}return{userMessage:"",assistantMessage:s}}catch(e){return m.failure("WORKER","Failed to extract prior messages from transcript",{transcriptPath:r},e),{userMessage:"",assistantMessage:""}}}function ie(r,e,t,s){if(!e.showLastMessage||r.length===0)return{userMessage:"",assistantMessage:""};let n=r.find(d=>d.memory_session_id!==t);if(!n)return{userMessage:"",assistantMessage:""};let o=n.memory_session_id,i=Pt(s),a=De.default.join(L,"projects",i,`${o}.jsonl`);return Ht(a)}function Ue(r,e){let t=e[0]?.id;return r.map((s,n)=>{let o=n===0?null:e[n+1];return{...s,displayEpoch:o?o.created_at_epoch:s.created_at_epoch,displayTime:o?o.created_at:s.created_at,shouldShowLink:s.id!==t}})}function ae(r,e){let t=[...r.map(s=>({type:"observation",data:s})),...e.map(s=>({type:"summary",data:s}))];return t.sort((s,n)=>{let o=s.type==="observation"?s.data.created_at_epoch:s.data.displayEpoch,i=n.type==="observation"?n.data.created_at_epoch:n.data.displayEpoch;return o-i}),t}function xe(r,e){return new Set(r.slice(0,e).map(t=>t.id))}function ke(){let r=new Date,e=r.toLocaleDateString("en-CA"),t=r.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0}).toLowerCase().replace(" ",""),s=r.toLocaleTimeString("en-US",{timeZoneName:"short"}).split(" ").pop();return`${e} ${t} ${s}`}function $e(r){return[`# $CMEM ${r} ${ke()}`,""]}function Fe(){return[`Legend: \u{1F3AF}session ${A.getInstance().getActiveMode().observation_types.map(t=>`${t.emoji}${t.id}`).join(" ")}`,"Format: ID TIME TYPE TITLE","Fetch details: get_observations([IDs]) | Search: mem-search skill",""]}function we(){return[]}function Pe(){return[]}function He(r,e){let t=[],s=[`${r.totalObservations} obs (${r.totalReadTokens.toLocaleString()}t read)`,`${r.totalDiscoveryTokens.toLocaleString()}t work`];return r.totalDiscoveryTokens>0&&(e.showSavingsAmount||e.showSavingsPercent)&&(e.showSavingsPercent?s.push(`${r.savingsPercent}% savings`):e.showSavingsAmount&&s.push(`${r.savings.toLocaleString()}t saved`)),t.push(`Stats: ${s.join(" | ")}`),t.push(""),t}function Xe(r){return[`### ${r}`]}function je(r){return r.toLowerCase().replace(" am","a").replace(" pm","p")}function Ge(r,e,t){let s=r.title||"Untitled",n=A.getInstance().getTypeIcon(r.type),o=e?je(e):'"';return`${r.id} ${o} ${n} ${s}`}function Be(r,e,t,s){let n=[],o=r.title||"Untitled",i=A.getInstance().getTypeIcon(r.type),a=e?je(e):'"',{readTokens:d,discoveryDisplay:u}=x(r,s);n.push(`**${r.id}** ${a} ${i} **${o}**`),t&&n.push(t);let _=[];return s.showReadTokens&&_.push(`~${d}t`),s.showWorkTokens&&_.push(u),_.length>0&&n.push(_.join(" ")),n.push(""),n}function We(r,e){return[`S${r.id} ${r.request||"Session started"} (${e})`]}function k(r,e){return e?[`**${r}**: ${e}`,""]:[]}function Ye(r){return r.assistantMessage?["","---","","**Previously**","",`A: ${r.assistantMessage}`,""]:[]}function qe(r,e){return["",`Access ${Math.round(r/1e3)}k tokens of past work via get_observations([IDs]) or mem-search skill.`]}function Ve(r){return`# $CMEM ${r} ${ke()} -No previous sessions found.`}function Ge(){let r=new Date,e=r.toLocaleDateString("en-CA"),t=r.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0}).toLowerCase().replace(" ",""),s=r.toLocaleTimeString("en-US",{timeZoneName:"short"}).split(" ").pop();return`${e} ${t} ${s}`}function He(r){return["",`${_.bright}${_.cyan}[${r}] recent context, ${Ge()}${_.reset}`,`${_.gray}${"\u2500".repeat(60)}${_.reset}`,""]}function Be(){let e=O.getInstance().getActiveMode().observation_types.map(t=>`${t.emoji} ${t.id}`).join(" | ");return[`${_.dim}Legend: session-request | ${e}${_.reset}`,""]}function We(){return[`${_.bright}Column Key${_.reset}`,`${_.dim} Read: Tokens to read this observation (cost to learn it now)${_.reset}`,`${_.dim} Work: Tokens spent on work that produced this record ( research, building, deciding)${_.reset}`,""]}function Ye(){return[`${_.dim}Context Index: This semantic index (titles, types, files, tokens) is usually sufficient to understand past work.${_.reset}`,"",`${_.dim}When you need implementation details, rationale, or debugging context:${_.reset}`,`${_.dim} - Fetch by ID: get_observations([IDs]) for observations visible in this index${_.reset}`,`${_.dim} - Search history: Use the mem-search skill for past decisions, bugs, and deeper research${_.reset}`,`${_.dim} - Trust this index over re-reading code for past decisions and learnings${_.reset}`,""]}function qe(r,e){let t=[];if(t.push(`${_.bright}${_.cyan}Context Economics${_.reset}`),t.push(`${_.dim} Loading: ${r.totalObservations} observations (${r.totalReadTokens.toLocaleString()} tokens to read)${_.reset}`),t.push(`${_.dim} Work investment: ${r.totalDiscoveryTokens.toLocaleString()} tokens spent on research, building, and decisions${_.reset}`),r.totalDiscoveryTokens>0&&(e.showSavingsAmount||e.showSavingsPercent)){let s=" Your savings: ";e.showSavingsAmount&&e.showSavingsPercent?s+=`${r.savings.toLocaleString()} tokens (${r.savingsPercent}% reduction from reuse)`:e.showSavingsAmount?s+=`${r.savings.toLocaleString()} tokens`:s+=`${r.savingsPercent}% reduction from reuse`,t.push(`${_.green}${s}${_.reset}`)}return t.push(""),t}function Ve(r){return[`${_.bright}${_.cyan}${r}${_.reset}`,""]}function Ke(r){return[`${_.dim}${r}${_.reset}`]}function Je(r,e,t,s){let n=r.title||"Untitled",o=O.getInstance().getTypeIcon(r.type),{readTokens:i,discoveryTokens:a,workEmoji:d}=v(r,s),c=t?`${_.dim}${e}${_.reset}`:" ".repeat(e.length),m=s.showReadTokens&&i>0?`${_.dim}(~${i}t)${_.reset}`:"",l=s.showWorkTokens&&a>0?`${_.dim}(${d} ${a.toLocaleString()}t)${_.reset}`:"";return` ${_.dim}#${r.id}${_.reset} ${c} ${o} ${n} ${m} ${l}`}function Qe(r,e,t,s,n){let o=[],i=r.title||"Untitled",a=O.getInstance().getTypeIcon(r.type),{readTokens:d,discoveryTokens:c,workEmoji:m}=v(r,n),l=t?`${_.dim}${e}${_.reset}`:" ".repeat(e.length),T=n.showReadTokens&&d>0?`${_.dim}(~${d}t)${_.reset}`:"",E=n.showWorkTokens&&c>0?`${_.dim}(${m} ${c.toLocaleString()}t)${_.reset}`:"";return o.push(` ${_.dim}#${r.id}${_.reset} ${l} ${a} ${_.bright}${i}${_.reset}`),s&&o.push(` ${_.dim}${s}${_.reset}`),(T||E)&&o.push(` ${T} ${E}`),o.push(""),o}function ze(r,e){let t=`${r.request||"Session started"} (${e})`;return[`${_.yellow}#S${r.id}${_.reset} ${t}`,""]}function U(r,e,t){return e?[`${t}${r}:${_.reset} ${e}`,""]:[]}function Ze(r){return r.assistantMessage?["","---","",`${_.bright}${_.magenta}Previously${_.reset}`,"",`${_.dim}A: ${r.assistantMessage}${_.reset}`,""]:[]}function et(r,e){let t=Math.round(r/1e3);return["",`${_.dim}Access ${t}k tokens of past research & decisions for just ${e.toLocaleString()}t. Use the claude-mem skill to access memories by ID.${_.reset}`]}function tt(r){return` -${_.bright}${_.cyan}[${r}] recent context, ${Ge()}${_.reset} -${_.gray}${"\u2500".repeat(60)}${_.reset} +No previous sessions found.`}function Ke(){let r=new Date,e=r.toLocaleDateString("en-CA"),t=r.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0}).toLowerCase().replace(" ",""),s=r.toLocaleTimeString("en-US",{timeZoneName:"short"}).split(" ").pop();return`${e} ${t} ${s}`}function Je(r){return["",`${c.bright}${c.cyan}[${r}] recent context, ${Ke()}${c.reset}`,`${c.gray}${"\u2500".repeat(60)}${c.reset}`,""]}function ze(){let e=A.getInstance().getActiveMode().observation_types.map(t=>`${t.emoji} ${t.id}`).join(" | ");return[`${c.dim}Legend: session-request | ${e}${c.reset}`,""]}function Qe(){return[`${c.bright}Column Key${c.reset}`,`${c.dim} Read: Tokens to read this observation (cost to learn it now)${c.reset}`,`${c.dim} Work: Tokens spent on work that produced this record ( research, building, deciding)${c.reset}`,""]}function Ze(){return[`${c.dim}Context Index: This semantic index (titles, types, files, tokens) is usually sufficient to understand past work.${c.reset}`,"",`${c.dim}When you need implementation details, rationale, or debugging context:${c.reset}`,`${c.dim} - Fetch by ID: get_observations([IDs]) for observations visible in this index${c.reset}`,`${c.dim} - Search history: Use the mem-search skill for past decisions, bugs, and deeper research${c.reset}`,`${c.dim} - Trust this index over re-reading code for past decisions and learnings${c.reset}`,""]}function et(r,e){let t=[];if(t.push(`${c.bright}${c.cyan}Context Economics${c.reset}`),t.push(`${c.dim} Loading: ${r.totalObservations} observations (${r.totalReadTokens.toLocaleString()} tokens to read)${c.reset}`),t.push(`${c.dim} Work investment: ${r.totalDiscoveryTokens.toLocaleString()} tokens spent on research, building, and decisions${c.reset}`),r.totalDiscoveryTokens>0&&(e.showSavingsAmount||e.showSavingsPercent)){let s=" Your savings: ";e.showSavingsAmount&&e.showSavingsPercent?s+=`${r.savings.toLocaleString()} tokens (${r.savingsPercent}% reduction from reuse)`:e.showSavingsAmount?s+=`${r.savings.toLocaleString()} tokens`:s+=`${r.savingsPercent}% reduction from reuse`,t.push(`${c.green}${s}${c.reset}`)}return t.push(""),t}function tt(r){return[`${c.bright}${c.cyan}${r}${c.reset}`,""]}function st(r){return[`${c.dim}${r}${c.reset}`]}function rt(r,e,t,s){let n=r.title||"Untitled",o=A.getInstance().getTypeIcon(r.type),{readTokens:i,discoveryTokens:a,workEmoji:d}=x(r,s),u=t?`${c.dim}${e}${c.reset}`:" ".repeat(e.length),_=s.showReadTokens&&i>0?`${c.dim}(~${i}t)${c.reset}`:"",l=s.showWorkTokens&&a>0?`${c.dim}(${d} ${a.toLocaleString()}t)${c.reset}`:"";return` ${c.dim}#${r.id}${c.reset} ${u} ${o} ${n} ${_} ${l}`}function nt(r,e,t,s,n){let o=[],i=r.title||"Untitled",a=A.getInstance().getTypeIcon(r.type),{readTokens:d,discoveryTokens:u,workEmoji:_}=x(r,n),l=t?`${c.dim}${e}${c.reset}`:" ".repeat(e.length),E=n.showReadTokens&&d>0?`${c.dim}(~${d}t)${c.reset}`:"",T=n.showWorkTokens&&u>0?`${c.dim}(${_} ${u.toLocaleString()}t)${c.reset}`:"";return o.push(` ${c.dim}#${r.id}${c.reset} ${l} ${a} ${c.bright}${i}${c.reset}`),s&&o.push(` ${c.dim}${s}${c.reset}`),(E||T)&&o.push(` ${E} ${T}`),o.push(""),o}function ot(r,e){let t=`${r.request||"Session started"} (${e})`;return[`${c.yellow}#S${r.id}${c.reset} ${t}`,""]}function $(r,e,t){return e?[`${t}${r}:${c.reset} ${e}`,""]:[]}function it(r){return r.assistantMessage?["","---","",`${c.bright}${c.magenta}Previously${c.reset}`,"",`${c.dim}A: ${r.assistantMessage}${c.reset}`,""]:[]}function at(r,e){let t=Math.round(r/1e3);return["",`${c.dim}Access ${t}k tokens of past research & decisions for just ${e.toLocaleString()}t. Use the claude-mem skill to access memories by ID.${c.reset}`]}function dt(r){return` +${c.bright}${c.cyan}[${r}] recent context, ${Ke()}${c.reset} +${c.gray}${"\u2500".repeat(60)}${c.reset} -${_.dim}No previous sessions found for this project yet.${_.reset} -`}function st(r,e,t,s){let n=[];return s?n.push(...He(r)):n.push(...Le(r)),s?n.push(...Be()):n.push(...ye()),s?n.push(...We()):n.push(...ve()),s?n.push(...Ye()):n.push(...De()),G(t)&&(s?n.push(...qe(e,t)):n.push(...Ue(e,t))),n}var ne=M(require("path"),1);function Y(r){if(!r)return[];try{let e=JSON.parse(r);return Array.isArray(e)?e:[]}catch(e){return p.debug("PARSER","Failed to parse JSON array, using empty fallback",{preview:r?.substring(0,50)},e),[]}}function oe(r){return new Date(r).toLocaleString("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit",hour12:!0})}function ie(r){return new Date(r).toLocaleString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}function nt(r){return new Date(r).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric"})}function rt(r,e){return ne.default.isAbsolute(r)?ne.default.relative(e,r):r}function ot(r,e,t){let s=Y(r);if(s.length>0)return rt(s[0],e);if(t){let n=Y(t);if(n.length>0)return rt(n[0],e)}return"General"}function vt(r){let e=new Map;for(let s of r){let n=s.type==="observation"?s.data.created_at:s.data.displayTime,o=nt(n);e.has(o)||e.set(o,[]),e.get(o).push(s)}let t=Array.from(e.entries()).sort((s,n)=>{let o=new Date(s[0]).getTime(),i=new Date(n[0]).getTime();return o-i});return new Map(t)}function it(r,e){return e.fullObservationField==="narrative"?r.narrative:r.facts?Y(r.facts).join(` -`):null}function Dt(r,e,t,s){let n=[];n.push(...xe(r));let o="";for(let i of e)if(i.type==="summary"){o="";let a=i.data,d=oe(a.displayTime);n.push(...Fe(a,d))}else{let a=i.data,d=ie(a.created_at),m=d!==o?d:"";if(o=d,t.has(a.id)){let T=it(a,s);n.push(...$e(a,m,T,s))}else n.push(we(a,m,s))}return n}function Ut(r,e,t,s,n){let o=[];o.push(...Ve(r));let i=null,a="";for(let d of e)if(d.type==="summary"){i=null,a="";let c=d.data,m=oe(c.displayTime);o.push(...ze(c,m))}else{let c=d.data,m=ot(c.files_modified,n,c.files_read),l=ie(c.created_at),T=l!==a;a=l;let E=t.has(c.id);if(m!==i&&(o.push(...Ke(m)),i=m),E){let f=it(c,s);o.push(...Qe(c,l,T,f,s))}else o.push(Je(c,l,T,s))}return o.push(""),o}function xt(r,e,t,s,n,o){return o?Ut(r,e,t,s,n):Dt(r,e,t,s)}function at(r,e,t,s,n){let o=[],i=vt(r);for(let[a,d]of i)o.push(...xt(a,d,e,t,s,n));return o}function dt(r,e,t){return!(!r.showLastSummary||!e||!!!(e.investigated||e.learned||e.completed||e.next_steps)||t&&e.created_at_epoch<=t.created_at_epoch)}function _t(r,e){let t=[];return e?(t.push(...U("Investigated",r.investigated,_.blue)),t.push(...U("Learned",r.learned,_.yellow)),t.push(...U("Completed",r.completed,_.green)),t.push(...U("Next Steps",r.next_steps,_.magenta))):(t.push(...D("Investigated",r.investigated)),t.push(...D("Learned",r.learned)),t.push(...D("Completed",r.completed)),t.push(...D("Next Steps",r.next_steps))),t}function ct(r,e){return e?Ze(r):Pe(r)}function pt(r,e,t){return!G(e)||r.totalDiscoveryTokens<=0||r.savings<=0?[]:t?et(r.totalDiscoveryTokens,r.totalReadTokens):Xe(r.totalDiscoveryTokens,r.totalReadTokens)}var kt=mt.default.join((0,ut.homedir)(),".claude","plugins","marketplaces","thedotmack","plugin",".install-version");function wt(){try{return new F}catch(r){if(r.code==="ERR_DLOPEN_FAILED"){try{(0,lt.unlinkSync)(kt)}catch(e){p.debug("SYSTEM","Marker file cleanup failed (may not exist)",{},e)}return p.error("SYSTEM","Native module rebuild needed - restart Claude Code to auto-fix"),null}throw r}}function $t(r,e){return e?tt(r):je(r)}function Ft(r,e,t,s,n,o,i){let a=[],d=Z(e);a.push(...st(r,d,s,i));let c=t.slice(0,s.sessionCount),m=Ie(c,t),l=re(e,m),T=Ae(e,s.fullObservationCount);a.push(...at(l,T,s,n,i));let E=t[0],f=e[0];dt(s,E,f)&&a.push(..._t(E,i));let R=se(e,s,o,n);return a.push(...ct(R,i)),a.push(...pt(d,s,i)),a.join(` -`).trimEnd()}async function ae(r,e=!1){let t=J(),s=r?.cwd??process.cwd(),n=fe(s),o=r?.projects||[n];r?.full&&(t.totalObservationCount=999999,t.sessionCount=999999);let i=wt();if(!i)return"";try{let a=o.length>1?Ce(i,o,t):ee(i,n,t),d=o.length>1?Ne(i,o,t):te(i,n,t);return a.length===0&&d.length===0?$t(n,e):Ft(n,a,d,t,s,r?.session_id,e)}finally{i.close()}}0&&(module.exports={generateContext}); +${c.dim}No previous sessions found for this project yet.${c.reset} +`}function ct(r,e,t,s){let n=[];return s?n.push(...Je(r)):n.push(...$e(r)),s?n.push(...ze()):n.push(...Fe()),s?n.push(...Qe()):n.push(...we()),s?n.push(...Ze()):n.push(...Pe()),B(t)&&(s?n.push(...et(e,t)):n.push(...He(e,t))),n}var de=D(require("path"),1);function V(r){if(!r)return[];try{let e=JSON.parse(r);return Array.isArray(e)?e:[]}catch(e){return m.debug("PARSER","Failed to parse JSON array, using empty fallback",{preview:r?.substring(0,50)},e),[]}}function ce(r){return new Date(r).toLocaleString("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit",hour12:!0})}function ue(r){return new Date(r).toLocaleString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}function mt(r){return new Date(r).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric"})}function ut(r,e){return de.default.isAbsolute(r)?de.default.relative(e,r):r}function _t(r,e,t){let s=V(r);if(s.length>0)return ut(s[0],e);if(t){let n=V(t);if(n.length>0)return ut(n[0],e)}return"General"}function Xt(r){let e=new Map;for(let s of r){let n=s.type==="observation"?s.data.created_at:s.data.displayTime,o=mt(n);e.has(o)||e.set(o,[]),e.get(o).push(s)}let t=Array.from(e.entries()).sort((s,n)=>{let o=new Date(s[0]).getTime(),i=new Date(n[0]).getTime();return o-i});return new Map(t)}function pt(r,e){return e.fullObservationField==="narrative"?r.narrative:r.facts?V(r.facts).join(` +`):null}function jt(r,e,t,s){let n=[];n.push(...Xe(r));let o="";for(let i of e)if(i.type==="summary"){let a=i.data,d=ce(a.displayTime);n.push(...We(a,d))}else{let a=i.data,d=ue(a.created_at),_=d!==o?d:"";if(o=d,t.has(a.id)){let E=pt(a,s);n.push(...Be(a,_,E,s))}else n.push(Ge(a,_,s))}return n}function Gt(r,e,t,s,n){let o=[];o.push(...tt(r));let i=null,a="";for(let d of e)if(d.type==="summary"){i=null,a="";let u=d.data,_=ce(u.displayTime);o.push(...ot(u,_))}else{let u=d.data,_=_t(u.files_modified,n,u.files_read),l=ue(u.created_at),E=l!==a;a=l;let T=t.has(u.id);if(_!==i&&(o.push(...st(_)),i=_),T){let O=pt(u,s);o.push(...nt(u,l,E,O,s))}else o.push(rt(u,l,E,s))}return o.push(""),o}function Bt(r,e,t,s,n,o){return o?Gt(r,e,t,s,n):jt(r,e,t,s)}function lt(r,e,t,s,n){let o=[],i=Xt(r);for(let[a,d]of i)o.push(...Bt(a,d,e,t,s,n));return o}function Et(r,e,t){return!(!r.showLastSummary||!e||!!!(e.investigated||e.learned||e.completed||e.next_steps)||t&&e.created_at_epoch<=t.created_at_epoch)}function gt(r,e){let t=[];return e?(t.push(...$("Investigated",r.investigated,c.blue)),t.push(...$("Learned",r.learned,c.yellow)),t.push(...$("Completed",r.completed,c.green)),t.push(...$("Next Steps",r.next_steps,c.magenta))):(t.push(...k("Investigated",r.investigated)),t.push(...k("Learned",r.learned)),t.push(...k("Completed",r.completed)),t.push(...k("Next Steps",r.next_steps))),t}function Tt(r,e){return e?it(r):Ye(r)}function ft(r,e,t){return!B(e)||r.totalDiscoveryTokens<=0||r.savings<=0?[]:t?at(r.totalDiscoveryTokens,r.totalReadTokens):qe(r.totalDiscoveryTokens,r.totalReadTokens)}var Wt=St.default.join((0,bt.homedir)(),".claude","plugins","marketplaces","thedotmack","plugin",".install-version");function Yt(){try{return new X}catch(r){if(r.code==="ERR_DLOPEN_FAILED"){try{(0,ht.unlinkSync)(Wt)}catch(e){m.debug("SYSTEM","Marker file cleanup failed (may not exist)",{},e)}return m.error("SYSTEM","Native module rebuild needed - restart Claude Code to auto-fix"),null}throw r}}function qt(r,e){return e?dt(r):Ve(r)}function Vt(r,e,t,s,n,o,i){let a=[],d=re(e);a.push(...ct(r,d,s,i));let u=t.slice(0,s.sessionCount),_=Ue(u,t),l=ae(e,_),E=xe(e,s.fullObservationCount);a.push(...lt(l,E,s,n,i));let T=t[0],O=e[0];Et(s,T,O)&&a.push(...gt(T,i));let S=ie(e,s,o,n);return a.push(...Tt(S,i)),a.push(...ft(d,s,i)),a.join(` +`).trimEnd()}async function me(r,e=!1){let t=ee(),s=r?.cwd??process.cwd(),n=Ne(s),o=r?.platform_source,i=r?.projects||[n];r?.full&&(t.totalObservationCount=999999,t.sessionCount=999999);let a=Yt();if(!a)return"";try{let d=i.length>1?Me(a,i,t,o):ne(a,n,t,o),u=i.length>1?ve(a,i,t,o):oe(a,n,t,o);return d.length===0&&u.length===0?qt(n,e):Vt(n,d,u,t,s,r?.session_id,e)}finally{a.close()}}0&&(module.exports={generateContext}); diff --git a/plugin/scripts/mcp-server.cjs b/plugin/scripts/mcp-server.cjs index 157c26a5..b79aeba6 100755 --- a/plugin/scripts/mcp-server.cjs +++ b/plugin/scripts/mcp-server.cjs @@ -1,60 +1,1657 @@ #!/usr/bin/env node -"use strict";var l$=Object.create;var Ns=Object.defineProperty;var d$=Object.getOwnPropertyDescriptor;var p$=Object.getOwnPropertyNames;var f$=Object.getPrototypeOf,m$=Object.prototype.hasOwnProperty;var S=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),wn=(e,t)=>{for(var r in t)Ns(e,r,{get:t[r],enumerable:!0})},h$=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of p$(t))!m$.call(e,o)&&o!==r&&Ns(e,o,{get:()=>t[o],enumerable:!(n=d$(t,o))||n.enumerable});return e};var mi=(e,t,r)=>(r=e!=null?l$(f$(e)):{},h$(t||!e||!e.__esModule?Ns(r,"default",{value:e,enumerable:!0}):r,e));var Co=S(te=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});te.regexpCode=te.getEsmExportName=te.getProperty=te.safeStringify=te.stringify=te.strConcat=te.addCodeArg=te.str=te._=te.nil=te._Code=te.Name=te.IDENTIFIER=te._CodeOrName=void 0;var Ao=class{};te._CodeOrName=Ao;te.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var xr=class extends Ao{constructor(t){if(super(),!te.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};te.Name=xr;var it=class extends Ao{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof xr&&(r[n.str]=(r[n.str]||0)+1),r),{})}};te._Code=it;te.nil=new it("");function Yg(e,...t){let r=[e[0]],n=0;for(;n{"use strict";Object.defineProperty(Ve,"__esModule",{value:!0});Ve.ValueScope=Ve.ValueScopeName=Ve.Scope=Ve.varKinds=Ve.UsedValueState=void 0;var Fe=Co(),Od=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},Ca;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(Ca||(Ve.UsedValueState=Ca={}));Ve.varKinds={const:new Fe.Name("const"),let:new Fe.Name("let"),var:new Fe.Name("var")};var Ua=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof Fe.Name?t:this.name(t)}name(t){return new Fe.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};Ve.Scope=Ua;var Za=class extends Fe.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,Fe._)`.${new Fe.Name(r)}[${n}]`}};Ve.ValueScopeName=Za;var gw=(0,Fe._)`\n`,jd=class extends Ua{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?gw:Fe.nil}}get(){return this._scope}name(t){return new Za(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(t),{prefix:i}=o,a=(n=r.key)!==null&&n!==void 0?n:r.ref,s=this._values[i];if(s){let l=s.get(a);if(l)return l}else s=this._values[i]=new Map;s.set(a,o);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,o.setValue(r,{property:i,itemIndex:u}),o}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Fe._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},r,n)}_reduceValues(t,r,n={},o){let i=Fe.nil;for(let a in t){let s=t[a];if(!s)continue;let c=n[a]=n[a]||new Map;s.forEach(u=>{if(c.has(u))return;c.set(u,Ca.Started);let l=r(u);if(l){let d=this.opts.es5?Ve.varKinds.var:Ve.varKinds.const;i=(0,Fe._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))i=(0,Fe._)`${i}${l}${this.opts._n}`;else throw new Od(u);c.set(u,Ca.Completed)})}return i}};Ve.ValueScope=jd});var W=S(H=>{"use strict";Object.defineProperty(H,"__esModule",{value:!0});H.or=H.and=H.not=H.CodeGen=H.operators=H.varKinds=H.ValueScopeName=H.ValueScope=H.Scope=H.Name=H.regexpCode=H.stringify=H.getProperty=H.nil=H.strConcat=H.str=H._=void 0;var Q=Co(),pt=Dd(),ir=Co();Object.defineProperty(H,"_",{enumerable:!0,get:function(){return ir._}});Object.defineProperty(H,"str",{enumerable:!0,get:function(){return ir.str}});Object.defineProperty(H,"strConcat",{enumerable:!0,get:function(){return ir.strConcat}});Object.defineProperty(H,"nil",{enumerable:!0,get:function(){return ir.nil}});Object.defineProperty(H,"getProperty",{enumerable:!0,get:function(){return ir.getProperty}});Object.defineProperty(H,"stringify",{enumerable:!0,get:function(){return ir.stringify}});Object.defineProperty(H,"regexpCode",{enumerable:!0,get:function(){return ir.regexpCode}});Object.defineProperty(H,"Name",{enumerable:!0,get:function(){return ir.Name}});var Va=Dd();Object.defineProperty(H,"Scope",{enumerable:!0,get:function(){return Va.Scope}});Object.defineProperty(H,"ValueScope",{enumerable:!0,get:function(){return Va.ValueScope}});Object.defineProperty(H,"ValueScopeName",{enumerable:!0,get:function(){return Va.ValueScopeName}});Object.defineProperty(H,"varKinds",{enumerable:!0,get:function(){return Va.varKinds}});H.operators={GT:new Q._Code(">"),GTE:new Q._Code(">="),LT:new Q._Code("<"),LTE:new Q._Code("<="),EQ:new Q._Code("==="),NEQ:new Q._Code("!=="),NOT:new Q._Code("!"),OR:new Q._Code("||"),AND:new Q._Code("&&"),ADD:new Q._Code("+")};var Ut=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},Nd=class extends Ut{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?pt.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=cn(this.rhs,t,r)),this}get names(){return this.rhs instanceof Q._CodeOrName?this.rhs.names:{}}},La=class extends Ut{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof Q.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=cn(this.rhs,t,r),this}get names(){let t=this.lhs instanceof Q.Name?{}:{...this.lhs.names};return Fa(t,this.rhs)}},Rd=class extends La{constructor(t,r,n,o){super(t,n,o),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},Ad=class extends Ut{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},Md=class extends Ut{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},Cd=class extends Ut{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},Ud=class extends Ut{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=cn(this.code,t,r),this}get names(){return this.code instanceof Q._CodeOrName?this.code.names:{}}},Uo=class extends Ut{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,o=n.length;for(;o--;){let i=n[o];i.optimizeNames(t,r)||(vw(t,i.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>wr(t,r.names),{})}},Zt=class extends Uo{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},Zd=class extends Uo{},sn=class extends Zt{};sn.kind="else";var kr=class e extends Zt{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new sn(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(ev(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=cn(this.condition,t,r),this}get names(){let t=super.names;return Fa(t,this.condition),this.else&&wr(t,this.else.names),t}};kr.kind="if";var Sr=class extends Zt{};Sr.kind="for";var Ld=class extends Sr{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=cn(this.iteration,t,r),this}get names(){return wr(super.names,this.iteration.names)}},qd=class extends Sr{constructor(t,r,n,o){super(),this.varKind=t,this.name=r,this.from=n,this.to=o}render(t){let r=t.es5?pt.varKinds.var:this.varKind,{name:n,from:o,to:i}=this;return`for(${r} ${n}=${o}; ${n}<${i}; ${n}++)`+super.render(t)}get names(){let t=Fa(super.names,this.from);return Fa(t,this.to)}},qa=class extends Sr{constructor(t,r,n,o){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=o}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=cn(this.iterable,t,r),this}get names(){return wr(super.names,this.iterable.names)}},Zo=class extends Zt{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};Zo.kind="func";var Lo=class extends Uo{render(t){return"return "+super.render(t)}};Lo.kind="return";var Fd=class extends Zt{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,o;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(o=this.finally)===null||o===void 0||o.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&wr(t,this.catch.names),this.finally&&wr(t,this.finally.names),t}},qo=class extends Zt{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};qo.kind="catch";var Fo=class extends Zt{render(t){return"finally"+super.render(t)}};Fo.kind="finally";var Vd=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=t,this._scope=new pt.Scope({parent:t}),this._nodes=[new Zd]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,o){let i=this._scope.toName(r);return n!==void 0&&o&&(this._constants[i.str]=n),this._leafNode(new Nd(t,i,n)),i}const(t,r,n){return this._def(pt.varKinds.const,t,r,n)}let(t,r,n){return this._def(pt.varKinds.let,t,r,n)}var(t,r,n){return this._def(pt.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new La(t,r,n))}add(t,r){return this._leafNode(new Rd(t,H.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==Q.nil&&this._leafNode(new Ud(t)),this}object(...t){let r=["{"];for(let[n,o]of t)r.length>1&&r.push(","),r.push(n),(n!==o||this.opts.es5)&&(r.push(":"),(0,Q.addCodeArg)(r,o));return r.push("}"),new Q._Code(r)}if(t,r,n){if(this._blockNode(new kr(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new kr(t))}else(){return this._elseNode(new sn)}endIf(){return this._endBlockNode(kr,sn)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new Ld(t),r)}forRange(t,r,n,o,i=this.opts.es5?pt.varKinds.var:pt.varKinds.let){let a=this._scope.toName(t);return this._for(new qd(i,a,r,n),()=>o(a))}forOf(t,r,n,o=pt.varKinds.const){let i=this._scope.toName(t);if(this.opts.es5){let a=r instanceof Q.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Q._)`${a}.length`,s=>{this.var(i,(0,Q._)`${a}[${s}]`),n(i)})}return this._for(new qa("of",o,i,r),()=>n(i))}forIn(t,r,n,o=this.opts.es5?pt.varKinds.var:pt.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,Q._)`Object.keys(${r})`,n);let i=this._scope.toName(t);return this._for(new qa("in",o,i,r),()=>n(i))}endFor(){return this._endBlockNode(Sr)}label(t){return this._leafNode(new Ad(t))}break(t){return this._leafNode(new Md(t))}return(t){let r=new Lo;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Lo)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Fd;if(this._blockNode(o),this.code(t),r){let i=this.name("e");this._currNode=o.catch=new qo(i),r(i)}return n&&(this._currNode=o.finally=new Fo,this.code(n)),this._endBlockNode(qo,Fo)}throw(t){return this._leafNode(new Cd(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=Q.nil,n,o){return this._blockNode(new Zo(t,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Zo)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof kr))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};H.CodeGen=Vd;function wr(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Fa(e,t){return t instanceof Q._CodeOrName?wr(e,t.names):e}function cn(e,t,r){if(e instanceof Q.Name)return n(e);if(!o(e))return e;return new Q._Code(e._items.reduce((i,a)=>(a instanceof Q.Name&&(a=n(a)),a instanceof Q._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||t[i.str]!==1?i:(delete t[i.str],a)}function o(i){return i instanceof Q._Code&&i._items.some(a=>a instanceof Q.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function vw(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function ev(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,Q._)`!${Jd(e)}`}H.not=ev;var _w=tv(H.operators.AND);function yw(...e){return e.reduce(_w)}H.and=yw;var $w=tv(H.operators.OR);function bw(...e){return e.reduce($w)}H.or=bw;function tv(e){return(t,r)=>t===Q.nil?r:r===Q.nil?t:(0,Q._)`${Jd(t)} ${e} ${Jd(r)}`}function Jd(e){return e instanceof Q.Name?e:(0,Q._)`(${e})`}});var re=S(B=>{"use strict";Object.defineProperty(B,"__esModule",{value:!0});B.checkStrictMode=B.getErrorPath=B.Type=B.useFunc=B.setEvaluated=B.evaluatedPropsToName=B.mergeEvaluated=B.eachItem=B.unescapeJsonPointer=B.escapeJsonPointer=B.escapeFragment=B.unescapeFragment=B.schemaRefOrVal=B.schemaHasRulesButRef=B.schemaHasRules=B.checkUnknownRules=B.alwaysValidSchema=B.toHash=void 0;var le=W(),xw=Co();function kw(e){let t={};for(let r of e)t[r]=!0;return t}B.toHash=kw;function Sw(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(ov(e,t),!iv(t,e.self.RULES.all))}B.alwaysValidSchema=Sw;function ov(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let o=n.RULES.keywords;for(let i in t)o[i]||cv(e,`unknown keyword: "${i}"`)}B.checkUnknownRules=ov;function iv(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}B.schemaHasRules=iv;function ww(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}B.schemaHasRulesButRef=ww;function zw({topSchemaRef:e,schemaPath:t},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,le._)`${r}`}return(0,le._)`${e}${t}${(0,le.getProperty)(n)}`}B.schemaRefOrVal=zw;function Iw(e){return av(decodeURIComponent(e))}B.unescapeFragment=Iw;function Ew(e){return encodeURIComponent(Kd(e))}B.escapeFragment=Ew;function Kd(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}B.escapeJsonPointer=Kd;function av(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}B.unescapeJsonPointer=av;function Tw(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}B.eachItem=Tw;function rv({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(o,i,a,s)=>{let c=a===void 0?i:a instanceof le.Name?(i instanceof le.Name?e(o,i,a):t(o,i,a),a):i instanceof le.Name?(t(o,a,i),i):r(i,a);return s===le.Name&&!(c instanceof le.Name)?n(o,c):c}}B.mergeEvaluated={props:rv({mergeNames:(e,t,r)=>e.if((0,le._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,le._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,le._)`${r} || {}`).code((0,le._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,le._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,le._)`${r} || {}`),Hd(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:sv}),items:rv({mergeNames:(e,t,r)=>e.if((0,le._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,le._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,le._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,le._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function sv(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,le._)`{}`);return t!==void 0&&Hd(e,r,t),r}B.evaluatedPropsToName=sv;function Hd(e,t,r){Object.keys(r).forEach(n=>e.assign((0,le._)`${t}${(0,le.getProperty)(n)}`,!0))}B.setEvaluated=Hd;var nv={};function Pw(e,t){return e.scopeValue("func",{ref:t,code:nv[t.code]||(nv[t.code]=new xw._Code(t.code))})}B.useFunc=Pw;var Wd;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(Wd||(B.Type=Wd={}));function Ow(e,t,r){if(e instanceof le.Name){let n=t===Wd.Num;return r?n?(0,le._)`"[" + ${e} + "]"`:(0,le._)`"['" + ${e} + "']"`:n?(0,le._)`"/" + ${e}`:(0,le._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,le.getProperty)(e).toString():"/"+Kd(e)}B.getErrorPath=Ow;function cv(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}B.checkStrictMode=cv});var Lt=S(Gd=>{"use strict";Object.defineProperty(Gd,"__esModule",{value:!0});var Oe=W(),jw={data:new Oe.Name("data"),valCxt:new Oe.Name("valCxt"),instancePath:new Oe.Name("instancePath"),parentData:new Oe.Name("parentData"),parentDataProperty:new Oe.Name("parentDataProperty"),rootData:new Oe.Name("rootData"),dynamicAnchors:new Oe.Name("dynamicAnchors"),vErrors:new Oe.Name("vErrors"),errors:new Oe.Name("errors"),this:new Oe.Name("this"),self:new Oe.Name("self"),scope:new Oe.Name("scope"),json:new Oe.Name("json"),jsonPos:new Oe.Name("jsonPos"),jsonLen:new Oe.Name("jsonLen"),jsonPart:new Oe.Name("jsonPart")};Gd.default=jw});var Vo=S(je=>{"use strict";Object.defineProperty(je,"__esModule",{value:!0});je.extendErrors=je.resetErrorsCount=je.reportExtraError=je.reportError=je.keyword$DataError=je.keywordError=void 0;var ee=W(),Ja=re(),Ue=Lt();je.keywordError={message:({keyword:e})=>(0,ee.str)`must pass "${e}" keyword validation`};je.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,ee.str)`"${e}" keyword must be ${t} ($data)`:(0,ee.str)`"${e}" keyword is invalid ($data)`};function Dw(e,t=je.keywordError,r,n){let{it:o}=e,{gen:i,compositeRule:a,allErrors:s}=o,c=dv(e,t,r);n??(a||s)?uv(i,c):lv(o,(0,ee._)`[${c}]`)}je.reportError=Dw;function Nw(e,t=je.keywordError,r){let{it:n}=e,{gen:o,compositeRule:i,allErrors:a}=n,s=dv(e,t,r);uv(o,s),i||a||lv(n,Ue.default.vErrors)}je.reportExtraError=Nw;function Rw(e,t){e.assign(Ue.default.errors,t),e.if((0,ee._)`${Ue.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,ee._)`${Ue.default.vErrors}.length`,t),()=>e.assign(Ue.default.vErrors,null)))}je.resetErrorsCount=Rw;function Aw({gen:e,keyword:t,schemaValue:r,data:n,errsCount:o,it:i}){if(o===void 0)throw new Error("ajv implementation error");let a=e.name("err");e.forRange("i",o,Ue.default.errors,s=>{e.const(a,(0,ee._)`${Ue.default.vErrors}[${s}]`),e.if((0,ee._)`${a}.instancePath === undefined`,()=>e.assign((0,ee._)`${a}.instancePath`,(0,ee.strConcat)(Ue.default.instancePath,i.errorPath))),e.assign((0,ee._)`${a}.schemaPath`,(0,ee.str)`${i.errSchemaPath}/${t}`),i.opts.verbose&&(e.assign((0,ee._)`${a}.schema`,r),e.assign((0,ee._)`${a}.data`,n))})}je.extendErrors=Aw;function uv(e,t){let r=e.const("err",t);e.if((0,ee._)`${Ue.default.vErrors} === null`,()=>e.assign(Ue.default.vErrors,(0,ee._)`[${r}]`),(0,ee._)`${Ue.default.vErrors}.push(${r})`),e.code((0,ee._)`${Ue.default.errors}++`)}function lv(e,t){let{gen:r,validateName:n,schemaEnv:o}=e;o.$async?r.throw((0,ee._)`new ${e.ValidationError}(${t})`):(r.assign((0,ee._)`${n}.errors`,t),r.return(!1))}var zr={keyword:new ee.Name("keyword"),schemaPath:new ee.Name("schemaPath"),params:new ee.Name("params"),propertyName:new ee.Name("propertyName"),message:new ee.Name("message"),schema:new ee.Name("schema"),parentSchema:new ee.Name("parentSchema")};function dv(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,ee._)`{}`:Mw(e,t,r)}function Mw(e,t,r={}){let{gen:n,it:o}=e,i=[Cw(o,r),Uw(e,r)];return Zw(e,t,i),n.object(...i)}function Cw({errorPath:e},{instancePath:t}){let r=t?(0,ee.str)`${e}${(0,Ja.getErrorPath)(t,Ja.Type.Str)}`:e;return[Ue.default.instancePath,(0,ee.strConcat)(Ue.default.instancePath,r)]}function Uw({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let o=n?t:(0,ee.str)`${t}/${e}`;return r&&(o=(0,ee.str)`${o}${(0,Ja.getErrorPath)(r,Ja.Type.Str)}`),[zr.schemaPath,o]}function Zw(e,{params:t,message:r},n){let{keyword:o,data:i,schemaValue:a,it:s}=e,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=s;n.push([zr.keyword,o],[zr.params,typeof t=="function"?t(e):t||(0,ee._)`{}`]),c.messages&&n.push([zr.message,typeof r=="function"?r(e):r]),c.verbose&&n.push([zr.schema,a],[zr.parentSchema,(0,ee._)`${l}${d}`],[Ue.default.data,i]),u&&n.push([zr.propertyName,u])}});var fv=S(un=>{"use strict";Object.defineProperty(un,"__esModule",{value:!0});un.boolOrEmptySchema=un.topBoolOrEmptySchema=void 0;var Lw=Vo(),qw=W(),Fw=Lt(),Vw={message:"boolean schema is false"};function Jw(e){let{gen:t,schema:r,validateName:n}=e;r===!1?pv(e,!1):typeof r=="object"&&r.$async===!0?t.return(Fw.default.data):(t.assign((0,qw._)`${n}.errors`,null),t.return(!0))}un.topBoolOrEmptySchema=Jw;function Ww(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),pv(e)):r.var(t,!0)}un.boolOrEmptySchema=Ww;function pv(e,t){let{gen:r,data:n}=e,o={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,Lw.reportError)(o,Vw,void 0,t)}});var Bd=S(ln=>{"use strict";Object.defineProperty(ln,"__esModule",{value:!0});ln.getRules=ln.isJSONType=void 0;var Kw=["string","number","integer","boolean","null","object","array"],Hw=new Set(Kw);function Gw(e){return typeof e=="string"&&Hw.has(e)}ln.isJSONType=Gw;function Bw(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}ln.getRules=Bw});var Xd=S(ar=>{"use strict";Object.defineProperty(ar,"__esModule",{value:!0});ar.shouldUseRule=ar.shouldUseGroup=ar.schemaHasRulesForType=void 0;function Xw({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&mv(e,n)}ar.schemaHasRulesForType=Xw;function mv(e,t){return t.rules.some(r=>hv(e,r))}ar.shouldUseGroup=mv;function hv(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}ar.shouldUseRule=hv});var Jo=S(De=>{"use strict";Object.defineProperty(De,"__esModule",{value:!0});De.reportTypeError=De.checkDataTypes=De.checkDataType=De.coerceAndCheckDataType=De.getJSONTypes=De.getSchemaTypes=De.DataType=void 0;var Yw=Bd(),Qw=Xd(),e0=Vo(),F=W(),gv=re(),dn;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(dn||(De.DataType=dn={}));function t0(e){let t=vv(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}De.getSchemaTypes=t0;function vv(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(Yw.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}De.getJSONTypes=vv;function r0(e,t){let{gen:r,data:n,opts:o}=e,i=n0(t,o.coerceTypes),a=t.length>0&&!(i.length===0&&t.length===1&&(0,Qw.schemaHasRulesForType)(e,t[0]));if(a){let s=Qd(t,n,o.strictNumbers,dn.Wrong);r.if(s,()=>{i.length?o0(e,t,i):ep(e)})}return a}De.coerceAndCheckDataType=r0;var _v=new Set(["string","number","integer","boolean","null"]);function n0(e,t){return t?e.filter(r=>_v.has(r)||t==="array"&&r==="array"):[]}function o0(e,t,r){let{gen:n,data:o,opts:i}=e,a=n.let("dataType",(0,F._)`typeof ${o}`),s=n.let("coerced",(0,F._)`undefined`);i.coerceTypes==="array"&&n.if((0,F._)`${a} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,F._)`${o}[0]`).assign(a,(0,F._)`typeof ${o}`).if(Qd(t,o,i.strictNumbers),()=>n.assign(s,o))),n.if((0,F._)`${s} !== undefined`);for(let u of r)(_v.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),ep(e),n.endIf(),n.if((0,F._)`${s} !== undefined`,()=>{n.assign(o,s),i0(e,s)});function c(u){switch(u){case"string":n.elseIf((0,F._)`${a} == "number" || ${a} == "boolean"`).assign(s,(0,F._)`"" + ${o}`).elseIf((0,F._)`${o} === null`).assign(s,(0,F._)`""`);return;case"number":n.elseIf((0,F._)`${a} == "boolean" || ${o} === null - || (${a} == "string" && ${o} && ${o} == +${o})`).assign(s,(0,F._)`+${o}`);return;case"integer":n.elseIf((0,F._)`${a} === "boolean" || ${o} === null - || (${a} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(s,(0,F._)`+${o}`);return;case"boolean":n.elseIf((0,F._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(s,!1).elseIf((0,F._)`${o} === "true" || ${o} === 1`).assign(s,!0);return;case"null":n.elseIf((0,F._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(s,null);return;case"array":n.elseIf((0,F._)`${a} === "string" || ${a} === "number" - || ${a} === "boolean" || ${o} === null`).assign(s,(0,F._)`[${o}]`)}}}function i0({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,F._)`${t} !== undefined`,()=>e.assign((0,F._)`${t}[${r}]`,n))}function Yd(e,t,r,n=dn.Correct){let o=n===dn.Correct?F.operators.EQ:F.operators.NEQ,i;switch(e){case"null":return(0,F._)`${t} ${o} null`;case"array":i=(0,F._)`Array.isArray(${t})`;break;case"object":i=(0,F._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":i=a((0,F._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":i=a();break;default:return(0,F._)`typeof ${t} ${o} ${e}`}return n===dn.Correct?i:(0,F.not)(i);function a(s=F.nil){return(0,F.and)((0,F._)`typeof ${t} == "number"`,s,r?(0,F._)`isFinite(${t})`:F.nil)}}De.checkDataType=Yd;function Qd(e,t,r,n){if(e.length===1)return Yd(e[0],t,r,n);let o,i=(0,gv.toHash)(e);if(i.array&&i.object){let a=(0,F._)`typeof ${t} != "object"`;o=i.null?a:(0,F._)`!${t} || ${a}`,delete i.null,delete i.array,delete i.object}else o=F.nil;i.number&&delete i.integer;for(let a in i)o=(0,F.and)(o,Yd(a,t,r,n));return o}De.checkDataTypes=Qd;var a0={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,F._)`{type: ${e}}`:(0,F._)`{type: ${t}}`};function ep(e){let t=s0(e);(0,e0.reportError)(t,a0)}De.reportTypeError=ep;function s0(e){let{gen:t,data:r,schema:n}=e,o=(0,gv.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:e}}});var $v=S(Wa=>{"use strict";Object.defineProperty(Wa,"__esModule",{value:!0});Wa.assignDefaults=void 0;var pn=W(),c0=re();function u0(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let o in r)yv(e,o,r[o].default);else t==="array"&&Array.isArray(n)&&n.forEach((o,i)=>yv(e,i,o.default))}Wa.assignDefaults=u0;function yv(e,t,r){let{gen:n,compositeRule:o,data:i,opts:a}=e;if(r===void 0)return;let s=(0,pn._)`${i}${(0,pn.getProperty)(t)}`;if(o){(0,c0.checkStrictMode)(e,`default is ignored for: ${s}`);return}let c=(0,pn._)`${s} === undefined`;a.useDefaults==="empty"&&(c=(0,pn._)`${c} || ${s} === null || ${s} === ""`),n.if(c,(0,pn._)`${s} = ${(0,pn.stringify)(r)}`)}});var at=S(ae=>{"use strict";Object.defineProperty(ae,"__esModule",{value:!0});ae.validateUnion=ae.validateArray=ae.usePattern=ae.callValidateCode=ae.schemaProperties=ae.allSchemaProperties=ae.noPropertyInData=ae.propertyInData=ae.isOwnProperty=ae.hasPropFunc=ae.reportMissingProp=ae.checkMissingProp=ae.checkReportMissingProp=void 0;var he=W(),tp=re(),sr=Lt(),l0=re();function d0(e,t){let{gen:r,data:n,it:o}=e;r.if(np(r,n,t,o.opts.ownProperties),()=>{e.setParams({missingProperty:(0,he._)`${t}`},!0),e.error()})}ae.checkReportMissingProp=d0;function p0({gen:e,data:t,it:{opts:r}},n,o){return(0,he.or)(...n.map(i=>(0,he.and)(np(e,t,i,r.ownProperties),(0,he._)`${o} = ${i}`)))}ae.checkMissingProp=p0;function f0(e,t){e.setParams({missingProperty:t},!0),e.error()}ae.reportMissingProp=f0;function bv(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,he._)`Object.prototype.hasOwnProperty`})}ae.hasPropFunc=bv;function rp(e,t,r){return(0,he._)`${bv(e)}.call(${t}, ${r})`}ae.isOwnProperty=rp;function m0(e,t,r,n){let o=(0,he._)`${t}${(0,he.getProperty)(r)} !== undefined`;return n?(0,he._)`${o} && ${rp(e,t,r)}`:o}ae.propertyInData=m0;function np(e,t,r,n){let o=(0,he._)`${t}${(0,he.getProperty)(r)} === undefined`;return n?(0,he.or)(o,(0,he.not)(rp(e,t,r))):o}ae.noPropertyInData=np;function xv(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}ae.allSchemaProperties=xv;function h0(e,t){return xv(t).filter(r=>!(0,tp.alwaysValidSchema)(e,t[r]))}ae.schemaProperties=h0;function g0({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:i},it:a},s,c,u){let l=u?(0,he._)`${e}, ${t}, ${n}${o}`:t,d=[[sr.default.instancePath,(0,he.strConcat)(sr.default.instancePath,i)],[sr.default.parentData,a.parentData],[sr.default.parentDataProperty,a.parentDataProperty],[sr.default.rootData,sr.default.rootData]];a.opts.dynamicRef&&d.push([sr.default.dynamicAnchors,sr.default.dynamicAnchors]);let m=(0,he._)`${l}, ${r.object(...d)}`;return c!==he.nil?(0,he._)`${s}.call(${c}, ${m})`:(0,he._)`${s}(${m})`}ae.callValidateCode=g0;var v0=(0,he._)`new RegExp`;function _0({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:o}=t.code,i=o(r,n);return e.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,he._)`${o.code==="new RegExp"?v0:(0,l0.useFunc)(e,o)}(${r}, ${n})`})}ae.usePattern=_0;function y0(e){let{gen:t,data:r,keyword:n,it:o}=e,i=t.name("valid");if(o.allErrors){let s=t.let("valid",!0);return a(()=>t.assign(s,!1)),s}return t.var(i,!0),a(()=>t.break()),i;function a(s){let c=t.const("len",(0,he._)`${r}.length`);t.forRange("i",0,c,u=>{e.subschema({keyword:n,dataProp:u,dataPropType:tp.Type.Num},i),t.if((0,he.not)(i),s)})}}ae.validateArray=y0;function $0(e){let{gen:t,schema:r,keyword:n,it:o}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,tp.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let a=t.let("valid",!1),s=t.name("_valid");t.block(()=>r.forEach((c,u)=>{let l=e.subschema({keyword:n,schemaProp:u,compositeRule:!0},s);t.assign(a,(0,he._)`${a} || ${s}`),e.mergeValidEvaluated(l,s)||t.if((0,he.not)(a))})),e.result(a,()=>e.reset(),()=>e.error(!0))}ae.validateUnion=$0});var wv=S($t=>{"use strict";Object.defineProperty($t,"__esModule",{value:!0});$t.validateKeywordUsage=$t.validSchemaType=$t.funcKeywordCode=$t.macroKeywordCode=void 0;var Ze=W(),Ir=Lt(),b0=at(),x0=Vo();function k0(e,t){let{gen:r,keyword:n,schema:o,parentSchema:i,it:a}=e,s=t.macro.call(a.self,o,i,a),c=Sv(r,n,s);a.opts.validateSchema!==!1&&a.self.validateSchema(s,!0);let u=r.name("valid");e.subschema({schema:s,schemaPath:Ze.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),e.pass(u,()=>e.error(!0))}$t.macroKeywordCode=k0;function S0(e,t){var r;let{gen:n,keyword:o,schema:i,parentSchema:a,$data:s,it:c}=e;z0(c,t);let u=!s&&t.compile?t.compile.call(c.self,i,a,c):t.validate,l=Sv(n,o,u),d=n.let("valid");e.block$data(d,m),e.ok((r=t.valid)!==null&&r!==void 0?r:d);function m(){if(t.errors===!1)h(),t.modifying&&kv(e),_(()=>e.error());else{let b=t.async?p():g();t.modifying&&kv(e),_(()=>w0(e,b))}}function p(){let b=n.let("ruleErrs",null);return n.try(()=>h((0,Ze._)`await `),E=>n.assign(d,!1).if((0,Ze._)`${E} instanceof ${c.ValidationError}`,()=>n.assign(b,(0,Ze._)`${E}.errors`),()=>n.throw(E))),b}function g(){let b=(0,Ze._)`${l}.errors`;return n.assign(b,null),h(Ze.nil),b}function h(b=t.async?(0,Ze._)`await `:Ze.nil){let E=c.opts.passContext?Ir.default.this:Ir.default.self,I=!("compile"in t&&!s||t.schema===!1);n.assign(d,(0,Ze._)`${b}${(0,b0.callValidateCode)(e,l,E,I)}`,t.modifying)}function _(b){var E;n.if((0,Ze.not)((E=t.valid)!==null&&E!==void 0?E:d),b)}}$t.funcKeywordCode=S0;function kv(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,Ze._)`${n.parentData}[${n.parentDataProperty}]`))}function w0(e,t){let{gen:r}=e;r.if((0,Ze._)`Array.isArray(${t})`,()=>{r.assign(Ir.default.vErrors,(0,Ze._)`${Ir.default.vErrors} === null ? ${t} : ${Ir.default.vErrors}.concat(${t})`).assign(Ir.default.errors,(0,Ze._)`${Ir.default.vErrors}.length`),(0,x0.extendErrors)(e)},()=>e.error())}function z0({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function Sv(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Ze.stringify)(r)})}function I0(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}$t.validSchemaType=I0;function E0({schema:e,opts:t,self:r,errSchemaPath:n},o,i){if(Array.isArray(o.keyword)?!o.keyword.includes(i):o.keyword!==i)throw new Error("ajv implementation error");let a=o.dependencies;if(a?.some(s=>!Object.prototype.hasOwnProperty.call(e,s)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(o.validateSchema&&!o.validateSchema(e[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}$t.validateKeywordUsage=E0});var Iv=S(cr=>{"use strict";Object.defineProperty(cr,"__esModule",{value:!0});cr.extendSubschemaMode=cr.extendSubschemaData=cr.getSubschema=void 0;var bt=W(),zv=re();function T0(e,{keyword:t,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:i,topSchemaRef:a}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let s=e.schema[t];return r===void 0?{schema:s,schemaPath:(0,bt._)`${e.schemaPath}${(0,bt.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:s[r],schemaPath:(0,bt._)`${e.schemaPath}${(0,bt.getProperty)(t)}${(0,bt.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,zv.escapeFragment)(r)}`}}if(n!==void 0){if(o===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:o,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}cr.getSubschema=T0;function P0(e,t,{dataProp:r,dataPropType:n,data:o,dataTypes:i,propertyName:a}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:s}=t;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=t,m=s.let("data",(0,bt._)`${t.data}${(0,bt.getProperty)(r)}`,!0);c(m),e.errorPath=(0,bt.str)`${u}${(0,zv.getErrorPath)(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=(0,bt._)`${r}`,e.dataPathArr=[...l,e.parentDataProperty]}if(o!==void 0){let u=o instanceof bt.Name?o:s.let("data",o,!0);c(u),a!==void 0&&(e.propertyName=a)}i&&(e.dataTypes=i);function c(u){e.data=u,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,u]}}cr.extendSubschemaData=P0;function O0(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:o,allErrors:i}){n!==void 0&&(e.compositeRule=n),o!==void 0&&(e.createErrors=o),i!==void 0&&(e.allErrors=i),e.jtdDiscriminator=t,e.jtdMetadata=r}cr.extendSubschemaMode=O0});var op=S((fC,Ev)=>{"use strict";Ev.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,o,i;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(o=n;o--!==0;)if(!e(t[o],r[o]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(i=Object.keys(t),n=i.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!Object.prototype.hasOwnProperty.call(r,i[o]))return!1;for(o=n;o--!==0;){var a=i[o];if(!e(t[a],r[a]))return!1}return!0}return t!==t&&r!==r}});var Pv=S((mC,Tv)=>{"use strict";var ur=Tv.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},o=r.post||function(){};Ka(t,n,o,e,"",e)};ur.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};ur.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};ur.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};ur.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Ka(e,t,r,n,o,i,a,s,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,o,i,a,s,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in ur.arrayKeywords)for(var m=0;m{"use strict";Object.defineProperty(Je,"__esModule",{value:!0});Je.getSchemaRefs=Je.resolveUrl=Je.normalizeId=Je._getFullPath=Je.getFullPath=Je.inlineRef=void 0;var D0=re(),N0=op(),R0=Pv(),A0=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function M0(e,t=!0){return typeof e=="boolean"?!0:t===!0?!ip(e):t?Ov(e)<=t:!1}Je.inlineRef=M0;var C0=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function ip(e){for(let t in e){if(C0.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(ip)||typeof r=="object"&&ip(r))return!0}return!1}function Ov(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!A0.has(r)&&(typeof e[r]=="object"&&(0,D0.eachItem)(e[r],n=>t+=Ov(n)),t===1/0))return 1/0}return t}function jv(e,t="",r){r!==!1&&(t=fn(t));let n=e.parse(t);return Dv(e,n)}Je.getFullPath=jv;function Dv(e,t){return e.serialize(t).split("#")[0]+"#"}Je._getFullPath=Dv;var U0=/#\/?$/;function fn(e){return e?e.replace(U0,""):""}Je.normalizeId=fn;function Z0(e,t,r){return r=fn(r),e.resolve(t,r)}Je.resolveUrl=Z0;var L0=/^[a-z_][-a-z0-9._]*$/i;function q0(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=fn(e[r]||t),i={"":o},a=jv(n,o,!1),s={},c=new Set;return R0(e,{allKeys:!0},(d,m,p,g)=>{if(g===void 0)return;let h=a+m,_=i[g];typeof d[r]=="string"&&(_=b.call(this,d[r])),E.call(this,d.$anchor),E.call(this,d.$dynamicAnchor),i[m]=_;function b(I){let A=this.opts.uriResolver.resolve;if(I=fn(_?A(_,I):I),c.has(I))throw l(I);c.add(I);let j=this.refs[I];return typeof j=="string"&&(j=this.refs[j]),typeof j=="object"?u(d,j.schema,I):I!==fn(h)&&(I[0]==="#"?(u(d,s[I],I),s[I]=d):this.refs[I]=h),I}function E(I){if(typeof I=="string"){if(!L0.test(I))throw new Error(`invalid anchor "${I}"`);b.call(this,`#${I}`)}}}),s;function u(d,m,p){if(m!==void 0&&!N0(d,m))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Je.getSchemaRefs=q0});var Go=S(lr=>{"use strict";Object.defineProperty(lr,"__esModule",{value:!0});lr.getData=lr.KeywordCxt=lr.validateFunctionCode=void 0;var Cv=fv(),Nv=Jo(),sp=Xd(),Ha=Jo(),F0=$v(),Ho=wv(),ap=Iv(),O=W(),U=Lt(),V0=Wo(),qt=re(),Ko=Vo();function J0(e){if(Lv(e)&&(qv(e),Zv(e))){H0(e);return}Uv(e,()=>(0,Cv.topBoolOrEmptySchema)(e))}lr.validateFunctionCode=J0;function Uv({gen:e,validateName:t,schema:r,schemaEnv:n,opts:o},i){o.code.es5?e.func(t,(0,O._)`${U.default.data}, ${U.default.valCxt}`,n.$async,()=>{e.code((0,O._)`"use strict"; ${Rv(r,o)}`),K0(e,o),e.code(i)}):e.func(t,(0,O._)`${U.default.data}, ${W0(o)}`,n.$async,()=>e.code(Rv(r,o)).code(i))}function W0(e){return(0,O._)`{${U.default.instancePath}="", ${U.default.parentData}, ${U.default.parentDataProperty}, ${U.default.rootData}=${U.default.data}${e.dynamicRef?(0,O._)`, ${U.default.dynamicAnchors}={}`:O.nil}}={}`}function K0(e,t){e.if(U.default.valCxt,()=>{e.var(U.default.instancePath,(0,O._)`${U.default.valCxt}.${U.default.instancePath}`),e.var(U.default.parentData,(0,O._)`${U.default.valCxt}.${U.default.parentData}`),e.var(U.default.parentDataProperty,(0,O._)`${U.default.valCxt}.${U.default.parentDataProperty}`),e.var(U.default.rootData,(0,O._)`${U.default.valCxt}.${U.default.rootData}`),t.dynamicRef&&e.var(U.default.dynamicAnchors,(0,O._)`${U.default.valCxt}.${U.default.dynamicAnchors}`)},()=>{e.var(U.default.instancePath,(0,O._)`""`),e.var(U.default.parentData,(0,O._)`undefined`),e.var(U.default.parentDataProperty,(0,O._)`undefined`),e.var(U.default.rootData,U.default.data),t.dynamicRef&&e.var(U.default.dynamicAnchors,(0,O._)`{}`)})}function H0(e){let{schema:t,opts:r,gen:n}=e;Uv(e,()=>{r.$comment&&t.$comment&&Vv(e),Q0(e),n.let(U.default.vErrors,null),n.let(U.default.errors,0),r.unevaluated&&G0(e),Fv(e),rz(e)})}function G0(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,O._)`${r}.evaluated`),t.if((0,O._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,O._)`${e.evaluated}.props`,(0,O._)`undefined`)),t.if((0,O._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,O._)`${e.evaluated}.items`,(0,O._)`undefined`))}function Rv(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,O._)`/*# sourceURL=${r} */`:O.nil}function B0(e,t){if(Lv(e)&&(qv(e),Zv(e))){X0(e,t);return}(0,Cv.boolOrEmptySchema)(e,t)}function Zv({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function Lv(e){return typeof e.schema!="boolean"}function X0(e,t){let{schema:r,gen:n,opts:o}=e;o.$comment&&r.$comment&&Vv(e),ez(e),tz(e);let i=n.const("_errs",U.default.errors);Fv(e,i),n.var(t,(0,O._)`${i} === ${U.default.errors}`)}function qv(e){(0,qt.checkUnknownRules)(e),Y0(e)}function Fv(e,t){if(e.opts.jtd)return Av(e,[],!1,t);let r=(0,Nv.getSchemaTypes)(e.schema),n=(0,Nv.coerceAndCheckDataType)(e,r);Av(e,r,!n,t)}function Y0(e){let{schema:t,errSchemaPath:r,opts:n,self:o}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,qt.schemaHasRulesButRef)(t,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function Q0(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,qt.checkStrictMode)(e,"default is ignored in the schema root")}function ez(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,V0.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function tz(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function Vv({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:o}){let i=r.$comment;if(o.$comment===!0)e.code((0,O._)`${U.default.self}.logger.log(${i})`);else if(typeof o.$comment=="function"){let a=(0,O.str)`${n}/$comment`,s=e.scopeValue("root",{ref:t.root});e.code((0,O._)`${U.default.self}.opts.$comment(${i}, ${a}, ${s}.schema)`)}}function rz(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:o,opts:i}=e;r.$async?t.if((0,O._)`${U.default.errors} === 0`,()=>t.return(U.default.data),()=>t.throw((0,O._)`new ${o}(${U.default.vErrors})`)):(t.assign((0,O._)`${n}.errors`,U.default.vErrors),i.unevaluated&&nz(e),t.return((0,O._)`${U.default.errors} === 0`))}function nz({gen:e,evaluated:t,props:r,items:n}){r instanceof O.Name&&e.assign((0,O._)`${t}.props`,r),n instanceof O.Name&&e.assign((0,O._)`${t}.items`,n)}function Av(e,t,r,n){let{gen:o,schema:i,data:a,allErrors:s,opts:c,self:u}=e,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,qt.schemaHasRulesButRef)(i,l))){o.block(()=>Wv(e,"$ref",l.all.$ref.definition));return}c.jtd||oz(e,t),o.block(()=>{for(let m of l.rules)d(m);d(l.post)});function d(m){(0,sp.shouldUseGroup)(i,m)&&(m.type?(o.if((0,Ha.checkDataType)(m.type,a,c.strictNumbers)),Mv(e,m),t.length===1&&t[0]===m.type&&r&&(o.else(),(0,Ha.reportTypeError)(e)),o.endIf()):Mv(e,m),s||o.if((0,O._)`${U.default.errors} === ${n||0}`))}}function Mv(e,t){let{gen:r,schema:n,opts:{useDefaults:o}}=e;o&&(0,F0.assignDefaults)(e,t.type),r.block(()=>{for(let i of t.rules)(0,sp.shouldUseRule)(n,i)&&Wv(e,i.keyword,i.definition,t.type)})}function oz(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(iz(e,t),e.opts.allowUnionTypes||az(e,t),sz(e,e.dataTypes))}function iz(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{Jv(e.dataTypes,r)||cp(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),uz(e,t)}}function az(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&cp(e,"use allowUnionTypes to allow union type keyword")}function sz(e,t){let r=e.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,sp.shouldUseRule)(e.schema,o)){let{type:i}=o.definition;i.length&&!i.some(a=>cz(t,a))&&cp(e,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function cz(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function Jv(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function uz(e,t){let r=[];for(let n of e.dataTypes)Jv(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function cp(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,qt.checkStrictMode)(e,t,e.opts.strictTypes)}var Ga=class{constructor(t,r,n){if((0,Ho.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,qt.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",Kv(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,Ho.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",U.default.errors))}result(t,r,n){this.failResult((0,O.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,O.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,O._)`${r} !== undefined && (${(0,O.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?Ko.reportExtraError:Ko.reportError)(this,this.def.error,r)}$dataError(){(0,Ko.reportError)(this,this.def.$dataError||Ko.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Ko.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=O.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=O.nil,r=O.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:i,def:a}=this;n.if((0,O.or)((0,O._)`${o} === undefined`,r)),t!==O.nil&&n.assign(t,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==O.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:o,it:i}=this;return(0,O.or)(a(),s());function a(){if(n.length){if(!(r instanceof O.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,O._)`${(0,Ha.checkDataTypes)(c,r,i.opts.strictNumbers,Ha.DataType.Wrong)}`}return O.nil}function s(){if(o.validateSchema){let c=t.scopeValue("validate$data",{ref:o.validateSchema});return(0,O._)`!${c}(${r})`}return O.nil}}subschema(t,r){let n=(0,ap.getSubschema)(this.it,t);(0,ap.extendSubschemaData)(n,this.it,t),(0,ap.extendSubschemaMode)(n,t);let o={...this.it,...n,items:void 0,props:void 0};return B0(o,r),o}mergeEvaluated(t,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=qt.mergeEvaluated.props(o,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=qt.mergeEvaluated.items(o,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:o}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return o.if(r,()=>this.mergeEvaluated(t,O.Name)),!0}};lr.KeywordCxt=Ga;function Wv(e,t,r,n){let o=new Ga(e,r,t);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Ho.funcKeywordCode)(o,r):"macro"in r?(0,Ho.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Ho.funcKeywordCode)(o,r)}var lz=/^\/(?:[^~]|~0|~1)*$/,dz=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Kv(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let o,i;if(e==="")return U.default.rootData;if(e[0]==="/"){if(!lz.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);o=e,i=U.default.rootData}else{let u=dz.exec(e);if(!u)throw new Error(`Invalid JSON-pointer: ${e}`);let l=+u[1];if(o=u[2],o==="#"){if(l>=t)throw new Error(c("property/index",l));return n[t-l]}if(l>t)throw new Error(c("data",l));if(i=r[t-l],!o)return i}let a=i,s=o.split("/");for(let u of s)u&&(i=(0,O._)`${i}${(0,O.getProperty)((0,qt.unescapeJsonPointer)(u))}`,a=(0,O._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${t}`}}lr.getData=Kv});var Ba=S(lp=>{"use strict";Object.defineProperty(lp,"__esModule",{value:!0});var up=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};lp.default=up});var Bo=S(fp=>{"use strict";Object.defineProperty(fp,"__esModule",{value:!0});var dp=Wo(),pp=class extends Error{constructor(t,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,dp.resolveUrl)(t,r,n),this.missingSchema=(0,dp.normalizeId)((0,dp.getFullPath)(t,this.missingRef))}};fp.default=pp});var Ya=S(st=>{"use strict";Object.defineProperty(st,"__esModule",{value:!0});st.resolveSchema=st.getCompilingSchema=st.resolveRef=st.compileSchema=st.SchemaEnv=void 0;var ft=W(),pz=Ba(),Er=Lt(),mt=Wo(),Hv=re(),fz=Go(),mn=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,mt.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};st.SchemaEnv=mn;function hp(e){let t=Gv.call(this,e);if(t)return t;let r=(0,mt.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:i}=this.opts,a=new ft.CodeGen(this.scope,{es5:n,lines:o,ownProperties:i}),s;e.$async&&(s=a.scopeValue("Error",{ref:pz.default,code:(0,ft._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");e.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Er.default.data,parentData:Er.default.parentData,parentDataProperty:Er.default.parentDataProperty,dataNames:[Er.default.data],dataPathArr:[ft.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,ft.stringify)(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:s,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:ft.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,ft._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(e),(0,fz.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(Er.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,e));let p=new Function(`${Er.default.self}`,`${Er.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=e.schema,p.schemaEnv=e,e.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:g,items:h}=u;p.evaluated={props:g instanceof ft.Name?void 0:g,items:h instanceof ft.Name?void 0:h,dynamicProps:g instanceof ft.Name,dynamicItems:h instanceof ft.Name},p.source&&(p.source.evaluated=(0,ft.stringify)(p.evaluated))}return e.validate=p,e}catch(d){throw delete e.validate,delete e.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(e)}}st.compileSchema=hp;function mz(e,t,r){var n;r=(0,mt.resolveUrl)(this.opts.uriResolver,t,r);let o=e.refs[r];if(o)return o;let i=vz.call(this,e,r);if(i===void 0){let a=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:s}=this.opts;a&&(i=new mn({schema:a,schemaId:s,root:e,baseId:t}))}if(i!==void 0)return e.refs[r]=hz.call(this,i)}st.resolveRef=mz;function hz(e){return(0,mt.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:hp.call(this,e)}function Gv(e){for(let t of this._compilations)if(gz(t,e))return t}st.getCompilingSchema=Gv;function gz(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function vz(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||Xa.call(this,e,t)}function Xa(e,t){let r=this.opts.uriResolver.parse(t),n=(0,mt._getFullPath)(this.opts.uriResolver,r),o=(0,mt.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===o)return mp.call(this,r,e);let i=(0,mt.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let s=Xa.call(this,e,a);return typeof s?.schema!="object"?void 0:mp.call(this,r,s)}if(typeof a?.schema=="object"){if(a.validate||hp.call(this,a),i===(0,mt.normalizeId)(t)){let{schema:s}=a,{schemaId:c}=this.opts,u=s[c];return u&&(o=(0,mt.resolveUrl)(this.opts.uriResolver,o,u)),new mn({schema:s,schemaId:c,root:e,baseId:o})}return mp.call(this,r,a)}}st.resolveSchema=Xa;var _z=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function mp(e,{baseId:t,schema:r,root:n}){var o;if(((o=e.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let s of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,Hv.unescapeFragment)(s)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!_z.has(s)&&u&&(t=(0,mt.resolveUrl)(this.opts.uriResolver,t,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,Hv.schemaHasRulesButRef)(r,this.RULES)){let s=(0,mt.resolveUrl)(this.opts.uriResolver,t,r.$ref);i=Xa.call(this,n,s)}let{schemaId:a}=this.opts;if(i=i||new mn({schema:r,schemaId:a,root:n,baseId:t}),i.schema!==i.root.schema)return i}});var Bv=S(($C,yz)=>{yz.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var vp=S((bC,e_)=>{"use strict";var $z=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Yv=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function gp(e){let t="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var bz=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Xv(e){return e.length=0,!0}function xz(e,t,r){if(e.length){let n=gp(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function kz(e){let t=0,r={error:!1,address:"",zone:""},n=[],o=[],i=!1,a=!1,s=xz;for(let c=0;c7){r.error=!0;break}c>0&&e[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!s(o,n,r))break;s=Xv}else{o.push(u);continue}}return o.length&&(s===Xv?r.zone=o.join(""):a?n.push(o.join("")):n.push(gp(o))),r.address=n.join(""),r}function Qv(e){if(Sz(e,":")<2)return{host:e,isIPV6:!1};let t=kz(e);if(t.error)return{host:e,isIPV6:!1};{let r=t.address,n=t.address;return t.zone&&(r+="%"+t.zone,n+="%25"+t.zone),{host:r,isIPV6:!0,escapedHost:n}}}function Sz(e,t){let r=0;for(let n=0;n{"use strict";var{isUUID:Ez}=vp(),Tz=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,Pz=["http","https","ws","wss","urn","urn:uuid"];function Oz(e){return Pz.indexOf(e)!==-1}function _p(e){return e.secure===!0?!0:e.secure===!1?!1:e.scheme?e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S"):!1}function t_(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function r_(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function jz(e){return e.secure=_p(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function Dz(e){if((e.port===(_p(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function Nz(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(Tz);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let o=`${n}:${t.nid||e.nid}`,i=yp(o);e.path=void 0,i&&(e=i.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function Rz(e,t){if(e.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),o=`${r}:${t.nid||n}`,i=yp(o);i&&(e=i.serialize(e,t));let a=e,s=e.nss;return a.path=`${n||t.nid}:${s}`,t.skipEscape=!0,a}function Az(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!Ez(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function Mz(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var n_={scheme:"http",domainHost:!0,parse:t_,serialize:r_},Cz={scheme:"https",domainHost:n_.domainHost,parse:t_,serialize:r_},Qa={scheme:"ws",domainHost:!0,parse:jz,serialize:Dz},Uz={scheme:"wss",domainHost:Qa.domainHost,parse:Qa.parse,serialize:Qa.serialize},Zz={scheme:"urn",parse:Nz,serialize:Rz,skipNormalize:!0},Lz={scheme:"urn:uuid",parse:Az,serialize:Mz,skipNormalize:!0},es={http:n_,https:Cz,ws:Qa,wss:Uz,urn:Zz,"urn:uuid":Lz};Object.setPrototypeOf(es,null);function yp(e){return e&&(es[e]||es[e.toLowerCase()])||void 0}o_.exports={wsIsSecure:_p,SCHEMES:es,isValidSchemeName:Oz,getSchemeHandler:yp}});var c_=S((kC,rs)=>{"use strict";var{normalizeIPv6:qz,removeDotSegments:Xo,recomposeAuthority:Fz,normalizeComponentEncoding:ts,isIPv4:Vz,nonSimpleDomain:Jz}=vp(),{SCHEMES:Wz,getSchemeHandler:a_}=i_();function Kz(e,t){return typeof e=="string"?e=xt(Ft(e,t),t):typeof e=="object"&&(e=Ft(xt(e,t),t)),e}function Hz(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=s_(Ft(e,n),Ft(t,n),n,!0);return n.skipEscape=!0,xt(o,n)}function s_(e,t,r,n){let o={};return n||(e=Ft(xt(e,r),r),t=Ft(xt(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(o.scheme=t.scheme,o.userinfo=t.userinfo,o.host=t.host,o.port=t.port,o.path=Xo(t.path||""),o.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(o.userinfo=t.userinfo,o.host=t.host,o.port=t.port,o.path=Xo(t.path||""),o.query=t.query):(t.path?(t.path[0]==="/"?o.path=Xo(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?o.path="/"+t.path:e.path?o.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:o.path=t.path,o.path=Xo(o.path)),o.query=t.query):(o.path=e.path,t.query!==void 0?o.query=t.query:o.query=e.query),o.userinfo=e.userinfo,o.host=e.host,o.port=e.port),o.scheme=e.scheme),o.fragment=t.fragment,o}function Gz(e,t,r){return typeof e=="string"?(e=unescape(e),e=xt(ts(Ft(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=xt(ts(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=xt(ts(Ft(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=xt(ts(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function xt(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),o=[],i=a_(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&o.push(r.scheme,":");let a=Fz(r);if(a!==void 0&&(n.reference!=="suffix"&&o.push("//"),o.push(a),r.path&&r.path[0]!=="/"&&o.push("/")),r.path!==void 0){let s=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(s=Xo(s)),a===void 0&&s[0]==="/"&&s[1]==="/"&&(s="/%2F"+s.slice(2)),o.push(s)}return r.query!==void 0&&o.push("?",r.query),r.fragment!==void 0&&o.push("#",r.fragment),o.join("")}var Bz=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Ft(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let i=e.match(Bz);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(Vz(n.host)===!1){let c=qz(n.host);n.host=c.host.toLowerCase(),o=c.isIPV6}else o=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=a_(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&o===!1&&Jz(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(s){n.error=n.error||"Host's domain name can not be converted to ASCII: "+s}(!a||a&&!a.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var $p={SCHEMES:Wz,normalize:Kz,resolve:Hz,resolveComponent:s_,equal:Gz,serialize:xt,parse:Ft};rs.exports=$p;rs.exports.default=$p;rs.exports.fastUri=$p});var l_=S(bp=>{"use strict";Object.defineProperty(bp,"__esModule",{value:!0});var u_=c_();u_.code='require("ajv/dist/runtime/uri").default';bp.default=u_});var __=S(ze=>{"use strict";Object.defineProperty(ze,"__esModule",{value:!0});ze.CodeGen=ze.Name=ze.nil=ze.stringify=ze.str=ze._=ze.KeywordCxt=void 0;var Xz=Go();Object.defineProperty(ze,"KeywordCxt",{enumerable:!0,get:function(){return Xz.KeywordCxt}});var hn=W();Object.defineProperty(ze,"_",{enumerable:!0,get:function(){return hn._}});Object.defineProperty(ze,"str",{enumerable:!0,get:function(){return hn.str}});Object.defineProperty(ze,"stringify",{enumerable:!0,get:function(){return hn.stringify}});Object.defineProperty(ze,"nil",{enumerable:!0,get:function(){return hn.nil}});Object.defineProperty(ze,"Name",{enumerable:!0,get:function(){return hn.Name}});Object.defineProperty(ze,"CodeGen",{enumerable:!0,get:function(){return hn.CodeGen}});var Yz=Ba(),h_=Bo(),Qz=Bd(),Yo=Ya(),eI=W(),Qo=Wo(),ns=Jo(),kp=re(),d_=Bv(),tI=l_(),g_=(e,t)=>new RegExp(e,t);g_.code="new RegExp";var rI=["removeAdditional","useDefaults","coerceTypes"],nI=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),oI={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},iI={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},p_=200;function aI(e){var t,r,n,o,i,a,s,c,u,l,d,m,p,g,h,_,b,E,I,A,j,Le,de,Wt,Qe;let Kt=e.strict,Ds=(t=e.code)===null||t===void 0?void 0:t.optimize,Nf=Ds===!0||Ds===void 0?1:Ds||0,Rf=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:g_,u$=(o=e.uriResolver)!==null&&o!==void 0?o:tI.default;return{strictSchema:(a=(i=e.strictSchema)!==null&&i!==void 0?i:Kt)!==null&&a!==void 0?a:!0,strictNumbers:(c=(s=e.strictNumbers)!==null&&s!==void 0?s:Kt)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=e.strictTypes)!==null&&u!==void 0?u:Kt)!==null&&l!==void 0?l:"log",strictTuples:(m=(d=e.strictTuples)!==null&&d!==void 0?d:Kt)!==null&&m!==void 0?m:"log",strictRequired:(g=(p=e.strictRequired)!==null&&p!==void 0?p:Kt)!==null&&g!==void 0?g:!1,code:e.code?{...e.code,optimize:Nf,regExp:Rf}:{optimize:Nf,regExp:Rf},loopRequired:(h=e.loopRequired)!==null&&h!==void 0?h:p_,loopEnum:(_=e.loopEnum)!==null&&_!==void 0?_:p_,meta:(b=e.meta)!==null&&b!==void 0?b:!0,messages:(E=e.messages)!==null&&E!==void 0?E:!0,inlineRefs:(I=e.inlineRefs)!==null&&I!==void 0?I:!0,schemaId:(A=e.schemaId)!==null&&A!==void 0?A:"$id",addUsedSchema:(j=e.addUsedSchema)!==null&&j!==void 0?j:!0,validateSchema:(Le=e.validateSchema)!==null&&Le!==void 0?Le:!0,validateFormats:(de=e.validateFormats)!==null&&de!==void 0?de:!0,unicodeRegExp:(Wt=e.unicodeRegExp)!==null&&Wt!==void 0?Wt:!0,int32range:(Qe=e.int32range)!==null&&Qe!==void 0?Qe:!0,uriResolver:u$}}var ei=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...aI(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new eI.ValueScope({scope:{},prefixes:nI,es5:r,lines:n}),this.logger=pI(t.logger);let o=t.validateFormats;t.validateFormats=!1,this.RULES=(0,Qz.getRules)(),f_.call(this,oI,t,"NOT SUPPORTED"),f_.call(this,iI,t,"DEPRECATED","warn"),this._metaOpts=lI.call(this),t.formats&&cI.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&uI.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),sI.call(this),t.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,o=d_;n==="id"&&(o={...d_},o.id=o.$id,delete o.$id),r&&t&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return o.call(this,t,r);async function o(l,d){await i.call(this,l.$schema);let m=this._addSchema(l,d);return m.validate||a.call(this,m)}async function i(l){l&&!this.getSchema(l)&&await o.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof h_.default))throw d;return s.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function s({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(t,r,n,o=this.opts.validateSchema){if(Array.isArray(t)){for(let a of t)this.addSchema(a,void 0,n,o);return this}let i;if(typeof t=="object"){let{schemaId:a}=this.opts;if(i=t[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,Qo.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,o,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let o=this.validate(n,t);if(!o&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return o}getSchema(t){let r;for(;typeof(r=m_.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Yo.SchemaEnv({schema:{},schemaId:n});if(r=Yo.resolveSchema.call(this,o,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=m_.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,Qo.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(mI.call(this,n,r),!r)return(0,kp.eachItem)(n,i=>xp.call(this,i)),this;gI.call(this,r);let o={...r,type:(0,ns.getJSONTypes)(r.type),schemaType:(0,ns.getJSONTypes)(r.schemaType)};return(0,kp.eachItem)(n,o.type.length===0?i=>xp.call(this,i,o):i=>o.type.forEach(a=>xp.call(this,i,o,a))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let o=n.rules.findIndex(i=>i.keyword===t);o>=0&&n.rules.splice(o,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(o=>`${n}${o.instancePath} ${o.message}`).reduce((o,i)=>o+r+i)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let o of r){let i=o.split("/").slice(1),a=t;for(let s of i)a=a[s];for(let s in n){let c=n[s];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[s];u&&l&&(a[s]=v_(l))}}return t}_removeAllSchemas(t,r){for(let n in t){let o=t[n];(!r||r.test(n))&&(typeof o=="string"?delete t[n]:o&&!o.meta&&(this._cache.delete(o.schema),delete t[n]))}}_addSchema(t,r,n,o=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:s}=this.opts;if(typeof t=="object")a=t[s];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(t);if(c!==void 0)return c;n=(0,Qo.normalizeId)(a||n);let u=Qo.getSchemaRefs.call(this,t,n);return c=new Yo.SchemaEnv({schema:t,schemaId:s,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),o&&this.validateSchema(t,!0),c}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):Yo.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{Yo.compileSchema.call(this,t)}finally{this.opts=r}}};ei.ValidationError=Yz.default;ei.MissingRefError=h_.default;ze.default=ei;function f_(e,t,r,n="error"){for(let o in e){let i=o;i in t&&this.logger[n](`${r}: option ${o}. ${e[i]}`)}}function m_(e){return e=(0,Qo.normalizeId)(e),this.schemas[e]||this.refs[e]}function sI(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function cI(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function uI(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function lI(){let e={...this.opts};for(let t of rI)delete e[t];return e}var dI={log(){},warn(){},error(){}};function pI(e){if(e===!1)return dI;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var fI=/^[a-z_$][a-z0-9_$:-]*$/i;function mI(e,t){let{RULES:r}=this;if((0,kp.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!fI.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function xp(e,t,r){var n;let o=t?.post;if(r&&o)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=o?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[e]=!0,!t)return;let s={keyword:e,definition:{...t,type:(0,ns.getJSONTypes)(t.type),schemaType:(0,ns.getJSONTypes)(t.schemaType)}};t.before?hI.call(this,a,s,t.before):a.rules.push(s),i.all[e]=s,(n=t.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function hI(e,t,r){let n=e.rules.findIndex(o=>o.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function gI(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=v_(t)),e.validateSchema=this.compile(t,!0))}var vI={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function v_(e){return{anyOf:[e,vI]}}});var y_=S(Sp=>{"use strict";Object.defineProperty(Sp,"__esModule",{value:!0});var _I={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Sp.default=_I});var k_=S(Tr=>{"use strict";Object.defineProperty(Tr,"__esModule",{value:!0});Tr.callRef=Tr.getValidate=void 0;var yI=Bo(),$_=at(),We=W(),gn=Lt(),b_=Ya(),os=re(),$I={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:o,schemaEnv:i,validateName:a,opts:s,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&o===u.baseId)return d();let l=b_.resolveRef.call(c,u,o,r);if(l===void 0)throw new yI.default(n.opts.uriResolver,o,r);if(l instanceof b_.SchemaEnv)return m(l);return p(l);function d(){if(i===u)return is(e,a,i,i.$async);let g=t.scopeValue("root",{ref:u});return is(e,(0,We._)`${g}.validate`,u,u.$async)}function m(g){let h=x_(e,g);is(e,h,g,g.$async)}function p(g){let h=t.scopeValue("schema",s.code.source===!0?{ref:g,code:(0,We.stringify)(g)}:{ref:g}),_=t.name("valid"),b=e.subschema({schema:g,dataTypes:[],schemaPath:We.nil,topSchemaRef:h,errSchemaPath:r},_);e.mergeEvaluated(b),e.ok(_)}}};function x_(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,We._)`${r.scopeValue("wrapper",{ref:t})}.validate`}Tr.getValidate=x_;function is(e,t,r,n){let{gen:o,it:i}=e,{allErrors:a,schemaEnv:s,opts:c}=i,u=c.passContext?gn.default.this:We.nil;n?l():d();function l(){if(!s.$async)throw new Error("async schema referenced by sync schema");let g=o.let("valid");o.try(()=>{o.code((0,We._)`await ${(0,$_.callValidateCode)(e,t,u)}`),p(t),a||o.assign(g,!0)},h=>{o.if((0,We._)`!(${h} instanceof ${i.ValidationError})`,()=>o.throw(h)),m(h),a||o.assign(g,!1)}),e.ok(g)}function d(){e.result((0,$_.callValidateCode)(e,t,u),()=>p(t),()=>m(t))}function m(g){let h=(0,We._)`${g}.errors`;o.assign(gn.default.vErrors,(0,We._)`${gn.default.vErrors} === null ? ${h} : ${gn.default.vErrors}.concat(${h})`),o.assign(gn.default.errors,(0,We._)`${gn.default.vErrors}.length`)}function p(g){var h;if(!i.opts.unevaluated)return;let _=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(_&&!_.dynamicProps)_.props!==void 0&&(i.props=os.mergeEvaluated.props(o,_.props,i.props));else{let b=o.var("props",(0,We._)`${g}.evaluated.props`);i.props=os.mergeEvaluated.props(o,b,i.props,We.Name)}if(i.items!==!0)if(_&&!_.dynamicItems)_.items!==void 0&&(i.items=os.mergeEvaluated.items(o,_.items,i.items));else{let b=o.var("items",(0,We._)`${g}.evaluated.items`);i.items=os.mergeEvaluated.items(o,b,i.items,We.Name)}}}Tr.callRef=is;Tr.default=$I});var S_=S(wp=>{"use strict";Object.defineProperty(wp,"__esModule",{value:!0});var bI=y_(),xI=k_(),kI=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",bI.default,xI.default];wp.default=kI});var w_=S(zp=>{"use strict";Object.defineProperty(zp,"__esModule",{value:!0});var as=W(),dr=as.operators,ss={maximum:{okStr:"<=",ok:dr.LTE,fail:dr.GT},minimum:{okStr:">=",ok:dr.GTE,fail:dr.LT},exclusiveMaximum:{okStr:"<",ok:dr.LT,fail:dr.GTE},exclusiveMinimum:{okStr:">",ok:dr.GT,fail:dr.LTE}},SI={message:({keyword:e,schemaCode:t})=>(0,as.str)`must be ${ss[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,as._)`{comparison: ${ss[e].okStr}, limit: ${t}}`},wI={keyword:Object.keys(ss),type:"number",schemaType:"number",$data:!0,error:SI,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,as._)`${r} ${ss[t].fail} ${n} || isNaN(${r})`)}};zp.default=wI});var z_=S(Ip=>{"use strict";Object.defineProperty(Ip,"__esModule",{value:!0});var ti=W(),zI={message:({schemaCode:e})=>(0,ti.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,ti._)`{multipleOf: ${e}}`},II={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:zI,code(e){let{gen:t,data:r,schemaCode:n,it:o}=e,i=o.opts.multipleOfPrecision,a=t.let("res"),s=i?(0,ti._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,ti._)`${a} !== parseInt(${a})`;e.fail$data((0,ti._)`(${n} === 0 || (${a} = ${r}/${n}, ${s}))`)}};Ip.default=II});var E_=S(Ep=>{"use strict";Object.defineProperty(Ep,"__esModule",{value:!0});function I_(e){let t=e.length,r=0,n=0,o;for(;n=55296&&o<=56319&&n{"use strict";Object.defineProperty(Tp,"__esModule",{value:!0});var Pr=W(),EI=re(),TI=E_(),PI={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,Pr.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,Pr._)`{limit: ${e}}`},OI={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:PI,code(e){let{keyword:t,data:r,schemaCode:n,it:o}=e,i=t==="maxLength"?Pr.operators.GT:Pr.operators.LT,a=o.opts.unicode===!1?(0,Pr._)`${r}.length`:(0,Pr._)`${(0,EI.useFunc)(e.gen,TI.default)}(${r})`;e.fail$data((0,Pr._)`${a} ${i} ${n}`)}};Tp.default=OI});var P_=S(Pp=>{"use strict";Object.defineProperty(Pp,"__esModule",{value:!0});var jI=at(),cs=W(),DI={message:({schemaCode:e})=>(0,cs.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,cs._)`{pattern: ${e}}`},NI={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:DI,code(e){let{data:t,$data:r,schema:n,schemaCode:o,it:i}=e,a=i.opts.unicodeRegExp?"u":"",s=r?(0,cs._)`(new RegExp(${o}, ${a}))`:(0,jI.usePattern)(e,n);e.fail$data((0,cs._)`!${s}.test(${t})`)}};Pp.default=NI});var O_=S(Op=>{"use strict";Object.defineProperty(Op,"__esModule",{value:!0});var ri=W(),RI={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,ri.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,ri._)`{limit: ${e}}`},AI={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:RI,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxProperties"?ri.operators.GT:ri.operators.LT;e.fail$data((0,ri._)`Object.keys(${r}).length ${o} ${n}`)}};Op.default=AI});var j_=S(jp=>{"use strict";Object.defineProperty(jp,"__esModule",{value:!0});var ni=at(),oi=W(),MI=re(),CI={message:({params:{missingProperty:e}})=>(0,oi.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,oi._)`{missingProperty: ${e}}`},UI={keyword:"required",type:"object",schemaType:"array",$data:!0,error:CI,code(e){let{gen:t,schema:r,schemaCode:n,data:o,$data:i,it:a}=e,{opts:s}=a;if(!i&&r.length===0)return;let c=r.length>=s.loopRequired;if(a.allErrors?u():l(),s.strictRequired){let p=e.parentSchema.properties,{definedProperties:g}=e.it;for(let h of r)if(p?.[h]===void 0&&!g.has(h)){let _=a.schemaEnv.baseId+a.errSchemaPath,b=`required property "${h}" is not defined at "${_}" (strictRequired)`;(0,MI.checkStrictMode)(a,b,a.opts.strictRequired)}}function u(){if(c||i)e.block$data(oi.nil,d);else for(let p of r)(0,ni.checkReportMissingProp)(e,p)}function l(){let p=t.let("missing");if(c||i){let g=t.let("valid",!0);e.block$data(g,()=>m(p,g)),e.ok(g)}else t.if((0,ni.checkMissingProp)(e,r,p)),(0,ni.reportMissingProp)(e,p),t.else()}function d(){t.forOf("prop",n,p=>{e.setParams({missingProperty:p}),t.if((0,ni.noPropertyInData)(t,o,p,s.ownProperties),()=>e.error())})}function m(p,g){e.setParams({missingProperty:p}),t.forOf(p,n,()=>{t.assign(g,(0,ni.propertyInData)(t,o,p,s.ownProperties)),t.if((0,oi.not)(g),()=>{e.error(),t.break()})},oi.nil)}}};jp.default=UI});var D_=S(Dp=>{"use strict";Object.defineProperty(Dp,"__esModule",{value:!0});var ii=W(),ZI={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,ii.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,ii._)`{limit: ${e}}`},LI={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:ZI,code(e){let{keyword:t,data:r,schemaCode:n}=e,o=t==="maxItems"?ii.operators.GT:ii.operators.LT;e.fail$data((0,ii._)`${r}.length ${o} ${n}`)}};Dp.default=LI});var us=S(Np=>{"use strict";Object.defineProperty(Np,"__esModule",{value:!0});var N_=op();N_.code='require("ajv/dist/runtime/equal").default';Np.default=N_});var R_=S(Ap=>{"use strict";Object.defineProperty(Ap,"__esModule",{value:!0});var Rp=Jo(),Ie=W(),qI=re(),FI=us(),VI={message:({params:{i:e,j:t}})=>(0,Ie.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,Ie._)`{i: ${e}, j: ${t}}`},JI={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:VI,code(e){let{gen:t,data:r,$data:n,schema:o,parentSchema:i,schemaCode:a,it:s}=e;if(!n&&!o)return;let c=t.let("valid"),u=i.items?(0,Rp.getSchemaTypes)(i.items):[];e.block$data(c,l,(0,Ie._)`${a} === false`),e.ok(c);function l(){let g=t.let("i",(0,Ie._)`${r}.length`),h=t.let("j");e.setParams({i:g,j:h}),t.assign(c,!0),t.if((0,Ie._)`${g} > 1`,()=>(d()?m:p)(g,h))}function d(){return u.length>0&&!u.some(g=>g==="object"||g==="array")}function m(g,h){let _=t.name("item"),b=(0,Rp.checkDataTypes)(u,_,s.opts.strictNumbers,Rp.DataType.Wrong),E=t.const("indices",(0,Ie._)`{}`);t.for((0,Ie._)`;${g}--;`,()=>{t.let(_,(0,Ie._)`${r}[${g}]`),t.if(b,(0,Ie._)`continue`),u.length>1&&t.if((0,Ie._)`typeof ${_} == "string"`,(0,Ie._)`${_} += "_"`),t.if((0,Ie._)`typeof ${E}[${_}] == "number"`,()=>{t.assign(h,(0,Ie._)`${E}[${_}]`),e.error(),t.assign(c,!1).break()}).code((0,Ie._)`${E}[${_}] = ${g}`)})}function p(g,h){let _=(0,qI.useFunc)(t,FI.default),b=t.name("outer");t.label(b).for((0,Ie._)`;${g}--;`,()=>t.for((0,Ie._)`${h} = ${g}; ${h}--;`,()=>t.if((0,Ie._)`${_}(${r}[${g}], ${r}[${h}])`,()=>{e.error(),t.assign(c,!1).break(b)})))}}};Ap.default=JI});var A_=S(Cp=>{"use strict";Object.defineProperty(Cp,"__esModule",{value:!0});var Mp=W(),WI=re(),KI=us(),HI={message:"must be equal to constant",params:({schemaCode:e})=>(0,Mp._)`{allowedValue: ${e}}`},GI={keyword:"const",$data:!0,error:HI,code(e){let{gen:t,data:r,$data:n,schemaCode:o,schema:i}=e;n||i&&typeof i=="object"?e.fail$data((0,Mp._)`!${(0,WI.useFunc)(t,KI.default)}(${r}, ${o})`):e.fail((0,Mp._)`${i} !== ${r}`)}};Cp.default=GI});var M_=S(Up=>{"use strict";Object.defineProperty(Up,"__esModule",{value:!0});var ai=W(),BI=re(),XI=us(),YI={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,ai._)`{allowedValues: ${e}}`},QI={keyword:"enum",schemaType:"array",$data:!0,error:YI,code(e){let{gen:t,data:r,$data:n,schema:o,schemaCode:i,it:a}=e;if(!n&&o.length===0)throw new Error("enum must have non-empty array");let s=o.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,BI.useFunc)(t,XI.default)),l;if(s||n)l=t.let("valid"),e.block$data(l,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let p=t.const("vSchema",i);l=(0,ai.or)(...o.map((g,h)=>m(p,h)))}e.pass(l);function d(){t.assign(l,!1),t.forOf("v",i,p=>t.if((0,ai._)`${u()}(${r}, ${p})`,()=>t.assign(l,!0).break()))}function m(p,g){let h=o[g];return typeof h=="object"&&h!==null?(0,ai._)`${u()}(${r}, ${p}[${g}])`:(0,ai._)`${r} === ${h}`}}};Up.default=QI});var C_=S(Zp=>{"use strict";Object.defineProperty(Zp,"__esModule",{value:!0});var eE=w_(),tE=z_(),rE=T_(),nE=P_(),oE=O_(),iE=j_(),aE=D_(),sE=R_(),cE=A_(),uE=M_(),lE=[eE.default,tE.default,rE.default,nE.default,oE.default,iE.default,aE.default,sE.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},cE.default,uE.default];Zp.default=lE});var qp=S(si=>{"use strict";Object.defineProperty(si,"__esModule",{value:!0});si.validateAdditionalItems=void 0;var Or=W(),Lp=re(),dE={message:({params:{len:e}})=>(0,Or.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Or._)`{limit: ${e}}`},pE={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:dE,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,Lp.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}U_(e,n)}};function U_(e,t){let{gen:r,schema:n,data:o,keyword:i,it:a}=e;a.items=!0;let s=r.const("len",(0,Or._)`${o}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,Or._)`${s} <= ${t.length}`);else if(typeof n=="object"&&!(0,Lp.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,Or._)`${s} <= ${t.length}`);r.if((0,Or.not)(u),()=>c(u)),e.ok(u)}function c(u){r.forRange("i",t.length,s,l=>{e.subschema({keyword:i,dataProp:l,dataPropType:Lp.Type.Num},u),a.allErrors||r.if((0,Or.not)(u),()=>r.break())})}}si.validateAdditionalItems=U_;si.default=pE});var Fp=S(ci=>{"use strict";Object.defineProperty(ci,"__esModule",{value:!0});ci.validateTuple=void 0;var Z_=W(),ls=re(),fE=at(),mE={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return L_(e,"additionalItems",t);r.items=!0,!(0,ls.alwaysValidSchema)(r,t)&&e.ok((0,fE.validateArray)(e))}};function L_(e,t,r=e.schema){let{gen:n,parentSchema:o,data:i,keyword:a,it:s}=e;l(o),s.opts.unevaluated&&r.length&&s.items!==!0&&(s.items=ls.mergeEvaluated.items(n,r.length,s.items));let c=n.name("valid"),u=n.const("len",(0,Z_._)`${i}.length`);r.forEach((d,m)=>{(0,ls.alwaysValidSchema)(s,d)||(n.if((0,Z_._)`${u} > ${m}`,()=>e.subschema({keyword:a,schemaProp:m,dataProp:m},c)),e.ok(c))});function l(d){let{opts:m,errSchemaPath:p}=s,g=r.length,h=g===d.minItems&&(g===d.maxItems||d[t]===!1);if(m.strictTuples&&!h){let _=`"${a}" is ${g}-tuple, but minItems or maxItems/${t} are not specified or different at path "${p}"`;(0,ls.checkStrictMode)(s,_,m.strictTuples)}}}ci.validateTuple=L_;ci.default=mE});var q_=S(Vp=>{"use strict";Object.defineProperty(Vp,"__esModule",{value:!0});var hE=Fp(),gE={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,hE.validateTuple)(e,"items")};Vp.default=gE});var V_=S(Jp=>{"use strict";Object.defineProperty(Jp,"__esModule",{value:!0});var F_=W(),vE=re(),_E=at(),yE=qp(),$E={message:({params:{len:e}})=>(0,F_.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,F_._)`{limit: ${e}}`},bE={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:$E,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:o}=r;n.items=!0,!(0,vE.alwaysValidSchema)(n,t)&&(o?(0,yE.validateAdditionalItems)(e,o):e.ok((0,_E.validateArray)(e)))}};Jp.default=bE});var J_=S(Wp=>{"use strict";Object.defineProperty(Wp,"__esModule",{value:!0});var ct=W(),ds=re(),xE={message:({params:{min:e,max:t}})=>t===void 0?(0,ct.str)`must contain at least ${e} valid item(s)`:(0,ct.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,ct._)`{minContains: ${e}}`:(0,ct._)`{minContains: ${e}, maxContains: ${t}}`},kE={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:xE,code(e){let{gen:t,schema:r,parentSchema:n,data:o,it:i}=e,a,s,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,s=u):a=1;let l=t.const("len",(0,ct._)`${o}.length`);if(e.setParams({min:a,max:s}),s===void 0&&a===0){(0,ds.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(s!==void 0&&a>s){(0,ds.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,ds.alwaysValidSchema)(i,r)){let h=(0,ct._)`${l} >= ${a}`;s!==void 0&&(h=(0,ct._)`${h} && ${l} <= ${s}`),e.pass(h);return}i.items=!0;let d=t.name("valid");s===void 0&&a===1?p(d,()=>t.if(d,()=>t.break())):a===0?(t.let(d,!0),s!==void 0&&t.if((0,ct._)`${o}.length > 0`,m)):(t.let(d,!1),m()),e.result(d,()=>e.reset());function m(){let h=t.name("_valid"),_=t.let("count",0);p(h,()=>t.if(h,()=>g(_)))}function p(h,_){t.forRange("i",0,l,b=>{e.subschema({keyword:"contains",dataProp:b,dataPropType:ds.Type.Num,compositeRule:!0},h),_()})}function g(h){t.code((0,ct._)`${h}++`),s===void 0?t.if((0,ct._)`${h} >= ${a}`,()=>t.assign(d,!0).break()):(t.if((0,ct._)`${h} > ${s}`,()=>t.assign(d,!1).break()),a===1?t.assign(d,!0):t.if((0,ct._)`${h} >= ${a}`,()=>t.assign(d,!0)))}}};Wp.default=kE});var H_=S(kt=>{"use strict";Object.defineProperty(kt,"__esModule",{value:!0});kt.validateSchemaDeps=kt.validatePropertyDeps=kt.error=void 0;var Kp=W(),SE=re(),ui=at();kt.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,Kp.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,Kp._)`{property: ${e}, +"use strict";var P3=Object.create;var bm=Object.defineProperty;var A3=Object.getOwnPropertyDescriptor;var N3=Object.getOwnPropertyNames;var M3=Object.getPrototypeOf,D3=Object.prototype.hasOwnProperty;var Ee=(t,e)=>()=>(t&&(e=t(t=0)),e);var $=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Fn=(t,e)=>{for(var r in e)bm(t,r,{get:e[r],enumerable:!0})},sO=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of N3(e))!D3.call(t,i)&&i!==r&&bm(t,i,{get:()=>e[i],enumerable:!(n=A3(e,i))||n.enumerable});return t};var Pe=(t,e,r)=>(r=t!=null?P3(M3(t)):{},sO(e||!t||!t.__esModule?bm(r,"default",{value:t,enumerable:!0}):r,t)),Q_=t=>sO(bm({},"__esModule",{value:!0}),t);var ds,xl,aO,eb,oO,tb,_,te=Ee(()=>{"use strict";ds=require("fs"),xl=require("path"),aO=require("os"),eb=(s=>(s[s.DEBUG=0]="DEBUG",s[s.INFO=1]="INFO",s[s.WARN=2]="WARN",s[s.ERROR=3]="ERROR",s[s.SILENT=4]="SILENT",s))(eb||{}),oO=(0,xl.join)((0,aO.homedir)(),".claude-mem"),tb=class{level=null;useColor;logFilePath=null;logFileInitialized=!1;constructor(){this.useColor=process.stdout.isTTY??!1}ensureLogFileInitialized(){if(!this.logFileInitialized){this.logFileInitialized=!0;try{let e=(0,xl.join)(oO,"logs");(0,ds.existsSync)(e)||(0,ds.mkdirSync)(e,{recursive:!0});let r=new Date().toISOString().split("T")[0];this.logFilePath=(0,xl.join)(e,`claude-mem-${r}.log`)}catch(e){console.error("[LOGGER] Failed to initialize log file:",e),this.logFilePath=null}}}getLevel(){if(this.level===null)try{let e=(0,xl.join)(oO,"settings.json");if((0,ds.existsSync)(e)){let r=(0,ds.readFileSync)(e,"utf-8"),i=(JSON.parse(r).CLAUDE_MEM_LOG_LEVEL||"INFO").toUpperCase();this.level=eb[i]??1}else this.level=1}catch{this.level=1}return this.level}correlationId(e,r){return`obs-${e}-${r}`}sessionId(e){return`session-${e}`}formatData(e){if(e==null)return"";if(typeof e=="string")return e;if(typeof e=="number"||typeof e=="boolean")return e.toString();if(typeof e=="object"){if(e instanceof Error)return this.getLevel()===0?`${e.message} +${e.stack}`:e.message;if(Array.isArray(e))return`[${e.length} items]`;let r=Object.keys(e);return r.length===0?"{}":r.length<=3?JSON.stringify(e):`{${r.length} keys: ${r.slice(0,3).join(", ")}...}`}return String(e)}formatTool(e,r){if(!r)return e;let n=r;if(typeof r=="string")try{n=JSON.parse(r)}catch{n=r}if(e==="Bash"&&n.command)return`${e}(${n.command})`;if(n.file_path)return`${e}(${n.file_path})`;if(n.notebook_path)return`${e}(${n.notebook_path})`;if(e==="Glob"&&n.pattern)return`${e}(${n.pattern})`;if(e==="Grep"&&n.pattern)return`${e}(${n.pattern})`;if(n.url)return`${e}(${n.url})`;if(n.query)return`${e}(${n.query})`;if(e==="Task"){if(n.subagent_type)return`${e}(${n.subagent_type})`;if(n.description)return`${e}(${n.description})`}return e==="Skill"&&n.skill?`${e}(${n.skill})`:e==="LSP"&&n.operation?`${e}(${n.operation})`:e}formatTimestamp(e){let r=e.getFullYear(),n=String(e.getMonth()+1).padStart(2,"0"),i=String(e.getDate()).padStart(2,"0"),s=String(e.getHours()).padStart(2,"0"),o=String(e.getMinutes()).padStart(2,"0"),a=String(e.getSeconds()).padStart(2,"0"),c=String(e.getMilliseconds()).padStart(3,"0");return`${r}-${n}-${i} ${s}:${o}:${a}.${c}`}log(e,r,n,i,s){if(e0&&(d=` {${Object.entries(g).map(([y,b])=>`${y}=${b}`).join(", ")}}`)}let p=`[${o}] [${a}] [${c}] ${u}${n}${d}${l}`;if(this.logFilePath)try{(0,ds.appendFileSync)(this.logFilePath,p+` +`,"utf8")}catch(f){process.stderr.write(`[LOGGER] Failed to write to log file: ${f} +`)}else process.stderr.write(p+` +`)}debug(e,r,n,i){this.log(0,e,r,n,i)}info(e,r,n,i){this.log(1,e,r,n,i)}warn(e,r,n,i){this.log(2,e,r,n,i)}error(e,r,n,i){this.log(3,e,r,n,i)}dataIn(e,r,n,i){this.info(e,`\u2192 ${r}`,n,i)}dataOut(e,r,n,i){this.info(e,`\u2190 ${r}`,n,i)}success(e,r,n,i){this.info(e,`\u2713 ${r}`,n,i)}failure(e,r,n,i){this.error(e,`\u2717 ${r}`,n,i)}timing(e,r,n,i){this.info(e,`\u23F1 ${r}`,i,{duration:`${n}ms`})}happyPathError(e,r,n,i,s=""){let u=((new Error().stack||"").split(` +`)[2]||"").match(/at\s+(?:.*\s+)?\(?([^:]+):(\d+):(\d+)\)?/),l=u?`${u[1].split("/").pop()}:${u[2]}`:"unknown",d={...n,location:l};return this.warn(e,`[HAPPY-PATH] ${r}`,d,i),s}},_=new tb});var Md=$(ot=>{"use strict";Object.defineProperty(ot,"__esModule",{value:!0});ot.regexpCode=ot.getEsmExportName=ot.getProperty=ot.safeStringify=ot.stringify=ot.strConcat=ot.addCodeArg=ot.str=ot._=ot.nil=ot._Code=ot.Name=ot.IDENTIFIER=ot._CodeOrName=void 0;var Ad=class{};ot._CodeOrName=Ad;ot.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var ta=class extends Ad{constructor(e){if(super(),!ot.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};ot.Name=ta;var Wn=class extends Ad{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof ta&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ot._Code=Wn;ot.nil=new Wn("");function TP(t,...e){let r=[t[0]],n=0;for(;n{"use strict";Object.defineProperty(fn,"__esModule",{value:!0});fn.ValueScope=fn.ValueScopeName=fn.Scope=fn.varKinds=fn.UsedValueState=void 0;var pn=Md(),a0=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Fh;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Fh||(fn.UsedValueState=Fh={}));fn.varKinds={const:new pn.Name("const"),let:new pn.Name("let"),var:new pn.Name("var")};var qh=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof pn.Name?e:this.name(e)}name(e){return new pn.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};fn.Scope=qh;var Hh=class extends pn.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,pn._)`.${new pn.Name(r)}[${n}]`}};fn.ValueScopeName=Hh;var yV=(0,pn._)`\n`,c0=class extends qh{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?yV:pn.nil}}get(){return this._scope}name(e){return new Hh(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let i=this.toName(e),{prefix:s}=i,o=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(o);if(l)return l}else a=this._values[s]=new Map;a.set(o,i);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,i.setValue(r,{property:s,itemIndex:u}),i}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,pn._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,i=>{if(i.value===void 0)throw new Error(`CodeGen: name "${i}" has no value`);return i.value.code},r,n)}_reduceValues(e,r,n={},i){let s=pn.nil;for(let o in e){let a=e[o];if(!a)continue;let c=n[o]=n[o]||new Map;a.forEach(u=>{if(c.has(u))return;c.set(u,Fh.Started);let l=r(u);if(l){let d=this.opts.es5?fn.varKinds.var:fn.varKinds.const;s=(0,pn._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=i?.(u))s=(0,pn._)`${s}${l}${this.opts._n}`;else throw new a0(u);c.set(u,Fh.Completed)})}return s}};fn.ValueScope=c0});var Ue=$(qe=>{"use strict";Object.defineProperty(qe,"__esModule",{value:!0});qe.or=qe.and=qe.not=qe.CodeGen=qe.operators=qe.varKinds=qe.ValueScopeName=qe.ValueScope=qe.Scope=qe.Name=qe.regexpCode=qe.stringify=qe.getProperty=qe.nil=qe.strConcat=qe.str=qe._=void 0;var tt=Md(),fi=u0(),go=Md();Object.defineProperty(qe,"_",{enumerable:!0,get:function(){return go._}});Object.defineProperty(qe,"str",{enumerable:!0,get:function(){return go.str}});Object.defineProperty(qe,"strConcat",{enumerable:!0,get:function(){return go.strConcat}});Object.defineProperty(qe,"nil",{enumerable:!0,get:function(){return go.nil}});Object.defineProperty(qe,"getProperty",{enumerable:!0,get:function(){return go.getProperty}});Object.defineProperty(qe,"stringify",{enumerable:!0,get:function(){return go.stringify}});Object.defineProperty(qe,"regexpCode",{enumerable:!0,get:function(){return go.regexpCode}});Object.defineProperty(qe,"Name",{enumerable:!0,get:function(){return go.Name}});var Wh=u0();Object.defineProperty(qe,"Scope",{enumerable:!0,get:function(){return Wh.Scope}});Object.defineProperty(qe,"ValueScope",{enumerable:!0,get:function(){return Wh.ValueScope}});Object.defineProperty(qe,"ValueScopeName",{enumerable:!0,get:function(){return Wh.ValueScopeName}});Object.defineProperty(qe,"varKinds",{enumerable:!0,get:function(){return Wh.varKinds}});qe.operators={GT:new tt._Code(">"),GTE:new tt._Code(">="),LT:new tt._Code("<"),LTE:new tt._Code("<="),EQ:new tt._Code("==="),NEQ:new tt._Code("!=="),NOT:new tt._Code("!"),OR:new tt._Code("||"),AND:new tt._Code("&&"),ADD:new tt._Code("+")};var Es=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},l0=class extends Es{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?fi.varKinds.var:this.varKind,i=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${i};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=Ec(this.rhs,e,r)),this}get names(){return this.rhs instanceof tt._CodeOrName?this.rhs.names:{}}},Zh=class extends Es{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof tt.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Ec(this.rhs,e,r),this}get names(){let e=this.lhs instanceof tt.Name?{}:{...this.lhs.names};return Gh(e,this.rhs)}},d0=class extends Zh{constructor(e,r,n,i){super(e,n,i),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},p0=class extends Es{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},f0=class extends Es{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},m0=class extends Es{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},h0=class extends Es{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=Ec(this.code,e,r),this}get names(){return this.code instanceof tt._CodeOrName?this.code.names:{}}},Dd=class extends Es{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,i=n.length;for(;i--;){let s=n[i];s.optimizeNames(e,r)||(_V(e,s.names),n.splice(i,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>ia(e,r.names),{})}},ks=class extends Dd{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},g0=class extends Dd{},wc=class extends ks{};wc.kind="else";var ra=class t extends ks{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new wc(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(IP(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=Ec(this.condition,e,r),this}get names(){let e=super.names;return Gh(e,this.condition),this.else&&ia(e,this.else.names),e}};ra.kind="if";var na=class extends ks{};na.kind="for";var v0=class extends na{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=Ec(this.iteration,e,r),this}get names(){return ia(super.names,this.iteration.names)}},y0=class extends na{constructor(e,r,n,i){super(),this.varKind=e,this.name=r,this.from=n,this.to=i}render(e){let r=e.es5?fi.varKinds.var:this.varKind,{name:n,from:i,to:s}=this;return`for(${r} ${n}=${i}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=Gh(super.names,this.from);return Gh(e,this.to)}},Bh=class extends na{constructor(e,r,n,i){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=i}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=Ec(this.iterable,e,r),this}get names(){return ia(super.names,this.iterable.names)}},jd=class extends ks{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};jd.kind="func";var zd=class extends Dd{render(e){return"return "+super.render(e)}};zd.kind="return";var _0=class extends ks{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,i;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(i=this.finally)===null||i===void 0||i.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&ia(e,this.catch.names),this.finally&&ia(e,this.finally.names),e}},Ld=class extends ks{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Ld.kind="catch";var Ud=class extends ks{render(e){return"finally"+super.render(e)}};Ud.kind="finally";var b0=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` +`:""},this._extScope=e,this._scope=new fi.Scope({parent:e}),this._nodes=[new g0]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,i){let s=this._scope.toName(r);return n!==void 0&&i&&(this._constants[s.str]=n),this._leafNode(new l0(e,s,n)),s}const(e,r,n){return this._def(fi.varKinds.const,e,r,n)}let(e,r,n){return this._def(fi.varKinds.let,e,r,n)}var(e,r,n){return this._def(fi.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Zh(e,r,n))}add(e,r){return this._leafNode(new d0(e,qe.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==tt.nil&&this._leafNode(new h0(e)),this}object(...e){let r=["{"];for(let[n,i]of e)r.length>1&&r.push(","),r.push(n),(n!==i||this.opts.es5)&&(r.push(":"),(0,tt.addCodeArg)(r,i));return r.push("}"),new tt._Code(r)}if(e,r,n){if(this._blockNode(new ra(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new ra(e))}else(){return this._elseNode(new wc)}endIf(){return this._endBlockNode(ra,wc)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new v0(e),r)}forRange(e,r,n,i,s=this.opts.es5?fi.varKinds.var:fi.varKinds.let){let o=this._scope.toName(e);return this._for(new y0(s,o,r,n),()=>i(o))}forOf(e,r,n,i=fi.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let o=r instanceof tt.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,tt._)`${o}.length`,a=>{this.var(s,(0,tt._)`${o}[${a}]`),n(s)})}return this._for(new Bh("of",i,s,r),()=>n(s))}forIn(e,r,n,i=this.opts.es5?fi.varKinds.var:fi.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,tt._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Bh("in",i,s,r),()=>n(s))}endFor(){return this._endBlockNode(na)}label(e){return this._leafNode(new p0(e))}break(e){return this._leafNode(new f0(e))}return(e){let r=new zd;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(zd)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let i=new _0;if(this._blockNode(i),this.code(e),r){let s=this.name("e");this._currNode=i.catch=new Ld(s),r(s)}return n&&(this._currNode=i.finally=new Ud,this.code(n)),this._endBlockNode(Ld,Ud)}throw(e){return this._leafNode(new m0(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=tt.nil,n,i){return this._blockNode(new jd(e,r,n)),i&&this.code(i).endFunc(),this}endFunc(){return this._endBlockNode(jd)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof ra))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};qe.CodeGen=b0;function ia(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Gh(t,e){return e instanceof tt._CodeOrName?ia(t,e.names):t}function Ec(t,e,r){if(t instanceof tt.Name)return n(t);if(!i(t))return t;return new tt._Code(t._items.reduce((s,o)=>(o instanceof tt.Name&&(o=n(o)),o instanceof tt._Code?s.push(...o._items):s.push(o),s),[]));function n(s){let o=r[s.str];return o===void 0||e[s.str]!==1?s:(delete e[s.str],o)}function i(s){return s instanceof tt._Code&&s._items.some(o=>o instanceof tt.Name&&e[o.str]===1&&r[o.str]!==void 0)}}function _V(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function IP(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,tt._)`!${S0(t)}`}qe.not=IP;var bV=RP(qe.operators.AND);function SV(...t){return t.reduce(bV)}qe.and=SV;var xV=RP(qe.operators.OR);function wV(...t){return t.reduce(xV)}qe.or=wV;function RP(t){return(e,r)=>e===tt.nil?r:r===tt.nil?e:(0,tt._)`${S0(e)} ${t} ${S0(r)}`}function S0(t){return t instanceof tt.Name?t:(0,tt._)`(${t})`}});var rt=$(Ke=>{"use strict";Object.defineProperty(Ke,"__esModule",{value:!0});Ke.checkStrictMode=Ke.getErrorPath=Ke.Type=Ke.useFunc=Ke.setEvaluated=Ke.evaluatedPropsToName=Ke.mergeEvaluated=Ke.eachItem=Ke.unescapeJsonPointer=Ke.escapeJsonPointer=Ke.escapeFragment=Ke.unescapeFragment=Ke.schemaRefOrVal=Ke.schemaHasRulesButRef=Ke.schemaHasRules=Ke.checkUnknownRules=Ke.alwaysValidSchema=Ke.toHash=void 0;var wt=Ue(),EV=Md();function kV(t){let e={};for(let r of t)e[r]=!0;return e}Ke.toHash=kV;function TV(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(PP(t,e),!AP(e,t.self.RULES.all))}Ke.alwaysValidSchema=TV;function PP(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let i=n.RULES.keywords;for(let s in e)i[s]||DP(t,`unknown keyword: "${s}"`)}Ke.checkUnknownRules=PP;function AP(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}Ke.schemaHasRules=AP;function $V(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}Ke.schemaHasRulesButRef=$V;function IV({topSchemaRef:t,schemaPath:e},r,n,i){if(!i){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,wt._)`${r}`}return(0,wt._)`${t}${e}${(0,wt.getProperty)(n)}`}Ke.schemaRefOrVal=IV;function RV(t){return NP(decodeURIComponent(t))}Ke.unescapeFragment=RV;function OV(t){return encodeURIComponent(w0(t))}Ke.escapeFragment=OV;function w0(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}Ke.escapeJsonPointer=w0;function NP(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}Ke.unescapeJsonPointer=NP;function CV(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}Ke.eachItem=CV;function OP({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(i,s,o,a)=>{let c=o===void 0?s:o instanceof wt.Name?(s instanceof wt.Name?t(i,s,o):e(i,s,o),o):s instanceof wt.Name?(e(i,o,s),s):r(s,o);return a===wt.Name&&!(c instanceof wt.Name)?n(i,c):c}}Ke.mergeEvaluated={props:OP({mergeNames:(t,e,r)=>t.if((0,wt._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,wt._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,wt._)`${r} || {}`).code((0,wt._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,wt._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,wt._)`${r} || {}`),E0(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:MP}),items:OP({mergeNames:(t,e,r)=>t.if((0,wt._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,wt._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,wt._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,wt._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function MP(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,wt._)`{}`);return e!==void 0&&E0(t,r,e),r}Ke.evaluatedPropsToName=MP;function E0(t,e,r){Object.keys(r).forEach(n=>t.assign((0,wt._)`${e}${(0,wt.getProperty)(n)}`,!0))}Ke.setEvaluated=E0;var CP={};function PV(t,e){return t.scopeValue("func",{ref:e,code:CP[e.code]||(CP[e.code]=new EV._Code(e.code))})}Ke.useFunc=PV;var x0;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(x0||(Ke.Type=x0={}));function AV(t,e,r){if(t instanceof wt.Name){let n=e===x0.Num;return r?n?(0,wt._)`"[" + ${t} + "]"`:(0,wt._)`"['" + ${t} + "']"`:n?(0,wt._)`"/" + ${t}`:(0,wt._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,wt.getProperty)(t).toString():"/"+w0(t)}Ke.getErrorPath=AV;function DP(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}Ke.checkStrictMode=DP});var Ts=$(k0=>{"use strict";Object.defineProperty(k0,"__esModule",{value:!0});var Dr=Ue(),NV={data:new Dr.Name("data"),valCxt:new Dr.Name("valCxt"),instancePath:new Dr.Name("instancePath"),parentData:new Dr.Name("parentData"),parentDataProperty:new Dr.Name("parentDataProperty"),rootData:new Dr.Name("rootData"),dynamicAnchors:new Dr.Name("dynamicAnchors"),vErrors:new Dr.Name("vErrors"),errors:new Dr.Name("errors"),this:new Dr.Name("this"),self:new Dr.Name("self"),scope:new Dr.Name("scope"),json:new Dr.Name("json"),jsonPos:new Dr.Name("jsonPos"),jsonLen:new Dr.Name("jsonLen"),jsonPart:new Dr.Name("jsonPart")};k0.default=NV});var Fd=$(jr=>{"use strict";Object.defineProperty(jr,"__esModule",{value:!0});jr.extendErrors=jr.resetErrorsCount=jr.reportExtraError=jr.reportError=jr.keyword$DataError=jr.keywordError=void 0;var nt=Ue(),Vh=rt(),en=Ts();jr.keywordError={message:({keyword:t})=>(0,nt.str)`must pass "${t}" keyword validation`};jr.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,nt.str)`"${t}" keyword must be ${e} ($data)`:(0,nt.str)`"${t}" keyword is invalid ($data)`};function MV(t,e=jr.keywordError,r,n){let{it:i}=t,{gen:s,compositeRule:o,allErrors:a}=i,c=LP(t,e,r);n??(o||a)?jP(s,c):zP(i,(0,nt._)`[${c}]`)}jr.reportError=MV;function DV(t,e=jr.keywordError,r){let{it:n}=t,{gen:i,compositeRule:s,allErrors:o}=n,a=LP(t,e,r);jP(i,a),s||o||zP(n,en.default.vErrors)}jr.reportExtraError=DV;function jV(t,e){t.assign(en.default.errors,e),t.if((0,nt._)`${en.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,nt._)`${en.default.vErrors}.length`,e),()=>t.assign(en.default.vErrors,null)))}jr.resetErrorsCount=jV;function zV({gen:t,keyword:e,schemaValue:r,data:n,errsCount:i,it:s}){if(i===void 0)throw new Error("ajv implementation error");let o=t.name("err");t.forRange("i",i,en.default.errors,a=>{t.const(o,(0,nt._)`${en.default.vErrors}[${a}]`),t.if((0,nt._)`${o}.instancePath === undefined`,()=>t.assign((0,nt._)`${o}.instancePath`,(0,nt.strConcat)(en.default.instancePath,s.errorPath))),t.assign((0,nt._)`${o}.schemaPath`,(0,nt.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,nt._)`${o}.schema`,r),t.assign((0,nt._)`${o}.data`,n))})}jr.extendErrors=zV;function jP(t,e){let r=t.const("err",e);t.if((0,nt._)`${en.default.vErrors} === null`,()=>t.assign(en.default.vErrors,(0,nt._)`[${r}]`),(0,nt._)`${en.default.vErrors}.push(${r})`),t.code((0,nt._)`${en.default.errors}++`)}function zP(t,e){let{gen:r,validateName:n,schemaEnv:i}=t;i.$async?r.throw((0,nt._)`new ${t.ValidationError}(${e})`):(r.assign((0,nt._)`${n}.errors`,e),r.return(!1))}var sa={keyword:new nt.Name("keyword"),schemaPath:new nt.Name("schemaPath"),params:new nt.Name("params"),propertyName:new nt.Name("propertyName"),message:new nt.Name("message"),schema:new nt.Name("schema"),parentSchema:new nt.Name("parentSchema")};function LP(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,nt._)`{}`:LV(t,e,r)}function LV(t,e,r={}){let{gen:n,it:i}=t,s=[UV(i,r),FV(t,r)];return qV(t,e,s),n.object(...s)}function UV({errorPath:t},{instancePath:e}){let r=e?(0,nt.str)`${t}${(0,Vh.getErrorPath)(e,Vh.Type.Str)}`:t;return[en.default.instancePath,(0,nt.strConcat)(en.default.instancePath,r)]}function FV({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let i=n?e:(0,nt.str)`${e}/${t}`;return r&&(i=(0,nt.str)`${i}${(0,Vh.getErrorPath)(r,Vh.Type.Str)}`),[sa.schemaPath,i]}function qV(t,{params:e,message:r},n){let{keyword:i,data:s,schemaValue:o,it:a}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=a;n.push([sa.keyword,i],[sa.params,typeof e=="function"?e(t):e||(0,nt._)`{}`]),c.messages&&n.push([sa.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([sa.schema,o],[sa.parentSchema,(0,nt._)`${l}${d}`],[en.default.data,s]),u&&n.push([sa.propertyName,u])}});var FP=$(kc=>{"use strict";Object.defineProperty(kc,"__esModule",{value:!0});kc.boolOrEmptySchema=kc.topBoolOrEmptySchema=void 0;var HV=Fd(),ZV=Ue(),BV=Ts(),GV={message:"boolean schema is false"};function WV(t){let{gen:e,schema:r,validateName:n}=t;r===!1?UP(t,!1):typeof r=="object"&&r.$async===!0?e.return(BV.default.data):(e.assign((0,ZV._)`${n}.errors`,null),e.return(!0))}kc.topBoolOrEmptySchema=WV;function VV(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),UP(t)):r.var(e,!0)}kc.boolOrEmptySchema=VV;function UP(t,e){let{gen:r,data:n}=t,i={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,HV.reportError)(i,GV,void 0,e)}});var T0=$(Tc=>{"use strict";Object.defineProperty(Tc,"__esModule",{value:!0});Tc.getRules=Tc.isJSONType=void 0;var KV=["string","number","integer","boolean","null","object","array"],JV=new Set(KV);function XV(t){return typeof t=="string"&&JV.has(t)}Tc.isJSONType=XV;function YV(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}Tc.getRules=YV});var $0=$(vo=>{"use strict";Object.defineProperty(vo,"__esModule",{value:!0});vo.shouldUseRule=vo.shouldUseGroup=vo.schemaHasRulesForType=void 0;function QV({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&qP(t,n)}vo.schemaHasRulesForType=QV;function qP(t,e){return e.rules.some(r=>HP(t,r))}vo.shouldUseGroup=qP;function HP(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}vo.shouldUseRule=HP});var qd=$(zr=>{"use strict";Object.defineProperty(zr,"__esModule",{value:!0});zr.reportTypeError=zr.checkDataTypes=zr.checkDataType=zr.coerceAndCheckDataType=zr.getJSONTypes=zr.getSchemaTypes=zr.DataType=void 0;var e7=T0(),t7=$0(),r7=Fd(),ze=Ue(),ZP=rt(),$c;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})($c||(zr.DataType=$c={}));function n7(t){let e=BP(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}zr.getSchemaTypes=n7;function BP(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(e7.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}zr.getJSONTypes=BP;function i7(t,e){let{gen:r,data:n,opts:i}=t,s=s7(e,i.coerceTypes),o=e.length>0&&!(s.length===0&&e.length===1&&(0,t7.schemaHasRulesForType)(t,e[0]));if(o){let a=R0(e,n,i.strictNumbers,$c.Wrong);r.if(a,()=>{s.length?o7(t,e,s):O0(t)})}return o}zr.coerceAndCheckDataType=i7;var GP=new Set(["string","number","integer","boolean","null"]);function s7(t,e){return e?t.filter(r=>GP.has(r)||e==="array"&&r==="array"):[]}function o7(t,e,r){let{gen:n,data:i,opts:s}=t,o=n.let("dataType",(0,ze._)`typeof ${i}`),a=n.let("coerced",(0,ze._)`undefined`);s.coerceTypes==="array"&&n.if((0,ze._)`${o} == 'object' && Array.isArray(${i}) && ${i}.length == 1`,()=>n.assign(i,(0,ze._)`${i}[0]`).assign(o,(0,ze._)`typeof ${i}`).if(R0(e,i,s.strictNumbers),()=>n.assign(a,i))),n.if((0,ze._)`${a} !== undefined`);for(let u of r)(GP.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),O0(t),n.endIf(),n.if((0,ze._)`${a} !== undefined`,()=>{n.assign(i,a),a7(t,a)});function c(u){switch(u){case"string":n.elseIf((0,ze._)`${o} == "number" || ${o} == "boolean"`).assign(a,(0,ze._)`"" + ${i}`).elseIf((0,ze._)`${i} === null`).assign(a,(0,ze._)`""`);return;case"number":n.elseIf((0,ze._)`${o} == "boolean" || ${i} === null + || (${o} == "string" && ${i} && ${i} == +${i})`).assign(a,(0,ze._)`+${i}`);return;case"integer":n.elseIf((0,ze._)`${o} === "boolean" || ${i} === null + || (${o} === "string" && ${i} && ${i} == +${i} && !(${i} % 1))`).assign(a,(0,ze._)`+${i}`);return;case"boolean":n.elseIf((0,ze._)`${i} === "false" || ${i} === 0 || ${i} === null`).assign(a,!1).elseIf((0,ze._)`${i} === "true" || ${i} === 1`).assign(a,!0);return;case"null":n.elseIf((0,ze._)`${i} === "" || ${i} === 0 || ${i} === false`),n.assign(a,null);return;case"array":n.elseIf((0,ze._)`${o} === "string" || ${o} === "number" + || ${o} === "boolean" || ${i} === null`).assign(a,(0,ze._)`[${i}]`)}}}function a7({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,ze._)`${e} !== undefined`,()=>t.assign((0,ze._)`${e}[${r}]`,n))}function I0(t,e,r,n=$c.Correct){let i=n===$c.Correct?ze.operators.EQ:ze.operators.NEQ,s;switch(t){case"null":return(0,ze._)`${e} ${i} null`;case"array":s=(0,ze._)`Array.isArray(${e})`;break;case"object":s=(0,ze._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=o((0,ze._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=o();break;default:return(0,ze._)`typeof ${e} ${i} ${t}`}return n===$c.Correct?s:(0,ze.not)(s);function o(a=ze.nil){return(0,ze.and)((0,ze._)`typeof ${e} == "number"`,a,r?(0,ze._)`isFinite(${e})`:ze.nil)}}zr.checkDataType=I0;function R0(t,e,r,n){if(t.length===1)return I0(t[0],e,r,n);let i,s=(0,ZP.toHash)(t);if(s.array&&s.object){let o=(0,ze._)`typeof ${e} != "object"`;i=s.null?o:(0,ze._)`!${e} || ${o}`,delete s.null,delete s.array,delete s.object}else i=ze.nil;s.number&&delete s.integer;for(let o in s)i=(0,ze.and)(i,I0(o,e,r,n));return i}zr.checkDataTypes=R0;var c7={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,ze._)`{type: ${t}}`:(0,ze._)`{type: ${e}}`};function O0(t){let e=u7(t);(0,r7.reportError)(e,c7)}zr.reportTypeError=O0;function u7(t){let{gen:e,data:r,schema:n}=t,i=(0,ZP.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:i,schemaValue:i,parentSchema:n,params:{},it:t}}});var VP=$(Kh=>{"use strict";Object.defineProperty(Kh,"__esModule",{value:!0});Kh.assignDefaults=void 0;var Ic=Ue(),l7=rt();function d7(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let i in r)WP(t,i,r[i].default);else e==="array"&&Array.isArray(n)&&n.forEach((i,s)=>WP(t,s,i.default))}Kh.assignDefaults=d7;function WP(t,e,r){let{gen:n,compositeRule:i,data:s,opts:o}=t;if(r===void 0)return;let a=(0,Ic._)`${s}${(0,Ic.getProperty)(e)}`;if(i){(0,l7.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Ic._)`${a} === undefined`;o.useDefaults==="empty"&&(c=(0,Ic._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Ic._)`${a} = ${(0,Ic.stringify)(r)}`)}});var Vn=$(gt=>{"use strict";Object.defineProperty(gt,"__esModule",{value:!0});gt.validateUnion=gt.validateArray=gt.usePattern=gt.callValidateCode=gt.schemaProperties=gt.allSchemaProperties=gt.noPropertyInData=gt.propertyInData=gt.isOwnProperty=gt.hasPropFunc=gt.reportMissingProp=gt.checkMissingProp=gt.checkReportMissingProp=void 0;var Nt=Ue(),C0=rt(),yo=Ts(),p7=rt();function f7(t,e){let{gen:r,data:n,it:i}=t;r.if(A0(r,n,e,i.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Nt._)`${e}`},!0),t.error()})}gt.checkReportMissingProp=f7;function m7({gen:t,data:e,it:{opts:r}},n,i){return(0,Nt.or)(...n.map(s=>(0,Nt.and)(A0(t,e,s,r.ownProperties),(0,Nt._)`${i} = ${s}`)))}gt.checkMissingProp=m7;function h7(t,e){t.setParams({missingProperty:e},!0),t.error()}gt.reportMissingProp=h7;function KP(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Nt._)`Object.prototype.hasOwnProperty`})}gt.hasPropFunc=KP;function P0(t,e,r){return(0,Nt._)`${KP(t)}.call(${e}, ${r})`}gt.isOwnProperty=P0;function g7(t,e,r,n){let i=(0,Nt._)`${e}${(0,Nt.getProperty)(r)} !== undefined`;return n?(0,Nt._)`${i} && ${P0(t,e,r)}`:i}gt.propertyInData=g7;function A0(t,e,r,n){let i=(0,Nt._)`${e}${(0,Nt.getProperty)(r)} === undefined`;return n?(0,Nt.or)(i,(0,Nt.not)(P0(t,e,r))):i}gt.noPropertyInData=A0;function JP(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}gt.allSchemaProperties=JP;function v7(t,e){return JP(e).filter(r=>!(0,C0.alwaysValidSchema)(t,e[r]))}gt.schemaProperties=v7;function y7({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:i,errorPath:s},it:o},a,c,u){let l=u?(0,Nt._)`${t}, ${e}, ${n}${i}`:e,d=[[yo.default.instancePath,(0,Nt.strConcat)(yo.default.instancePath,s)],[yo.default.parentData,o.parentData],[yo.default.parentDataProperty,o.parentDataProperty],[yo.default.rootData,yo.default.rootData]];o.opts.dynamicRef&&d.push([yo.default.dynamicAnchors,yo.default.dynamicAnchors]);let p=(0,Nt._)`${l}, ${r.object(...d)}`;return c!==Nt.nil?(0,Nt._)`${a}.call(${c}, ${p})`:(0,Nt._)`${a}(${p})`}gt.callValidateCode=y7;var _7=(0,Nt._)`new RegExp`;function b7({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:i}=e.code,s=i(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,Nt._)`${i.code==="new RegExp"?_7:(0,p7.useFunc)(t,i)}(${r}, ${n})`})}gt.usePattern=b7;function S7(t){let{gen:e,data:r,keyword:n,it:i}=t,s=e.name("valid");if(i.allErrors){let a=e.let("valid",!0);return o(()=>e.assign(a,!1)),a}return e.var(s,!0),o(()=>e.break()),s;function o(a){let c=e.const("len",(0,Nt._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:C0.Type.Num},s),e.if((0,Nt.not)(s),a)})}}gt.validateArray=S7;function x7(t){let{gen:e,schema:r,keyword:n,it:i}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,C0.alwaysValidSchema)(i,c))&&!i.opts.unevaluated)return;let o=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);e.assign(o,(0,Nt._)`${o} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,Nt.not)(o))})),t.result(o,()=>t.reset(),()=>t.error(!0))}gt.validateUnion=x7});var QP=$(Ui=>{"use strict";Object.defineProperty(Ui,"__esModule",{value:!0});Ui.validateKeywordUsage=Ui.validSchemaType=Ui.funcKeywordCode=Ui.macroKeywordCode=void 0;var tn=Ue(),oa=Ts(),w7=Vn(),E7=Fd();function k7(t,e){let{gen:r,keyword:n,schema:i,parentSchema:s,it:o}=t,a=e.macro.call(o.self,i,s,o),c=YP(r,n,a);o.opts.validateSchema!==!1&&o.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:tn.nil,errSchemaPath:`${o.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Ui.macroKeywordCode=k7;function T7(t,e){var r;let{gen:n,keyword:i,schema:s,parentSchema:o,$data:a,it:c}=t;I7(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,o,c):e.validate,l=YP(n,i,u),d=n.let("valid");t.block$data(d,p),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function p(){if(e.errors===!1)h(),e.modifying&&XP(t),g(()=>t.error());else{let v=e.async?f():m();e.modifying&&XP(t),g(()=>$7(t,v))}}function f(){let v=n.let("ruleErrs",null);return n.try(()=>h((0,tn._)`await `),y=>n.assign(d,!1).if((0,tn._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(v,(0,tn._)`${y}.errors`),()=>n.throw(y))),v}function m(){let v=(0,tn._)`${l}.errors`;return n.assign(v,null),h(tn.nil),v}function h(v=e.async?(0,tn._)`await `:tn.nil){let y=c.opts.passContext?oa.default.this:oa.default.self,b=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,tn._)`${v}${(0,w7.callValidateCode)(t,l,y,b)}`,e.modifying)}function g(v){var y;n.if((0,tn.not)((y=e.valid)!==null&&y!==void 0?y:d),v)}}Ui.funcKeywordCode=T7;function XP(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,tn._)`${n.parentData}[${n.parentDataProperty}]`))}function $7(t,e){let{gen:r}=t;r.if((0,tn._)`Array.isArray(${e})`,()=>{r.assign(oa.default.vErrors,(0,tn._)`${oa.default.vErrors} === null ? ${e} : ${oa.default.vErrors}.concat(${e})`).assign(oa.default.errors,(0,tn._)`${oa.default.vErrors}.length`),(0,E7.extendErrors)(t)},()=>t.error())}function I7({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function YP(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,tn.stringify)(r)})}function R7(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}Ui.validSchemaType=R7;function O7({schema:t,opts:e,self:r,errSchemaPath:n},i,s){if(Array.isArray(i.keyword)?!i.keyword.includes(s):i.keyword!==s)throw new Error("ajv implementation error");let o=i.dependencies;if(o?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${o.join(",")}`);if(i.validateSchema&&!i.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(i.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Ui.validateKeywordUsage=O7});var tA=$(_o=>{"use strict";Object.defineProperty(_o,"__esModule",{value:!0});_o.extendSubschemaMode=_o.extendSubschemaData=_o.getSubschema=void 0;var Fi=Ue(),eA=rt();function C7(t,{keyword:e,schemaProp:r,schema:n,schemaPath:i,errSchemaPath:s,topSchemaRef:o}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,Fi._)`${t.schemaPath}${(0,Fi.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,Fi._)`${t.schemaPath}${(0,Fi.getProperty)(e)}${(0,Fi.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,eA.escapeFragment)(r)}`}}if(n!==void 0){if(i===void 0||s===void 0||o===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:i,topSchemaRef:o,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}_o.getSubschema=C7;function P7(t,e,{dataProp:r,dataPropType:n,data:i,dataTypes:s,propertyName:o}){if(i!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,p=a.let("data",(0,Fi._)`${e.data}${(0,Fi.getProperty)(r)}`,!0);c(p),t.errorPath=(0,Fi.str)`${u}${(0,eA.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Fi._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(i!==void 0){let u=i instanceof Fi.Name?i:a.let("data",i,!0);c(u),o!==void 0&&(t.propertyName=o)}s&&(t.dataTypes=s);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}_o.extendSubschemaData=P7;function A7(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:i,allErrors:s}){n!==void 0&&(t.compositeRule=n),i!==void 0&&(t.createErrors=i),s!==void 0&&(t.allErrors=s),t.jtdDiscriminator=e,t.jtdMetadata=r}_o.extendSubschemaMode=A7});var N0=$((SCe,rA)=>{"use strict";rA.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,i,s;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(i=n;i--!==0;)if(!t(e[i],r[i]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(s=Object.keys(e),n=s.length,n!==Object.keys(r).length)return!1;for(i=n;i--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[i]))return!1;for(i=n;i--!==0;){var o=s[i];if(!t(e[o],r[o]))return!1}return!0}return e!==e&&r!==r}});var iA=$((xCe,nA)=>{"use strict";var bo=nA.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},i=r.post||function(){};Jh(e,n,i,t,"",t)};bo.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};bo.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};bo.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};bo.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Jh(t,e,r,n,i,s,o,a,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,i,s,o,a,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in bo.arrayKeywords)for(var p=0;p{"use strict";Object.defineProperty(mn,"__esModule",{value:!0});mn.getSchemaRefs=mn.resolveUrl=mn.normalizeId=mn._getFullPath=mn.getFullPath=mn.inlineRef=void 0;var M7=rt(),D7=N0(),j7=iA(),z7=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function L7(t,e=!0){return typeof t=="boolean"?!0:e===!0?!M0(t):e?sA(t)<=e:!1}mn.inlineRef=L7;var U7=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function M0(t){for(let e in t){if(U7.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(M0)||typeof r=="object"&&M0(r))return!0}return!1}function sA(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!z7.has(r)&&(typeof t[r]=="object"&&(0,M7.eachItem)(t[r],n=>e+=sA(n)),e===1/0))return 1/0}return e}function oA(t,e="",r){r!==!1&&(e=Rc(e));let n=t.parse(e);return aA(t,n)}mn.getFullPath=oA;function aA(t,e){return t.serialize(e).split("#")[0]+"#"}mn._getFullPath=aA;var F7=/#\/?$/;function Rc(t){return t?t.replace(F7,""):""}mn.normalizeId=Rc;function q7(t,e,r){return r=Rc(r),t.resolve(e,r)}mn.resolveUrl=q7;var H7=/^[a-z_][-a-z0-9._]*$/i;function Z7(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,i=Rc(t[r]||e),s={"":i},o=oA(n,i,!1),a={},c=new Set;return j7(t,{allKeys:!0},(d,p,f,m)=>{if(m===void 0)return;let h=o+p,g=s[m];typeof d[r]=="string"&&(g=v.call(this,d[r])),y.call(this,d.$anchor),y.call(this,d.$dynamicAnchor),s[p]=g;function v(b){let S=this.opts.uriResolver.resolve;if(b=Rc(g?S(g,b):b),c.has(b))throw l(b);c.add(b);let x=this.refs[b];return typeof x=="string"&&(x=this.refs[x]),typeof x=="object"?u(d,x.schema,b):b!==Rc(h)&&(b[0]==="#"?(u(d,a[b],b),a[b]=d):this.refs[b]=h),b}function y(b){if(typeof b=="string"){if(!H7.test(b))throw new Error(`invalid anchor "${b}"`);v.call(this,`#${b}`)}}}),a;function u(d,p,f){if(p!==void 0&&!D7(d,p))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}mn.getSchemaRefs=Z7});var Gd=$(So=>{"use strict";Object.defineProperty(So,"__esModule",{value:!0});So.getData=So.KeywordCxt=So.validateFunctionCode=void 0;var pA=FP(),cA=qd(),j0=$0(),Xh=qd(),B7=VP(),Bd=QP(),D0=tA(),he=Ue(),Oe=Ts(),G7=Hd(),$s=rt(),Zd=Fd();function W7(t){if(hA(t)&&(gA(t),mA(t))){J7(t);return}fA(t,()=>(0,pA.topBoolOrEmptySchema)(t))}So.validateFunctionCode=W7;function fA({gen:t,validateName:e,schema:r,schemaEnv:n,opts:i},s){i.code.es5?t.func(e,(0,he._)`${Oe.default.data}, ${Oe.default.valCxt}`,n.$async,()=>{t.code((0,he._)`"use strict"; ${uA(r,i)}`),K7(t,i),t.code(s)}):t.func(e,(0,he._)`${Oe.default.data}, ${V7(i)}`,n.$async,()=>t.code(uA(r,i)).code(s))}function V7(t){return(0,he._)`{${Oe.default.instancePath}="", ${Oe.default.parentData}, ${Oe.default.parentDataProperty}, ${Oe.default.rootData}=${Oe.default.data}${t.dynamicRef?(0,he._)`, ${Oe.default.dynamicAnchors}={}`:he.nil}}={}`}function K7(t,e){t.if(Oe.default.valCxt,()=>{t.var(Oe.default.instancePath,(0,he._)`${Oe.default.valCxt}.${Oe.default.instancePath}`),t.var(Oe.default.parentData,(0,he._)`${Oe.default.valCxt}.${Oe.default.parentData}`),t.var(Oe.default.parentDataProperty,(0,he._)`${Oe.default.valCxt}.${Oe.default.parentDataProperty}`),t.var(Oe.default.rootData,(0,he._)`${Oe.default.valCxt}.${Oe.default.rootData}`),e.dynamicRef&&t.var(Oe.default.dynamicAnchors,(0,he._)`${Oe.default.valCxt}.${Oe.default.dynamicAnchors}`)},()=>{t.var(Oe.default.instancePath,(0,he._)`""`),t.var(Oe.default.parentData,(0,he._)`undefined`),t.var(Oe.default.parentDataProperty,(0,he._)`undefined`),t.var(Oe.default.rootData,Oe.default.data),e.dynamicRef&&t.var(Oe.default.dynamicAnchors,(0,he._)`{}`)})}function J7(t){let{schema:e,opts:r,gen:n}=t;fA(t,()=>{r.$comment&&e.$comment&&yA(t),tK(t),n.let(Oe.default.vErrors,null),n.let(Oe.default.errors,0),r.unevaluated&&X7(t),vA(t),iK(t)})}function X7(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,he._)`${r}.evaluated`),e.if((0,he._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,he._)`${t.evaluated}.props`,(0,he._)`undefined`)),e.if((0,he._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,he._)`${t.evaluated}.items`,(0,he._)`undefined`))}function uA(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,he._)`/*# sourceURL=${r} */`:he.nil}function Y7(t,e){if(hA(t)&&(gA(t),mA(t))){Q7(t,e);return}(0,pA.boolOrEmptySchema)(t,e)}function mA({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function hA(t){return typeof t.schema!="boolean"}function Q7(t,e){let{schema:r,gen:n,opts:i}=t;i.$comment&&r.$comment&&yA(t),rK(t),nK(t);let s=n.const("_errs",Oe.default.errors);vA(t,s),n.var(e,(0,he._)`${s} === ${Oe.default.errors}`)}function gA(t){(0,$s.checkUnknownRules)(t),eK(t)}function vA(t,e){if(t.opts.jtd)return lA(t,[],!1,e);let r=(0,cA.getSchemaTypes)(t.schema),n=(0,cA.coerceAndCheckDataType)(t,r);lA(t,r,!n,e)}function eK(t){let{schema:e,errSchemaPath:r,opts:n,self:i}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,$s.schemaHasRulesButRef)(e,i.RULES)&&i.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function tK(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,$s.checkStrictMode)(t,"default is ignored in the schema root")}function rK(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,G7.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function nK(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function yA({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:i}){let s=r.$comment;if(i.$comment===!0)t.code((0,he._)`${Oe.default.self}.logger.log(${s})`);else if(typeof i.$comment=="function"){let o=(0,he.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,he._)`${Oe.default.self}.opts.$comment(${s}, ${o}, ${a}.schema)`)}}function iK(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:i,opts:s}=t;r.$async?e.if((0,he._)`${Oe.default.errors} === 0`,()=>e.return(Oe.default.data),()=>e.throw((0,he._)`new ${i}(${Oe.default.vErrors})`)):(e.assign((0,he._)`${n}.errors`,Oe.default.vErrors),s.unevaluated&&sK(t),e.return((0,he._)`${Oe.default.errors} === 0`))}function sK({gen:t,evaluated:e,props:r,items:n}){r instanceof he.Name&&t.assign((0,he._)`${e}.props`,r),n instanceof he.Name&&t.assign((0,he._)`${e}.items`,n)}function lA(t,e,r,n){let{gen:i,schema:s,data:o,allErrors:a,opts:c,self:u}=t,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,$s.schemaHasRulesButRef)(s,l))){i.block(()=>bA(t,"$ref",l.all.$ref.definition));return}c.jtd||oK(t,e),i.block(()=>{for(let p of l.rules)d(p);d(l.post)});function d(p){(0,j0.shouldUseGroup)(s,p)&&(p.type?(i.if((0,Xh.checkDataType)(p.type,o,c.strictNumbers)),dA(t,p),e.length===1&&e[0]===p.type&&r&&(i.else(),(0,Xh.reportTypeError)(t)),i.endIf()):dA(t,p),a||i.if((0,he._)`${Oe.default.errors} === ${n||0}`))}}function dA(t,e){let{gen:r,schema:n,opts:{useDefaults:i}}=t;i&&(0,B7.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,j0.shouldUseRule)(n,s)&&bA(t,s.keyword,s.definition,e.type)})}function oK(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(aK(t,e),t.opts.allowUnionTypes||cK(t,e),uK(t,t.dataTypes))}function aK(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{_A(t.dataTypes,r)||z0(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),dK(t,e)}}function cK(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&z0(t,"use allowUnionTypes to allow union type keyword")}function uK(t,e){let r=t.self.RULES.all;for(let n in r){let i=r[n];if(typeof i=="object"&&(0,j0.shouldUseRule)(t.schema,i)){let{type:s}=i.definition;s.length&&!s.some(o=>lK(e,o))&&z0(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function lK(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function _A(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function dK(t,e){let r=[];for(let n of t.dataTypes)_A(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function z0(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,$s.checkStrictMode)(t,e,t.opts.strictTypes)}var Yh=class{constructor(e,r,n){if((0,Bd.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,$s.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",SA(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Bd.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",Oe.default.errors))}result(e,r,n){this.failResult((0,he.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,he.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,he._)`${r} !== undefined && (${(0,he.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?Zd.reportExtraError:Zd.reportError)(this,this.def.error,r)}$dataError(){(0,Zd.reportError)(this,this.def.$dataError||Zd.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Zd.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=he.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=he.nil,r=he.nil){if(!this.$data)return;let{gen:n,schemaCode:i,schemaType:s,def:o}=this;n.if((0,he.or)((0,he._)`${i} === undefined`,r)),e!==he.nil&&n.assign(e,!0),(s.length||o.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==he.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:i,it:s}=this;return(0,he.or)(o(),a());function o(){if(n.length){if(!(r instanceof he.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,he._)`${(0,Xh.checkDataTypes)(c,r,s.opts.strictNumbers,Xh.DataType.Wrong)}`}return he.nil}function a(){if(i.validateSchema){let c=e.scopeValue("validate$data",{ref:i.validateSchema});return(0,he._)`!${c}(${r})`}return he.nil}}subschema(e,r){let n=(0,D0.getSubschema)(this.it,e);(0,D0.extendSubschemaData)(n,this.it,e),(0,D0.extendSubschemaMode)(n,e);let i={...this.it,...n,items:void 0,props:void 0};return Y7(i,r),i}mergeEvaluated(e,r){let{it:n,gen:i}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=$s.mergeEvaluated.props(i,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=$s.mergeEvaluated.items(i,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:i}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return i.if(r,()=>this.mergeEvaluated(e,he.Name)),!0}};So.KeywordCxt=Yh;function bA(t,e,r,n){let i=new Yh(t,r,e);"code"in r?r.code(i,n):i.$data&&r.validate?(0,Bd.funcKeywordCode)(i,r):"macro"in r?(0,Bd.macroKeywordCode)(i,r):(r.compile||r.validate)&&(0,Bd.funcKeywordCode)(i,r)}var pK=/^\/(?:[^~]|~0|~1)*$/,fK=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function SA(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let i,s;if(t==="")return Oe.default.rootData;if(t[0]==="/"){if(!pK.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);i=t,s=Oe.default.rootData}else{let u=fK.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(i=u[2],i==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(s=r[e-l],!i)return s}let o=s,a=i.split("/");for(let u of a)u&&(s=(0,he._)`${s}${(0,he.getProperty)((0,$s.unescapeJsonPointer)(u))}`,o=(0,he._)`${o} && ${s}`);return o;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}So.getData=SA});var Qh=$(U0=>{"use strict";Object.defineProperty(U0,"__esModule",{value:!0});var L0=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};U0.default=L0});var Wd=$(H0=>{"use strict";Object.defineProperty(H0,"__esModule",{value:!0});var F0=Hd(),q0=class extends Error{constructor(e,r,n,i){super(i||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,F0.resolveUrl)(e,r,n),this.missingSchema=(0,F0.normalizeId)((0,F0.getFullPath)(e,this.missingRef))}};H0.default=q0});var tg=$(Kn=>{"use strict";Object.defineProperty(Kn,"__esModule",{value:!0});Kn.resolveSchema=Kn.getCompilingSchema=Kn.resolveRef=Kn.compileSchema=Kn.SchemaEnv=void 0;var mi=Ue(),mK=Qh(),aa=Ts(),hi=Hd(),xA=rt(),hK=Gd(),Oc=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,hi.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};Kn.SchemaEnv=Oc;function B0(t){let e=wA.call(this,t);if(e)return e;let r=(0,hi.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:i}=this.opts.code,{ownProperties:s}=this.opts,o=new mi.CodeGen(this.scope,{es5:n,lines:i,ownProperties:s}),a;t.$async&&(a=o.scopeValue("Error",{ref:mK.default,code:(0,mi._)`require("ajv/dist/runtime/validation_error").default`}));let c=o.scopeName("validate");t.validateName=c;let u={gen:o,allErrors:this.opts.allErrors,data:aa.default.data,parentData:aa.default.parentData,parentDataProperty:aa.default.parentDataProperty,dataNames:[aa.default.data],dataPathArr:[mi.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:o.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,mi.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:mi.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,mi._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,hK.validateFunctionCode)(u),o.optimize(this.opts.code.optimize);let d=o.toString();l=`${o.scopeRefs(aa.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let f=new Function(`${aa.default.self}`,`${aa.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:f}),f.errors=null,f.schema=t.schema,f.schemaEnv=t,t.$async&&(f.$async=!0),this.opts.code.source===!0&&(f.source={validateName:c,validateCode:d,scopeValues:o._values}),this.opts.unevaluated){let{props:m,items:h}=u;f.evaluated={props:m instanceof mi.Name?void 0:m,items:h instanceof mi.Name?void 0:h,dynamicProps:m instanceof mi.Name,dynamicItems:h instanceof mi.Name},f.source&&(f.source.evaluated=(0,mi.stringify)(f.evaluated))}return t.validate=f,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}Kn.compileSchema=B0;function gK(t,e,r){var n;r=(0,hi.resolveUrl)(this.opts.uriResolver,e,r);let i=t.refs[r];if(i)return i;let s=_K.call(this,t,r);if(s===void 0){let o=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;o&&(s=new Oc({schema:o,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=vK.call(this,s)}Kn.resolveRef=gK;function vK(t){return(0,hi.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:B0.call(this,t)}function wA(t){for(let e of this._compilations)if(yK(e,t))return e}Kn.getCompilingSchema=wA;function yK(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function _K(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||eg.call(this,t,e)}function eg(t,e){let r=this.opts.uriResolver.parse(e),n=(0,hi._getFullPath)(this.opts.uriResolver,r),i=(0,hi.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===i)return Z0.call(this,r,t);let s=(0,hi.normalizeId)(n),o=this.refs[s]||this.schemas[s];if(typeof o=="string"){let a=eg.call(this,t,o);return typeof a?.schema!="object"?void 0:Z0.call(this,r,a)}if(typeof o?.schema=="object"){if(o.validate||B0.call(this,o),s===(0,hi.normalizeId)(e)){let{schema:a}=o,{schemaId:c}=this.opts,u=a[c];return u&&(i=(0,hi.resolveUrl)(this.opts.uriResolver,i,u)),new Oc({schema:a,schemaId:c,root:t,baseId:i})}return Z0.call(this,r,o)}}Kn.resolveSchema=eg;var bK=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Z0(t,{baseId:e,schema:r,root:n}){var i;if(((i=t.fragment)===null||i===void 0?void 0:i[0])!=="/")return;for(let a of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,xA.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!bK.has(a)&&u&&(e=(0,hi.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,xA.schemaHasRulesButRef)(r,this.RULES)){let a=(0,hi.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=eg.call(this,n,a)}let{schemaId:o}=this.opts;if(s=s||new Oc({schema:r,schemaId:o,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var EA=$((ICe,SK)=>{SK.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var W0=$((RCe,IA)=>{"use strict";var xK=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),TA=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function G0(t){let e="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var wK=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function kA(t){return t.length=0,!0}function EK(t,e,r){if(t.length){let n=G0(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function kK(t){let e=0,r={error:!1,address:"",zone:""},n=[],i=[],s=!1,o=!1,a=EK;for(let c=0;c7){r.error=!0;break}c>0&&t[c-1]===":"&&(s=!0),n.push(":");continue}else if(u==="%"){if(!a(i,n,r))break;a=kA}else{i.push(u);continue}}return i.length&&(a===kA?r.zone=i.join(""):o?n.push(i.join("")):n.push(G0(i))),r.address=n.join(""),r}function $A(t){if(TK(t,":")<2)return{host:t,isIPV6:!1};let e=kK(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function TK(t,e){let r=0;for(let n=0;n{"use strict";var{isUUID:OK}=W0(),CK=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,PK=["http","https","ws","wss","urn","urn:uuid"];function AK(t){return PK.indexOf(t)!==-1}function V0(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function RA(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function OA(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function NK(t){return t.secure=V0(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function MK(t){if((t.port===(V0(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function DK(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(CK);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let i=`${n}:${e.nid||t.nid}`,s=K0(i);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function jK(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),i=`${r}:${e.nid||n}`,s=K0(i);s&&(t=s.serialize(t,e));let o=t,a=t.nss;return o.path=`${n||e.nid}:${a}`,e.skipEscape=!0,o}function zK(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!OK(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function LK(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var CA={scheme:"http",domainHost:!0,parse:RA,serialize:OA},UK={scheme:"https",domainHost:CA.domainHost,parse:RA,serialize:OA},rg={scheme:"ws",domainHost:!0,parse:NK,serialize:MK},FK={scheme:"wss",domainHost:rg.domainHost,parse:rg.parse,serialize:rg.serialize},qK={scheme:"urn",parse:DK,serialize:jK,skipNormalize:!0},HK={scheme:"urn:uuid",parse:zK,serialize:LK,skipNormalize:!0},ng={http:CA,https:UK,ws:rg,wss:FK,urn:qK,"urn:uuid":HK};Object.setPrototypeOf(ng,null);function K0(t){return t&&(ng[t]||ng[t.toLowerCase()])||void 0}PA.exports={wsIsSecure:V0,SCHEMES:ng,isValidSchemeName:AK,getSchemeHandler:K0}});var DA=$((CCe,sg)=>{"use strict";var{normalizeIPv6:ZK,removeDotSegments:Vd,recomposeAuthority:BK,normalizeComponentEncoding:ig,isIPv4:GK,nonSimpleDomain:WK}=W0(),{SCHEMES:VK,getSchemeHandler:NA}=AA();function KK(t,e){return typeof t=="string"?t=qi(Is(t,e),e):typeof t=="object"&&(t=Is(qi(t,e),e)),t}function JK(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},i=MA(Is(t,n),Is(e,n),n,!0);return n.skipEscape=!0,qi(i,n)}function MA(t,e,r,n){let i={};return n||(t=Is(qi(t,r),r),e=Is(qi(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(i.scheme=e.scheme,i.userinfo=e.userinfo,i.host=e.host,i.port=e.port,i.path=Vd(e.path||""),i.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(i.userinfo=e.userinfo,i.host=e.host,i.port=e.port,i.path=Vd(e.path||""),i.query=e.query):(e.path?(e.path[0]==="/"?i.path=Vd(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?i.path="/"+e.path:t.path?i.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:i.path=e.path,i.path=Vd(i.path)),i.query=e.query):(i.path=t.path,e.query!==void 0?i.query=e.query:i.query=t.query),i.userinfo=t.userinfo,i.host=t.host,i.port=t.port),i.scheme=t.scheme),i.fragment=e.fragment,i}function XK(t,e,r){return typeof t=="string"?(t=unescape(t),t=qi(ig(Is(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=qi(ig(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=qi(ig(Is(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=qi(ig(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function qi(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),i=[],s=NA(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&i.push(r.scheme,":");let o=BK(r);if(o!==void 0&&(n.reference!=="suffix"&&i.push("//"),i.push(o),r.path&&r.path[0]!=="/"&&i.push("/")),r.path!==void 0){let a=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(a=Vd(a)),o===void 0&&a[0]==="/"&&a[1]==="/"&&(a="/%2F"+a.slice(2)),i.push(a)}return r.query!==void 0&&i.push("?",r.query),r.fragment!==void 0&&i.push("#",r.fragment),i.join("")}var YK=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Is(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},i=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let s=t.match(YK);if(s){if(n.scheme=s[1],n.userinfo=s[3],n.host=s[4],n.port=parseInt(s[5],10),n.path=s[6]||"",n.query=s[7],n.fragment=s[8],isNaN(n.port)&&(n.port=s[5]),n.host)if(GK(n.host)===!1){let c=ZK(n.host);n.host=c.host.toLowerCase(),i=c.isIPV6}else i=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let o=NA(r.scheme||n.scheme);if(!r.unicodeSupport&&(!o||!o.unicodeSupport)&&n.host&&(r.domainHost||o&&o.domainHost)&&i===!1&&WK(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(a){n.error=n.error||"Host's domain name can not be converted to ASCII: "+a}(!o||o&&!o.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),o&&o.parse&&o.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var J0={SCHEMES:VK,normalize:KK,resolve:JK,resolveComponent:MA,equal:XK,serialize:qi,parse:Is};sg.exports=J0;sg.exports.default=J0;sg.exports.fastUri=J0});var zA=$(X0=>{"use strict";Object.defineProperty(X0,"__esModule",{value:!0});var jA=DA();jA.code='require("ajv/dist/runtime/uri").default';X0.default=jA});var GA=$(Tr=>{"use strict";Object.defineProperty(Tr,"__esModule",{value:!0});Tr.CodeGen=Tr.Name=Tr.nil=Tr.stringify=Tr.str=Tr._=Tr.KeywordCxt=void 0;var QK=Gd();Object.defineProperty(Tr,"KeywordCxt",{enumerable:!0,get:function(){return QK.KeywordCxt}});var Cc=Ue();Object.defineProperty(Tr,"_",{enumerable:!0,get:function(){return Cc._}});Object.defineProperty(Tr,"str",{enumerable:!0,get:function(){return Cc.str}});Object.defineProperty(Tr,"stringify",{enumerable:!0,get:function(){return Cc.stringify}});Object.defineProperty(Tr,"nil",{enumerable:!0,get:function(){return Cc.nil}});Object.defineProperty(Tr,"Name",{enumerable:!0,get:function(){return Cc.Name}});Object.defineProperty(Tr,"CodeGen",{enumerable:!0,get:function(){return Cc.CodeGen}});var eJ=Qh(),HA=Wd(),tJ=T0(),Kd=tg(),rJ=Ue(),Jd=Hd(),og=qd(),Q0=rt(),LA=EA(),nJ=zA(),ZA=(t,e)=>new RegExp(t,e);ZA.code="new RegExp";var iJ=["removeAdditional","useDefaults","coerceTypes"],sJ=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),oJ={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},aJ={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},UA=200;function cJ(t){var e,r,n,i,s,o,a,c,u,l,d,p,f,m,h,g,v,y,b,S,x,w,E,T,I;let P=t.strict,N=(e=t.code)===null||e===void 0?void 0:e.optimize,L=N===!0||N===void 0?1:N||0,G=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:ZA,j=(i=t.uriResolver)!==null&&i!==void 0?i:nJ.default;return{strictSchema:(o=(s=t.strictSchema)!==null&&s!==void 0?s:P)!==null&&o!==void 0?o:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:P)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:P)!==null&&l!==void 0?l:"log",strictTuples:(p=(d=t.strictTuples)!==null&&d!==void 0?d:P)!==null&&p!==void 0?p:"log",strictRequired:(m=(f=t.strictRequired)!==null&&f!==void 0?f:P)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:L,regExp:G}:{optimize:L,regExp:G},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:UA,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:UA,meta:(v=t.meta)!==null&&v!==void 0?v:!0,messages:(y=t.messages)!==null&&y!==void 0?y:!0,inlineRefs:(b=t.inlineRefs)!==null&&b!==void 0?b:!0,schemaId:(S=t.schemaId)!==null&&S!==void 0?S:"$id",addUsedSchema:(x=t.addUsedSchema)!==null&&x!==void 0?x:!0,validateSchema:(w=t.validateSchema)!==null&&w!==void 0?w:!0,validateFormats:(E=t.validateFormats)!==null&&E!==void 0?E:!0,unicodeRegExp:(T=t.unicodeRegExp)!==null&&T!==void 0?T:!0,int32range:(I=t.int32range)!==null&&I!==void 0?I:!0,uriResolver:j}}var Xd=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...cJ(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new rJ.ValueScope({scope:{},prefixes:sJ,es5:r,lines:n}),this.logger=mJ(e.logger);let i=e.validateFormats;e.validateFormats=!1,this.RULES=(0,tJ.getRules)(),FA.call(this,oJ,e,"NOT SUPPORTED"),FA.call(this,aJ,e,"DEPRECATED","warn"),this._metaOpts=pJ.call(this),e.formats&&lJ.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&dJ.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),uJ.call(this),e.validateFormats=i}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,i=LA;n==="id"&&(i={...LA},i.id=i.$id,delete i.$id),r&&e&&this.addMetaSchema(i,i[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let i=n(r);return"$async"in n||(this.errors=n.errors),i}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return i.call(this,e,r);async function i(l,d){await s.call(this,l.$schema);let p=this._addSchema(l,d);return p.validate||o.call(this,p)}async function s(l){l&&!this.getSchema(l)&&await i.call(this,{$ref:l},!0)}async function o(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof HA.default))throw d;return a.call(this,d),await c.call(this,d.missingSchema),o.call(this,l)}}function a({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await s.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,i=this.opts.validateSchema){if(Array.isArray(e)){for(let o of e)this.addSchema(o,void 0,n,i);return this}let s;if(typeof e=="object"){let{schemaId:o}=this.opts;if(s=e[o],s!==void 0&&typeof s!="string")throw new Error(`schema ${o} must be string`)}return r=(0,Jd.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,i,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let i=this.validate(n,e);if(!i&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return i}getSchema(e){let r;for(;typeof(r=qA.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,i=new Kd.SchemaEnv({schema:{},schemaId:n});if(r=Kd.resolveSchema.call(this,i,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=qA.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,Jd.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(gJ.call(this,n,r),!r)return(0,Q0.eachItem)(n,s=>Y0.call(this,s)),this;yJ.call(this,r);let i={...r,type:(0,og.getJSONTypes)(r.type),schemaType:(0,og.getJSONTypes)(r.schemaType)};return(0,Q0.eachItem)(n,i.type.length===0?s=>Y0.call(this,s,i):s=>i.type.forEach(o=>Y0.call(this,s,i,o))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let i=n.rules.findIndex(s=>s.keyword===e);i>=0&&n.rules.splice(i,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(i=>`${n}${i.instancePath} ${i.message}`).reduce((i,s)=>i+r+s)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let i of r){let s=i.split("/").slice(1),o=e;for(let a of s)o=o[a];for(let a in n){let c=n[a];if(typeof c!="object")continue;let{$data:u}=c.definition,l=o[a];u&&l&&(o[a]=BA(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let i=e[n];(!r||r.test(n))&&(typeof i=="string"?delete e[n]:i&&!i.meta&&(this._cache.delete(i.schema),delete e[n]))}}_addSchema(e,r,n,i=this.opts.validateSchema,s=this.opts.addUsedSchema){let o,{schemaId:a}=this.opts;if(typeof e=="object")o=e[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,Jd.normalizeId)(o||n);let u=Jd.getSchemaRefs.call(this,e,n);return c=new Kd.SchemaEnv({schema:e,schemaId:a,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),i&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):Kd.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{Kd.compileSchema.call(this,e)}finally{this.opts=r}}};Xd.ValidationError=eJ.default;Xd.MissingRefError=HA.default;Tr.default=Xd;function FA(t,e,r,n="error"){for(let i in t){let s=i;s in e&&this.logger[n](`${r}: option ${i}. ${t[s]}`)}}function qA(t){return t=(0,Jd.normalizeId)(t),this.schemas[t]||this.refs[t]}function uJ(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function lJ(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function dJ(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function pJ(){let t={...this.opts};for(let e of iJ)delete t[e];return t}var fJ={log(){},warn(){},error(){}};function mJ(t){if(t===!1)return fJ;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var hJ=/^[a-z_$][a-z0-9_$:-]*$/i;function gJ(t,e){let{RULES:r}=this;if((0,Q0.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!hJ.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function Y0(t,e,r){var n;let i=e?.post;if(r&&i)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,o=i?s.post:s.rules.find(({type:c})=>c===r);if(o||(o={type:r,rules:[]},s.rules.push(o)),s.keywords[t]=!0,!e)return;let a={keyword:t,definition:{...e,type:(0,og.getJSONTypes)(e.type),schemaType:(0,og.getJSONTypes)(e.schemaType)}};e.before?vJ.call(this,o,a,e.before):o.rules.push(a),s.all[t]=a,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function vJ(t,e,r){let n=t.rules.findIndex(i=>i.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function yJ(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=BA(e)),t.validateSchema=this.compile(e,!0))}var _J={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function BA(t){return{anyOf:[t,_J]}}});var WA=$(eE=>{"use strict";Object.defineProperty(eE,"__esModule",{value:!0});var bJ={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};eE.default=bJ});var XA=$(ca=>{"use strict";Object.defineProperty(ca,"__esModule",{value:!0});ca.callRef=ca.getValidate=void 0;var SJ=Wd(),VA=Vn(),hn=Ue(),Pc=Ts(),KA=tg(),ag=rt(),xJ={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:i,schemaEnv:s,validateName:o,opts:a,self:c}=n,{root:u}=s;if((r==="#"||r==="#/")&&i===u.baseId)return d();let l=KA.resolveRef.call(c,u,i,r);if(l===void 0)throw new SJ.default(n.opts.uriResolver,i,r);if(l instanceof KA.SchemaEnv)return p(l);return f(l);function d(){if(s===u)return cg(t,o,s,s.$async);let m=e.scopeValue("root",{ref:u});return cg(t,(0,hn._)`${m}.validate`,u,u.$async)}function p(m){let h=JA(t,m);cg(t,h,m,m.$async)}function f(m){let h=e.scopeValue("schema",a.code.source===!0?{ref:m,code:(0,hn.stringify)(m)}:{ref:m}),g=e.name("valid"),v=t.subschema({schema:m,dataTypes:[],schemaPath:hn.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(v),t.ok(g)}}};function JA(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,hn._)`${r.scopeValue("wrapper",{ref:e})}.validate`}ca.getValidate=JA;function cg(t,e,r,n){let{gen:i,it:s}=t,{allErrors:o,schemaEnv:a,opts:c}=s,u=c.passContext?Pc.default.this:hn.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let m=i.let("valid");i.try(()=>{i.code((0,hn._)`await ${(0,VA.callValidateCode)(t,e,u)}`),f(e),o||i.assign(m,!0)},h=>{i.if((0,hn._)`!(${h} instanceof ${s.ValidationError})`,()=>i.throw(h)),p(h),o||i.assign(m,!1)}),t.ok(m)}function d(){t.result((0,VA.callValidateCode)(t,e,u),()=>f(e),()=>p(e))}function p(m){let h=(0,hn._)`${m}.errors`;i.assign(Pc.default.vErrors,(0,hn._)`${Pc.default.vErrors} === null ? ${h} : ${Pc.default.vErrors}.concat(${h})`),i.assign(Pc.default.errors,(0,hn._)`${Pc.default.vErrors}.length`)}function f(m){var h;if(!s.opts.unevaluated)return;let g=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=ag.mergeEvaluated.props(i,g.props,s.props));else{let v=i.var("props",(0,hn._)`${m}.evaluated.props`);s.props=ag.mergeEvaluated.props(i,v,s.props,hn.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=ag.mergeEvaluated.items(i,g.items,s.items));else{let v=i.var("items",(0,hn._)`${m}.evaluated.items`);s.items=ag.mergeEvaluated.items(i,v,s.items,hn.Name)}}}ca.callRef=cg;ca.default=xJ});var YA=$(tE=>{"use strict";Object.defineProperty(tE,"__esModule",{value:!0});var wJ=WA(),EJ=XA(),kJ=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",wJ.default,EJ.default];tE.default=kJ});var QA=$(rE=>{"use strict";Object.defineProperty(rE,"__esModule",{value:!0});var ug=Ue(),xo=ug.operators,lg={maximum:{okStr:"<=",ok:xo.LTE,fail:xo.GT},minimum:{okStr:">=",ok:xo.GTE,fail:xo.LT},exclusiveMaximum:{okStr:"<",ok:xo.LT,fail:xo.GTE},exclusiveMinimum:{okStr:">",ok:xo.GT,fail:xo.LTE}},TJ={message:({keyword:t,schemaCode:e})=>(0,ug.str)`must be ${lg[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,ug._)`{comparison: ${lg[t].okStr}, limit: ${e}}`},$J={keyword:Object.keys(lg),type:"number",schemaType:"number",$data:!0,error:TJ,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,ug._)`${r} ${lg[e].fail} ${n} || isNaN(${r})`)}};rE.default=$J});var eN=$(nE=>{"use strict";Object.defineProperty(nE,"__esModule",{value:!0});var Yd=Ue(),IJ={message:({schemaCode:t})=>(0,Yd.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Yd._)`{multipleOf: ${t}}`},RJ={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:IJ,code(t){let{gen:e,data:r,schemaCode:n,it:i}=t,s=i.opts.multipleOfPrecision,o=e.let("res"),a=s?(0,Yd._)`Math.abs(Math.round(${o}) - ${o}) > 1e-${s}`:(0,Yd._)`${o} !== parseInt(${o})`;t.fail$data((0,Yd._)`(${n} === 0 || (${o} = ${r}/${n}, ${a}))`)}};nE.default=RJ});var rN=$(iE=>{"use strict";Object.defineProperty(iE,"__esModule",{value:!0});function tN(t){let e=t.length,r=0,n=0,i;for(;n=55296&&i<=56319&&n{"use strict";Object.defineProperty(sE,"__esModule",{value:!0});var ua=Ue(),OJ=rt(),CJ=rN(),PJ={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,ua.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,ua._)`{limit: ${t}}`},AJ={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:PJ,code(t){let{keyword:e,data:r,schemaCode:n,it:i}=t,s=e==="maxLength"?ua.operators.GT:ua.operators.LT,o=i.opts.unicode===!1?(0,ua._)`${r}.length`:(0,ua._)`${(0,OJ.useFunc)(t.gen,CJ.default)}(${r})`;t.fail$data((0,ua._)`${o} ${s} ${n}`)}};sE.default=AJ});var iN=$(oE=>{"use strict";Object.defineProperty(oE,"__esModule",{value:!0});var NJ=Vn(),MJ=rt(),Ac=Ue(),DJ={message:({schemaCode:t})=>(0,Ac.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Ac._)`{pattern: ${t}}`},jJ={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:DJ,code(t){let{gen:e,data:r,$data:n,schema:i,schemaCode:s,it:o}=t,a=o.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=o.opts.code,u=c.code==="new RegExp"?(0,Ac._)`new RegExp`:(0,MJ.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Ac._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Ac._)`!${l}`)}else{let c=(0,NJ.usePattern)(t,i);t.fail$data((0,Ac._)`!${c}.test(${r})`)}}};oE.default=jJ});var sN=$(aE=>{"use strict";Object.defineProperty(aE,"__esModule",{value:!0});var Qd=Ue(),zJ={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Qd.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Qd._)`{limit: ${t}}`},LJ={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:zJ,code(t){let{keyword:e,data:r,schemaCode:n}=t,i=e==="maxProperties"?Qd.operators.GT:Qd.operators.LT;t.fail$data((0,Qd._)`Object.keys(${r}).length ${i} ${n}`)}};aE.default=LJ});var oN=$(cE=>{"use strict";Object.defineProperty(cE,"__esModule",{value:!0});var ep=Vn(),tp=Ue(),UJ=rt(),FJ={message:({params:{missingProperty:t}})=>(0,tp.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,tp._)`{missingProperty: ${t}}`},qJ={keyword:"required",type:"object",schemaType:"array",$data:!0,error:FJ,code(t){let{gen:e,schema:r,schemaCode:n,data:i,$data:s,it:o}=t,{opts:a}=o;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(o.allErrors?u():l(),a.strictRequired){let f=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(f?.[h]===void 0&&!m.has(h)){let g=o.schemaEnv.baseId+o.errSchemaPath,v=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,UJ.checkStrictMode)(o,v,o.opts.strictRequired)}}function u(){if(c||s)t.block$data(tp.nil,d);else for(let f of r)(0,ep.checkReportMissingProp)(t,f)}function l(){let f=e.let("missing");if(c||s){let m=e.let("valid",!0);t.block$data(m,()=>p(f,m)),t.ok(m)}else e.if((0,ep.checkMissingProp)(t,r,f)),(0,ep.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,ep.noPropertyInData)(e,i,f,a.ownProperties),()=>t.error())})}function p(f,m){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(m,(0,ep.propertyInData)(e,i,f,a.ownProperties)),e.if((0,tp.not)(m),()=>{t.error(),e.break()})},tp.nil)}}};cE.default=qJ});var aN=$(uE=>{"use strict";Object.defineProperty(uE,"__esModule",{value:!0});var rp=Ue(),HJ={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,rp.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,rp._)`{limit: ${t}}`},ZJ={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:HJ,code(t){let{keyword:e,data:r,schemaCode:n}=t,i=e==="maxItems"?rp.operators.GT:rp.operators.LT;t.fail$data((0,rp._)`${r}.length ${i} ${n}`)}};uE.default=ZJ});var dg=$(lE=>{"use strict";Object.defineProperty(lE,"__esModule",{value:!0});var cN=N0();cN.code='require("ajv/dist/runtime/equal").default';lE.default=cN});var uN=$(pE=>{"use strict";Object.defineProperty(pE,"__esModule",{value:!0});var dE=qd(),$r=Ue(),BJ=rt(),GJ=dg(),WJ={message:({params:{i:t,j:e}})=>(0,$r.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,$r._)`{i: ${t}, j: ${e}}`},VJ={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:WJ,code(t){let{gen:e,data:r,$data:n,schema:i,parentSchema:s,schemaCode:o,it:a}=t;if(!n&&!i)return;let c=e.let("valid"),u=s.items?(0,dE.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,$r._)`${o} === false`),t.ok(c);function l(){let m=e.let("i",(0,$r._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,$r._)`${m} > 1`,()=>(d()?p:f)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function p(m,h){let g=e.name("item"),v=(0,dE.checkDataTypes)(u,g,a.opts.strictNumbers,dE.DataType.Wrong),y=e.const("indices",(0,$r._)`{}`);e.for((0,$r._)`;${m}--;`,()=>{e.let(g,(0,$r._)`${r}[${m}]`),e.if(v,(0,$r._)`continue`),u.length>1&&e.if((0,$r._)`typeof ${g} == "string"`,(0,$r._)`${g} += "_"`),e.if((0,$r._)`typeof ${y}[${g}] == "number"`,()=>{e.assign(h,(0,$r._)`${y}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,$r._)`${y}[${g}] = ${m}`)})}function f(m,h){let g=(0,BJ.useFunc)(e,GJ.default),v=e.name("outer");e.label(v).for((0,$r._)`;${m}--;`,()=>e.for((0,$r._)`${h} = ${m}; ${h}--;`,()=>e.if((0,$r._)`${g}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(v)})))}}};pE.default=VJ});var lN=$(mE=>{"use strict";Object.defineProperty(mE,"__esModule",{value:!0});var fE=Ue(),KJ=rt(),JJ=dg(),XJ={message:"must be equal to constant",params:({schemaCode:t})=>(0,fE._)`{allowedValue: ${t}}`},YJ={keyword:"const",$data:!0,error:XJ,code(t){let{gen:e,data:r,$data:n,schemaCode:i,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,fE._)`!${(0,KJ.useFunc)(e,JJ.default)}(${r}, ${i})`):t.fail((0,fE._)`${s} !== ${r}`)}};mE.default=YJ});var dN=$(hE=>{"use strict";Object.defineProperty(hE,"__esModule",{value:!0});var np=Ue(),QJ=rt(),eX=dg(),tX={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,np._)`{allowedValues: ${t}}`},rX={keyword:"enum",schemaType:"array",$data:!0,error:tX,code(t){let{gen:e,data:r,$data:n,schema:i,schemaCode:s,it:o}=t;if(!n&&i.length===0)throw new Error("enum must have non-empty array");let a=i.length>=o.opts.loopEnum,c,u=()=>c??(c=(0,QJ.useFunc)(e,eX.default)),l;if(a||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(i))throw new Error("ajv implementation error");let f=e.const("vSchema",s);l=(0,np.or)(...i.map((m,h)=>p(f,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,f=>e.if((0,np._)`${u()}(${r}, ${f})`,()=>e.assign(l,!0).break()))}function p(f,m){let h=i[m];return typeof h=="object"&&h!==null?(0,np._)`${u()}(${r}, ${f}[${m}])`:(0,np._)`${r} === ${h}`}}};hE.default=rX});var pN=$(gE=>{"use strict";Object.defineProperty(gE,"__esModule",{value:!0});var nX=QA(),iX=eN(),sX=nN(),oX=iN(),aX=sN(),cX=oN(),uX=aN(),lX=uN(),dX=lN(),pX=dN(),fX=[nX.default,iX.default,sX.default,oX.default,aX.default,cX.default,uX.default,lX.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},dX.default,pX.default];gE.default=fX});var yE=$(ip=>{"use strict";Object.defineProperty(ip,"__esModule",{value:!0});ip.validateAdditionalItems=void 0;var la=Ue(),vE=rt(),mX={message:({params:{len:t}})=>(0,la.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,la._)`{limit: ${t}}`},hX={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:mX,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,vE.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}fN(t,n)}};function fN(t,e){let{gen:r,schema:n,data:i,keyword:s,it:o}=t;o.items=!0;let a=r.const("len",(0,la._)`${i}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,la._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,vE.alwaysValidSchema)(o,n)){let u=r.var("valid",(0,la._)`${a} <= ${e.length}`);r.if((0,la.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:vE.Type.Num},u),o.allErrors||r.if((0,la.not)(u),()=>r.break())})}}ip.validateAdditionalItems=fN;ip.default=hX});var _E=$(sp=>{"use strict";Object.defineProperty(sp,"__esModule",{value:!0});sp.validateTuple=void 0;var mN=Ue(),pg=rt(),gX=Vn(),vX={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return hN(t,"additionalItems",e);r.items=!0,!(0,pg.alwaysValidSchema)(r,e)&&t.ok((0,gX.validateArray)(t))}};function hN(t,e,r=t.schema){let{gen:n,parentSchema:i,data:s,keyword:o,it:a}=t;l(i),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=pg.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,mN._)`${s}.length`);r.forEach((d,p)=>{(0,pg.alwaysValidSchema)(a,d)||(n.if((0,mN._)`${u} > ${p}`,()=>t.subschema({keyword:o,schemaProp:p,dataProp:p},c)),t.ok(c))});function l(d){let{opts:p,errSchemaPath:f}=a,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(p.strictTuples&&!h){let g=`"${o}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${f}"`;(0,pg.checkStrictMode)(a,g,p.strictTuples)}}}sp.validateTuple=hN;sp.default=vX});var gN=$(bE=>{"use strict";Object.defineProperty(bE,"__esModule",{value:!0});var yX=_E(),_X={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,yX.validateTuple)(t,"items")};bE.default=_X});var yN=$(SE=>{"use strict";Object.defineProperty(SE,"__esModule",{value:!0});var vN=Ue(),bX=rt(),SX=Vn(),xX=yE(),wX={message:({params:{len:t}})=>(0,vN.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,vN._)`{limit: ${t}}`},EX={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:wX,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:i}=r;n.items=!0,!(0,bX.alwaysValidSchema)(n,e)&&(i?(0,xX.validateAdditionalItems)(t,i):t.ok((0,SX.validateArray)(t)))}};SE.default=EX});var _N=$(xE=>{"use strict";Object.defineProperty(xE,"__esModule",{value:!0});var Jn=Ue(),fg=rt(),kX={message:({params:{min:t,max:e}})=>e===void 0?(0,Jn.str)`must contain at least ${t} valid item(s)`:(0,Jn.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,Jn._)`{minContains: ${t}}`:(0,Jn._)`{minContains: ${t}, maxContains: ${e}}`},TX={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:kX,code(t){let{gen:e,schema:r,parentSchema:n,data:i,it:s}=t,o,a,{minContains:c,maxContains:u}=n;s.opts.next?(o=c===void 0?1:c,a=u):o=1;let l=e.const("len",(0,Jn._)`${i}.length`);if(t.setParams({min:o,max:a}),a===void 0&&o===0){(0,fg.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&o>a){(0,fg.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,fg.alwaysValidSchema)(s,r)){let h=(0,Jn._)`${l} >= ${o}`;a!==void 0&&(h=(0,Jn._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&o===1?f(d,()=>e.if(d,()=>e.break())):o===0?(e.let(d,!0),a!==void 0&&e.if((0,Jn._)`${i}.length > 0`,p)):(e.let(d,!1),p()),t.result(d,()=>t.reset());function p(){let h=e.name("_valid"),g=e.let("count",0);f(h,()=>e.if(h,()=>m(g)))}function f(h,g){e.forRange("i",0,l,v=>{t.subschema({keyword:"contains",dataProp:v,dataPropType:fg.Type.Num,compositeRule:!0},h),g()})}function m(h){e.code((0,Jn._)`${h}++`),a===void 0?e.if((0,Jn._)`${h} >= ${o}`,()=>e.assign(d,!0).break()):(e.if((0,Jn._)`${h} > ${a}`,()=>e.assign(d,!1).break()),o===1?e.assign(d,!0):e.if((0,Jn._)`${h} >= ${o}`,()=>e.assign(d,!0)))}}};xE.default=TX});var xN=$(Hi=>{"use strict";Object.defineProperty(Hi,"__esModule",{value:!0});Hi.validateSchemaDeps=Hi.validatePropertyDeps=Hi.error=void 0;var wE=Ue(),$X=rt(),op=Vn();Hi.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,wE.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,wE._)`{property: ${t}, missingProperty: ${n}, - depsCount: ${t}, - deps: ${r}}`};var wE={keyword:"dependencies",type:"object",schemaType:"object",error:kt.error,code(e){let[t,r]=zE(e);W_(e,t),K_(e,r)}};function zE({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let o=Array.isArray(e[n])?t:r;o[n]=e[n]}return[t,r]}function W_(e,t=e.schema){let{gen:r,data:n,it:o}=e;if(Object.keys(t).length===0)return;let i=r.let("missing");for(let a in t){let s=t[a];if(s.length===0)continue;let c=(0,ui.propertyInData)(r,n,a,o.opts.ownProperties);e.setParams({property:a,depsCount:s.length,deps:s.join(", ")}),o.allErrors?r.if(c,()=>{for(let u of s)(0,ui.checkReportMissingProp)(e,u)}):(r.if((0,Kp._)`${c} && (${(0,ui.checkMissingProp)(e,s,i)})`),(0,ui.reportMissingProp)(e,i),r.else())}}kt.validatePropertyDeps=W_;function K_(e,t=e.schema){let{gen:r,data:n,keyword:o,it:i}=e,a=r.name("valid");for(let s in t)(0,SE.alwaysValidSchema)(i,t[s])||(r.if((0,ui.propertyInData)(r,n,s,i.opts.ownProperties),()=>{let c=e.subschema({keyword:o,schemaProp:s},a);e.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),e.ok(a))}kt.validateSchemaDeps=K_;kt.default=wE});var B_=S(Hp=>{"use strict";Object.defineProperty(Hp,"__esModule",{value:!0});var G_=W(),IE=re(),EE={message:"property name must be valid",params:({params:e})=>(0,G_._)`{propertyName: ${e.propertyName}}`},TE={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:EE,code(e){let{gen:t,schema:r,data:n,it:o}=e;if((0,IE.alwaysValidSchema)(o,r))return;let i=t.name("valid");t.forIn("key",n,a=>{e.setParams({propertyName:a}),e.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),t.if((0,G_.not)(i),()=>{e.error(!0),o.allErrors||t.break()})}),e.ok(i)}};Hp.default=TE});var Bp=S(Gp=>{"use strict";Object.defineProperty(Gp,"__esModule",{value:!0});var ps=at(),ht=W(),PE=Lt(),fs=re(),OE={message:"must NOT have additional properties",params:({params:e})=>(0,ht._)`{additionalProperty: ${e.additionalProperty}}`},jE={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:OE,code(e){let{gen:t,schema:r,parentSchema:n,data:o,errsCount:i,it:a}=e;if(!i)throw new Error("ajv implementation error");let{allErrors:s,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,fs.alwaysValidSchema)(a,r))return;let u=(0,ps.allSchemaProperties)(n.properties),l=(0,ps.allSchemaProperties)(n.patternProperties);d(),e.ok((0,ht._)`${i} === ${PE.default.errors}`);function d(){t.forIn("key",o,_=>{!u.length&&!l.length?g(_):t.if(m(_),()=>g(_))})}function m(_){let b;if(u.length>8){let E=(0,fs.schemaRefOrVal)(a,n.properties,"properties");b=(0,ps.isOwnProperty)(t,E,_)}else u.length?b=(0,ht.or)(...u.map(E=>(0,ht._)`${_} === ${E}`)):b=ht.nil;return l.length&&(b=(0,ht.or)(b,...l.map(E=>(0,ht._)`${(0,ps.usePattern)(e,E)}.test(${_})`))),(0,ht.not)(b)}function p(_){t.code((0,ht._)`delete ${o}[${_}]`)}function g(_){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(_);return}if(r===!1){e.setParams({additionalProperty:_}),e.error(),s||t.break();return}if(typeof r=="object"&&!(0,fs.alwaysValidSchema)(a,r)){let b=t.name("valid");c.removeAdditional==="failing"?(h(_,b,!1),t.if((0,ht.not)(b),()=>{e.reset(),p(_)})):(h(_,b),s||t.if((0,ht.not)(b),()=>t.break()))}}function h(_,b,E){let I={keyword:"additionalProperties",dataProp:_,dataPropType:fs.Type.Str};E===!1&&Object.assign(I,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(I,b)}}};Gp.default=jE});var Q_=S(Yp=>{"use strict";Object.defineProperty(Yp,"__esModule",{value:!0});var DE=Go(),X_=at(),Xp=re(),Y_=Bp(),NE={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:o,it:i}=e;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&Y_.default.code(new DE.KeywordCxt(i,Y_.default,"additionalProperties"));let a=(0,X_.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=Xp.mergeEvaluated.props(t,(0,Xp.toHash)(a),i.props));let s=a.filter(d=>!(0,Xp.alwaysValidSchema)(i,r[d]));if(s.length===0)return;let c=t.name("valid");for(let d of s)u(d)?l(d):(t.if((0,X_.propertyInData)(t,o,d,i.opts.ownProperties)),l(d),i.allErrors||t.else().var(c,!0),t.endIf()),e.it.definedProperties.add(d),e.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){e.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Yp.default=NE});var ny=S(Qp=>{"use strict";Object.defineProperty(Qp,"__esModule",{value:!0});var ey=at(),ms=W(),ty=re(),ry=re(),RE={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:o,it:i}=e,{opts:a}=i,s=(0,ey.allSchemaProperties)(r),c=s.filter(h=>(0,ty.alwaysValidSchema)(i,r[h]));if(s.length===0||c.length===s.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&o.properties,l=t.name("valid");i.props!==!0&&!(i.props instanceof ms.Name)&&(i.props=(0,ry.evaluatedPropsToName)(t,i.props));let{props:d}=i;m();function m(){for(let h of s)u&&p(h),i.allErrors?g(h):(t.var(l,!0),g(h),t.if(l))}function p(h){for(let _ in u)new RegExp(h).test(_)&&(0,ty.checkStrictMode)(i,`property ${_} matches pattern ${h} (use allowMatchingProperties)`)}function g(h){t.forIn("key",n,_=>{t.if((0,ms._)`${(0,ey.usePattern)(e,h)}.test(${_})`,()=>{let b=c.includes(h);b||e.subschema({keyword:"patternProperties",schemaProp:h,dataProp:_,dataPropType:ry.Type.Str},l),i.opts.unevaluated&&d!==!0?t.assign((0,ms._)`${d}[${_}]`,!0):!b&&!i.allErrors&&t.if((0,ms.not)(l),()=>t.break())})})}}};Qp.default=RE});var oy=S(ef=>{"use strict";Object.defineProperty(ef,"__esModule",{value:!0});var AE=re(),ME={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,AE.alwaysValidSchema)(n,r)){e.fail();return}let o=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),e.failResult(o,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};ef.default=ME});var iy=S(tf=>{"use strict";Object.defineProperty(tf,"__esModule",{value:!0});var CE=at(),UE={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:CE.validateUnion,error:{message:"must match a schema in anyOf"}};tf.default=UE});var ay=S(rf=>{"use strict";Object.defineProperty(rf,"__esModule",{value:!0});var hs=W(),ZE=re(),LE={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,hs._)`{passingSchemas: ${e.passing}}`},qE={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:LE,code(e){let{gen:t,schema:r,parentSchema:n,it:o}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let i=r,a=t.let("valid",!1),s=t.let("passing",null),c=t.name("_valid");e.setParams({passing:s}),t.block(u),e.result(a,()=>e.reset(),()=>e.error(!0));function u(){i.forEach((l,d)=>{let m;(0,ZE.alwaysValidSchema)(o,l)?t.var(c,!0):m=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&t.if((0,hs._)`${c} && ${a}`).assign(a,!1).assign(s,(0,hs._)`[${s}, ${d}]`).else(),t.if(c,()=>{t.assign(a,!0),t.assign(s,d),m&&e.mergeEvaluated(m,hs.Name)})})}}};rf.default=qE});var sy=S(nf=>{"use strict";Object.defineProperty(nf,"__esModule",{value:!0});var FE=re(),VE={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let o=t.name("valid");r.forEach((i,a)=>{if((0,FE.alwaysValidSchema)(n,i))return;let s=e.subschema({keyword:"allOf",schemaProp:a},o);e.ok(o),e.mergeEvaluated(s)})}};nf.default=VE});var ly=S(of=>{"use strict";Object.defineProperty(of,"__esModule",{value:!0});var gs=W(),uy=re(),JE={message:({params:e})=>(0,gs.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,gs._)`{failingKeyword: ${e.ifClause}}`},WE={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:JE,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,uy.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=cy(n,"then"),i=cy(n,"else");if(!o&&!i)return;let a=t.let("valid",!0),s=t.name("_valid");if(c(),e.reset(),o&&i){let l=t.let("ifClause");e.setParams({ifClause:l}),t.if(s,u("then",l),u("else",l))}else o?t.if(s,u("then")):t.if((0,gs.not)(s),u("else"));e.pass(a,()=>e.error(!0));function c(){let l=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},s);e.mergeEvaluated(l)}function u(l,d){return()=>{let m=e.subschema({keyword:l},s);t.assign(a,s),e.mergeValidEvaluated(m,a),d?t.assign(d,(0,gs._)`${l}`):e.setParams({ifClause:l})}}}};function cy(e,t){let r=e.schema[t];return r!==void 0&&!(0,uy.alwaysValidSchema)(e,r)}of.default=WE});var dy=S(af=>{"use strict";Object.defineProperty(af,"__esModule",{value:!0});var KE=re(),HE={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,KE.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};af.default=HE});var py=S(sf=>{"use strict";Object.defineProperty(sf,"__esModule",{value:!0});var GE=qp(),BE=q_(),XE=Fp(),YE=V_(),QE=J_(),eT=H_(),tT=B_(),rT=Bp(),nT=Q_(),oT=ny(),iT=oy(),aT=iy(),sT=ay(),cT=sy(),uT=ly(),lT=dy();function dT(e=!1){let t=[iT.default,aT.default,sT.default,cT.default,uT.default,lT.default,tT.default,rT.default,eT.default,nT.default,oT.default];return e?t.push(BE.default,YE.default):t.push(GE.default,XE.default),t.push(QE.default),t}sf.default=dT});var fy=S(cf=>{"use strict";Object.defineProperty(cf,"__esModule",{value:!0});var _e=W(),pT={message:({schemaCode:e})=>(0,_e.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,_e._)`{format: ${e}}`},fT={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:pT,code(e,t){let{gen:r,data:n,$data:o,schema:i,schemaCode:a,it:s}=e,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=s;if(!c.validateFormats)return;o?m():p();function m(){let g=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,_e._)`${g}[${a}]`),_=r.let("fType"),b=r.let("format");r.if((0,_e._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(_,(0,_e._)`${h}.type || "string"`).assign(b,(0,_e._)`${h}.validate`),()=>r.assign(_,(0,_e._)`"string"`).assign(b,h)),e.fail$data((0,_e.or)(E(),I()));function E(){return c.strictSchema===!1?_e.nil:(0,_e._)`${a} && !${b}`}function I(){let A=l.$async?(0,_e._)`(${h}.async ? await ${b}(${n}) : ${b}(${n}))`:(0,_e._)`${b}(${n})`,j=(0,_e._)`(typeof ${b} == "function" ? ${A} : ${b}.test(${n}))`;return(0,_e._)`${b} && ${b} !== true && ${_} === ${t} && !${j}`}}function p(){let g=d.formats[i];if(!g){E();return}if(g===!0)return;let[h,_,b]=I(g);h===t&&e.pass(A());function E(){if(c.strictSchema===!1){d.logger.warn(j());return}throw new Error(j());function j(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function I(j){let Le=j instanceof RegExp?(0,_e.regexpCode)(j):c.code.formats?(0,_e._)`${c.code.formats}${(0,_e.getProperty)(i)}`:void 0,de=r.scopeValue("formats",{key:i,ref:j,code:Le});return typeof j=="object"&&!(j instanceof RegExp)?[j.type||"string",j.validate,(0,_e._)`${de}.validate`]:["string",j,de]}function A(){if(typeof g=="object"&&!(g instanceof RegExp)&&g.async){if(!l.$async)throw new Error("async format in sync schema");return(0,_e._)`await ${b}(${n})`}return typeof _=="function"?(0,_e._)`${b}(${n})`:(0,_e._)`${b}.test(${n})`}}}};cf.default=fT});var my=S(uf=>{"use strict";Object.defineProperty(uf,"__esModule",{value:!0});var mT=fy(),hT=[mT.default];uf.default=hT});var hy=S(vn=>{"use strict";Object.defineProperty(vn,"__esModule",{value:!0});vn.contentVocabulary=vn.metadataVocabulary=void 0;vn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];vn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var vy=S(lf=>{"use strict";Object.defineProperty(lf,"__esModule",{value:!0});var gT=S_(),vT=C_(),_T=py(),yT=my(),gy=hy(),$T=[gT.default,vT.default,(0,_T.default)(),yT.default,gy.metadataVocabulary,gy.contentVocabulary];lf.default=$T});var yy=S(vs=>{"use strict";Object.defineProperty(vs,"__esModule",{value:!0});vs.DiscrError=void 0;var _y;(function(e){e.Tag="tag",e.Mapping="mapping"})(_y||(vs.DiscrError=_y={}))});var by=S(pf=>{"use strict";Object.defineProperty(pf,"__esModule",{value:!0});var _n=W(),df=yy(),$y=Ya(),bT=Bo(),xT=re(),kT={message:({params:{discrError:e,tagName:t}})=>e===df.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,_n._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},ST={keyword:"discriminator",type:"object",schemaType:"object",error:kT,code(e){let{gen:t,data:r,schema:n,parentSchema:o,it:i}=e,{oneOf:a}=o;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let s=n.propertyName;if(typeof s!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=t.let("valid",!1),u=t.const("tag",(0,_n._)`${r}${(0,_n.getProperty)(s)}`);t.if((0,_n._)`typeof ${u} == "string"`,()=>l(),()=>e.error(!1,{discrError:df.DiscrError.Tag,tag:u,tagName:s})),e.ok(c);function l(){let p=m();t.if(!1);for(let g in p)t.elseIf((0,_n._)`${u} === ${g}`),t.assign(c,d(p[g]));t.else(),e.error(!1,{discrError:df.DiscrError.Mapping,tag:u,tagName:s}),t.endIf()}function d(p){let g=t.name("valid"),h=e.subschema({keyword:"oneOf",schemaProp:p},g);return e.mergeEvaluated(h,_n.Name),g}function m(){var p;let g={},h=b(o),_=!0;for(let A=0;A{wT.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var mf=S((ge,ff)=>{"use strict";Object.defineProperty(ge,"__esModule",{value:!0});ge.MissingRefError=ge.ValidationError=ge.CodeGen=ge.Name=ge.nil=ge.stringify=ge.str=ge._=ge.KeywordCxt=ge.Ajv=void 0;var zT=__(),IT=vy(),ET=by(),ky=xy(),TT=["/properties"],_s="http://json-schema.org/draft-07/schema",yn=class extends zT.default{_addVocabularies(){super._addVocabularies(),IT.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(ET.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(ky,TT):ky;this.addMetaSchema(t,_s,!1),this.refs["http://json-schema.org/schema"]=_s}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(_s)?_s:void 0)}};ge.Ajv=yn;ff.exports=ge=yn;ff.exports.Ajv=yn;Object.defineProperty(ge,"__esModule",{value:!0});ge.default=yn;var PT=Go();Object.defineProperty(ge,"KeywordCxt",{enumerable:!0,get:function(){return PT.KeywordCxt}});var $n=W();Object.defineProperty(ge,"_",{enumerable:!0,get:function(){return $n._}});Object.defineProperty(ge,"str",{enumerable:!0,get:function(){return $n.str}});Object.defineProperty(ge,"stringify",{enumerable:!0,get:function(){return $n.stringify}});Object.defineProperty(ge,"nil",{enumerable:!0,get:function(){return $n.nil}});Object.defineProperty(ge,"Name",{enumerable:!0,get:function(){return $n.Name}});Object.defineProperty(ge,"CodeGen",{enumerable:!0,get:function(){return $n.CodeGen}});var OT=Ba();Object.defineProperty(ge,"ValidationError",{enumerable:!0,get:function(){return OT.default}});var jT=Bo();Object.defineProperty(ge,"MissingRefError",{enumerable:!0,get:function(){return jT.default}})});var Oy=S(wt=>{"use strict";Object.defineProperty(wt,"__esModule",{value:!0});wt.formatNames=wt.fastFormats=wt.fullFormats=void 0;function St(e,t){return{validate:e,compare:t}}wt.fullFormats={date:St(Iy,_f),time:St(gf(!0),yf),"date-time":St(Sy(!0),Ty),"iso-time":St(gf(),Ey),"iso-date-time":St(Sy(),Py),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:CT,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:JT,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:UT,int32:{type:"number",validate:qT},int64:{type:"number",validate:FT},float:{type:"number",validate:zy},double:{type:"number",validate:zy},password:!0,binary:!0};wt.fastFormats={...wt.fullFormats,date:St(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,_f),time:St(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,yf),"date-time":St(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Ty),"iso-time":St(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Ey),"iso-date-time":St(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Py),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};wt.formatNames=Object.keys(wt.fullFormats);function DT(e){return e%4===0&&(e%100!==0||e%400===0)}var NT=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,RT=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Iy(e){let t=NT.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],o=+t[3];return n>=1&&n<=12&&o>=1&&o<=(n===2&&DT(r)?29:RT[n])}function _f(e,t){if(e&&t)return e>t?1:e23||l>59||e&&!s)return!1;if(o<=23&&i<=59&&a<60)return!0;let d=i-l*c,m=o-u*c-(d<0?1:0);return(m===23||m===-1)&&(d===59||d===-1)&&a<61}}function yf(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),n=new Date("2020-01-01T"+t).valueOf();if(r&&n)return r-n}function Ey(e,t){if(!(e&&t))return;let r=hf.exec(e),n=hf.exec(t);if(r&&n)return e=r[1]+r[2]+r[3],t=n[1]+n[2]+n[3],e>t?1:e=ZT}function FT(e){return Number.isInteger(e)}function zy(){return!0}var VT=/[^\\]\\Z/;function JT(e){if(VT.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var jy=S(bn=>{"use strict";Object.defineProperty(bn,"__esModule",{value:!0});bn.formatLimitDefinition=void 0;var WT=mf(),gt=W(),pr=gt.operators,ys={formatMaximum:{okStr:"<=",ok:pr.LTE,fail:pr.GT},formatMinimum:{okStr:">=",ok:pr.GTE,fail:pr.LT},formatExclusiveMaximum:{okStr:"<",ok:pr.LT,fail:pr.GTE},formatExclusiveMinimum:{okStr:">",ok:pr.GT,fail:pr.LTE}},KT={message:({keyword:e,schemaCode:t})=>(0,gt.str)`should be ${ys[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,gt._)`{comparison: ${ys[e].okStr}, limit: ${t}}`};bn.formatLimitDefinition={keyword:Object.keys(ys),type:"string",schemaType:"string",$data:!0,error:KT,code(e){let{gen:t,data:r,schemaCode:n,keyword:o,it:i}=e,{opts:a,self:s}=i;if(!a.validateFormats)return;let c=new WT.KeywordCxt(i,s.RULES.all.format.definition,"format");c.$data?u():l();function u(){let m=t.scopeValue("formats",{ref:s.formats,code:a.code.formats}),p=t.const("fmt",(0,gt._)`${m}[${c.schemaCode}]`);e.fail$data((0,gt.or)((0,gt._)`typeof ${p} != "object"`,(0,gt._)`${p} instanceof RegExp`,(0,gt._)`typeof ${p}.compare != "function"`,d(p)))}function l(){let m=c.schema,p=s.formats[m];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${o}": format "${m}" does not define "compare" function`);let g=t.scopeValue("formats",{key:m,ref:p,code:a.code.formats?(0,gt._)`${a.code.formats}${(0,gt.getProperty)(m)}`:void 0});e.fail$data(d(g))}function d(m){return(0,gt._)`${m}.compare(${r}, ${n}) ${ys[o].fail} 0`}},dependencies:["format"]};var HT=e=>(e.addKeyword(bn.formatLimitDefinition),e);bn.default=HT});var Ay=S((li,Ry)=>{"use strict";Object.defineProperty(li,"__esModule",{value:!0});var xn=Oy(),GT=jy(),$f=W(),Dy=new $f.Name("fullFormats"),BT=new $f.Name("fastFormats"),bf=(e,t={keywords:!0})=>{if(Array.isArray(t))return Ny(e,t,xn.fullFormats,Dy),e;let[r,n]=t.mode==="fast"?[xn.fastFormats,BT]:[xn.fullFormats,Dy],o=t.formats||xn.formatNames;return Ny(e,o,r,n),t.keywords&&(0,GT.default)(e),e};bf.get=(e,t="full")=>{let n=(t==="fast"?xn.fastFormats:xn.fullFormats)[e];if(!n)throw new Error(`Unknown format "${e}"`);return n};function Ny(e,t,r,n){var o,i;(o=(i=e.opts.code).formats)!==null&&o!==void 0||(i.formats=(0,$f._)`require("ajv-formats/dist/formats").${n}`);for(let a of t)e.addFormat(a,r[a])}Ry.exports=li=bf;Object.defineProperty(li,"__esModule",{value:!0});li.default=bf});var Et=require("fs"),zn=require("path"),Mf=require("os"),Rs=(i=>(i[i.DEBUG=0]="DEBUG",i[i.INFO=1]="INFO",i[i.WARN=2]="WARN",i[i.ERROR=3]="ERROR",i[i.SILENT=4]="SILENT",i))(Rs||{}),Af=(0,zn.join)((0,Mf.homedir)(),".claude-mem"),As=class{level=null;useColor;logFilePath=null;logFileInitialized=!1;constructor(){this.useColor=process.stdout.isTTY??!1}ensureLogFileInitialized(){if(!this.logFileInitialized){this.logFileInitialized=!0;try{let t=(0,zn.join)(Af,"logs");(0,Et.existsSync)(t)||(0,Et.mkdirSync)(t,{recursive:!0});let r=new Date().toISOString().split("T")[0];this.logFilePath=(0,zn.join)(t,`claude-mem-${r}.log`)}catch(t){console.error("[LOGGER] Failed to initialize log file:",t),this.logFilePath=null}}}getLevel(){if(this.level===null)try{let t=(0,zn.join)(Af,"settings.json");if((0,Et.existsSync)(t)){let r=(0,Et.readFileSync)(t,"utf-8"),o=(JSON.parse(r).CLAUDE_MEM_LOG_LEVEL||"INFO").toUpperCase();this.level=Rs[o]??1}else this.level=1}catch{this.level=1}return this.level}correlationId(t,r){return`obs-${t}-${r}`}sessionId(t){return`session-${t}`}formatData(t){if(t==null)return"";if(typeof t=="string")return t;if(typeof t=="number"||typeof t=="boolean")return t.toString();if(typeof t=="object"){if(t instanceof Error)return this.getLevel()===0?`${t.message} -${t.stack}`:t.message;if(Array.isArray(t))return`[${t.length} items]`;let r=Object.keys(t);return r.length===0?"{}":r.length<=3?JSON.stringify(t):`{${r.length} keys: ${r.slice(0,3).join(", ")}...}`}return String(t)}formatTool(t,r){if(!r)return t;let n=r;if(typeof r=="string")try{n=JSON.parse(r)}catch{n=r}if(t==="Bash"&&n.command)return`${t}(${n.command})`;if(n.file_path)return`${t}(${n.file_path})`;if(n.notebook_path)return`${t}(${n.notebook_path})`;if(t==="Glob"&&n.pattern)return`${t}(${n.pattern})`;if(t==="Grep"&&n.pattern)return`${t}(${n.pattern})`;if(n.url)return`${t}(${n.url})`;if(n.query)return`${t}(${n.query})`;if(t==="Task"){if(n.subagent_type)return`${t}(${n.subagent_type})`;if(n.description)return`${t}(${n.description})`}return t==="Skill"&&n.skill?`${t}(${n.skill})`:t==="LSP"&&n.operation?`${t}(${n.operation})`:t}formatTimestamp(t){let r=t.getFullYear(),n=String(t.getMonth()+1).padStart(2,"0"),o=String(t.getDate()).padStart(2,"0"),i=String(t.getHours()).padStart(2,"0"),a=String(t.getMinutes()).padStart(2,"0"),s=String(t.getSeconds()).padStart(2,"0"),c=String(t.getMilliseconds()).padStart(3,"0");return`${r}-${n}-${o} ${i}:${a}:${s}.${c}`}log(t,r,n,o,i){if(t0&&(d=` {${Object.entries(_).map(([E,I])=>`${E}=${I}`).join(", ")}}`)}let m=`[${a}] [${s}] [${c}] ${u}${n}${d}${l}`;if(this.logFilePath)try{(0,Et.appendFileSync)(this.logFilePath,m+` -`,"utf8")}catch(p){process.stderr.write(`[LOGGER] Failed to write to log file: ${p} -`)}else process.stderr.write(m+` -`)}debug(t,r,n,o){this.log(0,t,r,n,o)}info(t,r,n,o){this.log(1,t,r,n,o)}warn(t,r,n,o){this.log(2,t,r,n,o)}error(t,r,n,o){this.log(3,t,r,n,o)}dataIn(t,r,n,o){this.info(t,`\u2192 ${r}`,n,o)}dataOut(t,r,n,o){this.info(t,`\u2190 ${r}`,n,o)}success(t,r,n,o){this.info(t,`\u2713 ${r}`,n,o)}failure(t,r,n,o){this.error(t,`\u2717 ${r}`,n,o)}timing(t,r,n,o){this.info(t,`\u23F1 ${r}`,o,{duration:`${n}ms`})}happyPathError(t,r,n,o,i=""){let u=((new Error().stack||"").split(` -`)[2]||"").match(/at\s+(?:.*\s+)?\(?([^:]+):(\d+):(\d+)\)?/),l=u?`${u[1].split("/").pop()}:${u[2]}`:"unknown",d={...n,location:l};return this.warn(t,`[HAPPY-PATH] ${r}`,d,o),i}},ve=new As;var X;(function(e){e.assertEqual=o=>{};function t(o){}e.assertIs=t;function r(o){throw new Error}e.assertNever=r,e.arrayToEnum=o=>{let i={};for(let a of o)i[a]=a;return i},e.getValidEnumValues=o=>{let i=e.objectKeys(o).filter(s=>typeof o[o[s]]!="number"),a={};for(let s of i)a[s]=o[s];return e.objectValues(a)},e.objectValues=o=>e.objectKeys(o).map(function(i){return o[i]}),e.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let i=[];for(let a in o)Object.prototype.hasOwnProperty.call(o,a)&&i.push(a);return i},e.find=(o,i)=>{for(let a of o)if(i(a))return a},e.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,i=" | "){return o.map(a=>typeof a=="string"?`'${a}'`:a).join(i)}e.joinValues=n,e.jsonStringifyReplacer=(o,i)=>typeof i=="bigint"?i.toString():i})(X||(X={}));var Cf;(function(e){e.mergeShapes=(t,r)=>({...t,...r})})(Cf||(Cf={}));var w=X.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Tt=e=>{switch(typeof e){case"undefined":return w.undefined;case"string":return w.string;case"number":return Number.isNaN(e)?w.nan:w.number;case"boolean":return w.boolean;case"function":return w.function;case"bigint":return w.bigint;case"symbol":return w.symbol;case"object":return Array.isArray(e)?w.array:e===null?w.null:e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?w.promise:typeof Map<"u"&&e instanceof Map?w.map:typeof Set<"u"&&e instanceof Set?w.set:typeof Date<"u"&&e instanceof Date?w.date:w.object;default:return w.unknown}};var y=X.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);var Ke=class e extends Error{get errors(){return this.issues}constructor(t){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=t}format(t){let r=t||function(i){return i.message},n={_errors:[]},o=i=>{for(let a of i.issues)if(a.code==="invalid_union")a.unionErrors.map(o);else if(a.code==="invalid_return_type")o(a.returnTypeError);else if(a.code==="invalid_arguments")o(a.argumentsError);else if(a.path.length===0)n._errors.push(r(a));else{let s=n,c=0;for(;cr.message){let r=Object.create(null),n=[];for(let o of this.issues)if(o.path.length>0){let i=o.path[0];r[i]=r[i]||[],r[i].push(t(o))}else n.push(t(o));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};Ke.create=e=>new Ke(e);var g$=(e,t)=>{let r;switch(e.code){case y.invalid_type:e.received===w.undefined?r="Required":r=`Expected ${e.expected}, received ${e.received}`;break;case y.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(e.expected,X.jsonStringifyReplacer)}`;break;case y.unrecognized_keys:r=`Unrecognized key(s) in object: ${X.joinValues(e.keys,", ")}`;break;case y.invalid_union:r="Invalid input";break;case y.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${X.joinValues(e.options)}`;break;case y.invalid_enum_value:r=`Invalid enum value. Expected ${X.joinValues(e.options)}, received '${e.received}'`;break;case y.invalid_arguments:r="Invalid function arguments";break;case y.invalid_return_type:r="Invalid function return type";break;case y.invalid_date:r="Invalid date";break;case y.invalid_string:typeof e.validation=="object"?"includes"in e.validation?(r=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?r=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?r=`Invalid input: must end with "${e.validation.endsWith}"`:X.assertNever(e.validation):e.validation!=="regex"?r=`Invalid ${e.validation}`:r="Invalid";break;case y.too_small:e.type==="array"?r=`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:e.type==="string"?r=`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:e.type==="number"?r=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="bigint"?r=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="date"?r=`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:r="Invalid input";break;case y.too_big:e.type==="array"?r=`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:e.type==="string"?r=`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:e.type==="number"?r=`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="bigint"?r=`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="date"?r=`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:r="Invalid input";break;case y.custom:r="Invalid input";break;case y.invalid_intersection_types:r="Intersection results could not be merged";break;case y.not_multiple_of:r=`Number must be a multiple of ${e.multipleOf}`;break;case y.not_finite:r="Number must be finite";break;default:r=t.defaultError,X.assertNever(e)}return{message:r}},Ht=g$;var v$=Ht;function In(){return v$}var hi=e=>{let{data:t,path:r,errorMaps:n,issueData:o}=e,i=[...r,...o.path||[]],a={...o,path:i};if(o.message!==void 0)return{...o,path:i,message:o.message};let s="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)s=u(a,{data:t,defaultError:s}).message;return{...o,path:i,message:s}};function x(e,t){let r=In(),n=hi({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,r,r===Ht?void 0:Ht].filter(o=>!!o)});e.common.issues.push(n)}var Ee=class e{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(t,r){let n=[];for(let o of r){if(o.status==="aborted")return M;o.status==="dirty"&&t.dirty(),n.push(o.value)}return{status:t.value,value:n}}static async mergeObjectAsync(t,r){let n=[];for(let o of r){let i=await o.key,a=await o.value;n.push({key:i,value:a})}return e.mergeObjectSync(t,n)}static mergeObjectSync(t,r){let n={};for(let o of r){let{key:i,value:a}=o;if(i.status==="aborted"||a.status==="aborted")return M;i.status==="dirty"&&t.dirty(),a.status==="dirty"&&t.dirty(),i.value!=="__proto__"&&(typeof a.value<"u"||o.alwaysSet)&&(n[i.value]=a.value)}return{status:t.value,value:n}}},M=Object.freeze({status:"aborted"}),Dr=e=>({status:"dirty",value:e}),Ne=e=>({status:"valid",value:e}),Ms=e=>e.status==="aborted",Cs=e=>e.status==="dirty",fr=e=>e.status==="valid",En=e=>typeof Promise<"u"&&e instanceof Promise;var T;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t?.message})(T||(T={}));var et=class{constructor(t,r,n,o){this._cachedPath=[],this.parent=t,this.data=r,this._path=n,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Uf=(e,t)=>{if(fr(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new Ke(e.common.issues);return this._error=r,this._error}}};function L(e){if(!e)return{};let{errorMap:t,invalid_type_error:r,required_error:n,description:o}=e;if(t&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:o}:{errorMap:(a,s)=>{let{message:c}=e;return a.code==="invalid_enum_value"?{message:c??s.defaultError}:typeof s.data>"u"?{message:c??n??s.defaultError}:a.code!=="invalid_type"?{message:s.defaultError}:{message:c??r??s.defaultError}},description:o}}var K=class{get description(){return this._def.description}_getType(t){return Tt(t.data)}_getOrReturnCtx(t,r){return r||{common:t.parent.common,data:t.data,parsedType:Tt(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}_processInputParams(t){return{status:new Ee,ctx:{common:t.parent.common,data:t.data,parsedType:Tt(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){let r=this._parse(t);if(En(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(t){let r=this._parse(t);return Promise.resolve(r)}parse(t,r){let n=this.safeParse(t,r);if(n.success)return n.data;throw n.error}safeParse(t,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Tt(t)},o=this._parseSync({data:t,path:n.path,parent:n});return Uf(n,o)}"~validate"(t){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Tt(t)};if(!this["~standard"].async)try{let n=this._parseSync({data:t,path:[],parent:r});return fr(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:t,path:[],parent:r}).then(n=>fr(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(t,r){let n=await this.safeParseAsync(t,r);if(n.success)return n.data;throw n.error}async safeParseAsync(t,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Tt(t)},o=this._parse({data:t,path:n.path,parent:n}),i=await(En(o)?o:Promise.resolve(o));return Uf(n,i)}refine(t,r){let n=o=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(o):r;return this._refinement((o,i)=>{let a=t(o),s=()=>i.addIssue({code:y.custom,...n(o)});return typeof Promise<"u"&&a instanceof Promise?a.then(c=>c?!0:(s(),!1)):a?!0:(s(),!1)})}refinement(t,r){return this._refinement((n,o)=>t(n)?!0:(o.addIssue(typeof r=="function"?r(n,o):r),!1))}_refinement(t){return new lt({schema:this,typeName:D.ZodEffects,effect:{type:"refinement",refinement:t}})}superRefine(t){return this._refinement(t)}constructor(t){this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return ut.create(this,this._def)}nullable(){return jt.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Bt.create(this)}promise(){return mr.create(this,this._def)}or(t){return Cr.create([this,t],this._def)}and(t){return Ur.create(this,t,this._def)}transform(t){return new lt({...L(this._def),schema:this,typeName:D.ZodEffects,effect:{type:"transform",transform:t}})}default(t){let r=typeof t=="function"?t:()=>t;return new Vr({...L(this._def),innerType:this,defaultValue:r,typeName:D.ZodDefault})}brand(){return new gi({typeName:D.ZodBranded,type:this,...L(this._def)})}catch(t){let r=typeof t=="function"?t:()=>t;return new Jr({...L(this._def),innerType:this,catchValue:r,typeName:D.ZodCatch})}describe(t){let r=this.constructor;return new r({...this._def,description:t})}pipe(t){return vi.create(this,t)}readonly(){return Wr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},_$=/^c[^\s-]{8,}$/i,y$=/^[0-9a-z]+$/,$$=/^[0-9A-HJKMNP-TV-Z]{26}$/i,b$=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,x$=/^[a-z0-9_-]{21}$/i,k$=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,S$=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,w$=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,z$="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Us,I$=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,E$=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,T$=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,P$=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,O$=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,j$=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Zf="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",D$=new RegExp(`^${Zf}$`);function Lf(e){let t="[0-5]\\d";e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision==null&&(t=`${t}(\\.\\d+)?`);let r=e.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${t})${r}`}function N$(e){return new RegExp(`^${Lf(e)}$`)}function R$(e){let t=`${Zf}T${Lf(e)}`,r=[];return r.push(e.local?"Z?":"Z"),e.offset&&r.push("([+-]\\d{2}:?\\d{2})"),t=`${t}(${r.join("|")})`,new RegExp(`^${t}$`)}function A$(e,t){return!!((t==="v4"||!t)&&I$.test(e)||(t==="v6"||!t)&&T$.test(e))}function M$(e,t){if(!k$.test(e))return!1;try{let[r]=e.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),o=JSON.parse(atob(n));return!(typeof o!="object"||o===null||"typ"in o&&o?.typ!=="JWT"||!o.alg||t&&o.alg!==t)}catch{return!1}}function C$(e,t){return!!((t==="v4"||!t)&&E$.test(e)||(t==="v6"||!t)&&P$.test(e))}var Rr=class e extends K{_parse(t){if(this._def.coerce&&(t.data=String(t.data)),this._getType(t)!==w.string){let i=this._getOrReturnCtx(t);return x(i,{code:y.invalid_type,expected:w.string,received:i.parsedType}),M}let n=new Ee,o;for(let i of this._def.checks)if(i.kind==="min")t.data.lengthi.value&&(o=this._getOrReturnCtx(t,o),x(o,{code:y.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="length"){let a=t.data.length>i.value,s=t.data.lengtht.test(o),{validation:r,code:y.invalid_string,...T.errToObj(n)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",...T.errToObj(t)})}url(t){return this._addCheck({kind:"url",...T.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",...T.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",...T.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",...T.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",...T.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",...T.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",...T.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",...T.errToObj(t)})}base64url(t){return this._addCheck({kind:"base64url",...T.errToObj(t)})}jwt(t){return this._addCheck({kind:"jwt",...T.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",...T.errToObj(t)})}cidr(t){return this._addCheck({kind:"cidr",...T.errToObj(t)})}datetime(t){return typeof t=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:t}):this._addCheck({kind:"datetime",precision:typeof t?.precision>"u"?null:t?.precision,offset:t?.offset??!1,local:t?.local??!1,...T.errToObj(t?.message)})}date(t){return this._addCheck({kind:"date",message:t})}time(t){return typeof t=="string"?this._addCheck({kind:"time",precision:null,message:t}):this._addCheck({kind:"time",precision:typeof t?.precision>"u"?null:t?.precision,...T.errToObj(t?.message)})}duration(t){return this._addCheck({kind:"duration",...T.errToObj(t)})}regex(t,r){return this._addCheck({kind:"regex",regex:t,...T.errToObj(r)})}includes(t,r){return this._addCheck({kind:"includes",value:t,position:r?.position,...T.errToObj(r?.message)})}startsWith(t,r){return this._addCheck({kind:"startsWith",value:t,...T.errToObj(r)})}endsWith(t,r){return this._addCheck({kind:"endsWith",value:t,...T.errToObj(r)})}min(t,r){return this._addCheck({kind:"min",value:t,...T.errToObj(r)})}max(t,r){return this._addCheck({kind:"max",value:t,...T.errToObj(r)})}length(t,r){return this._addCheck({kind:"length",value:t,...T.errToObj(r)})}nonempty(t){return this.min(1,T.errToObj(t))}trim(){return new e({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new e({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new e({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(t=>t.kind==="datetime")}get isDate(){return!!this._def.checks.find(t=>t.kind==="date")}get isTime(){return!!this._def.checks.find(t=>t.kind==="time")}get isDuration(){return!!this._def.checks.find(t=>t.kind==="duration")}get isEmail(){return!!this._def.checks.find(t=>t.kind==="email")}get isURL(){return!!this._def.checks.find(t=>t.kind==="url")}get isEmoji(){return!!this._def.checks.find(t=>t.kind==="emoji")}get isUUID(){return!!this._def.checks.find(t=>t.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(t=>t.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(t=>t.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(t=>t.kind==="cuid2")}get isULID(){return!!this._def.checks.find(t=>t.kind==="ulid")}get isIP(){return!!this._def.checks.find(t=>t.kind==="ip")}get isCIDR(){return!!this._def.checks.find(t=>t.kind==="cidr")}get isBase64(){return!!this._def.checks.find(t=>t.kind==="base64")}get isBase64url(){return!!this._def.checks.find(t=>t.kind==="base64url")}get minLength(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxLength(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.valuenew Rr({checks:[],typeName:D.ZodString,coerce:e?.coerce??!1,...L(e)});function U$(e,t){let r=(e.toString().split(".")[1]||"").length,n=(t.toString().split(".")[1]||"").length,o=r>n?r:n,i=Number.parseInt(e.toFixed(o).replace(".","")),a=Number.parseInt(t.toFixed(o).replace(".",""));return i%a/10**o}var Tn=class e extends K{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(t){if(this._def.coerce&&(t.data=Number(t.data)),this._getType(t)!==w.number){let i=this._getOrReturnCtx(t);return x(i,{code:y.invalid_type,expected:w.number,received:i.parsedType}),M}let n,o=new Ee;for(let i of this._def.checks)i.kind==="int"?X.isInteger(t.data)||(n=this._getOrReturnCtx(t,n),x(n,{code:y.invalid_type,expected:"integer",received:"float",message:i.message}),o.dirty()):i.kind==="min"?(i.inclusive?t.datai.value:t.data>=i.value)&&(n=this._getOrReturnCtx(t,n),x(n,{code:y.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),o.dirty()):i.kind==="multipleOf"?U$(t.data,i.value)!==0&&(n=this._getOrReturnCtx(t,n),x(n,{code:y.not_multiple_of,multipleOf:i.value,message:i.message}),o.dirty()):i.kind==="finite"?Number.isFinite(t.data)||(n=this._getOrReturnCtx(t,n),x(n,{code:y.not_finite,message:i.message}),o.dirty()):X.assertNever(i);return{status:o.value,value:t.data}}gte(t,r){return this.setLimit("min",t,!0,T.toString(r))}gt(t,r){return this.setLimit("min",t,!1,T.toString(r))}lte(t,r){return this.setLimit("max",t,!0,T.toString(r))}lt(t,r){return this.setLimit("max",t,!1,T.toString(r))}setLimit(t,r,n,o){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:r,inclusive:n,message:T.toString(o)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:T.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:T.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:T.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:T.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:T.toString(t)})}multipleOf(t,r){return this._addCheck({kind:"multipleOf",value:t,message:T.toString(r)})}finite(t){return this._addCheck({kind:"finite",message:T.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:T.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:T.toString(t)})}get minValue(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxValue(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.valuet.kind==="int"||t.kind==="multipleOf"&&X.isInteger(t.value))}get isFinite(){let t=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(t===null||n.valuenew Tn({checks:[],typeName:D.ZodNumber,coerce:e?.coerce||!1,...L(e)});var Pn=class e extends K{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(t){if(this._def.coerce)try{t.data=BigInt(t.data)}catch{return this._getInvalidInput(t)}if(this._getType(t)!==w.bigint)return this._getInvalidInput(t);let n,o=new Ee;for(let i of this._def.checks)i.kind==="min"?(i.inclusive?t.datai.value:t.data>=i.value)&&(n=this._getOrReturnCtx(t,n),x(n,{code:y.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),o.dirty()):i.kind==="multipleOf"?t.data%i.value!==BigInt(0)&&(n=this._getOrReturnCtx(t,n),x(n,{code:y.not_multiple_of,multipleOf:i.value,message:i.message}),o.dirty()):X.assertNever(i);return{status:o.value,value:t.data}}_getInvalidInput(t){let r=this._getOrReturnCtx(t);return x(r,{code:y.invalid_type,expected:w.bigint,received:r.parsedType}),M}gte(t,r){return this.setLimit("min",t,!0,T.toString(r))}gt(t,r){return this.setLimit("min",t,!1,T.toString(r))}lte(t,r){return this.setLimit("max",t,!0,T.toString(r))}lt(t,r){return this.setLimit("max",t,!1,T.toString(r))}setLimit(t,r,n,o){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:r,inclusive:n,message:T.toString(o)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}positive(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:T.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:T.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:T.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:T.toString(t)})}multipleOf(t,r){return this._addCheck({kind:"multipleOf",value:t,message:T.toString(r)})}get minValue(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t}get maxValue(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.valuenew Pn({checks:[],typeName:D.ZodBigInt,coerce:e?.coerce??!1,...L(e)});var On=class extends K{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==w.boolean){let n=this._getOrReturnCtx(t);return x(n,{code:y.invalid_type,expected:w.boolean,received:n.parsedType}),M}return Ne(t.data)}};On.create=e=>new On({typeName:D.ZodBoolean,coerce:e?.coerce||!1,...L(e)});var jn=class e extends K{_parse(t){if(this._def.coerce&&(t.data=new Date(t.data)),this._getType(t)!==w.date){let i=this._getOrReturnCtx(t);return x(i,{code:y.invalid_type,expected:w.date,received:i.parsedType}),M}if(Number.isNaN(t.data.getTime())){let i=this._getOrReturnCtx(t);return x(i,{code:y.invalid_date}),M}let n=new Ee,o;for(let i of this._def.checks)i.kind==="min"?t.data.getTime()i.value&&(o=this._getOrReturnCtx(t,o),x(o,{code:y.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),n.dirty()):X.assertNever(i);return{status:n.value,value:new Date(t.data.getTime())}}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}min(t,r){return this._addCheck({kind:"min",value:t.getTime(),message:T.toString(r)})}max(t,r){return this._addCheck({kind:"max",value:t.getTime(),message:T.toString(r)})}get minDate(){let t=null;for(let r of this._def.checks)r.kind==="min"&&(t===null||r.value>t)&&(t=r.value);return t!=null?new Date(t):null}get maxDate(){let t=null;for(let r of this._def.checks)r.kind==="max"&&(t===null||r.valuenew jn({checks:[],coerce:e?.coerce||!1,typeName:D.ZodDate,...L(e)});var Dn=class extends K{_parse(t){if(this._getType(t)!==w.symbol){let n=this._getOrReturnCtx(t);return x(n,{code:y.invalid_type,expected:w.symbol,received:n.parsedType}),M}return Ne(t.data)}};Dn.create=e=>new Dn({typeName:D.ZodSymbol,...L(e)});var Ar=class extends K{_parse(t){if(this._getType(t)!==w.undefined){let n=this._getOrReturnCtx(t);return x(n,{code:y.invalid_type,expected:w.undefined,received:n.parsedType}),M}return Ne(t.data)}};Ar.create=e=>new Ar({typeName:D.ZodUndefined,...L(e)});var Mr=class extends K{_parse(t){if(this._getType(t)!==w.null){let n=this._getOrReturnCtx(t);return x(n,{code:y.invalid_type,expected:w.null,received:n.parsedType}),M}return Ne(t.data)}};Mr.create=e=>new Mr({typeName:D.ZodNull,...L(e)});var Nn=class extends K{constructor(){super(...arguments),this._any=!0}_parse(t){return Ne(t.data)}};Nn.create=e=>new Nn({typeName:D.ZodAny,...L(e)});var Gt=class extends K{constructor(){super(...arguments),this._unknown=!0}_parse(t){return Ne(t.data)}};Gt.create=e=>new Gt({typeName:D.ZodUnknown,...L(e)});var vt=class extends K{_parse(t){let r=this._getOrReturnCtx(t);return x(r,{code:y.invalid_type,expected:w.never,received:r.parsedType}),M}};vt.create=e=>new vt({typeName:D.ZodNever,...L(e)});var Rn=class extends K{_parse(t){if(this._getType(t)!==w.undefined){let n=this._getOrReturnCtx(t);return x(n,{code:y.invalid_type,expected:w.void,received:n.parsedType}),M}return Ne(t.data)}};Rn.create=e=>new Rn({typeName:D.ZodVoid,...L(e)});var Bt=class e extends K{_parse(t){let{ctx:r,status:n}=this._processInputParams(t),o=this._def;if(r.parsedType!==w.array)return x(r,{code:y.invalid_type,expected:w.array,received:r.parsedType}),M;if(o.exactLength!==null){let a=r.data.length>o.exactLength.value,s=r.data.lengtho.maxLength.value&&(x(r,{code:y.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((a,s)=>o.type._parseAsync(new et(r,a,r.path,s)))).then(a=>Ee.mergeArray(n,a));let i=[...r.data].map((a,s)=>o.type._parseSync(new et(r,a,r.path,s)));return Ee.mergeArray(n,i)}get element(){return this._def.type}min(t,r){return new e({...this._def,minLength:{value:t,message:T.toString(r)}})}max(t,r){return new e({...this._def,maxLength:{value:t,message:T.toString(r)}})}length(t,r){return new e({...this._def,exactLength:{value:t,message:T.toString(r)}})}nonempty(t){return this.min(1,t)}};Bt.create=(e,t)=>new Bt({type:e,minLength:null,maxLength:null,exactLength:null,typeName:D.ZodArray,...L(t)});function Nr(e){if(e instanceof He){let t={};for(let r in e.shape){let n=e.shape[r];t[r]=ut.create(Nr(n))}return new He({...e._def,shape:()=>t})}else return e instanceof Bt?new Bt({...e._def,type:Nr(e.element)}):e instanceof ut?ut.create(Nr(e.unwrap())):e instanceof jt?jt.create(Nr(e.unwrap())):e instanceof Ot?Ot.create(e.items.map(t=>Nr(t))):e}var He=class e extends K{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let t=this._def.shape(),r=X.objectKeys(t);return this._cached={shape:t,keys:r},this._cached}_parse(t){if(this._getType(t)!==w.object){let u=this._getOrReturnCtx(t);return x(u,{code:y.invalid_type,expected:w.object,received:u.parsedType}),M}let{status:n,ctx:o}=this._processInputParams(t),{shape:i,keys:a}=this._getCached(),s=[];if(!(this._def.catchall instanceof vt&&this._def.unknownKeys==="strip"))for(let u in o.data)a.includes(u)||s.push(u);let c=[];for(let u of a){let l=i[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new et(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof vt){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of s)c.push({key:{status:"valid",value:l},value:{status:"valid",value:o.data[l]}});else if(u==="strict")s.length>0&&(x(o,{code:y.unrecognized_keys,keys:s}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of s){let d=o.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new et(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,m=await l.value;u.push({key:d,value:m,alwaysSet:l.alwaysSet})}return u}).then(u=>Ee.mergeObjectSync(n,u)):Ee.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(t){return T.errToObj,new e({...this._def,unknownKeys:"strict",...t!==void 0?{errorMap:(r,n)=>{let o=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:T.errToObj(t).message??o}:{message:o}}}:{}})}strip(){return new e({...this._def,unknownKeys:"strip"})}passthrough(){return new e({...this._def,unknownKeys:"passthrough"})}extend(t){return new e({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:D.ZodObject})}setKey(t,r){return this.augment({[t]:r})}catchall(t){return new e({...this._def,catchall:t})}pick(t){let r={};for(let n of X.objectKeys(t))t[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new e({...this._def,shape:()=>r})}omit(t){let r={};for(let n of X.objectKeys(this.shape))t[n]||(r[n]=this.shape[n]);return new e({...this._def,shape:()=>r})}deepPartial(){return Nr(this)}partial(t){let r={};for(let n of X.objectKeys(this.shape)){let o=this.shape[n];t&&!t[n]?r[n]=o:r[n]=o.optional()}return new e({...this._def,shape:()=>r})}required(t){let r={};for(let n of X.objectKeys(this.shape))if(t&&!t[n])r[n]=this.shape[n];else{let i=this.shape[n];for(;i instanceof ut;)i=i._def.innerType;r[n]=i}return new e({...this._def,shape:()=>r})}keyof(){return qf(X.objectKeys(this.shape))}};He.create=(e,t)=>new He({shape:()=>e,unknownKeys:"strip",catchall:vt.create(),typeName:D.ZodObject,...L(t)});He.strictCreate=(e,t)=>new He({shape:()=>e,unknownKeys:"strict",catchall:vt.create(),typeName:D.ZodObject,...L(t)});He.lazycreate=(e,t)=>new He({shape:e,unknownKeys:"strip",catchall:vt.create(),typeName:D.ZodObject,...L(t)});var Cr=class extends K{_parse(t){let{ctx:r}=this._processInputParams(t),n=this._def.options;function o(i){for(let s of i)if(s.result.status==="valid")return s.result;for(let s of i)if(s.result.status==="dirty")return r.common.issues.push(...s.ctx.common.issues),s.result;let a=i.map(s=>new Ke(s.ctx.common.issues));return x(r,{code:y.invalid_union,unionErrors:a}),M}if(r.common.async)return Promise.all(n.map(async i=>{let a={...r,common:{...r.common,issues:[]},parent:null};return{result:await i._parseAsync({data:r.data,path:r.path,parent:a}),ctx:a}})).then(o);{let i,a=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!i&&(i={result:l,ctx:u}),u.common.issues.length&&a.push(u.common.issues)}if(i)return r.common.issues.push(...i.ctx.common.issues),i.result;let s=a.map(c=>new Ke(c));return x(r,{code:y.invalid_union,unionErrors:s}),M}}get options(){return this._def.options}};Cr.create=(e,t)=>new Cr({options:e,typeName:D.ZodUnion,...L(t)});var Pt=e=>e instanceof Zr?Pt(e.schema):e instanceof lt?Pt(e.innerType()):e instanceof Lr?[e.value]:e instanceof qr?e.options:e instanceof Fr?X.objectValues(e.enum):e instanceof Vr?Pt(e._def.innerType):e instanceof Ar?[void 0]:e instanceof Mr?[null]:e instanceof ut?[void 0,...Pt(e.unwrap())]:e instanceof jt?[null,...Pt(e.unwrap())]:e instanceof gi||e instanceof Wr?Pt(e.unwrap()):e instanceof Jr?Pt(e._def.innerType):[],Zs=class e extends K{_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==w.object)return x(r,{code:y.invalid_type,expected:w.object,received:r.parsedType}),M;let n=this.discriminator,o=r.data[n],i=this.optionsMap.get(o);return i?r.common.async?i._parseAsync({data:r.data,path:r.path,parent:r}):i._parseSync({data:r.data,path:r.path,parent:r}):(x(r,{code:y.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),M)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,r,n){let o=new Map;for(let i of r){let a=Pt(i.shape[t]);if(!a.length)throw new Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(let s of a){if(o.has(s))throw new Error(`Discriminator property ${String(t)} has duplicate value ${String(s)}`);o.set(s,i)}}return new e({typeName:D.ZodDiscriminatedUnion,discriminator:t,options:r,optionsMap:o,...L(n)})}};function Ls(e,t){let r=Tt(e),n=Tt(t);if(e===t)return{valid:!0,data:e};if(r===w.object&&n===w.object){let o=X.objectKeys(t),i=X.objectKeys(e).filter(s=>o.indexOf(s)!==-1),a={...e,...t};for(let s of i){let c=Ls(e[s],t[s]);if(!c.valid)return{valid:!1};a[s]=c.data}return{valid:!0,data:a}}else if(r===w.array&&n===w.array){if(e.length!==t.length)return{valid:!1};let o=[];for(let i=0;i{if(Ms(i)||Ms(a))return M;let s=Ls(i.value,a.value);return s.valid?((Cs(i)||Cs(a))&&r.dirty(),{status:r.value,value:s.data}):(x(n,{code:y.invalid_intersection_types}),M)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([i,a])=>o(i,a)):o(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};Ur.create=(e,t,r)=>new Ur({left:e,right:t,typeName:D.ZodIntersection,...L(r)});var Ot=class e extends K{_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==w.array)return x(n,{code:y.invalid_type,expected:w.array,received:n.parsedType}),M;if(n.data.lengththis._def.items.length&&(x(n,{code:y.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let i=[...n.data].map((a,s)=>{let c=this._def.items[s]||this._def.rest;return c?c._parse(new et(n,a,n.path,s)):null}).filter(a=>!!a);return n.common.async?Promise.all(i).then(a=>Ee.mergeArray(r,a)):Ee.mergeArray(r,i)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};Ot.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Ot({items:e,typeName:D.ZodTuple,rest:null,...L(t)})};var qs=class e extends K{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==w.object)return x(n,{code:y.invalid_type,expected:w.object,received:n.parsedType}),M;let o=[],i=this._def.keyType,a=this._def.valueType;for(let s in n.data)o.push({key:i._parse(new et(n,s,n.path,s)),value:a._parse(new et(n,n.data[s],n.path,s)),alwaysSet:s in n.data});return n.common.async?Ee.mergeObjectAsync(r,o):Ee.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(t,r,n){return r instanceof K?new e({keyType:t,valueType:r,typeName:D.ZodRecord,...L(n)}):new e({keyType:Rr.create(),valueType:t,typeName:D.ZodRecord,...L(r)})}},An=class extends K{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==w.map)return x(n,{code:y.invalid_type,expected:w.map,received:n.parsedType}),M;let o=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(([s,c],u)=>({key:o._parse(new et(n,s,n.path,[u,"key"])),value:i._parse(new et(n,c,n.path,[u,"value"]))}));if(n.common.async){let s=new Map;return Promise.resolve().then(async()=>{for(let c of a){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return M;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),s.set(u.value,l.value)}return{status:r.value,value:s}})}else{let s=new Map;for(let c of a){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return M;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),s.set(u.value,l.value)}return{status:r.value,value:s}}}};An.create=(e,t,r)=>new An({valueType:t,keyType:e,typeName:D.ZodMap,...L(r)});var Mn=class e extends K{_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.parsedType!==w.set)return x(n,{code:y.invalid_type,expected:w.set,received:n.parsedType}),M;let o=this._def;o.minSize!==null&&n.data.sizeo.maxSize.value&&(x(n,{code:y.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),r.dirty());let i=this._def.valueType;function a(c){let u=new Set;for(let l of c){if(l.status==="aborted")return M;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let s=[...n.data.values()].map((c,u)=>i._parse(new et(n,c,n.path,u)));return n.common.async?Promise.all(s).then(c=>a(c)):a(s)}min(t,r){return new e({...this._def,minSize:{value:t,message:T.toString(r)}})}max(t,r){return new e({...this._def,maxSize:{value:t,message:T.toString(r)}})}size(t,r){return this.min(t,r).max(t,r)}nonempty(t){return this.min(1,t)}};Mn.create=(e,t)=>new Mn({valueType:e,minSize:null,maxSize:null,typeName:D.ZodSet,...L(t)});var Fs=class e extends K{constructor(){super(...arguments),this.validate=this.implement}_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==w.function)return x(r,{code:y.invalid_type,expected:w.function,received:r.parsedType}),M;function n(s,c){return hi({data:s,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,In(),Ht].filter(u=>!!u),issueData:{code:y.invalid_arguments,argumentsError:c}})}function o(s,c){return hi({data:s,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,In(),Ht].filter(u=>!!u),issueData:{code:y.invalid_return_type,returnTypeError:c}})}let i={errorMap:r.common.contextualErrorMap},a=r.data;if(this._def.returns instanceof mr){let s=this;return Ne(async function(...c){let u=new Ke([]),l=await s._def.args.parseAsync(c,i).catch(p=>{throw u.addIssue(n(c,p)),u}),d=await Reflect.apply(a,this,l);return await s._def.returns._def.type.parseAsync(d,i).catch(p=>{throw u.addIssue(o(d,p)),u})})}else{let s=this;return Ne(function(...c){let u=s._def.args.safeParse(c,i);if(!u.success)throw new Ke([n(c,u.error)]);let l=Reflect.apply(a,this,u.data),d=s._def.returns.safeParse(l,i);if(!d.success)throw new Ke([o(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:Ot.create(t).rest(Gt.create())})}returns(t){return new e({...this._def,returns:t})}implement(t){return this.parse(t)}strictImplement(t){return this.parse(t)}static create(t,r,n){return new e({args:t||Ot.create([]).rest(Gt.create()),returns:r||Gt.create(),typeName:D.ZodFunction,...L(n)})}},Zr=class extends K{get schema(){return this._def.getter()}_parse(t){let{ctx:r}=this._processInputParams(t);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Zr.create=(e,t)=>new Zr({getter:e,typeName:D.ZodLazy,...L(t)});var Lr=class extends K{_parse(t){if(t.data!==this._def.value){let r=this._getOrReturnCtx(t);return x(r,{received:r.data,code:y.invalid_literal,expected:this._def.value}),M}return{status:"valid",value:t.data}}get value(){return this._def.value}};Lr.create=(e,t)=>new Lr({value:e,typeName:D.ZodLiteral,...L(t)});function qf(e,t){return new qr({values:e,typeName:D.ZodEnum,...L(t)})}var qr=class e extends K{_parse(t){if(typeof t.data!="string"){let r=this._getOrReturnCtx(t),n=this._def.values;return x(r,{expected:X.joinValues(n),received:r.parsedType,code:y.invalid_type}),M}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(t.data)){let r=this._getOrReturnCtx(t),n=this._def.values;return x(r,{received:r.data,code:y.invalid_enum_value,options:n}),M}return Ne(t.data)}get options(){return this._def.values}get enum(){let t={};for(let r of this._def.values)t[r]=r;return t}get Values(){let t={};for(let r of this._def.values)t[r]=r;return t}get Enum(){let t={};for(let r of this._def.values)t[r]=r;return t}extract(t,r=this._def){return e.create(t,{...this._def,...r})}exclude(t,r=this._def){return e.create(this.options.filter(n=>!t.includes(n)),{...this._def,...r})}};qr.create=qf;var Fr=class extends K{_parse(t){let r=X.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(t);if(n.parsedType!==w.string&&n.parsedType!==w.number){let o=X.objectValues(r);return x(n,{expected:X.joinValues(o),received:n.parsedType,code:y.invalid_type}),M}if(this._cache||(this._cache=new Set(X.getValidEnumValues(this._def.values))),!this._cache.has(t.data)){let o=X.objectValues(r);return x(n,{received:n.data,code:y.invalid_enum_value,options:o}),M}return Ne(t.data)}get enum(){return this._def.values}};Fr.create=(e,t)=>new Fr({values:e,typeName:D.ZodNativeEnum,...L(t)});var mr=class extends K{unwrap(){return this._def.type}_parse(t){let{ctx:r}=this._processInputParams(t);if(r.parsedType!==w.promise&&r.common.async===!1)return x(r,{code:y.invalid_type,expected:w.promise,received:r.parsedType}),M;let n=r.parsedType===w.promise?r.data:Promise.resolve(r.data);return Ne(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};mr.create=(e,t)=>new mr({type:e,typeName:D.ZodPromise,...L(t)});var lt=class extends K{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===D.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(t){let{status:r,ctx:n}=this._processInputParams(t),o=this._def.effect||null,i={addIssue:a=>{x(n,a),a.fatal?r.abort():r.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),o.type==="preprocess"){let a=o.transform(n.data,i);if(n.common.async)return Promise.resolve(a).then(async s=>{if(r.value==="aborted")return M;let c=await this._def.schema._parseAsync({data:s,path:n.path,parent:n});return c.status==="aborted"?M:c.status==="dirty"?Dr(c.value):r.value==="dirty"?Dr(c.value):c});{if(r.value==="aborted")return M;let s=this._def.schema._parseSync({data:a,path:n.path,parent:n});return s.status==="aborted"?M:s.status==="dirty"?Dr(s.value):r.value==="dirty"?Dr(s.value):s}}if(o.type==="refinement"){let a=s=>{let c=o.refinement(s,i);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return s};if(n.common.async===!1){let s=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?M:(s.status==="dirty"&&r.dirty(),a(s.value),{status:r.value,value:s.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(s=>s.status==="aborted"?M:(s.status==="dirty"&&r.dirty(),a(s.value).then(()=>({status:r.value,value:s.value}))))}if(o.type==="transform")if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!fr(a))return M;let s=o.transform(a.value,i);if(s instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:s}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>fr(a)?Promise.resolve(o.transform(a.value,i)).then(s=>({status:r.value,value:s})):M);X.assertNever(o)}};lt.create=(e,t,r)=>new lt({schema:e,typeName:D.ZodEffects,effect:t,...L(r)});lt.createWithPreprocess=(e,t,r)=>new lt({schema:t,effect:{type:"preprocess",transform:e},typeName:D.ZodEffects,...L(r)});var ut=class extends K{_parse(t){return this._getType(t)===w.undefined?Ne(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};ut.create=(e,t)=>new ut({innerType:e,typeName:D.ZodOptional,...L(t)});var jt=class extends K{_parse(t){return this._getType(t)===w.null?Ne(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}};jt.create=(e,t)=>new jt({innerType:e,typeName:D.ZodNullable,...L(t)});var Vr=class extends K{_parse(t){let{ctx:r}=this._processInputParams(t),n=r.data;return r.parsedType===w.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Vr.create=(e,t)=>new Vr({innerType:e,typeName:D.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,...L(t)});var Jr=class extends K{_parse(t){let{ctx:r}=this._processInputParams(t),n={...r,common:{...r.common,issues:[]}},o=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return En(o)?o.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new Ke(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Ke(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Jr.create=(e,t)=>new Jr({innerType:e,typeName:D.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...L(t)});var Cn=class extends K{_parse(t){if(this._getType(t)!==w.nan){let n=this._getOrReturnCtx(t);return x(n,{code:y.invalid_type,expected:w.nan,received:n.parsedType}),M}return{status:"valid",value:t.data}}};Cn.create=e=>new Cn({typeName:D.ZodNaN,...L(e)});var gi=class extends K{_parse(t){let{ctx:r}=this._processInputParams(t),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},vi=class e extends K{_parse(t){let{status:r,ctx:n}=this._processInputParams(t);if(n.common.async)return(async()=>{let i=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?M:i.status==="dirty"?(r.dirty(),Dr(i.value)):this._def.out._parseAsync({data:i.value,path:n.path,parent:n})})();{let o=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?M:o.status==="dirty"?(r.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:n.path,parent:n})}}static create(t,r){return new e({in:t,out:r,typeName:D.ZodPipeline})}},Wr=class extends K{_parse(t){let r=this._def.innerType._parse(t),n=o=>(fr(o)&&(o.value=Object.freeze(o.value)),o);return En(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Wr.create=(e,t)=>new Wr({innerType:e,typeName:D.ZodReadonly,...L(t)});var XP={object:He.lazycreate},D;(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(D||(D={}));var YP=Rr.create,QP=Tn.create,eO=Cn.create,tO=Pn.create,rO=On.create,nO=jn.create,oO=Dn.create,iO=Ar.create,aO=Mr.create,sO=Nn.create,cO=Gt.create,uO=vt.create,lO=Rn.create,dO=Bt.create,Z$=He.create,pO=He.strictCreate,fO=Cr.create,mO=Zs.create,hO=Ur.create,gO=Ot.create,vO=qs.create,_O=An.create,yO=Mn.create,$O=Fs.create,bO=Zr.create,xO=Lr.create,kO=qr.create,SO=Fr.create,wO=mr.create,zO=lt.create,IO=ut.create,EO=jt.create,TO=lt.createWithPreprocess,PO=vi.create;var Ff=Object.freeze({status:"aborted"});function f(e,t,r){function n(s,c){if(s._zod||Object.defineProperty(s,"_zod",{value:{def:c,constr:a,traits:new Set},enumerable:!1}),s._zod.traits.has(e))return;s._zod.traits.add(e),t(s,c);let u=a.prototype,l=Object.keys(u);for(let d=0;dr?.Parent&&s instanceof r.Parent?!0:s?._zod?.traits?.has(e)}),Object.defineProperty(a,"name",{value:e}),a}var _t=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},hr=class extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}},_i={};function be(e){return e&&Object.assign(_i,e),_i}var $={};wn($,{BIGINT_FORMAT_RANGES:()=>Ys,Class:()=>Js,NUMBER_FORMAT_RANGES:()=>Xs,aborted:()=>er,allowsEval:()=>Hs,assert:()=>K$,assertEqual:()=>F$,assertIs:()=>J$,assertNever:()=>W$,assertNotEqual:()=>V$,assignProp:()=>Yt,base64ToUint8Array:()=>Wf,base64urlToUint8Array:()=>lb,cached:()=>Hr,captureStackTrace:()=>$i,cleanEnum:()=>ub,cleanRegex:()=>Ln,clone:()=>Re,cloneDef:()=>G$,createTransparentProxy:()=>tb,defineLazy:()=>V,esc:()=>yi,escapeRegex:()=>tt,extend:()=>ob,finalizeIssue:()=>qe,floatSafeRemainder:()=>Ws,getElementAtPath:()=>B$,getEnumValues:()=>Zn,getLengthableOrigin:()=>Vn,getParsedType:()=>eb,getSizableOrigin:()=>Fn,hexToUint8Array:()=>pb,isObject:()=>gr,isPlainObject:()=>Qt,issue:()=>Gr,joinValues:()=>N,jsonStringifyReplacer:()=>Kr,merge:()=>ab,mergeDefs:()=>Dt,normalizeParams:()=>k,nullish:()=>Xt,numKeys:()=>Q$,objectClone:()=>H$,omit:()=>nb,optionalKeys:()=>Bs,parsedType:()=>C,partial:()=>sb,pick:()=>rb,prefixIssues:()=>Ge,primitiveTypes:()=>Gs,promiseAllObject:()=>X$,propertyKeyTypes:()=>qn,randomString:()=>Y$,required:()=>cb,safeExtend:()=>ib,shallowClone:()=>Jf,slugify:()=>Ks,stringifyPrimitive:()=>R,uint8ArrayToBase64:()=>Kf,uint8ArrayToBase64url:()=>db,uint8ArrayToHex:()=>fb,unwrapMessage:()=>Un});function F$(e){return e}function V$(e){return e}function J$(e){}function W$(e){throw new Error("Unexpected value in exhaustive check")}function K$(e){}function Zn(e){let t=Object.values(e).filter(n=>typeof n=="number");return Object.entries(e).filter(([n,o])=>t.indexOf(+n)===-1).map(([n,o])=>o)}function N(e,t="|"){return e.map(r=>R(r)).join(t)}function Kr(e,t){return typeof t=="bigint"?t.toString():t}function Hr(e){return{get value(){{let r=e();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Xt(e){return e==null}function Ln(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Ws(e,t){let r=(e.toString().split(".")[1]||"").length,n=t.toString(),o=(n.split(".")[1]||"").length;if(o===0&&/\d?e-\d?/.test(n)){let c=n.match(/\d?e-(\d?)/);c?.[1]&&(o=Number.parseInt(c[1]))}let i=r>o?r:o,a=Number.parseInt(e.toFixed(i).replace(".","")),s=Number.parseInt(t.toFixed(i).replace(".",""));return a%s/10**i}var Vf=Symbol("evaluating");function V(e,t,r){let n;Object.defineProperty(e,t,{get(){if(n!==Vf)return n===void 0&&(n=Vf,n=r()),n},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function H$(e){return Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e))}function Yt(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Dt(...e){let t={};for(let r of e){let n=Object.getOwnPropertyDescriptors(r);Object.assign(t,n)}return Object.defineProperties({},t)}function G$(e){return Dt(e._zod.def)}function B$(e,t){return t?t.reduce((r,n)=>r?.[n],e):e}function X$(e){let t=Object.keys(e),r=t.map(n=>e[n]);return Promise.all(r).then(n=>{let o={};for(let i=0;i{};function gr(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var Hs=Hr(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let e=Function;return new e(""),!0}catch{return!1}});function Qt(e){if(gr(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!="function")return!0;let r=t.prototype;return!(gr(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function Jf(e){return Qt(e)?{...e}:Array.isArray(e)?[...e]:e}function Q$(e){let t=0;for(let r in e)Object.prototype.hasOwnProperty.call(e,r)&&t++;return t}var eb=e=>{let t=typeof e;switch(t){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(e)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(e)?"array":e===null?"null":e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?"promise":typeof Map<"u"&&e instanceof Map?"map":typeof Set<"u"&&e instanceof Set?"set":typeof Date<"u"&&e instanceof Date?"date":typeof File<"u"&&e instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${t}`)}},qn=new Set(["string","number","symbol"]),Gs=new Set(["string","number","bigint","boolean","symbol","undefined"]);function tt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Re(e,t,r){let n=new e._zod.constr(t??e._zod.def);return(!t||r?.parent)&&(n._zod.parent=e),n}function k(e){let t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function tb(e){let t;return new Proxy({},{get(r,n,o){return t??(t=e()),Reflect.get(t,n,o)},set(r,n,o,i){return t??(t=e()),Reflect.set(t,n,o,i)},has(r,n){return t??(t=e()),Reflect.has(t,n)},deleteProperty(r,n){return t??(t=e()),Reflect.deleteProperty(t,n)},ownKeys(r){return t??(t=e()),Reflect.ownKeys(t)},getOwnPropertyDescriptor(r,n){return t??(t=e()),Reflect.getOwnPropertyDescriptor(t,n)},defineProperty(r,n,o){return t??(t=e()),Reflect.defineProperty(t,n,o)}})}function R(e){return typeof e=="bigint"?e.toString()+"n":typeof e=="string"?`"${e}"`:`${e}`}function Bs(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var Xs={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},Ys={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function rb(e,t){let r=e._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");let i=Dt(e._zod.def,{get shape(){let a={};for(let s in t){if(!(s in r.shape))throw new Error(`Unrecognized key: "${s}"`);t[s]&&(a[s]=r.shape[s])}return Yt(this,"shape",a),a},checks:[]});return Re(e,i)}function nb(e,t){let r=e._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");let i=Dt(e._zod.def,{get shape(){let a={...e._zod.def.shape};for(let s in t){if(!(s in r.shape))throw new Error(`Unrecognized key: "${s}"`);t[s]&&delete a[s]}return Yt(this,"shape",a),a},checks:[]});return Re(e,i)}function ob(e,t){if(!Qt(t))throw new Error("Invalid input to extend: expected a plain object");let r=e._zod.def.checks;if(r&&r.length>0){let i=e._zod.def.shape;for(let a in t)if(Object.getOwnPropertyDescriptor(i,a)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let o=Dt(e._zod.def,{get shape(){let i={...e._zod.def.shape,...t};return Yt(this,"shape",i),i}});return Re(e,o)}function ib(e,t){if(!Qt(t))throw new Error("Invalid input to safeExtend: expected a plain object");let r=Dt(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return Yt(this,"shape",n),n}});return Re(e,r)}function ab(e,t){let r=Dt(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return Yt(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:[]});return Re(e,r)}function sb(e,t,r){let o=t._zod.def.checks;if(o&&o.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");let a=Dt(t._zod.def,{get shape(){let s=t._zod.def.shape,c={...s};if(r)for(let u in r){if(!(u in s))throw new Error(`Unrecognized key: "${u}"`);r[u]&&(c[u]=e?new e({type:"optional",innerType:s[u]}):s[u])}else for(let u in s)c[u]=e?new e({type:"optional",innerType:s[u]}):s[u];return Yt(this,"shape",c),c},checks:[]});return Re(t,a)}function cb(e,t,r){let n=Dt(t._zod.def,{get shape(){let o=t._zod.def.shape,i={...o};if(r)for(let a in r){if(!(a in i))throw new Error(`Unrecognized key: "${a}"`);r[a]&&(i[a]=new e({type:"nonoptional",innerType:o[a]}))}else for(let a in o)i[a]=new e({type:"nonoptional",innerType:o[a]});return Yt(this,"shape",i),i}});return Re(t,n)}function er(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function Un(e){return typeof e=="string"?e:e?.message}function qe(e,t,r){let n={...e,path:e.path??[]};if(!e.message){let o=Un(e.inst?._zod.def?.error?.(e))??Un(t?.error?.(e))??Un(r.customError?.(e))??Un(r.localeError?.(e))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,t?.reportInput||delete n.input,n}function Fn(e){return e instanceof Set?"set":e instanceof Map?"map":e instanceof File?"file":"unknown"}function Vn(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function C(e){let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"nan":"number";case"object":{if(e===null)return"null";if(Array.isArray(e))return"array";let r=e;if(r&&Object.getPrototypeOf(r)!==Object.prototype&&"constructor"in r&&r.constructor)return r.constructor.name}}return t}function Gr(...e){let[t,r,n]=e;return typeof t=="string"?{message:t,code:"custom",input:r,inst:n}:{...t}}function ub(e){return Object.entries(e).filter(([t,r])=>Number.isNaN(Number.parseInt(t,10))).map(t=>t[1])}function Wf(e){let t=atob(e),r=new Uint8Array(t.length);for(let n=0;nt.toString(16).padStart(2,"0")).join("")}var Js=class{constructor(...t){}};var Hf=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,Kr,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},bi=f("$ZodError",Hf),Jn=f("$ZodError",Hf,{Parent:Error});function xi(e,t=r=>r.message){let r={},n=[];for(let o of e.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(t(o))):n.push(t(o));return{formErrors:n,fieldErrors:r}}function ki(e,t=r=>r.message){let r={_errors:[]},n=o=>{for(let i of o.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(a=>n({issues:a}));else if(i.code==="invalid_key")n({issues:i.issues});else if(i.code==="invalid_element")n({issues:i.issues});else if(i.path.length===0)r._errors.push(t(i));else{let a=r,s=0;for(;s(t,r,n,o)=>{let i=n?Object.assign(n,{async:!1}):{async:!1},a=t._zod.run({value:r,issues:[]},i);if(a instanceof Promise)throw new _t;if(a.issues.length){let s=new(o?.Err??e)(a.issues.map(c=>qe(c,i,be())));throw $i(s,o?.callee),s}return a.value},Kn=Wn(Jn),Hn=e=>async(t,r,n,o)=>{let i=n?Object.assign(n,{async:!0}):{async:!0},a=t._zod.run({value:r,issues:[]},i);if(a instanceof Promise&&(a=await a),a.issues.length){let s=new(o?.Err??e)(a.issues.map(c=>qe(c,i,be())));throw $i(s,o?.callee),s}return a.value},Gn=Hn(Jn),Bn=e=>(t,r,n)=>{let o=n?{...n,async:!1}:{async:!1},i=t._zod.run({value:r,issues:[]},o);if(i instanceof Promise)throw new _t;return i.issues.length?{success:!1,error:new(e??bi)(i.issues.map(a=>qe(a,o,be())))}:{success:!0,data:i.value}},Br=Bn(Jn),Xn=e=>async(t,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},i=t._zod.run({value:r,issues:[]},o);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new e(i.issues.map(a=>qe(a,o,be())))}:{success:!0,data:i.value}},Yn=Xn(Jn),Gf=e=>(t,r,n)=>{let o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Wn(e)(t,r,o)};var Bf=e=>(t,r,n)=>Wn(e)(t,r,n);var Xf=e=>async(t,r,n)=>{let o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Hn(e)(t,r,o)};var Yf=e=>async(t,r,n)=>Hn(e)(t,r,n);var Qf=e=>(t,r,n)=>{let o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Bn(e)(t,r,o)};var em=e=>(t,r,n)=>Bn(e)(t,r,n);var tm=e=>async(t,r,n)=>{let o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Xn(e)(t,r,o)};var rm=e=>async(t,r,n)=>Xn(e)(t,r,n);var rt={};wn(rt,{base64:()=>mc,base64url:()=>Si,bigint:()=>$c,boolean:()=>xc,browserEmail:()=>xb,cidrv4:()=>pc,cidrv6:()=>fc,cuid:()=>Qs,cuid2:()=>ec,date:()=>gc,datetime:()=>_c,domain:()=>wb,duration:()=>ic,e164:()=>hc,email:()=>sc,emoji:()=>cc,extendedDuration:()=>hb,guid:()=>ac,hex:()=>zb,hostname:()=>Sb,html5Email:()=>yb,idnEmail:()=>bb,integer:()=>bc,ipv4:()=>uc,ipv6:()=>lc,ksuid:()=>nc,lowercase:()=>wc,mac:()=>dc,md5_base64:()=>Eb,md5_base64url:()=>Tb,md5_hex:()=>Ib,nanoid:()=>oc,null:()=>kc,number:()=>wi,rfc5322Email:()=>$b,sha1_base64:()=>Ob,sha1_base64url:()=>jb,sha1_hex:()=>Pb,sha256_base64:()=>Nb,sha256_base64url:()=>Rb,sha256_hex:()=>Db,sha384_base64:()=>Mb,sha384_base64url:()=>Cb,sha384_hex:()=>Ab,sha512_base64:()=>Zb,sha512_base64url:()=>Lb,sha512_hex:()=>Ub,string:()=>yc,time:()=>vc,ulid:()=>tc,undefined:()=>Sc,unicodeEmail:()=>nm,uppercase:()=>zc,uuid:()=>vr,uuid4:()=>gb,uuid6:()=>vb,uuid7:()=>_b,xid:()=>rc});var Qs=/^[cC][^\s-]{8,}$/,ec=/^[0-9a-z]+$/,tc=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,rc=/^[0-9a-vA-V]{20}$/,nc=/^[A-Za-z0-9]{27}$/,oc=/^[a-zA-Z0-9_-]{21}$/,ic=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,hb=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,ac=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,vr=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,gb=vr(4),vb=vr(6),_b=vr(7),sc=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,yb=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,$b=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,nm=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,bb=nm,xb=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,kb="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function cc(){return new RegExp(kb,"u")}var uc=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,lc=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,dc=e=>{let t=tt(e??":");return new RegExp(`^(?:[0-9A-F]{2}${t}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${t}){5}[0-9a-f]{2}$`)},pc=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,fc=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,mc=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Si=/^[A-Za-z0-9_-]*$/,Sb=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,wb=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,hc=/^\+[1-9]\d{6,14}$/,om="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",gc=new RegExp(`^${om}$`);function im(e){let t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function vc(e){return new RegExp(`^${im(e)}$`)}function _c(e){let t=im({precision:e.precision}),r=["Z"];e.local&&r.push(""),e.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let n=`${t}(?:${r.join("|")})`;return new RegExp(`^${om}T(?:${n})$`)}var yc=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},$c=/^-?\d+n?$/,bc=/^-?\d+$/,wi=/^-?\d+(?:\.\d+)?$/,xc=/^(?:true|false)$/i,kc=/^null$/i;var Sc=/^undefined$/i;var wc=/^[^A-Z]*$/,zc=/^[^a-z]*$/,zb=/^[0-9a-fA-F]*$/;function Qn(e,t){return new RegExp(`^[A-Za-z0-9+/]{${e}}${t}$`)}function eo(e){return new RegExp(`^[A-Za-z0-9_-]{${e}}$`)}var Ib=/^[0-9a-fA-F]{32}$/,Eb=Qn(22,"=="),Tb=eo(22),Pb=/^[0-9a-fA-F]{40}$/,Ob=Qn(27,"="),jb=eo(27),Db=/^[0-9a-fA-F]{64}$/,Nb=Qn(43,"="),Rb=eo(43),Ab=/^[0-9a-fA-F]{96}$/,Mb=Qn(64,""),Cb=eo(64),Ub=/^[0-9a-fA-F]{128}$/,Zb=Qn(86,"=="),Lb=eo(86);var se=f("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),sm={number:"number",bigint:"bigint",object:"date"},Ic=f("$ZodCheckLessThan",(e,t)=>{se.init(e,t);let r=sm[typeof t.value];e._zod.onattach.push(n=>{let o=n._zod.bag,i=(t.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value{(t.inclusive?n.value<=t.value:n.value{se.init(e,t);let r=sm[typeof t.value];e._zod.onattach.push(n=>{let o=n._zod.bag,i=(t.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>i&&(t.inclusive?o.minimum=t.value:o.exclusiveMinimum=t.value)}),e._zod.check=n=>{(t.inclusive?n.value>=t.value:n.value>t.value)||n.issues.push({origin:r,code:"too_small",minimum:typeof t.value=="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),cm=f("$ZodCheckMultipleOf",(e,t)=>{se.init(e,t),e._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=r=>{if(typeof r.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%t.value===BigInt(0):Ws(r.value,t.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:t.value,input:r.value,inst:e,continue:!t.abort})}}),um=f("$ZodCheckNumberFormat",(e,t)=>{se.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[o,i]=Xs[t.format];e._zod.onattach.push(a=>{let s=a._zod.bag;s.format=t.format,s.minimum=o,s.maximum=i,r&&(s.pattern=bc)}),e._zod.check=a=>{let s=a.value;if(r){if(!Number.isInteger(s)){a.issues.push({expected:n,format:t.format,code:"invalid_type",continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?a.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort}):a.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort});return}}si&&a.issues.push({origin:"number",input:s,code:"too_big",maximum:i,inclusive:!0,inst:e,continue:!t.abort})}}),lm=f("$ZodCheckBigIntFormat",(e,t)=>{se.init(e,t);let[r,n]=Ys[t.format];e._zod.onattach.push(o=>{let i=o._zod.bag;i.format=t.format,i.minimum=r,i.maximum=n}),e._zod.check=o=>{let i=o.value;in&&o.issues.push({origin:"bigint",input:i,code:"too_big",maximum:n,inclusive:!0,inst:e,continue:!t.abort})}}),dm=f("$ZodCheckMaxSize",(e,t)=>{var r;se.init(e,t),(r=e._zod.def).when??(r.when=n=>{let o=n.value;return!Xt(o)&&o.size!==void 0}),e._zod.onattach.push(n=>{let o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum{let o=n.value;o.size<=t.maximum||n.issues.push({origin:Fn(o),code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),pm=f("$ZodCheckMinSize",(e,t)=>{var r;se.init(e,t),(r=e._zod.def).when??(r.when=n=>{let o=n.value;return!Xt(o)&&o.size!==void 0}),e._zod.onattach.push(n=>{let o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>o&&(n._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let o=n.value;o.size>=t.minimum||n.issues.push({origin:Fn(o),code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),fm=f("$ZodCheckSizeEquals",(e,t)=>{var r;se.init(e,t),(r=e._zod.def).when??(r.when=n=>{let o=n.value;return!Xt(o)&&o.size!==void 0}),e._zod.onattach.push(n=>{let o=n._zod.bag;o.minimum=t.size,o.maximum=t.size,o.size=t.size}),e._zod.check=n=>{let o=n.value,i=o.size;if(i===t.size)return;let a=i>t.size;n.issues.push({origin:Fn(o),...a?{code:"too_big",maximum:t.size}:{code:"too_small",minimum:t.size},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),mm=f("$ZodCheckMaxLength",(e,t)=>{var r;se.init(e,t),(r=e._zod.def).when??(r.when=n=>{let o=n.value;return!Xt(o)&&o.length!==void 0}),e._zod.onattach.push(n=>{let o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum{let o=n.value;if(o.length<=t.maximum)return;let a=Vn(o);n.issues.push({origin:a,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),hm=f("$ZodCheckMinLength",(e,t)=>{var r;se.init(e,t),(r=e._zod.def).when??(r.when=n=>{let o=n.value;return!Xt(o)&&o.length!==void 0}),e._zod.onattach.push(n=>{let o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>o&&(n._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let o=n.value;if(o.length>=t.minimum)return;let a=Vn(o);n.issues.push({origin:a,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),gm=f("$ZodCheckLengthEquals",(e,t)=>{var r;se.init(e,t),(r=e._zod.def).when??(r.when=n=>{let o=n.value;return!Xt(o)&&o.length!==void 0}),e._zod.onattach.push(n=>{let o=n._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=n=>{let o=n.value,i=o.length;if(i===t.length)return;let a=Vn(o),s=i>t.length;n.issues.push({origin:a,...s?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),to=f("$ZodCheckStringFormat",(e,t)=>{var r,n;se.init(e,t),e._zod.onattach.push(o=>{let i=o._zod.bag;i.format=t.format,t.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(t.pattern))}),t.pattern?(r=e._zod).check??(r.check=o=>{t.pattern.lastIndex=0,!t.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(n=e._zod).check??(n.check=()=>{})}),vm=f("$ZodCheckRegex",(e,t)=>{to.init(e,t),e._zod.check=r=>{t.pattern.lastIndex=0,!t.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),_m=f("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=wc),to.init(e,t)}),ym=f("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=zc),to.init(e,t)}),$m=f("$ZodCheckIncludes",(e,t)=>{se.init(e,t);let r=tt(t.includes),n=new RegExp(typeof t.position=="number"?`^.{${t.position}}${r}`:r);t.pattern=n,e._zod.onattach.push(o=>{let i=o._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),e._zod.check=o=>{o.value.includes(t.includes,t.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),bm=f("$ZodCheckStartsWith",(e,t)=>{se.init(e,t);let r=new RegExp(`^${tt(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),xm=f("$ZodCheckEndsWith",(e,t)=>{se.init(e,t);let r=new RegExp(`.*${tt(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});function am(e,t,r){e.issues.length&&t.issues.push(...Ge(r,e.issues))}var km=f("$ZodCheckProperty",(e,t)=>{se.init(e,t),e._zod.check=r=>{let n=t.schema._zod.run({value:r.value[t.property],issues:[]},{});if(n instanceof Promise)return n.then(o=>am(o,r,t.property));am(n,r,t.property)}}),Sm=f("$ZodCheckMimeType",(e,t)=>{se.init(e,t);let r=new Set(t.mime);e._zod.onattach.push(n=>{n._zod.bag.mime=t.mime}),e._zod.check=n=>{r.has(n.value.type)||n.issues.push({code:"invalid_value",values:t.mime,input:n.value.type,inst:e,continue:!t.abort})}}),wm=f("$ZodCheckOverwrite",(e,t)=>{se.init(e,t),e._zod.check=r=>{r.value=t.tx(r.value)}});var zi=class{constructor(t=[]){this.content=[],this.indent=0,this&&(this.args=t)}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}let n=t.split(` -`).filter(a=>a),o=Math.min(...n.map(a=>a.length-a.trimStart().length)),i=n.map(a=>a.slice(o)).map(a=>" ".repeat(this.indent*2)+a);for(let a of i)this.content.push(a)}compile(){let t=Function,r=this?.args,o=[...(this?.content??[""]).map(i=>` ${i}`)];return new t(...r,o.join(` -`))}};var Im={major:4,minor:3,patch:4};var Z=f("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Im;let n=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&n.unshift(e);for(let o of n)for(let i of o._zod.onattach)i(e);if(n.length===0)(r=e._zod).deferred??(r.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let o=(a,s,c)=>{let u=er(a),l;for(let d of s){if(d._zod.def.when){if(!d._zod.def.when(a))continue}else if(u)continue;let m=a.issues.length,p=d._zod.check(a);if(p instanceof Promise&&c?.async===!1)throw new _t;if(l||p instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await p,a.issues.length!==m&&(u||(u=er(a,m)))});else{if(a.issues.length===m)continue;u||(u=er(a,m))}}return l?l.then(()=>a):a},i=(a,s,c)=>{if(er(a))return a.aborted=!0,a;let u=o(s,n,c);if(u instanceof Promise){if(c.async===!1)throw new _t;return u.then(l=>e._zod.parse(l,c))}return e._zod.parse(u,c)};e._zod.run=(a,s)=>{if(s.skipChecks)return e._zod.parse(a,s);if(s.direction==="backward"){let u=e._zod.parse({value:a.value,issues:[]},{...s,skipChecks:!0});return u instanceof Promise?u.then(l=>i(l,a,s)):i(u,a,s)}let c=e._zod.parse(a,s);if(c instanceof Promise){if(s.async===!1)throw new _t;return c.then(u=>o(u,n,s))}return o(c,n,s)}}V(e,"~standard",()=>({validate:o=>{try{let i=Br(e,o);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return Yn(e,o).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}))}),_r=f("$ZodString",(e,t)=>{Z.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??yc(e._zod.bag),e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:e}),r}}),oe=f("$ZodStringFormat",(e,t)=>{to.init(e,t),_r.init(e,t)}),Pc=f("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=ac),oe.init(e,t)}),Oc=f("$ZodUUID",(e,t)=>{if(t.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=vr(n))}else t.pattern??(t.pattern=vr());oe.init(e,t)}),jc=f("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=sc),oe.init(e,t)}),Dc=f("$ZodURL",(e,t)=>{oe.init(e,t),e._zod.check=r=>{try{let n=r.value.trim(),o=new URL(n);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:r.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:r.value,inst:e,continue:!t.abort})),t.normalize?r.value=o.href:r.value=n;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),Nc=f("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=cc()),oe.init(e,t)}),Rc=f("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=oc),oe.init(e,t)}),Ac=f("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Qs),oe.init(e,t)}),Mc=f("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=ec),oe.init(e,t)}),Cc=f("$ZodULID",(e,t)=>{t.pattern??(t.pattern=tc),oe.init(e,t)}),Uc=f("$ZodXID",(e,t)=>{t.pattern??(t.pattern=rc),oe.init(e,t)}),Zc=f("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=nc),oe.init(e,t)}),Lc=f("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=_c(t)),oe.init(e,t)}),qc=f("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=gc),oe.init(e,t)}),Fc=f("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=vc(t)),oe.init(e,t)}),Vc=f("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=ic),oe.init(e,t)}),Jc=f("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=uc),oe.init(e,t),e._zod.bag.format="ipv4"}),Wc=f("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=lc),oe.init(e,t),e._zod.bag.format="ipv6",e._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}}}),Kc=f("$ZodMAC",(e,t)=>{t.pattern??(t.pattern=dc(t.delimiter)),oe.init(e,t),e._zod.bag.format="mac"}),Hc=f("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=pc),oe.init(e,t)}),Gc=f("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=fc),oe.init(e,t),e._zod.check=r=>{let n=r.value.split("/");try{if(n.length!==2)throw new Error;let[o,i]=n;if(!i)throw new Error;let a=Number(i);if(`${a}`!==i)throw new Error;if(a<0||a>128)throw new Error;new URL(`http://[${o}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}}});function Um(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var Bc=f("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=mc),oe.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=r=>{Um(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}});function qb(e){if(!Si.test(e))return!1;let t=e.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return Um(r)}var Xc=f("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Si),oe.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=r=>{qb(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),Yc=f("$ZodE164",(e,t)=>{t.pattern??(t.pattern=hc),oe.init(e,t)});function Fb(e,t=null){try{let r=e.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let o=JSON.parse(atob(n));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||t&&(!("alg"in o)||o.alg!==t))}catch{return!1}}var Qc=f("$ZodJWT",(e,t)=>{oe.init(e,t),e._zod.check=r=>{Fb(r.value,t.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}}),eu=f("$ZodCustomStringFormat",(e,t)=>{oe.init(e,t),e._zod.check=r=>{t.fn(r.value)||r.issues.push({code:"invalid_format",format:t.format,input:r.value,inst:e,continue:!t.abort})}}),ji=f("$ZodNumber",(e,t)=>{Z.init(e,t),e._zod.pattern=e._zod.bag.pattern??wi,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=Number(r.value)}catch{}let o=r.value;if(typeof o=="number"&&!Number.isNaN(o)&&Number.isFinite(o))return r;let i=typeof o=="number"?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...i?{received:i}:{}}),r}}),tu=f("$ZodNumberFormat",(e,t)=>{um.init(e,t),ji.init(e,t)}),ro=f("$ZodBoolean",(e,t)=>{Z.init(e,t),e._zod.pattern=xc,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=!!r.value}catch{}let o=r.value;return typeof o=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),r}}),Di=f("$ZodBigInt",(e,t)=>{Z.init(e,t),e._zod.pattern=$c,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=BigInt(r.value)}catch{}return typeof r.value=="bigint"||r.issues.push({expected:"bigint",code:"invalid_type",input:r.value,inst:e}),r}}),ru=f("$ZodBigIntFormat",(e,t)=>{lm.init(e,t),Di.init(e,t)}),nu=f("$ZodSymbol",(e,t)=>{Z.init(e,t),e._zod.parse=(r,n)=>{let o=r.value;return typeof o=="symbol"||r.issues.push({expected:"symbol",code:"invalid_type",input:o,inst:e}),r}}),ou=f("$ZodUndefined",(e,t)=>{Z.init(e,t),e._zod.pattern=Sc,e._zod.values=new Set([void 0]),e._zod.optin="optional",e._zod.optout="optional",e._zod.parse=(r,n)=>{let o=r.value;return typeof o>"u"||r.issues.push({expected:"undefined",code:"invalid_type",input:o,inst:e}),r}}),iu=f("$ZodNull",(e,t)=>{Z.init(e,t),e._zod.pattern=kc,e._zod.values=new Set([null]),e._zod.parse=(r,n)=>{let o=r.value;return o===null||r.issues.push({expected:"null",code:"invalid_type",input:o,inst:e}),r}}),au=f("$ZodAny",(e,t)=>{Z.init(e,t),e._zod.parse=r=>r}),su=f("$ZodUnknown",(e,t)=>{Z.init(e,t),e._zod.parse=r=>r}),cu=f("$ZodNever",(e,t)=>{Z.init(e,t),e._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)}),uu=f("$ZodVoid",(e,t)=>{Z.init(e,t),e._zod.parse=(r,n)=>{let o=r.value;return typeof o>"u"||r.issues.push({expected:"void",code:"invalid_type",input:o,inst:e}),r}}),lu=f("$ZodDate",(e,t)=>{Z.init(e,t),e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=new Date(r.value)}catch{}let o=r.value,i=o instanceof Date;return i&&!Number.isNaN(o.getTime())||r.issues.push({expected:"date",code:"invalid_type",input:o,...i?{received:"Invalid Date"}:{},inst:e}),r}});function Em(e,t,r){e.issues.length&&t.issues.push(...Ge(r,e.issues)),t.value[r]=e.value}var du=f("$ZodArray",(e,t)=>{Z.init(e,t),e._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),r;r.value=Array(o.length);let i=[];for(let a=0;aEm(u,r,a))):Em(c,r,a)}return i.length?Promise.all(i).then(()=>r):r}});function Oi(e,t,r,n,o){if(e.issues.length){if(o&&!(r in n))return;t.issues.push(...Ge(r,e.issues))}e.value===void 0?r in n&&(t.value[r]=void 0):t.value[r]=e.value}function Zm(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${n}": expected a Zod schema`);let r=Bs(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(r)}}function Lm(e,t,r,n,o,i){let a=[],s=o.keySet,c=o.catchall._zod,u=c.def.type,l=c.optout==="optional";for(let d in t){if(s.has(d))continue;if(u==="never"){a.push(d);continue}let m=c.run({value:t[d],issues:[]},n);m instanceof Promise?e.push(m.then(p=>Oi(p,r,d,t,l))):Oi(m,r,d,t,l)}return a.length&&r.issues.push({code:"unrecognized_keys",keys:a,input:t,inst:i}),e.length?Promise.all(e).then(()=>r):r}var qm=f("$ZodObject",(e,t)=>{if(Z.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){let s=t.shape;Object.defineProperty(t,"shape",{get:()=>{let c={...s};return Object.defineProperty(t,"shape",{value:c}),c}})}let n=Hr(()=>Zm(t));V(e._zod,"propValues",()=>{let s=t.shape,c={};for(let u in s){let l=s[u]._zod;if(l.values){c[u]??(c[u]=new Set);for(let d of l.values)c[u].add(d)}}return c});let o=gr,i=t.catchall,a;e._zod.parse=(s,c)=>{a??(a=n.value);let u=s.value;if(!o(u))return s.issues.push({expected:"object",code:"invalid_type",input:u,inst:e}),s;s.value={};let l=[],d=a.shape;for(let m of a.keys){let p=d[m],g=p._zod.optout==="optional",h=p._zod.run({value:u[m],issues:[]},c);h instanceof Promise?l.push(h.then(_=>Oi(_,s,m,u,g))):Oi(h,s,m,u,g)}return i?Lm(l,u,s,c,n.value,e):l.length?Promise.all(l).then(()=>s):s}}),Fm=f("$ZodObjectJIT",(e,t)=>{qm.init(e,t);let r=e._zod.parse,n=Hr(()=>Zm(t)),o=m=>{let p=new zi(["shape","payload","ctx"]),g=n.value,h=I=>{let A=yi(I);return`shape[${A}]._zod.run({ value: input[${A}], issues: [] }, ctx)`};p.write("const input = payload.value;");let _=Object.create(null),b=0;for(let I of g.keys)_[I]=`key_${b++}`;p.write("const newResult = {};");for(let I of g.keys){let A=_[I],j=yi(I),de=m[I]?._zod?.optout==="optional";p.write(`const ${A} = ${h(I)};`),de?p.write(` - if (${A}.issues.length) { - if (${j} in input) { - payload.issues = payload.issues.concat(${A}.issues.map(iss => ({ + depsCount: ${e}, + deps: ${r}}`};var IX={keyword:"dependencies",type:"object",schemaType:"object",error:Hi.error,code(t){let[e,r]=RX(t);bN(t,e),SN(t,r)}};function RX({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let i=Array.isArray(t[n])?e:r;i[n]=t[n]}return[e,r]}function bN(t,e=t.schema){let{gen:r,data:n,it:i}=t;if(Object.keys(e).length===0)return;let s=r.let("missing");for(let o in e){let a=e[o];if(a.length===0)continue;let c=(0,op.propertyInData)(r,n,o,i.opts.ownProperties);t.setParams({property:o,depsCount:a.length,deps:a.join(", ")}),i.allErrors?r.if(c,()=>{for(let u of a)(0,op.checkReportMissingProp)(t,u)}):(r.if((0,wE._)`${c} && (${(0,op.checkMissingProp)(t,a,s)})`),(0,op.reportMissingProp)(t,s),r.else())}}Hi.validatePropertyDeps=bN;function SN(t,e=t.schema){let{gen:r,data:n,keyword:i,it:s}=t,o=r.name("valid");for(let a in e)(0,$X.alwaysValidSchema)(s,e[a])||(r.if((0,op.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:i,schemaProp:a},o);t.mergeValidEvaluated(c,o)},()=>r.var(o,!0)),t.ok(o))}Hi.validateSchemaDeps=SN;Hi.default=IX});var EN=$(EE=>{"use strict";Object.defineProperty(EE,"__esModule",{value:!0});var wN=Ue(),OX=rt(),CX={message:"property name must be valid",params:({params:t})=>(0,wN._)`{propertyName: ${t.propertyName}}`},PX={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:CX,code(t){let{gen:e,schema:r,data:n,it:i}=t;if((0,OX.alwaysValidSchema)(i,r))return;let s=e.name("valid");e.forIn("key",n,o=>{t.setParams({propertyName:o}),t.subschema({keyword:"propertyNames",data:o,dataTypes:["string"],propertyName:o,compositeRule:!0},s),e.if((0,wN.not)(s),()=>{t.error(!0),i.allErrors||e.break()})}),t.ok(s)}};EE.default=PX});var TE=$(kE=>{"use strict";Object.defineProperty(kE,"__esModule",{value:!0});var mg=Vn(),gi=Ue(),AX=Ts(),hg=rt(),NX={message:"must NOT have additional properties",params:({params:t})=>(0,gi._)`{additionalProperty: ${t.additionalProperty}}`},MX={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:NX,code(t){let{gen:e,schema:r,parentSchema:n,data:i,errsCount:s,it:o}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=o;if(o.props=!0,c.removeAdditional!=="all"&&(0,hg.alwaysValidSchema)(o,r))return;let u=(0,mg.allSchemaProperties)(n.properties),l=(0,mg.allSchemaProperties)(n.patternProperties);d(),t.ok((0,gi._)`${s} === ${AX.default.errors}`);function d(){e.forIn("key",i,g=>{!u.length&&!l.length?m(g):e.if(p(g),()=>m(g))})}function p(g){let v;if(u.length>8){let y=(0,hg.schemaRefOrVal)(o,n.properties,"properties");v=(0,mg.isOwnProperty)(e,y,g)}else u.length?v=(0,gi.or)(...u.map(y=>(0,gi._)`${g} === ${y}`)):v=gi.nil;return l.length&&(v=(0,gi.or)(v,...l.map(y=>(0,gi._)`${(0,mg.usePattern)(t,y)}.test(${g})`))),(0,gi.not)(v)}function f(g){e.code((0,gi._)`delete ${i}[${g}]`)}function m(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){f(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,hg.alwaysValidSchema)(o,r)){let v=e.name("valid");c.removeAdditional==="failing"?(h(g,v,!1),e.if((0,gi.not)(v),()=>{t.reset(),f(g)})):(h(g,v),a||e.if((0,gi.not)(v),()=>e.break()))}}function h(g,v,y){let b={keyword:"additionalProperties",dataProp:g,dataPropType:hg.Type.Str};y===!1&&Object.assign(b,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(b,v)}}};kE.default=MX});var $N=$(IE=>{"use strict";Object.defineProperty(IE,"__esModule",{value:!0});var DX=Gd(),kN=Vn(),$E=rt(),TN=TE(),jX={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:i,it:s}=t;s.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&TN.default.code(new DX.KeywordCxt(s,TN.default,"additionalProperties"));let o=(0,kN.allSchemaProperties)(r);for(let d of o)s.definedProperties.add(d);s.opts.unevaluated&&o.length&&s.props!==!0&&(s.props=$E.mergeEvaluated.props(e,(0,$E.toHash)(o),s.props));let a=o.filter(d=>!(0,$E.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let c=e.name("valid");for(let d of a)u(d)?l(d):(e.if((0,kN.propertyInData)(e,i,d,s.opts.ownProperties)),l(d),s.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};IE.default=jX});var CN=$(RE=>{"use strict";Object.defineProperty(RE,"__esModule",{value:!0});var IN=Vn(),gg=Ue(),RN=rt(),ON=rt(),zX={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:i,it:s}=t,{opts:o}=s,a=(0,IN.allSchemaProperties)(r),c=a.filter(h=>(0,RN.alwaysValidSchema)(s,r[h]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=o.strictSchema&&!o.allowMatchingProperties&&i.properties,l=e.name("valid");s.props!==!0&&!(s.props instanceof gg.Name)&&(s.props=(0,ON.evaluatedPropsToName)(e,s.props));let{props:d}=s;p();function p(){for(let h of a)u&&f(h),s.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function f(h){for(let g in u)new RegExp(h).test(g)&&(0,RN.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,g=>{e.if((0,gg._)`${(0,IN.usePattern)(t,h)}.test(${g})`,()=>{let v=c.includes(h);v||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:ON.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,gg._)`${d}[${g}]`,!0):!v&&!s.allErrors&&e.if((0,gg.not)(l),()=>e.break())})})}}};RE.default=zX});var PN=$(OE=>{"use strict";Object.defineProperty(OE,"__esModule",{value:!0});var LX=rt(),UX={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,LX.alwaysValidSchema)(n,r)){t.fail();return}let i=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},i),t.failResult(i,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};OE.default=UX});var AN=$(CE=>{"use strict";Object.defineProperty(CE,"__esModule",{value:!0});var FX=Vn(),qX={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:FX.validateUnion,error:{message:"must match a schema in anyOf"}};CE.default=qX});var NN=$(PE=>{"use strict";Object.defineProperty(PE,"__esModule",{value:!0});var vg=Ue(),HX=rt(),ZX={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,vg._)`{passingSchemas: ${t.passing}}`},BX={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:ZX,code(t){let{gen:e,schema:r,parentSchema:n,it:i}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(i.opts.discriminator&&n.discriminator)return;let s=r,o=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(o,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let p;(0,HX.alwaysValidSchema)(i,l)?e.var(c,!0):p=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,vg._)`${c} && ${o}`).assign(o,!1).assign(a,(0,vg._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(o,!0),e.assign(a,d),p&&t.mergeEvaluated(p,vg.Name)})})}}};PE.default=BX});var MN=$(AE=>{"use strict";Object.defineProperty(AE,"__esModule",{value:!0});var GX=rt(),WX={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let i=e.name("valid");r.forEach((s,o)=>{if((0,GX.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:o},i);t.ok(i),t.mergeEvaluated(a)})}};AE.default=WX});var zN=$(NE=>{"use strict";Object.defineProperty(NE,"__esModule",{value:!0});var yg=Ue(),jN=rt(),VX={message:({params:t})=>(0,yg.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,yg._)`{failingKeyword: ${t.ifClause}}`},KX={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:VX,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,jN.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let i=DN(n,"then"),s=DN(n,"else");if(!i&&!s)return;let o=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),i&&s){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(a,u("then",l),u("else",l))}else i?e.if(a,u("then")):e.if((0,yg.not)(a),u("else"));t.pass(o,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let p=t.subschema({keyword:l},a);e.assign(o,a),t.mergeValidEvaluated(p,o),d?e.assign(d,(0,yg._)`${l}`):t.setParams({ifClause:l})}}}};function DN(t,e){let r=t.schema[e];return r!==void 0&&!(0,jN.alwaysValidSchema)(t,r)}NE.default=KX});var LN=$(ME=>{"use strict";Object.defineProperty(ME,"__esModule",{value:!0});var JX=rt(),XX={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,JX.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};ME.default=XX});var UN=$(DE=>{"use strict";Object.defineProperty(DE,"__esModule",{value:!0});var YX=yE(),QX=gN(),eY=_E(),tY=yN(),rY=_N(),nY=xN(),iY=EN(),sY=TE(),oY=$N(),aY=CN(),cY=PN(),uY=AN(),lY=NN(),dY=MN(),pY=zN(),fY=LN();function mY(t=!1){let e=[cY.default,uY.default,lY.default,dY.default,pY.default,fY.default,iY.default,sY.default,nY.default,oY.default,aY.default];return t?e.push(QX.default,tY.default):e.push(YX.default,eY.default),e.push(rY.default),e}DE.default=mY});var FN=$(jE=>{"use strict";Object.defineProperty(jE,"__esModule",{value:!0});var Xt=Ue(),hY={message:({schemaCode:t})=>(0,Xt.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Xt._)`{format: ${t}}`},gY={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:hY,code(t,e){let{gen:r,data:n,$data:i,schema:s,schemaCode:o,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;i?p():f();function p(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,Xt._)`${m}[${o}]`),g=r.let("fType"),v=r.let("format");r.if((0,Xt._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,Xt._)`${h}.type || "string"`).assign(v,(0,Xt._)`${h}.validate`),()=>r.assign(g,(0,Xt._)`"string"`).assign(v,h)),t.fail$data((0,Xt.or)(y(),b()));function y(){return c.strictSchema===!1?Xt.nil:(0,Xt._)`${o} && !${v}`}function b(){let S=l.$async?(0,Xt._)`(${h}.async ? await ${v}(${n}) : ${v}(${n}))`:(0,Xt._)`${v}(${n})`,x=(0,Xt._)`(typeof ${v} == "function" ? ${S} : ${v}.test(${n}))`;return(0,Xt._)`${v} && ${v} !== true && ${g} === ${e} && !${x}`}}function f(){let m=d.formats[s];if(!m){y();return}if(m===!0)return;let[h,g,v]=b(m);h===e&&t.pass(S());function y(){if(c.strictSchema===!1){d.logger.warn(x());return}throw new Error(x());function x(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function b(x){let w=x instanceof RegExp?(0,Xt.regexpCode)(x):c.code.formats?(0,Xt._)`${c.code.formats}${(0,Xt.getProperty)(s)}`:void 0,E=r.scopeValue("formats",{key:s,ref:x,code:w});return typeof x=="object"&&!(x instanceof RegExp)?[x.type||"string",x.validate,(0,Xt._)`${E}.validate`]:["string",x,E]}function S(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Xt._)`await ${v}(${n})`}return typeof g=="function"?(0,Xt._)`${v}(${n})`:(0,Xt._)`${v}.test(${n})`}}}};jE.default=gY});var qN=$(zE=>{"use strict";Object.defineProperty(zE,"__esModule",{value:!0});var vY=FN(),yY=[vY.default];zE.default=yY});var HN=$(Nc=>{"use strict";Object.defineProperty(Nc,"__esModule",{value:!0});Nc.contentVocabulary=Nc.metadataVocabulary=void 0;Nc.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Nc.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var BN=$(LE=>{"use strict";Object.defineProperty(LE,"__esModule",{value:!0});var _Y=YA(),bY=pN(),SY=UN(),xY=qN(),ZN=HN(),wY=[_Y.default,bY.default,(0,SY.default)(),xY.default,ZN.metadataVocabulary,ZN.contentVocabulary];LE.default=wY});var WN=$(_g=>{"use strict";Object.defineProperty(_g,"__esModule",{value:!0});_g.DiscrError=void 0;var GN;(function(t){t.Tag="tag",t.Mapping="mapping"})(GN||(_g.DiscrError=GN={}))});var KN=$(FE=>{"use strict";Object.defineProperty(FE,"__esModule",{value:!0});var Mc=Ue(),UE=WN(),VN=tg(),EY=Wd(),kY=rt(),TY={message:({params:{discrError:t,tagName:e}})=>t===UE.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Mc._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},$Y={keyword:"discriminator",type:"object",schemaType:"object",error:TY,code(t){let{gen:e,data:r,schema:n,parentSchema:i,it:s}=t,{oneOf:o}=i;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!o)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,Mc._)`${r}${(0,Mc.getProperty)(a)}`);e.if((0,Mc._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:UE.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let f=p();e.if(!1);for(let m in f)e.elseIf((0,Mc._)`${u} === ${m}`),e.assign(c,d(f[m]));e.else(),t.error(!1,{discrError:UE.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(f){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:f},m);return t.mergeEvaluated(h,Mc.Name),m}function p(){var f;let m={},h=v(i),g=!0;for(let S=0;S{IY.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var HE=$((Mt,qE)=>{"use strict";Object.defineProperty(Mt,"__esModule",{value:!0});Mt.MissingRefError=Mt.ValidationError=Mt.CodeGen=Mt.Name=Mt.nil=Mt.stringify=Mt.str=Mt._=Mt.KeywordCxt=Mt.Ajv=void 0;var RY=GA(),OY=BN(),CY=KN(),XN=JN(),PY=["/properties"],bg="http://json-schema.org/draft-07/schema",Dc=class extends RY.default{_addVocabularies(){super._addVocabularies(),OY.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(CY.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(XN,PY):XN;this.addMetaSchema(e,bg,!1),this.refs["http://json-schema.org/schema"]=bg}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(bg)?bg:void 0)}};Mt.Ajv=Dc;qE.exports=Mt=Dc;qE.exports.Ajv=Dc;Object.defineProperty(Mt,"__esModule",{value:!0});Mt.default=Dc;var AY=Gd();Object.defineProperty(Mt,"KeywordCxt",{enumerable:!0,get:function(){return AY.KeywordCxt}});var jc=Ue();Object.defineProperty(Mt,"_",{enumerable:!0,get:function(){return jc._}});Object.defineProperty(Mt,"str",{enumerable:!0,get:function(){return jc.str}});Object.defineProperty(Mt,"stringify",{enumerable:!0,get:function(){return jc.stringify}});Object.defineProperty(Mt,"nil",{enumerable:!0,get:function(){return jc.nil}});Object.defineProperty(Mt,"Name",{enumerable:!0,get:function(){return jc.Name}});Object.defineProperty(Mt,"CodeGen",{enumerable:!0,get:function(){return jc.CodeGen}});var NY=Qh();Object.defineProperty(Mt,"ValidationError",{enumerable:!0,get:function(){return NY.default}});var MY=Wd();Object.defineProperty(Mt,"MissingRefError",{enumerable:!0,get:function(){return MY.default}})});var sM=$(Bi=>{"use strict";Object.defineProperty(Bi,"__esModule",{value:!0});Bi.formatNames=Bi.fastFormats=Bi.fullFormats=void 0;function Zi(t,e){return{validate:t,compare:e}}Bi.fullFormats={date:Zi(tM,WE),time:Zi(BE(!0),VE),"date-time":Zi(YN(!0),nM),"iso-time":Zi(BE(),rM),"iso-date-time":Zi(YN(),iM),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:FY,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:VY,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:qY,int32:{type:"number",validate:BY},int64:{type:"number",validate:GY},float:{type:"number",validate:eM},double:{type:"number",validate:eM},password:!0,binary:!0};Bi.fastFormats={...Bi.fullFormats,date:Zi(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,WE),time:Zi(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,VE),"date-time":Zi(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,nM),"iso-time":Zi(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,rM),"iso-date-time":Zi(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,iM),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};Bi.formatNames=Object.keys(Bi.fullFormats);function DY(t){return t%4===0&&(t%100!==0||t%400===0)}var jY=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,zY=[0,31,28,31,30,31,30,31,31,30,31,30,31];function tM(t){let e=jY.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],i=+e[3];return n>=1&&n<=12&&i>=1&&i<=(n===2&&DY(r)?29:zY[n])}function WE(t,e){if(t&&e)return t>e?1:t23||l>59||t&&!a)return!1;if(i<=23&&s<=59&&o<60)return!0;let d=s-l*c,p=i-u*c-(d<0?1:0);return(p===23||p===-1)&&(d===59||d===-1)&&o<61}}function VE(t,e){if(!(t&&e))return;let r=new Date("2020-01-01T"+t).valueOf(),n=new Date("2020-01-01T"+e).valueOf();if(r&&n)return r-n}function rM(t,e){if(!(t&&e))return;let r=ZE.exec(t),n=ZE.exec(e);if(r&&n)return t=r[1]+r[2]+r[3],e=n[1]+n[2]+n[3],t>e?1:t=HY}function GY(t){return Number.isInteger(t)}function eM(){return!0}var WY=/[^\\]\\Z/;function VY(t){if(WY.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var oM=$(zc=>{"use strict";Object.defineProperty(zc,"__esModule",{value:!0});zc.formatLimitDefinition=void 0;var KY=HE(),vi=Ue(),wo=vi.operators,Sg={formatMaximum:{okStr:"<=",ok:wo.LTE,fail:wo.GT},formatMinimum:{okStr:">=",ok:wo.GTE,fail:wo.LT},formatExclusiveMaximum:{okStr:"<",ok:wo.LT,fail:wo.GTE},formatExclusiveMinimum:{okStr:">",ok:wo.GT,fail:wo.LTE}},JY={message:({keyword:t,schemaCode:e})=>(0,vi.str)`should be ${Sg[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,vi._)`{comparison: ${Sg[t].okStr}, limit: ${e}}`};zc.formatLimitDefinition={keyword:Object.keys(Sg),type:"string",schemaType:"string",$data:!0,error:JY,code(t){let{gen:e,data:r,schemaCode:n,keyword:i,it:s}=t,{opts:o,self:a}=s;if(!o.validateFormats)return;let c=new KY.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let p=e.scopeValue("formats",{ref:a.formats,code:o.code.formats}),f=e.const("fmt",(0,vi._)`${p}[${c.schemaCode}]`);t.fail$data((0,vi.or)((0,vi._)`typeof ${f} != "object"`,(0,vi._)`${f} instanceof RegExp`,(0,vi._)`typeof ${f}.compare != "function"`,d(f)))}function l(){let p=c.schema,f=a.formats[p];if(!f||f===!0)return;if(typeof f!="object"||f instanceof RegExp||typeof f.compare!="function")throw new Error(`"${i}": format "${p}" does not define "compare" function`);let m=e.scopeValue("formats",{key:p,ref:f,code:o.code.formats?(0,vi._)`${o.code.formats}${(0,vi.getProperty)(p)}`:void 0});t.fail$data(d(m))}function d(p){return(0,vi._)`${p}.compare(${r}, ${n}) ${Sg[i].fail} 0`}},dependencies:["format"]};var XY=t=>(t.addKeyword(zc.formatLimitDefinition),t);zc.default=XY});var lM=$((ap,uM)=>{"use strict";Object.defineProperty(ap,"__esModule",{value:!0});var Lc=sM(),YY=oM(),KE=Ue(),aM=new KE.Name("fullFormats"),QY=new KE.Name("fastFormats"),JE=(t,e={keywords:!0})=>{if(Array.isArray(e))return cM(t,e,Lc.fullFormats,aM),t;let[r,n]=e.mode==="fast"?[Lc.fastFormats,QY]:[Lc.fullFormats,aM],i=e.formats||Lc.formatNames;return cM(t,i,r,n),e.keywords&&(0,YY.default)(t),t};JE.get=(t,e="full")=>{let n=(e==="fast"?Lc.fastFormats:Lc.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function cM(t,e,r,n){var i,s;(i=(s=t.opts.code).formats)!==null&&i!==void 0||(s.formats=(0,KE._)`require("ajv-formats/dist/formats").${n}`);for(let o of e)t.addFormat(o,r[o])}uM.exports=ap=JE;Object.defineProperty(ap,"__esModule",{value:!0});ap.default=JE});function Ig(t){return process.platform==="win32"?Math.round(t*Ir.WINDOWS_MULTIPLIER):t}var Ir,it,Pn=Ee(()=>{"use strict";Ir={DEFAULT:3e5,HEALTH_CHECK:3e3,POST_SPAWN_WAIT:15e3,READINESS_WAIT:3e4,PORT_IN_USE_WAIT:3e3,WORKER_STARTUP_WAIT:1e3,PRE_RESTART_SETTLE_DELAY:2e3,POWERSHELL_COMMAND:1e4,WINDOWS_MULTIPLIER:1.5},it={SUCCESS:0,FAILURE:1,BLOCKING_ERROR:2,USER_MESSAGE_ONLY:3}});var fM={};Fn(fM,{SettingsDefaultsManager:()=>ye});var Gi,cp,YE,ye,tr=Ee(()=>{"use strict";Gi=require("fs"),cp=require("path"),YE=require("os"),ye=class{static DEFAULTS={CLAUDE_MEM_MODEL:"claude-sonnet-4-6",CLAUDE_MEM_CONTEXT_OBSERVATIONS:"50",CLAUDE_MEM_WORKER_PORT:"37777",CLAUDE_MEM_WORKER_HOST:"127.0.0.1",CLAUDE_MEM_SKIP_TOOLS:"ListMcpResourcesTool,SlashCommand,Skill,TodoWrite,AskUserQuestion",CLAUDE_MEM_PROVIDER:"claude",CLAUDE_MEM_CLAUDE_AUTH_METHOD:"cli",CLAUDE_MEM_GEMINI_API_KEY:"",CLAUDE_MEM_GEMINI_MODEL:"gemini-2.5-flash-lite",CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED:"true",CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES:"20",CLAUDE_MEM_GEMINI_MAX_TOKENS:"100000",CLAUDE_MEM_OPENROUTER_API_KEY:"",CLAUDE_MEM_OPENROUTER_MODEL:"xiaomi/mimo-v2-flash:free",CLAUDE_MEM_OPENROUTER_SITE_URL:"",CLAUDE_MEM_OPENROUTER_APP_NAME:"claude-mem",CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES:"20",CLAUDE_MEM_OPENROUTER_MAX_TOKENS:"100000",CLAUDE_MEM_DATA_DIR:(0,cp.join)((0,YE.homedir)(),".claude-mem"),CLAUDE_MEM_LOG_LEVEL:"INFO",CLAUDE_MEM_PYTHON_VERSION:"3.13",CLAUDE_CODE_PATH:"",CLAUDE_MEM_MODE:"code",CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT:"true",CLAUDE_MEM_CONTEXT_FULL_COUNT:"0",CLAUDE_MEM_CONTEXT_FULL_FIELD:"narrative",CLAUDE_MEM_CONTEXT_SESSION_COUNT:"10",CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY:"true",CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE:"false",CLAUDE_MEM_CONTEXT_SHOW_TERMINAL_OUTPUT:"true",CLAUDE_MEM_FOLDER_CLAUDEMD_ENABLED:"false",CLAUDE_MEM_FOLDER_USE_LOCAL_MD:"false",CLAUDE_MEM_TRANSCRIPTS_ENABLED:"true",CLAUDE_MEM_TRANSCRIPTS_CONFIG_PATH:(0,cp.join)((0,YE.homedir)(),".claude-mem","transcript-watch.json"),CLAUDE_MEM_MAX_CONCURRENT_AGENTS:"2",CLAUDE_MEM_EXCLUDED_PROJECTS:"",CLAUDE_MEM_FOLDER_MD_EXCLUDE:"[]",CLAUDE_MEM_SEMANTIC_INJECT:"false",CLAUDE_MEM_SEMANTIC_INJECT_LIMIT:"5",CLAUDE_MEM_TIER_ROUTING_ENABLED:"true",CLAUDE_MEM_TIER_SIMPLE_MODEL:"haiku",CLAUDE_MEM_TIER_SUMMARY_MODEL:"",CLAUDE_MEM_CHROMA_ENABLED:"true",CLAUDE_MEM_CHROMA_MODE:"local",CLAUDE_MEM_CHROMA_HOST:"127.0.0.1",CLAUDE_MEM_CHROMA_PORT:"8000",CLAUDE_MEM_CHROMA_SSL:"false",CLAUDE_MEM_CHROMA_API_KEY:"",CLAUDE_MEM_CHROMA_TENANT:"default_tenant",CLAUDE_MEM_CHROMA_DATABASE:"default_database"};static getAllDefaults(){return{...this.DEFAULTS}}static get(e){return process.env[e]??this.DEFAULTS[e]}static getInt(e){let r=this.get(e);return parseInt(r,10)}static getBool(e){let r=this.get(e);return r==="true"||r===!0}static applyEnvOverrides(e){let r={...e};for(let n of Object.keys(this.DEFAULTS))process.env[n]!==void 0&&(r[n]=process.env[n]);return r}static loadFromFile(e){try{if(!(0,Gi.existsSync)(e)){let o=this.getAllDefaults();try{let a=(0,cp.dirname)(e);(0,Gi.existsSync)(a)||(0,Gi.mkdirSync)(a,{recursive:!0}),(0,Gi.writeFileSync)(e,JSON.stringify(o,null,2),"utf-8"),console.log("[SETTINGS] Created settings file with defaults:",e)}catch(a){console.warn("[SETTINGS] Failed to create settings file, using in-memory defaults:",e,a)}return this.applyEnvOverrides(o)}let r=(0,Gi.readFileSync)(e,"utf-8"),n=JSON.parse(r),i=n;if(n.env&&typeof n.env=="object"){i=n.env;try{(0,Gi.writeFileSync)(e,JSON.stringify(i,null,2),"utf-8"),console.log("[SETTINGS] Migrated settings file from nested to flat schema:",e)}catch(o){console.warn("[SETTINGS] Failed to auto-migrate settings file:",e,o)}}let s={...this.DEFAULTS};for(let o of Object.keys(this.DEFAULTS))i[o]!==void 0&&(s[o]=i[o]);return this.applyEnvOverrides(s)}catch(r){return console.warn("[SETTINGS] Failed to load settings, using defaults:",e,r),this.applyEnvOverrides(this.getAllDefaults())}}}});var SM={};Fn(SM,{ARCHIVES_DIR:()=>ek,BACKUPS_DIR:()=>yM,CLAUDE_COMMANDS_DIR:()=>_M,CLAUDE_CONFIG_DIR:()=>Rs,CLAUDE_MD_PATH:()=>aQ,CLAUDE_SETTINGS_PATH:()=>oQ,DATA_DIR:()=>pr,DB_PATH:()=>up,LOGS_DIR:()=>gM,MARKETPLACE_ROOT:()=>Eo,MODES_DIR:()=>tk,OBSERVER_SESSIONS_DIR:()=>Og,TRASH_DIR:()=>vM,USER_SETTINGS_PATH:()=>vt,VECTOR_DB_DIR:()=>sQ,createBackupFilename:()=>mQ,ensureAllClaudeDirs:()=>pQ,ensureAllDataDirs:()=>lQ,ensureDir:()=>Lr,ensureModesDir:()=>dQ,getCurrentProjectName:()=>bM,getPackageCommandsDir:()=>fQ,getPackageRoot:()=>gn,getProjectArchiveDir:()=>cQ,getWorkerSocketPath:()=>uQ});function rQ(){return typeof __dirname<"u"?__dirname:(0,dt.dirname)((0,hM.fileURLToPath)(hQ.url))}function iQ(){if(process.env.CLAUDE_MEM_DATA_DIR)return process.env.CLAUDE_MEM_DATA_DIR;let t=(0,dt.join)((0,QE.homedir)(),".claude-mem"),e=(0,dt.join)(t,"settings.json");try{if((0,Rg.existsSync)(e)){let{readFileSync:r}=require("fs"),n=JSON.parse(r(e,"utf-8")),i=n.env??n;if(i.CLAUDE_MEM_DATA_DIR)return i.CLAUDE_MEM_DATA_DIR}}catch{}return t}function cQ(t){return(0,dt.join)(ek,t)}function uQ(t){return(0,dt.join)(pr,`worker-${t}.sock`)}function Lr(t){(0,Rg.mkdirSync)(t,{recursive:!0})}function lQ(){Lr(pr),Lr(ek),Lr(gM),Lr(vM),Lr(yM),Lr(tk)}function dQ(){Lr(tk)}function pQ(){Lr(Rs),Lr(_M)}function bM(){try{let t=(0,mM.execSync)("git rev-parse --show-toplevel",{cwd:process.cwd(),encoding:"utf8",stdio:["pipe","pipe","ignore"],windowsHide:!0}).trim();return(0,dt.basename)((0,dt.dirname)(t))+"/"+(0,dt.basename)(t)}catch(t){_.debug("SYSTEM","Git root detection failed, using cwd basename",{cwd:process.cwd()},t);let e=process.cwd();return(0,dt.basename)((0,dt.dirname)(e))+"/"+(0,dt.basename)(e)}}function gn(){return(0,dt.join)(nQ,"..")}function fQ(){let t=gn();return(0,dt.join)(t,"commands")}function mQ(t){let e=new Date().toISOString().replace(/[:.]/g,"-").replace("T","_").slice(0,19);return`${t}.backup.${e}`}var dt,QE,Rg,mM,hM,hQ,nQ,pr,Rs,Eo,ek,gM,vM,yM,tk,vt,up,sQ,Og,oQ,_M,aQ,It=Ee(()=>{"use strict";dt=require("path"),QE=require("os"),Rg=require("fs"),mM=require("child_process"),hM=require("url");te();hQ={};nQ=rQ();pr=iQ(),Rs=process.env.CLAUDE_CONFIG_DIR||(0,dt.join)((0,QE.homedir)(),".claude"),Eo=(0,dt.join)(Rs,"plugins","marketplaces","thedotmack"),ek=(0,dt.join)(pr,"archives"),gM=(0,dt.join)(pr,"logs"),vM=(0,dt.join)(pr,"trash"),yM=(0,dt.join)(pr,"backups"),tk=(0,dt.join)(pr,"modes"),vt=(0,dt.join)(pr,"settings.json"),up=(0,dt.join)(pr,"claude-mem.db"),sQ=(0,dt.join)(pr,"vector-db"),Og=(0,dt.join)(pr,"observer-sessions"),oQ=(0,dt.join)(Rs,"settings.json"),_M=(0,dt.join)(Rs,"commands"),aQ=(0,dt.join)(Rs,"CLAUDE.md")});function gQ(t,e={},r){return new Promise((n,i)=>{let s=setTimeout(()=>i(new Error(`Request timed out after ${r}ms`)),r);fetch(t,e).then(o=>{clearTimeout(s),n(o)},o=>{clearTimeout(s),i(o)})})}function Rr(){if(lp!==null)return lp;let t=Cg.default.join(ye.get("CLAUDE_MEM_DATA_DIR"),"settings.json"),e=ye.loadFromFile(t);return lp=parseInt(e.CLAUDE_MEM_WORKER_PORT,10),lp}function nk(){if(dp!==null)return dp;let t=Cg.default.join(ye.get("CLAUDE_MEM_DATA_DIR"),"settings.json");return dp=ye.loadFromFile(t).CLAUDE_MEM_WORKER_HOST,dp}function wM(){lp=null,dp=null}function vQ(t){return`http://${nk()}:${Rr()}${t}`}function Qe(t,e={}){let r=e.method??"GET",n=e.timeoutMs??rk,i=vQ(t),s={method:r};return e.headers&&(s.headers=e.headers),e.body&&(s.body=e.body),n>0?gQ(i,s,n):fetch(i,s)}async function yQ(){return(await Qe("/api/health",{timeoutMs:rk})).ok}function _Q(){try{let t=Cg.default.join(Eo,"package.json");return JSON.parse((0,xM.readFileSync)(t,"utf-8")).version}catch(t){let e=t.code;if(e==="ENOENT"||e==="EBUSY")return _.debug("SYSTEM","Could not read plugin version (shutdown race)",{code:e}),"unknown";throw t}}async function bQ(){let t=await Qe("/api/version",{timeoutMs:rk});if(!t.ok)throw new Error(`Failed to get worker version: ${t.status}`);return(await t.json()).version}async function SQ(){try{let t=_Q();if(t==="unknown")return;let e=await bQ();if(e==="unknown")return;t!==e&&_.debug("SYSTEM","Version check",{pluginVersion:t,workerVersion:e,note:"Mismatch will be auto-restarted by worker-service start command"})}catch(t){_.debug("SYSTEM","Version check failed",{error:t instanceof Error?t.message:String(t)})}}async function sr(){try{if(await yQ())return await SQ(),!0}catch(t){_.debug("SYSTEM","Worker health check failed",{error:t instanceof Error?t.message:String(t)})}return _.warn("SYSTEM","Worker not healthy, hook will proceed gracefully"),!1}var Cg,xM,rk,lp,dp,fr=Ee(()=>{"use strict";Cg=Pe(require("path"),1),xM=require("fs");te();Pn();tr();It();rk=(()=>{let t=process.env.CLAUDE_MEM_HEALTH_TIMEOUT_MS;if(t){let e=parseInt(t,10);if(Number.isFinite(e)&&e>=500&&e<=3e5)return e;_.warn("SYSTEM","Invalid CLAUDE_MEM_HEALTH_TIMEOUT_MS, using default",{value:t,min:500,max:3e5})}return Ig(Ir.HEALTH_CHECK)})();lp=null,dp=null});var IM=$((eAe,$M)=>{$M.exports=TM;TM.sync=EQ;var EM=require("fs");function wQ(t,e){var r=e.pathExt!==void 0?e.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var n=0;n{PM.exports=OM;OM.sync=kQ;var RM=require("fs");function OM(t,e,r){RM.stat(t,function(n,i){r(n,n?!1:CM(i,e))})}function kQ(t,e){return CM(RM.statSync(t),e)}function CM(t,e){return t.isFile()&&TQ(t,e)}function TQ(t,e){var r=t.mode,n=t.uid,i=t.gid,s=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),o=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),a=parseInt("100",8),c=parseInt("010",8),u=parseInt("001",8),l=a|c,d=r&u||r&c&&i===o||r&a&&n===s||r&l&&s===0;return d}});var MM=$((nAe,NM)=>{var rAe=require("fs"),Ng;process.platform==="win32"||global.TESTING_WINDOWS?Ng=IM():Ng=AM();NM.exports=ik;ik.sync=$Q;function ik(t,e,r){if(typeof e=="function"&&(r=e,e={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(n,i){ik(t,e||{},function(s,o){s?i(s):n(o)})})}Ng(t,e||{},function(n,i){n&&(n.code==="EACCES"||e&&e.ignoreErrors)&&(n=null,i=!1),r(n,i)})}function $Q(t,e){try{return Ng.sync(t,e||{})}catch(r){if(e&&e.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var qM=$((iAe,FM)=>{var Hc=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",DM=require("path"),IQ=Hc?";":":",jM=MM(),zM=t=>Object.assign(new Error(`not found: ${t}`),{code:"ENOENT"}),LM=(t,e)=>{let r=e.colon||IQ,n=t.match(/\//)||Hc&&t.match(/\\/)?[""]:[...Hc?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(r)],i=Hc?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",s=Hc?i.split(r):[""];return Hc&&t.indexOf(".")!==-1&&s[0]!==""&&s.unshift(""),{pathEnv:n,pathExt:s,pathExtExe:i}},UM=(t,e,r)=>{typeof e=="function"&&(r=e,e={}),e||(e={});let{pathEnv:n,pathExt:i,pathExtExe:s}=LM(t,e),o=[],a=u=>new Promise((l,d)=>{if(u===n.length)return e.all&&o.length?l(o):d(zM(t));let p=n[u],f=/^".*"$/.test(p)?p.slice(1,-1):p,m=DM.join(f,t),h=!f&&/^\.[\\\/]/.test(t)?t.slice(0,2)+m:m;l(c(h,u,0))}),c=(u,l,d)=>new Promise((p,f)=>{if(d===i.length)return p(a(l+1));let m=i[d];jM(u+m,{pathExt:s},(h,g)=>{if(!h&&g)if(e.all)o.push(u+m);else return p(u+m);return p(c(u,l,d+1))})});return r?a(0).then(u=>r(null,u),r):a(0)},RQ=(t,e)=>{e=e||{};let{pathEnv:r,pathExt:n,pathExtExe:i}=LM(t,e),s=[];for(let o=0;o{"use strict";var HM=(t={})=>{let e=t.env||process.env;return(t.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};sk.exports=HM;sk.exports.default=HM});var VM=$((oAe,WM)=>{"use strict";var BM=require("path"),OQ=qM(),CQ=ZM();function GM(t,e){let r=t.options.env||process.env,n=process.cwd(),i=t.options.cwd!=null,s=i&&process.chdir!==void 0&&!process.chdir.disabled;if(s)try{process.chdir(t.options.cwd)}catch{}let o;try{o=OQ.sync(t.command,{path:r[CQ({env:r})],pathExt:e?BM.delimiter:void 0})}catch{}finally{s&&process.chdir(n)}return o&&(o=BM.resolve(i?t.options.cwd:"",o)),o}function PQ(t){return GM(t)||GM(t,!0)}WM.exports=PQ});var KM=$((aAe,ak)=>{"use strict";var ok=/([()\][%!^"`<>&|;, *?])/g;function AQ(t){return t=t.replace(ok,"^$1"),t}function NQ(t,e){return t=`${t}`,t=t.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),t=t.replace(/(?=(\\+?)?)\1$/,"$1$1"),t=`"${t}"`,t=t.replace(ok,"^$1"),e&&(t=t.replace(ok,"^$1")),t}ak.exports.command=AQ;ak.exports.argument=NQ});var XM=$((cAe,JM)=>{"use strict";JM.exports=/^#!(.*)/});var QM=$((uAe,YM)=>{"use strict";var MQ=XM();YM.exports=(t="")=>{let e=t.match(MQ);if(!e)return null;let[r,n]=e[0].replace(/#! ?/,"").split(" "),i=r.split("/").pop();return i==="env"?n:n?`${i} ${n}`:i}});var tD=$((lAe,eD)=>{"use strict";var ck=require("fs"),DQ=QM();function jQ(t){let r=Buffer.alloc(150),n;try{n=ck.openSync(t,"r"),ck.readSync(n,r,0,150,0),ck.closeSync(n)}catch{}return DQ(r.toString())}eD.exports=jQ});var sD=$((dAe,iD)=>{"use strict";var zQ=require("path"),rD=VM(),nD=KM(),LQ=tD(),UQ=process.platform==="win32",FQ=/\.(?:com|exe)$/i,qQ=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function HQ(t){t.file=rD(t);let e=t.file&&LQ(t.file);return e?(t.args.unshift(t.file),t.command=e,rD(t)):t.file}function ZQ(t){if(!UQ)return t;let e=HQ(t),r=!FQ.test(e);if(t.options.forceShell||r){let n=qQ.test(e);t.command=zQ.normalize(t.command),t.command=nD.command(t.command),t.args=t.args.map(s=>nD.argument(s,n));let i=[t.command].concat(t.args).join(" ");t.args=["/d","/s","/c",`"${i}"`],t.command=process.env.comspec||"cmd.exe",t.options.windowsVerbatimArguments=!0}return t}function BQ(t,e,r){e&&!Array.isArray(e)&&(r=e,e=null),e=e?e.slice(0):[],r=Object.assign({},r);let n={command:t,args:e,options:r,file:void 0,original:{command:t,args:e}};return r.shell?n:ZQ(n)}iD.exports=BQ});var cD=$((pAe,aD)=>{"use strict";var uk=process.platform==="win32";function lk(t,e){return Object.assign(new Error(`${e} ${t.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${e} ${t.command}`,path:t.command,spawnargs:t.args})}function GQ(t,e){if(!uk)return;let r=t.emit;t.emit=function(n,i){if(n==="exit"){let s=oD(i,e);if(s)return r.call(t,"error",s)}return r.apply(t,arguments)}}function oD(t,e){return uk&&t===1&&!e.file?lk(e.original,"spawn"):null}function WQ(t,e){return uk&&t===1&&!e.file?lk(e.original,"spawnSync"):null}aD.exports={hookChildProcess:GQ,verifyENOENT:oD,verifyENOENTSync:WQ,notFoundError:lk}});var dD=$((fAe,Zc)=>{"use strict";var uD=require("child_process"),dk=sD(),pk=cD();function lD(t,e,r){let n=dk(t,e,r),i=uD.spawn(n.command,n.args,n.options);return pk.hookChildProcess(i,n),i}function VQ(t,e,r){let n=dk(t,e,r),i=uD.spawnSync(n.command,n.args,n.options);return i.error=i.error||pk.verifyENOENTSync(i.status,n),i}Zc.exports=lD;Zc.exports.spawn=lD;Zc.exports.sync=VQ;Zc.exports._parse=dk;Zc.exports._enoent=pk});function Lg(t,e,r){return(0,AD.createHash)("sha256").update([t||"",e||"",r||""].join("\0")).digest("hex").slice(0,16)}function Ug(t,e,r){let n=r-vee;return t.prepare("SELECT id, created_at_epoch FROM observations WHERE content_hash = ? AND created_at_epoch > ?").get(e,n)}var AD,vee,ND=Ee(()=>{"use strict";AD=require("crypto");te();It();vee=3e4});function Kc(t){if(!t)return[];try{let e=JSON.parse(t);return Array.isArray(e)?e:[String(e)]}catch{return[t]}}var $k=Ee(()=>{"use strict"});function yee(t){return t.trim().toLowerCase().replace(/\s+/g,"-")}function Rt(t){if(!t)return Ur;let e=yee(t);return e?e==="transcript"||e.includes("codex")?"codex":e.includes("cursor")?"cursor":e.includes("claude")?"claude":e:Ur}function MD(t){let e=["claude","codex","cursor"];return[...t].sort((r,n)=>{let i=e.indexOf(r),s=e.indexOf(n);return i!==-1||s!==-1?i===-1?1:s===-1?-1:i-s:r.localeCompare(n)})}var Ur,Vi=Ee(()=>{"use strict";Ur="claude"});function _ee(t,e){return{customTitle:t,platformSource:e?Rt(e):void 0}}var DD,Ps,Fg=Ee(()=>{"use strict";DD=require("bun:sqlite");It();te();ND();$k();Vi();Ps=class{db;constructor(e=up){e!==":memory:"&&Lr(pr),this.db=new DD.Database(e),this.db.run("PRAGMA journal_mode = WAL"),this.db.run("PRAGMA synchronous = NORMAL"),this.db.run("PRAGMA foreign_keys = ON"),this.initializeSchema(),this.ensureWorkerPortColumn(),this.ensurePromptTrackingColumns(),this.removeSessionSummariesUniqueConstraint(),this.addObservationHierarchicalFields(),this.makeObservationsTextNullable(),this.createUserPromptsTable(),this.ensureDiscoveryTokensColumn(),this.createPendingMessagesTable(),this.renameSessionIdColumns(),this.repairSessionIdColumnRename(),this.addFailedAtEpochColumn(),this.addOnUpdateCascadeToForeignKeys(),this.addObservationContentHashColumn(),this.addSessionCustomTitleColumn(),this.addSessionPlatformSourceColumn(),this.addObservationModelColumns()}initializeSchema(){this.db.run(` + CREATE TABLE IF NOT EXISTS schema_versions ( + id INTEGER PRIMARY KEY, + version INTEGER UNIQUE NOT NULL, + applied_at TEXT NOT NULL + ) + `),this.db.run(` + CREATE TABLE IF NOT EXISTS sdk_sessions ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + content_session_id TEXT UNIQUE NOT NULL, + memory_session_id TEXT UNIQUE, + project TEXT NOT NULL, + platform_source TEXT NOT NULL DEFAULT 'claude', + user_prompt TEXT, + started_at TEXT NOT NULL, + started_at_epoch INTEGER NOT NULL, + completed_at TEXT, + completed_at_epoch INTEGER, + status TEXT CHECK(status IN ('active', 'completed', 'failed')) NOT NULL DEFAULT 'active' + ); + + CREATE INDEX IF NOT EXISTS idx_sdk_sessions_claude_id ON sdk_sessions(content_session_id); + CREATE INDEX IF NOT EXISTS idx_sdk_sessions_sdk_id ON sdk_sessions(memory_session_id); + CREATE INDEX IF NOT EXISTS idx_sdk_sessions_project ON sdk_sessions(project); + CREATE INDEX IF NOT EXISTS idx_sdk_sessions_status ON sdk_sessions(status); + CREATE INDEX IF NOT EXISTS idx_sdk_sessions_started ON sdk_sessions(started_at_epoch DESC); + + CREATE TABLE IF NOT EXISTS observations ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + memory_session_id TEXT NOT NULL, + project TEXT NOT NULL, + text TEXT NOT NULL, + type TEXT NOT NULL, + created_at TEXT NOT NULL, + created_at_epoch INTEGER NOT NULL, + FOREIGN KEY(memory_session_id) REFERENCES sdk_sessions(memory_session_id) ON DELETE CASCADE ON UPDATE CASCADE + ); + + CREATE INDEX IF NOT EXISTS idx_observations_sdk_session ON observations(memory_session_id); + CREATE INDEX IF NOT EXISTS idx_observations_project ON observations(project); + CREATE INDEX IF NOT EXISTS idx_observations_type ON observations(type); + CREATE INDEX IF NOT EXISTS idx_observations_created ON observations(created_at_epoch DESC); + + CREATE TABLE IF NOT EXISTS session_summaries ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + memory_session_id TEXT UNIQUE NOT NULL, + project TEXT NOT NULL, + request TEXT, + investigated TEXT, + learned TEXT, + completed TEXT, + next_steps TEXT, + files_read TEXT, + files_edited TEXT, + notes TEXT, + created_at TEXT NOT NULL, + created_at_epoch INTEGER NOT NULL, + FOREIGN KEY(memory_session_id) REFERENCES sdk_sessions(memory_session_id) ON DELETE CASCADE ON UPDATE CASCADE + ); + + CREATE INDEX IF NOT EXISTS idx_session_summaries_sdk_session ON session_summaries(memory_session_id); + CREATE INDEX IF NOT EXISTS idx_session_summaries_project ON session_summaries(project); + CREATE INDEX IF NOT EXISTS idx_session_summaries_created ON session_summaries(created_at_epoch DESC); + `),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(4,new Date().toISOString())}ensureWorkerPortColumn(){this.db.query("PRAGMA table_info(sdk_sessions)").all().some(n=>n.name==="worker_port")||(this.db.run("ALTER TABLE sdk_sessions ADD COLUMN worker_port INTEGER"),_.debug("DB","Added worker_port column to sdk_sessions table")),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(5,new Date().toISOString())}ensurePromptTrackingColumns(){this.db.query("PRAGMA table_info(sdk_sessions)").all().some(a=>a.name==="prompt_counter")||(this.db.run("ALTER TABLE sdk_sessions ADD COLUMN prompt_counter INTEGER DEFAULT 0"),_.debug("DB","Added prompt_counter column to sdk_sessions table")),this.db.query("PRAGMA table_info(observations)").all().some(a=>a.name==="prompt_number")||(this.db.run("ALTER TABLE observations ADD COLUMN prompt_number INTEGER"),_.debug("DB","Added prompt_number column to observations table")),this.db.query("PRAGMA table_info(session_summaries)").all().some(a=>a.name==="prompt_number")||(this.db.run("ALTER TABLE session_summaries ADD COLUMN prompt_number INTEGER"),_.debug("DB","Added prompt_number column to session_summaries table")),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(6,new Date().toISOString())}removeSessionSummariesUniqueConstraint(){if(!this.db.query("PRAGMA index_list(session_summaries)").all().some(n=>n.unique===1)){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(7,new Date().toISOString());return}_.debug("DB","Removing UNIQUE constraint from session_summaries.memory_session_id"),this.db.run("BEGIN TRANSACTION"),this.db.run("DROP TABLE IF EXISTS session_summaries_new"),this.db.run(` + CREATE TABLE session_summaries_new ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + memory_session_id TEXT NOT NULL, + project TEXT NOT NULL, + request TEXT, + investigated TEXT, + learned TEXT, + completed TEXT, + next_steps TEXT, + files_read TEXT, + files_edited TEXT, + notes TEXT, + prompt_number INTEGER, + created_at TEXT NOT NULL, + created_at_epoch INTEGER NOT NULL, + FOREIGN KEY(memory_session_id) REFERENCES sdk_sessions(memory_session_id) ON DELETE CASCADE + ) + `),this.db.run(` + INSERT INTO session_summaries_new + SELECT id, memory_session_id, project, request, investigated, learned, + completed, next_steps, files_read, files_edited, notes, + prompt_number, created_at, created_at_epoch + FROM session_summaries + `),this.db.run("DROP TABLE session_summaries"),this.db.run("ALTER TABLE session_summaries_new RENAME TO session_summaries"),this.db.run(` + CREATE INDEX idx_session_summaries_sdk_session ON session_summaries(memory_session_id); + CREATE INDEX idx_session_summaries_project ON session_summaries(project); + CREATE INDEX idx_session_summaries_created ON session_summaries(created_at_epoch DESC); + `),this.db.run("COMMIT"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(7,new Date().toISOString()),_.debug("DB","Successfully removed UNIQUE constraint from session_summaries.memory_session_id")}addObservationHierarchicalFields(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(8))return;if(this.db.query("PRAGMA table_info(observations)").all().some(i=>i.name==="title")){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(8,new Date().toISOString());return}_.debug("DB","Adding hierarchical fields to observations table"),this.db.run(` + ALTER TABLE observations ADD COLUMN title TEXT; + ALTER TABLE observations ADD COLUMN subtitle TEXT; + ALTER TABLE observations ADD COLUMN facts TEXT; + ALTER TABLE observations ADD COLUMN narrative TEXT; + ALTER TABLE observations ADD COLUMN concepts TEXT; + ALTER TABLE observations ADD COLUMN files_read TEXT; + ALTER TABLE observations ADD COLUMN files_modified TEXT; + `),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(8,new Date().toISOString()),_.debug("DB","Successfully added hierarchical fields to observations table")}makeObservationsTextNullable(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(9))return;let n=this.db.query("PRAGMA table_info(observations)").all().find(i=>i.name==="text");if(!n||n.notnull===0){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(9,new Date().toISOString());return}_.debug("DB","Making observations.text nullable"),this.db.run("BEGIN TRANSACTION"),this.db.run("DROP TABLE IF EXISTS observations_new"),this.db.run(` + CREATE TABLE observations_new ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + memory_session_id TEXT NOT NULL, + project TEXT NOT NULL, + text TEXT, + type TEXT NOT NULL, + title TEXT, + subtitle TEXT, + facts TEXT, + narrative TEXT, + concepts TEXT, + files_read TEXT, + files_modified TEXT, + prompt_number INTEGER, + created_at TEXT NOT NULL, + created_at_epoch INTEGER NOT NULL, + FOREIGN KEY(memory_session_id) REFERENCES sdk_sessions(memory_session_id) ON DELETE CASCADE + ) + `),this.db.run(` + INSERT INTO observations_new + SELECT id, memory_session_id, project, text, type, title, subtitle, facts, + narrative, concepts, files_read, files_modified, prompt_number, + created_at, created_at_epoch + FROM observations + `),this.db.run("DROP TABLE observations"),this.db.run("ALTER TABLE observations_new RENAME TO observations"),this.db.run(` + CREATE INDEX idx_observations_sdk_session ON observations(memory_session_id); + CREATE INDEX idx_observations_project ON observations(project); + CREATE INDEX idx_observations_type ON observations(type); + CREATE INDEX idx_observations_created ON observations(created_at_epoch DESC); + `),this.db.run("COMMIT"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(9,new Date().toISOString()),_.debug("DB","Successfully made observations.text nullable")}createUserPromptsTable(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(10))return;if(this.db.query("PRAGMA table_info(user_prompts)").all().length>0){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(10,new Date().toISOString());return}_.debug("DB","Creating user_prompts table with FTS5 support"),this.db.run("BEGIN TRANSACTION"),this.db.run(` + CREATE TABLE user_prompts ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + content_session_id TEXT NOT NULL, + prompt_number INTEGER NOT NULL, + prompt_text TEXT NOT NULL, + created_at TEXT NOT NULL, + created_at_epoch INTEGER NOT NULL, + FOREIGN KEY(content_session_id) REFERENCES sdk_sessions(content_session_id) ON DELETE CASCADE + ); + + CREATE INDEX idx_user_prompts_claude_session ON user_prompts(content_session_id); + CREATE INDEX idx_user_prompts_created ON user_prompts(created_at_epoch DESC); + CREATE INDEX idx_user_prompts_prompt_number ON user_prompts(prompt_number); + CREATE INDEX idx_user_prompts_lookup ON user_prompts(content_session_id, prompt_number); + `);try{this.db.run(` + CREATE VIRTUAL TABLE user_prompts_fts USING fts5( + prompt_text, + content='user_prompts', + content_rowid='id' + ); + `),this.db.run(` + CREATE TRIGGER user_prompts_ai AFTER INSERT ON user_prompts BEGIN + INSERT INTO user_prompts_fts(rowid, prompt_text) + VALUES (new.id, new.prompt_text); + END; + + CREATE TRIGGER user_prompts_ad AFTER DELETE ON user_prompts BEGIN + INSERT INTO user_prompts_fts(user_prompts_fts, rowid, prompt_text) + VALUES('delete', old.id, old.prompt_text); + END; + + CREATE TRIGGER user_prompts_au AFTER UPDATE ON user_prompts BEGIN + INSERT INTO user_prompts_fts(user_prompts_fts, rowid, prompt_text) + VALUES('delete', old.id, old.prompt_text); + INSERT INTO user_prompts_fts(rowid, prompt_text) + VALUES (new.id, new.prompt_text); + END; + `)}catch(n){_.warn("DB","FTS5 not available \u2014 user_prompts_fts skipped (search uses ChromaDB)",{},n)}this.db.run("COMMIT"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(10,new Date().toISOString()),_.debug("DB","Successfully created user_prompts table")}ensureDiscoveryTokensColumn(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(11))return;this.db.query("PRAGMA table_info(observations)").all().some(o=>o.name==="discovery_tokens")||(this.db.run("ALTER TABLE observations ADD COLUMN discovery_tokens INTEGER DEFAULT 0"),_.debug("DB","Added discovery_tokens column to observations table")),this.db.query("PRAGMA table_info(session_summaries)").all().some(o=>o.name==="discovery_tokens")||(this.db.run("ALTER TABLE session_summaries ADD COLUMN discovery_tokens INTEGER DEFAULT 0"),_.debug("DB","Added discovery_tokens column to session_summaries table")),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(11,new Date().toISOString())}createPendingMessagesTable(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(16))return;if(this.db.query("SELECT name FROM sqlite_master WHERE type='table' AND name='pending_messages'").all().length>0){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(16,new Date().toISOString());return}_.debug("DB","Creating pending_messages table"),this.db.run(` + CREATE TABLE pending_messages ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + session_db_id INTEGER NOT NULL, + content_session_id TEXT NOT NULL, + message_type TEXT NOT NULL CHECK(message_type IN ('observation', 'summarize')), + tool_name TEXT, + tool_input TEXT, + tool_response TEXT, + cwd TEXT, + last_user_message TEXT, + last_assistant_message TEXT, + prompt_number INTEGER, + status TEXT NOT NULL DEFAULT 'pending' CHECK(status IN ('pending', 'processing', 'processed', 'failed')), + retry_count INTEGER NOT NULL DEFAULT 0, + created_at_epoch INTEGER NOT NULL, + started_processing_at_epoch INTEGER, + completed_at_epoch INTEGER, + FOREIGN KEY (session_db_id) REFERENCES sdk_sessions(id) ON DELETE CASCADE + ) + `),this.db.run("CREATE INDEX IF NOT EXISTS idx_pending_messages_session ON pending_messages(session_db_id)"),this.db.run("CREATE INDEX IF NOT EXISTS idx_pending_messages_status ON pending_messages(status)"),this.db.run("CREATE INDEX IF NOT EXISTS idx_pending_messages_claude_session ON pending_messages(content_session_id)"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(16,new Date().toISOString()),_.debug("DB","pending_messages table created successfully")}renameSessionIdColumns(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(17))return;_.debug("DB","Checking session ID columns for semantic clarity rename");let r=0,n=(i,s,o)=>{let a=this.db.query(`PRAGMA table_info(${i})`).all(),c=a.some(l=>l.name===s);return a.some(l=>l.name===o)?!1:c?(this.db.run(`ALTER TABLE ${i} RENAME COLUMN ${s} TO ${o}`),_.debug("DB",`Renamed ${i}.${s} to ${o}`),!0):(_.warn("DB",`Column ${s} not found in ${i}, skipping rename`),!1)};n("sdk_sessions","claude_session_id","content_session_id")&&r++,n("sdk_sessions","sdk_session_id","memory_session_id")&&r++,n("pending_messages","claude_session_id","content_session_id")&&r++,n("observations","sdk_session_id","memory_session_id")&&r++,n("session_summaries","sdk_session_id","memory_session_id")&&r++,n("user_prompts","claude_session_id","content_session_id")&&r++,this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(17,new Date().toISOString()),r>0?_.debug("DB",`Successfully renamed ${r} session ID columns`):_.debug("DB","No session ID column renames needed (already up to date)")}repairSessionIdColumnRename(){this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(19)||this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(19,new Date().toISOString())}addFailedAtEpochColumn(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(20))return;this.db.query("PRAGMA table_info(pending_messages)").all().some(i=>i.name==="failed_at_epoch")||(this.db.run("ALTER TABLE pending_messages ADD COLUMN failed_at_epoch INTEGER"),_.debug("DB","Added failed_at_epoch column to pending_messages table")),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(20,new Date().toISOString())}addOnUpdateCascadeToForeignKeys(){if(!this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(21)){_.debug("DB","Adding ON UPDATE CASCADE to FK constraints on observations and session_summaries"),this.db.run("PRAGMA foreign_keys = OFF"),this.db.run("BEGIN TRANSACTION");try{this.db.run("DROP TRIGGER IF EXISTS observations_ai"),this.db.run("DROP TRIGGER IF EXISTS observations_ad"),this.db.run("DROP TRIGGER IF EXISTS observations_au"),this.db.run("DROP TABLE IF EXISTS observations_new"),this.db.run(` + CREATE TABLE observations_new ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + memory_session_id TEXT NOT NULL, + project TEXT NOT NULL, + text TEXT, + type TEXT NOT NULL, + title TEXT, + subtitle TEXT, + facts TEXT, + narrative TEXT, + concepts TEXT, + files_read TEXT, + files_modified TEXT, + prompt_number INTEGER, + discovery_tokens INTEGER DEFAULT 0, + created_at TEXT NOT NULL, + created_at_epoch INTEGER NOT NULL, + FOREIGN KEY(memory_session_id) REFERENCES sdk_sessions(memory_session_id) ON DELETE CASCADE ON UPDATE CASCADE + ) + `),this.db.run(` + INSERT INTO observations_new + SELECT id, memory_session_id, project, text, type, title, subtitle, facts, + narrative, concepts, files_read, files_modified, prompt_number, + discovery_tokens, created_at, created_at_epoch + FROM observations + `),this.db.run("DROP TABLE observations"),this.db.run("ALTER TABLE observations_new RENAME TO observations"),this.db.run(` + CREATE INDEX idx_observations_sdk_session ON observations(memory_session_id); + CREATE INDEX idx_observations_project ON observations(project); + CREATE INDEX idx_observations_type ON observations(type); + CREATE INDEX idx_observations_created ON observations(created_at_epoch DESC); + `),this.db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='observations_fts'").all().length>0&&this.db.run(` + CREATE TRIGGER IF NOT EXISTS observations_ai AFTER INSERT ON observations BEGIN + INSERT INTO observations_fts(rowid, title, subtitle, narrative, text, facts, concepts) + VALUES (new.id, new.title, new.subtitle, new.narrative, new.text, new.facts, new.concepts); + END; + + CREATE TRIGGER IF NOT EXISTS observations_ad AFTER DELETE ON observations BEGIN + INSERT INTO observations_fts(observations_fts, rowid, title, subtitle, narrative, text, facts, concepts) + VALUES('delete', old.id, old.title, old.subtitle, old.narrative, old.text, old.facts, old.concepts); + END; + + CREATE TRIGGER IF NOT EXISTS observations_au AFTER UPDATE ON observations BEGIN + INSERT INTO observations_fts(observations_fts, rowid, title, subtitle, narrative, text, facts, concepts) + VALUES('delete', old.id, old.title, old.subtitle, old.narrative, old.text, old.facts, old.concepts); + INSERT INTO observations_fts(rowid, title, subtitle, narrative, text, facts, concepts) + VALUES (new.id, new.title, new.subtitle, new.narrative, new.text, new.facts, new.concepts); + END; + `),this.db.run("DROP TABLE IF EXISTS session_summaries_new"),this.db.run(` + CREATE TABLE session_summaries_new ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + memory_session_id TEXT NOT NULL, + project TEXT NOT NULL, + request TEXT, + investigated TEXT, + learned TEXT, + completed TEXT, + next_steps TEXT, + files_read TEXT, + files_edited TEXT, + notes TEXT, + prompt_number INTEGER, + discovery_tokens INTEGER DEFAULT 0, + created_at TEXT NOT NULL, + created_at_epoch INTEGER NOT NULL, + FOREIGN KEY(memory_session_id) REFERENCES sdk_sessions(memory_session_id) ON DELETE CASCADE ON UPDATE CASCADE + ) + `),this.db.run(` + INSERT INTO session_summaries_new + SELECT id, memory_session_id, project, request, investigated, learned, + completed, next_steps, files_read, files_edited, notes, + prompt_number, discovery_tokens, created_at, created_at_epoch + FROM session_summaries + `),this.db.run("DROP TRIGGER IF EXISTS session_summaries_ai"),this.db.run("DROP TRIGGER IF EXISTS session_summaries_ad"),this.db.run("DROP TRIGGER IF EXISTS session_summaries_au"),this.db.run("DROP TABLE session_summaries"),this.db.run("ALTER TABLE session_summaries_new RENAME TO session_summaries"),this.db.run(` + CREATE INDEX idx_session_summaries_sdk_session ON session_summaries(memory_session_id); + CREATE INDEX idx_session_summaries_project ON session_summaries(project); + CREATE INDEX idx_session_summaries_created ON session_summaries(created_at_epoch DESC); + `),this.db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='session_summaries_fts'").all().length>0&&this.db.run(` + CREATE TRIGGER IF NOT EXISTS session_summaries_ai AFTER INSERT ON session_summaries BEGIN + INSERT INTO session_summaries_fts(rowid, request, investigated, learned, completed, next_steps, notes) + VALUES (new.id, new.request, new.investigated, new.learned, new.completed, new.next_steps, new.notes); + END; + + CREATE TRIGGER IF NOT EXISTS session_summaries_ad AFTER DELETE ON session_summaries BEGIN + INSERT INTO session_summaries_fts(session_summaries_fts, rowid, request, investigated, learned, completed, next_steps, notes) + VALUES('delete', old.id, old.request, old.investigated, old.learned, old.completed, old.next_steps, old.notes); + END; + + CREATE TRIGGER IF NOT EXISTS session_summaries_au AFTER UPDATE ON session_summaries BEGIN + INSERT INTO session_summaries_fts(session_summaries_fts, rowid, request, investigated, learned, completed, next_steps, notes) + VALUES('delete', old.id, old.request, old.investigated, old.learned, old.completed, old.next_steps, old.notes); + INSERT INTO session_summaries_fts(rowid, request, investigated, learned, completed, next_steps, notes) + VALUES (new.id, new.request, new.investigated, new.learned, new.completed, new.next_steps, new.notes); + END; + `),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(21,new Date().toISOString()),this.db.run("COMMIT"),this.db.run("PRAGMA foreign_keys = ON"),_.debug("DB","Successfully added ON UPDATE CASCADE to FK constraints")}catch(r){throw this.db.run("ROLLBACK"),this.db.run("PRAGMA foreign_keys = ON"),r}}}addObservationContentHashColumn(){if(this.db.query("PRAGMA table_info(observations)").all().some(n=>n.name==="content_hash")){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(22,new Date().toISOString());return}this.db.run("ALTER TABLE observations ADD COLUMN content_hash TEXT"),this.db.run("UPDATE observations SET content_hash = substr(hex(randomblob(8)), 1, 16) WHERE content_hash IS NULL"),this.db.run("CREATE INDEX IF NOT EXISTS idx_observations_content_hash ON observations(content_hash, created_at_epoch)"),_.debug("DB","Added content_hash column to observations table with backfill and index"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(22,new Date().toISOString())}addSessionCustomTitleColumn(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(23))return;this.db.query("PRAGMA table_info(sdk_sessions)").all().some(i=>i.name==="custom_title")||(this.db.run("ALTER TABLE sdk_sessions ADD COLUMN custom_title TEXT"),_.debug("DB","Added custom_title column to sdk_sessions table")),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(23,new Date().toISOString())}addSessionPlatformSourceColumn(){let r=this.db.query("PRAGMA table_info(sdk_sessions)").all().some(o=>o.name==="platform_source"),i=this.db.query("PRAGMA index_list(sdk_sessions)").all().some(o=>o.name==="idx_sdk_sessions_platform_source");this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(24)&&r&&i||(r||(this.db.run(`ALTER TABLE sdk_sessions ADD COLUMN platform_source TEXT NOT NULL DEFAULT '${Ur}'`),_.debug("DB","Added platform_source column to sdk_sessions table")),this.db.run(` + UPDATE sdk_sessions + SET platform_source = '${Ur}' + WHERE platform_source IS NULL OR platform_source = '' + `),i||this.db.run("CREATE INDEX IF NOT EXISTS idx_sdk_sessions_platform_source ON sdk_sessions(platform_source)"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(24,new Date().toISOString()))}addObservationModelColumns(){let e=this.db.query("PRAGMA table_info(observations)").all(),r=e.some(i=>i.name==="generated_by_model"),n=e.some(i=>i.name==="relevance_count");r&&n||(r||this.db.run("ALTER TABLE observations ADD COLUMN generated_by_model TEXT"),n||this.db.run("ALTER TABLE observations ADD COLUMN relevance_count INTEGER DEFAULT 0"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(26,new Date().toISOString()))}updateMemorySessionId(e,r){this.db.prepare(` + UPDATE sdk_sessions + SET memory_session_id = ? + WHERE id = ? + `).run(r,e)}markSessionCompleted(e){let r=Date.now(),n=new Date(r).toISOString();this.db.prepare(` + UPDATE sdk_sessions + SET status = 'completed', completed_at = ?, completed_at_epoch = ? + WHERE id = ? + `).run(n,r,e)}ensureMemorySessionIdRegistered(e,r){let n=this.db.prepare(` + SELECT id, memory_session_id FROM sdk_sessions WHERE id = ? + `).get(e);if(!n)throw new Error(`Session ${e} not found in sdk_sessions`);n.memory_session_id!==r&&(this.db.prepare(` + UPDATE sdk_sessions SET memory_session_id = ? WHERE id = ? + `).run(r,e),_.info("DB","Registered memory_session_id before storage (FK fix)",{sessionDbId:e,oldId:n.memory_session_id,newId:r}))}getRecentSummaries(e,r=10){return this.db.prepare(` + SELECT + request, investigated, learned, completed, next_steps, + files_read, files_edited, notes, prompt_number, created_at + FROM session_summaries + WHERE project = ? + ORDER BY created_at_epoch DESC + LIMIT ? + `).all(e,r)}getRecentSummariesWithSessionInfo(e,r=3){return this.db.prepare(` + SELECT + memory_session_id, request, learned, completed, next_steps, + prompt_number, created_at + FROM session_summaries + WHERE project = ? + ORDER BY created_at_epoch DESC + LIMIT ? + `).all(e,r)}getRecentObservations(e,r=20){return this.db.prepare(` + SELECT type, text, prompt_number, created_at + FROM observations + WHERE project = ? + ORDER BY created_at_epoch DESC + LIMIT ? + `).all(e,r)}getAllRecentObservations(e=100){return this.db.prepare(` + SELECT + o.id, + o.type, + o.title, + o.subtitle, + o.text, + o.project, + COALESCE(s.platform_source, '${Ur}') as platform_source, + o.prompt_number, + o.created_at, + o.created_at_epoch + FROM observations o + LEFT JOIN sdk_sessions s ON o.memory_session_id = s.memory_session_id + ORDER BY o.created_at_epoch DESC + LIMIT ? + `).all(e)}getAllRecentSummaries(e=50){return this.db.prepare(` + SELECT + ss.id, + ss.request, + ss.investigated, + ss.learned, + ss.completed, + ss.next_steps, + ss.files_read, + ss.files_edited, + ss.notes, + ss.project, + COALESCE(s.platform_source, '${Ur}') as platform_source, + ss.prompt_number, + ss.created_at, + ss.created_at_epoch + FROM session_summaries ss + LEFT JOIN sdk_sessions s ON ss.memory_session_id = s.memory_session_id + ORDER BY ss.created_at_epoch DESC + LIMIT ? + `).all(e)}getAllRecentUserPrompts(e=100){return this.db.prepare(` + SELECT + up.id, + up.content_session_id, + s.project, + COALESCE(s.platform_source, '${Ur}') as platform_source, + up.prompt_number, + up.prompt_text, + up.created_at, + up.created_at_epoch + FROM user_prompts up + LEFT JOIN sdk_sessions s ON up.content_session_id = s.content_session_id + ORDER BY up.created_at_epoch DESC + LIMIT ? + `).all(e)}getAllProjects(e){let r=e?Rt(e):void 0,n=` + SELECT DISTINCT project + FROM sdk_sessions + WHERE project IS NOT NULL AND project != '' + `,i=[];return r&&(n+=" AND COALESCE(platform_source, ?) = ?",i.push(Ur,r)),n+=" ORDER BY project ASC",this.db.prepare(n).all(...i).map(o=>o.project)}getProjectCatalog(){let e=this.db.prepare(` + SELECT + COALESCE(platform_source, '${Ur}') as platform_source, + project, + MAX(started_at_epoch) as latest_epoch + FROM sdk_sessions + WHERE project IS NOT NULL AND project != '' + GROUP BY COALESCE(platform_source, '${Ur}'), project + ORDER BY latest_epoch DESC + `).all(),r=[],n=new Set,i={};for(let o of e){let a=Rt(o.platform_source);i[a]||(i[a]=[]),i[a].includes(o.project)||i[a].push(o.project),n.has(o.project)||(n.add(o.project),r.push(o.project))}let s=MD(Object.keys(i));return{projects:r,sources:s,projectsBySource:Object.fromEntries(s.map(o=>[o,i[o]||[]]))}}getLatestUserPrompt(e){return this.db.prepare(` + SELECT + up.*, + s.memory_session_id, + s.project, + COALESCE(s.platform_source, '${Ur}') as platform_source + FROM user_prompts up + JOIN sdk_sessions s ON up.content_session_id = s.content_session_id + WHERE up.content_session_id = ? + ORDER BY up.created_at_epoch DESC + LIMIT 1 + `).get(e)}getRecentSessionsWithStatus(e,r=3){return this.db.prepare(` + SELECT * FROM ( + SELECT + s.memory_session_id, + s.status, + s.started_at, + s.started_at_epoch, + s.user_prompt, + CASE WHEN sum.memory_session_id IS NOT NULL THEN 1 ELSE 0 END as has_summary + FROM sdk_sessions s + LEFT JOIN session_summaries sum ON s.memory_session_id = sum.memory_session_id + WHERE s.project = ? AND s.memory_session_id IS NOT NULL + GROUP BY s.memory_session_id + ORDER BY s.started_at_epoch DESC + LIMIT ? + ) + ORDER BY started_at_epoch ASC + `).all(e,r)}getObservationsForSession(e){return this.db.prepare(` + SELECT title, subtitle, type, prompt_number + FROM observations + WHERE memory_session_id = ? + ORDER BY created_at_epoch ASC + `).all(e)}getObservationById(e){return this.db.prepare(` + SELECT * + FROM observations + WHERE id = ? + `).get(e)||null}getObservationsByIds(e,r={}){if(e.length===0)return[];let{orderBy:n="date_desc",limit:i,project:s,type:o,concepts:a,files:c}=r,u=n==="date_asc"?"ASC":"DESC",l=i?`LIMIT ${i}`:"",d=e.map(()=>"?").join(","),p=[...e],f=[];if(s&&(f.push("project = ?"),p.push(s)),o)if(Array.isArray(o)){let g=o.map(()=>"?").join(",");f.push(`type IN (${g})`),p.push(...o)}else f.push("type = ?"),p.push(o);if(a){let g=Array.isArray(a)?a:[a],v=g.map(()=>"EXISTS (SELECT 1 FROM json_each(concepts) WHERE value = ?)");p.push(...g),f.push(`(${v.join(" OR ")})`)}if(c){let g=Array.isArray(c)?c:[c],v=g.map(()=>"(EXISTS (SELECT 1 FROM json_each(files_read) WHERE value LIKE ?) OR EXISTS (SELECT 1 FROM json_each(files_modified) WHERE value LIKE ?))");g.forEach(y=>{p.push(`%${y}%`,`%${y}%`)}),f.push(`(${v.join(" OR ")})`)}let m=f.length>0?`WHERE id IN (${d}) AND ${f.join(" AND ")}`:`WHERE id IN (${d})`;return this.db.prepare(` + SELECT * + FROM observations + ${m} + ORDER BY created_at_epoch ${u} + ${l} + `).all(...p)}getSummaryForSession(e){return this.db.prepare(` + SELECT + request, investigated, learned, completed, next_steps, + files_read, files_edited, notes, prompt_number, created_at, + created_at_epoch + FROM session_summaries + WHERE memory_session_id = ? + ORDER BY created_at_epoch DESC + LIMIT 1 + `).get(e)||null}getFilesForSession(e){let n=this.db.prepare(` + SELECT files_read, files_modified + FROM observations + WHERE memory_session_id = ? + `).all(e),i=new Set,s=new Set;for(let o of n)Kc(o.files_read).forEach(a=>i.add(a)),Kc(o.files_modified).forEach(a=>s.add(a));return{filesRead:Array.from(i),filesModified:Array.from(s)}}getSessionById(e){return this.db.prepare(` + SELECT id, content_session_id, memory_session_id, project, + COALESCE(platform_source, '${Ur}') as platform_source, + user_prompt, custom_title + FROM sdk_sessions + WHERE id = ? + LIMIT 1 + `).get(e)||null}getSdkSessionsBySessionIds(e){if(e.length===0)return[];let r=e.map(()=>"?").join(",");return this.db.prepare(` + SELECT id, content_session_id, memory_session_id, project, + COALESCE(platform_source, '${Ur}') as platform_source, + user_prompt, custom_title, + started_at, started_at_epoch, completed_at, completed_at_epoch, status + FROM sdk_sessions + WHERE memory_session_id IN (${r}) + ORDER BY started_at_epoch DESC + `).all(...e)}getPromptNumberFromUserPrompts(e){return this.db.prepare(` + SELECT COUNT(*) as count FROM user_prompts WHERE content_session_id = ? + `).get(e).count}createSDKSession(e,r,n,i,s){let o=new Date,a=o.getTime(),c=_ee(i,s),u=c.platformSource??Ur,l=this.db.prepare(` + SELECT id, platform_source FROM sdk_sessions WHERE content_session_id = ? + `).get(e);if(l){if(r&&this.db.prepare(` + UPDATE sdk_sessions SET project = ? + WHERE content_session_id = ? AND (project IS NULL OR project = '') + `).run(r,e),c.customTitle&&this.db.prepare(` + UPDATE sdk_sessions SET custom_title = ? + WHERE content_session_id = ? AND custom_title IS NULL + `).run(c.customTitle,e),c.platformSource){let p=l.platform_source?.trim()?Rt(l.platform_source):void 0;if(!p)this.db.prepare(` + UPDATE sdk_sessions SET platform_source = ? + WHERE content_session_id = ? + AND COALESCE(platform_source, '') = '' + `).run(c.platformSource,e);else if(p!==c.platformSource)throw new Error(`Platform source conflict for session ${e}: existing=${p}, received=${c.platformSource}`)}return l.id}return this.db.prepare(` + INSERT INTO sdk_sessions + (content_session_id, memory_session_id, project, platform_source, user_prompt, custom_title, started_at, started_at_epoch, status) + VALUES (?, NULL, ?, ?, ?, ?, ?, ?, 'active') + `).run(e,r,u,n,c.customTitle||null,o.toISOString(),a),this.db.prepare("SELECT id FROM sdk_sessions WHERE content_session_id = ?").get(e).id}saveUserPrompt(e,r,n){let i=new Date,s=i.getTime();return this.db.prepare(` + INSERT INTO user_prompts + (content_session_id, prompt_number, prompt_text, created_at, created_at_epoch) + VALUES (?, ?, ?, ?, ?) + `).run(e,r,n,i.toISOString(),s).lastInsertRowid}getUserPrompt(e,r){return this.db.prepare(` + SELECT prompt_text + FROM user_prompts + WHERE content_session_id = ? AND prompt_number = ? + LIMIT 1 + `).get(e,r)?.prompt_text??null}storeObservation(e,r,n,i,s=0,o,a){let c=o??Date.now(),u=new Date(c).toISOString(),l=Lg(e,n.title,n.narrative),d=Ug(this.db,l,c);if(d)return{id:d.id,createdAtEpoch:d.created_at_epoch};let f=this.db.prepare(` + INSERT INTO observations + (memory_session_id, project, type, title, subtitle, facts, narrative, concepts, + files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch, + generated_by_model) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `).run(e,r,n.type,n.title,n.subtitle,JSON.stringify(n.facts),n.narrative,JSON.stringify(n.concepts),JSON.stringify(n.files_read),JSON.stringify(n.files_modified),i||null,s,l,u,c,a||null);return{id:Number(f.lastInsertRowid),createdAtEpoch:c}}storeSummary(e,r,n,i,s=0,o){let a=o??Date.now(),c=new Date(a).toISOString(),l=this.db.prepare(` + INSERT INTO session_summaries + (memory_session_id, project, request, investigated, learned, completed, + next_steps, notes, prompt_number, discovery_tokens, created_at, created_at_epoch) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `).run(e,r,n.request,n.investigated,n.learned,n.completed,n.next_steps,n.notes,i||null,s,c,a);return{id:Number(l.lastInsertRowid),createdAtEpoch:a}}storeObservations(e,r,n,i,s,o=0,a,c){let u=a??Date.now(),l=new Date(u).toISOString();return this.db.transaction(()=>{let p=[],f=this.db.prepare(` + INSERT INTO observations + (memory_session_id, project, type, title, subtitle, facts, narrative, concepts, + files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch, + generated_by_model) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `);for(let h of n){let g=Lg(e,h.title,h.narrative),v=Ug(this.db,g,u);if(v){p.push(v.id);continue}let y=f.run(e,r,h.type,h.title,h.subtitle,JSON.stringify(h.facts),h.narrative,JSON.stringify(h.concepts),JSON.stringify(h.files_read),JSON.stringify(h.files_modified),s||null,o,g,l,u,c||null);p.push(Number(y.lastInsertRowid))}let m=null;if(i){let g=this.db.prepare(` + INSERT INTO session_summaries + (memory_session_id, project, request, investigated, learned, completed, + next_steps, notes, prompt_number, discovery_tokens, created_at, created_at_epoch) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `).run(e,r,i.request,i.investigated,i.learned,i.completed,i.next_steps,i.notes,s||null,o,l,u);m=Number(g.lastInsertRowid)}return{observationIds:p,summaryId:m,createdAtEpoch:u}})()}storeObservationsAndMarkComplete(e,r,n,i,s,o,a,c=0,u,l){let d=u??Date.now(),p=new Date(d).toISOString();return this.db.transaction(()=>{let m=[],h=this.db.prepare(` + INSERT INTO observations + (memory_session_id, project, type, title, subtitle, facts, narrative, concepts, + files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch, + generated_by_model) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `);for(let y of n){let b=Lg(e,y.title,y.narrative),S=Ug(this.db,b,d);if(S){m.push(S.id);continue}let x=h.run(e,r,y.type,y.title,y.subtitle,JSON.stringify(y.facts),y.narrative,JSON.stringify(y.concepts),JSON.stringify(y.files_read),JSON.stringify(y.files_modified),a||null,c,b,p,d,l||null);m.push(Number(x.lastInsertRowid))}let g;if(i){let b=this.db.prepare(` + INSERT INTO session_summaries + (memory_session_id, project, request, investigated, learned, completed, + next_steps, notes, prompt_number, discovery_tokens, created_at, created_at_epoch) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `).run(e,r,i.request,i.investigated,i.learned,i.completed,i.next_steps,i.notes,a||null,c,p,d);g=Number(b.lastInsertRowid)}return this.db.prepare(` + UPDATE pending_messages + SET + status = 'processed', + completed_at_epoch = ?, + tool_input = NULL, + tool_response = NULL + WHERE id = ? AND status = 'processing' + `).run(d,s),{observationIds:m,summaryId:g,createdAtEpoch:d}})()}getSessionSummariesByIds(e,r={}){if(e.length===0)return[];let{orderBy:n="date_desc",limit:i,project:s}=r,o=n==="date_asc"?"ASC":"DESC",a=i?`LIMIT ${i}`:"",c=e.map(()=>"?").join(","),u=[...e],l=s?`WHERE id IN (${c}) AND project = ?`:`WHERE id IN (${c})`;return s&&u.push(s),this.db.prepare(` + SELECT * FROM session_summaries + ${l} + ORDER BY created_at_epoch ${o} + ${a} + `).all(...u)}getUserPromptsByIds(e,r={}){if(e.length===0)return[];let{orderBy:n="date_desc",limit:i,project:s}=r,o=n==="date_asc"?"ASC":"DESC",a=i?`LIMIT ${i}`:"",c=e.map(()=>"?").join(","),u=[...e],l=s?"AND s.project = ?":"";return s&&u.push(s),this.db.prepare(` + SELECT + up.*, + s.project, + s.memory_session_id + FROM user_prompts up + JOIN sdk_sessions s ON up.content_session_id = s.content_session_id + WHERE up.id IN (${c}) ${l} + ORDER BY up.created_at_epoch ${o} + ${a} + `).all(...u)}getTimelineAroundTimestamp(e,r=10,n=10,i){return this.getTimelineAroundObservation(null,e,r,n,i)}getTimelineAroundObservation(e,r,n=10,i=10,s){let o=s?"AND project = ?":"",a=s?[s]:[],c,u;if(e!==null){let g=` + SELECT id, created_at_epoch + FROM observations + WHERE id <= ? ${o} + ORDER BY id DESC + LIMIT ? + `,v=` + SELECT id, created_at_epoch + FROM observations + WHERE id >= ? ${o} + ORDER BY id ASC + LIMIT ? + `;try{let y=this.db.prepare(g).all(e,...a,n+1),b=this.db.prepare(v).all(e,...a,i+1);if(y.length===0&&b.length===0)return{observations:[],sessions:[],prompts:[]};c=y.length>0?y[y.length-1].created_at_epoch:r,u=b.length>0?b[b.length-1].created_at_epoch:r}catch(y){return _.error("DB","Error getting boundary observations",void 0,{error:y,project:s}),{observations:[],sessions:[],prompts:[]}}}else{let g=` + SELECT created_at_epoch + FROM observations + WHERE created_at_epoch <= ? ${o} + ORDER BY created_at_epoch DESC + LIMIT ? + `,v=` + SELECT created_at_epoch + FROM observations + WHERE created_at_epoch >= ? ${o} + ORDER BY created_at_epoch ASC + LIMIT ? + `;try{let y=this.db.prepare(g).all(r,...a,n),b=this.db.prepare(v).all(r,...a,i+1);if(y.length===0&&b.length===0)return{observations:[],sessions:[],prompts:[]};c=y.length>0?y[y.length-1].created_at_epoch:r,u=b.length>0?b[b.length-1].created_at_epoch:r}catch(y){return _.error("DB","Error getting boundary timestamps",void 0,{error:y,project:s}),{observations:[],sessions:[],prompts:[]}}}let l=` + SELECT * + FROM observations + WHERE created_at_epoch >= ? AND created_at_epoch <= ? ${o} + ORDER BY created_at_epoch ASC + `,d=` + SELECT * + FROM session_summaries + WHERE created_at_epoch >= ? AND created_at_epoch <= ? ${o} + ORDER BY created_at_epoch ASC + `,p=` + SELECT up.*, s.project, s.memory_session_id + FROM user_prompts up + JOIN sdk_sessions s ON up.content_session_id = s.content_session_id + WHERE up.created_at_epoch >= ? AND up.created_at_epoch <= ? ${o.replace("project","s.project")} + ORDER BY up.created_at_epoch ASC + `,f=this.db.prepare(l).all(c,u,...a),m=this.db.prepare(d).all(c,u,...a),h=this.db.prepare(p).all(c,u,...a);return{observations:f,sessions:m.map(g=>({id:g.id,memory_session_id:g.memory_session_id,project:g.project,request:g.request,completed:g.completed,next_steps:g.next_steps,created_at:g.created_at,created_at_epoch:g.created_at_epoch})),prompts:h.map(g=>({id:g.id,content_session_id:g.content_session_id,prompt_number:g.prompt_number,prompt_text:g.prompt_text,project:g.project,created_at:g.created_at,created_at_epoch:g.created_at_epoch}))}}getPromptById(e){return this.db.prepare(` + SELECT + p.id, + p.content_session_id, + p.prompt_number, + p.prompt_text, + s.project, + p.created_at, + p.created_at_epoch + FROM user_prompts p + LEFT JOIN sdk_sessions s ON p.content_session_id = s.content_session_id + WHERE p.id = ? + LIMIT 1 + `).get(e)||null}getPromptsByIds(e){if(e.length===0)return[];let r=e.map(()=>"?").join(",");return this.db.prepare(` + SELECT + p.id, + p.content_session_id, + p.prompt_number, + p.prompt_text, + s.project, + p.created_at, + p.created_at_epoch + FROM user_prompts p + LEFT JOIN sdk_sessions s ON p.content_session_id = s.content_session_id + WHERE p.id IN (${r}) + ORDER BY p.created_at_epoch DESC + `).all(...e)}getSessionSummaryById(e){return this.db.prepare(` + SELECT + id, + memory_session_id, + content_session_id, + project, + user_prompt, + request_summary, + learned_summary, + status, + created_at, + created_at_epoch + FROM sdk_sessions + WHERE id = ? + LIMIT 1 + `).get(e)||null}getOrCreateManualSession(e){let r=`manual-${e}`,n=`manual-content-${e}`;if(this.db.prepare("SELECT memory_session_id FROM sdk_sessions WHERE memory_session_id = ?").get(r))return r;let s=new Date;return this.db.prepare(` + INSERT INTO sdk_sessions (memory_session_id, content_session_id, project, platform_source, started_at, started_at_epoch, status) + VALUES (?, ?, ?, ?, ?, ?, 'active') + `).run(r,n,e,Ur,s.toISOString(),s.getTime()),_.info("SESSION","Created manual session",{memorySessionId:r,project:e}),r}close(){this.db.close()}importSdkSession(e){let r=this.db.prepare("SELECT id FROM sdk_sessions WHERE content_session_id = ?").get(e.content_session_id);return r?{imported:!1,id:r.id}:{imported:!0,id:this.db.prepare(` + INSERT INTO sdk_sessions ( + content_session_id, memory_session_id, project, platform_source, user_prompt, + started_at, started_at_epoch, completed_at, completed_at_epoch, status + ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `).run(e.content_session_id,e.memory_session_id,e.project,Rt(e.platform_source),e.user_prompt,e.started_at,e.started_at_epoch,e.completed_at,e.completed_at_epoch,e.status).lastInsertRowid}}importSessionSummary(e){let r=this.db.prepare("SELECT id FROM session_summaries WHERE memory_session_id = ?").get(e.memory_session_id);return r?{imported:!1,id:r.id}:{imported:!0,id:this.db.prepare(` + INSERT INTO session_summaries ( + memory_session_id, project, request, investigated, learned, + completed, next_steps, files_read, files_edited, notes, + prompt_number, discovery_tokens, created_at, created_at_epoch + ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `).run(e.memory_session_id,e.project,e.request,e.investigated,e.learned,e.completed,e.next_steps,e.files_read,e.files_edited,e.notes,e.prompt_number,e.discovery_tokens||0,e.created_at,e.created_at_epoch).lastInsertRowid}}importObservation(e){let r=this.db.prepare(` + SELECT id FROM observations + WHERE memory_session_id = ? AND title = ? AND created_at_epoch = ? + `).get(e.memory_session_id,e.title,e.created_at_epoch);return r?{imported:!1,id:r.id}:{imported:!0,id:this.db.prepare(` + INSERT INTO observations ( + memory_session_id, project, text, type, title, subtitle, + facts, narrative, concepts, files_read, files_modified, + prompt_number, discovery_tokens, created_at, created_at_epoch + ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `).run(e.memory_session_id,e.project,e.text,e.type,e.title,e.subtitle,e.facts,e.narrative,e.concepts,e.files_read,e.files_modified,e.prompt_number,e.discovery_tokens||0,e.created_at,e.created_at_epoch).lastInsertRowid}}importUserPrompt(e){let r=this.db.prepare(` + SELECT id FROM user_prompts + WHERE content_session_id = ? AND prompt_number = ? + `).get(e.content_session_id,e.prompt_number);return r?{imported:!1,id:r.id}:{imported:!0,id:this.db.prepare(` + INSERT INTO user_prompts ( + content_session_id, prompt_number, prompt_text, + created_at, created_at_epoch + ) VALUES (?, ?, ?, ?, ?) + `).run(e.content_session_id,e.prompt_number,e.prompt_text,e.created_at,e.created_at_epoch).lastInsertRowid}}}});var Ji=$((gNe,tj)=>{var $ee=require("path").relative;tj.exports=Pee;var Iee=process.cwd();function QD(t,e){for(var r=t.split(/[ ,]+/),n=String(e).toLowerCase(),i=0;i0}function Nee(t){if(process.noDeprecation)return!0;var e=process.env.NO_DEPRECATION||"";return QD(e,t)}function Mee(t){if(process.traceDeprecation)return!0;var e=process.env.TRACE_DEPRECATION||"";return QD(e,t)}function Hg(t,e){var r=Aee(process,"deprecation");if(!(!r&&this._ignored)){var n,i,s,o,a=0,c=!1,u=Zg(),l=this._file;for(e?(o=e,s=Qc(u[1]),s.name=o.name,l=s[0]):(a=2,o=Qc(u[a]),s=o);a",r=t.getLineNumber(),n=t.getColumnNumber();t.isEval()&&(e=t.getEvalOrigin()+", "+e);var i=[e,r,n];return i.callSite=t,i.name=t.getFunctionName(),i}function YD(t){var e=t.callSite,r=t.name;r||(r="");var n=e.getThis(),i=n&&e.getTypeName();return i==="Object"&&(i=void 0),i==="Function"&&(i=n.name||i),i&&e.getMethodName()?i+"."+r:r}function Dee(t,e,r){var n=new Date().toUTCString(),i=n+" "+this._namespace+" deprecated "+t;if(this._traced){for(var s=0;s{"use strict";Bg.exports=Zee;Bg.exports.format=rj;Bg.exports.parse=nj;var Fee=/\B(?=(\d{3})+(?!\d))/g,qee=/(?:\.0*|(\.[^0]+)0+)$/,ko={b:1,kb:1024,mb:1<<20,gb:1<<30,tb:Math.pow(1024,4),pb:Math.pow(1024,5)},Hee=/^((-|\+)?(\d+(?:\.\d+)?)) *(kb|mb|gb|tb|pb)$/i;function Zee(t,e){return typeof t=="string"?nj(t):typeof t=="number"?rj(t,e):null}function rj(t,e){if(!Number.isFinite(t))return null;var r=Math.abs(t),n=e&&e.thousandsSeparator||"",i=e&&e.unitSeparator||"",s=e&&e.decimalPlaces!==void 0?e.decimalPlaces:2,o=!!(e&&e.fixedDecimals),a=e&&e.unit||"";(!a||!ko[a.toLowerCase()])&&(r>=ko.pb?a="PB":r>=ko.tb?a="TB":r>=ko.gb?a="GB":r>=ko.mb?a="MB":r>=ko.kb?a="KB":a="B");var c=t/ko[a.toLowerCase()],u=c.toFixed(s);return o||(u=u.replace(qee,"$1")),n&&(u=u.split(".").map(function(l,d){return d===0?l.replace(Fee,n):l}).join(".")),u+i+a}function nj(t){if(typeof t=="number"&&!isNaN(t))return t;if(typeof t!="string")return null;var e=Hee.exec(t),r,n="b";return e?(r=parseFloat(e[1]),n=e[4].toLowerCase()):(r=parseInt(t,10),n="b"),isNaN(r)?null:Math.floor(ko[n]*r)}});var hp=$(Lk=>{"use strict";var ij=/; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g,Bee=/^[\u000b\u0020-\u007e\u0080-\u00ff]+$/,sj=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/,Gee=/\\([\u000b\u0020-\u00ff])/g,Wee=/([\\"])/g,oj=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;Lk.format=Vee;Lk.parse=Kee;function Vee(t){if(!t||typeof t!="object")throw new TypeError("argument obj is required");var e=t.parameters,r=t.type;if(!r||!oj.test(r))throw new TypeError("invalid type");var n=r;if(e&&typeof e=="object")for(var i,s=Object.keys(e).sort(),o=0;o0&&!Bee.test(e))throw new TypeError("invalid parameter value");return'"'+e.replace(Wee,"\\$1")+'"'}function Yee(t){this.parameters=Object.create(null),this.type=t}});var gp=$((_Ne,aj)=>{"use strict";aj.exports=Object.setPrototypeOf||({__proto__:[]}instanceof Array?Qee:ete);function Qee(t,e){return t.__proto__=e,t}function ete(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(t,r)||(t[r]=e[r]);return t}});var cj=$((bNe,tte)=>{tte.exports={"100":"Continue","101":"Switching Protocols","102":"Processing","103":"Early Hints","200":"OK","201":"Created","202":"Accepted","203":"Non-Authoritative Information","204":"No Content","205":"Reset Content","206":"Partial Content","207":"Multi-Status","208":"Already Reported","226":"IM Used","300":"Multiple Choices","301":"Moved Permanently","302":"Found","303":"See Other","304":"Not Modified","305":"Use Proxy","307":"Temporary Redirect","308":"Permanent Redirect","400":"Bad Request","401":"Unauthorized","402":"Payment Required","403":"Forbidden","404":"Not Found","405":"Method Not Allowed","406":"Not Acceptable","407":"Proxy Authentication Required","408":"Request Timeout","409":"Conflict","410":"Gone","411":"Length Required","412":"Precondition Failed","413":"Payload Too Large","414":"URI Too Long","415":"Unsupported Media Type","416":"Range Not Satisfiable","417":"Expectation Failed","418":"I'm a Teapot","421":"Misdirected Request","422":"Unprocessable Entity","423":"Locked","424":"Failed Dependency","425":"Too Early","426":"Upgrade Required","428":"Precondition Required","429":"Too Many Requests","431":"Request Header Fields Too Large","451":"Unavailable For Legal Reasons","500":"Internal Server Error","501":"Not Implemented","502":"Bad Gateway","503":"Service Unavailable","504":"Gateway Timeout","505":"HTTP Version Not Supported","506":"Variant Also Negotiates","507":"Insufficient Storage","508":"Loop Detected","509":"Bandwidth Limit Exceeded","510":"Not Extended","511":"Network Authentication Required"}});var vp=$((SNe,lj)=>{"use strict";var Uk=cj();lj.exports=yi;yi.message=Uk;yi.code=rte(Uk);yi.codes=nte(Uk);yi.redirect={300:!0,301:!0,302:!0,303:!0,305:!0,307:!0,308:!0};yi.empty={204:!0,205:!0,304:!0};yi.retry={502:!0,503:!0,504:!0};function rte(t){var e={};return Object.keys(t).forEach(function(n){var i=t[n],s=Number(n);e[i.toLowerCase()]=s}),e}function nte(t){return Object.keys(t).map(function(r){return Number(r)})}function ite(t){var e=t.toLowerCase();if(!Object.prototype.hasOwnProperty.call(yi.code,e))throw new Error('invalid status message: "'+t+'"');return yi.code[e]}function uj(t){if(!Object.prototype.hasOwnProperty.call(yi.message,t))throw new Error("invalid status code: "+t);return yi.message[t]}function yi(t){if(typeof t=="number")return uj(t);if(typeof t!="string")throw new TypeError("code must be a number or string");var e=parseInt(t,10);return isNaN(e)?ite(t):uj(e)}});var dj=$((xNe,Fk)=>{typeof Object.create=="function"?Fk.exports=function(e,r){r&&(e.super_=r,e.prototype=Object.create(r.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:Fk.exports=function(e,r){if(r){e.super_=r;var n=function(){};n.prototype=r.prototype,e.prototype=new n,e.prototype.constructor=e}}});var pj=$((wNe,Hk)=>{try{if(qk=require("util"),typeof qk.inherits!="function")throw"";Hk.exports=qk.inherits}catch{Hk.exports=dj()}var qk});var mj=$((ENe,fj)=>{"use strict";fj.exports=ste;function ste(t){return t.split(" ").map(function(e){return e.slice(0,1).toUpperCase()+e.slice(1)}).join("").replace(/[^ _0-9a-z]/gi,"")}});var ma=$((kNe,fa)=>{"use strict";var ote=Ji()("http-errors"),hj=gp(),tu=vp(),Zk=pj(),ate=mj();fa.exports=Gg;fa.exports.HttpError=cte();fa.exports.isHttpError=lte(fa.exports.HttpError);pte(fa.exports,tu.codes,fa.exports.HttpError);function gj(t){return+(String(t).charAt(0)+"00")}function Gg(){for(var t,e,r=500,n={},i=0;i=600)&&ote("non-error status code; use only 4xx or 5xx status codes"),(typeof r!="number"||!tu.message[r]&&(r<400||r>=600))&&(r=500);var a=Gg[r]||Gg[gj(r)];t||(t=a?new a(e):new Error(e||tu.message[r]),Error.captureStackTrace(t,Gg)),(!a||!(t instanceof a)||t.status!==r)&&(t.expose=r<500,t.status=t.statusCode=r);for(var c in n)c!=="status"&&c!=="statusCode"&&(t[c]=n[c]);return t}function cte(){function t(){throw new TypeError("cannot construct abstract class")}return Zk(t,Error),t}function ute(t,e,r){var n=yj(e);function i(s){var o=s??tu.message[r],a=new Error(o);return Error.captureStackTrace(a,i),hj(a,i.prototype),Object.defineProperty(a,"message",{enumerable:!0,configurable:!0,value:o,writable:!0}),Object.defineProperty(a,"name",{enumerable:!1,configurable:!0,value:n,writable:!0}),a}return Zk(i,t),vj(i,n),i.prototype.status=r,i.prototype.statusCode=r,i.prototype.expose=!0,i}function lte(t){return function(r){return!r||typeof r!="object"?!1:r instanceof t?!0:r instanceof Error&&typeof r.expose=="boolean"&&typeof r.statusCode=="number"&&r.status===r.statusCode}}function dte(t,e,r){var n=yj(e);function i(s){var o=s??tu.message[r],a=new Error(o);return Error.captureStackTrace(a,i),hj(a,i.prototype),Object.defineProperty(a,"message",{enumerable:!0,configurable:!0,value:o,writable:!0}),Object.defineProperty(a,"name",{enumerable:!1,configurable:!0,value:n,writable:!0}),a}return Zk(i,t),vj(i,n),i.prototype.status=r,i.prototype.statusCode=r,i.prototype.expose=!1,i}function vj(t,e){var r=Object.getOwnPropertyDescriptor(t,"name");r&&r.configurable&&(r.value=e,Object.defineProperty(t,"name",r))}function pte(t,e,r){e.forEach(function(i){var s,o=ate(tu.message[i]);switch(gj(i)){case 400:s=ute(r,o,i);break;case 500:s=dte(r,o,i);break}s&&(t[i]=s,t[o]=s)})}function yj(t){return t.slice(-5)==="Error"?t:t+"Error"}});var bj=$((TNe,_j)=>{var yp=1e3,_p=yp*60,bp=_p*60,Sp=bp*24,fte=Sp*365.25;_j.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return mte(t);if(r==="number"&&isNaN(t)===!1)return e.long?gte(t):hte(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function mte(t){if(t=String(t),!(t.length>100)){var e=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*fte;case"days":case"day":case"d":return r*Sp;case"hours":case"hour":case"hrs":case"hr":case"h":return r*bp;case"minutes":case"minute":case"mins":case"min":case"m":return r*_p;case"seconds":case"second":case"secs":case"sec":case"s":return r*yp;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function hte(t){return t>=Sp?Math.round(t/Sp)+"d":t>=bp?Math.round(t/bp)+"h":t>=_p?Math.round(t/_p)+"m":t>=yp?Math.round(t/yp)+"s":t+"ms"}function gte(t){return Wg(t,Sp,"day")||Wg(t,bp,"hour")||Wg(t,_p,"minute")||Wg(t,yp,"second")||t+" ms"}function Wg(t,e,r){if(!(t{pt=Sj.exports=Gk.debug=Gk.default=Gk;pt.coerce=Ste;pt.disable=_te;pt.enable=yte;pt.enabled=bte;pt.humanize=bj();pt.names=[];pt.skips=[];pt.formatters={};var Bk;function vte(t){var e=0,r;for(r in t)e=(e<<5)-e+t.charCodeAt(r),e|=0;return pt.colors[Math.abs(e)%pt.colors.length]}function Gk(t){function e(){if(e.enabled){var r=e,n=+new Date,i=n-(Bk||n);r.diff=i,r.prev=Bk,r.curr=n,Bk=n;for(var s=new Array(arguments.length),o=0;o{rn=wj.exports=Wk();rn.log=Ete;rn.formatArgs=wte;rn.save=kte;rn.load=xj;rn.useColors=xte;rn.storage=typeof chrome<"u"&&typeof chrome.storage<"u"?chrome.storage.local:Tte();rn.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function xte(){return typeof window<"u"&&window.process&&window.process.type==="renderer"?!0:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}rn.formatters.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}};function wte(t){var e=this.useColors;if(t[0]=(e?"%c":"")+this.namespace+(e?" %c":" ")+t[0]+(e?"%c ":" ")+"+"+rn.humanize(this.diff),!!e){var r="color: "+this.color;t.splice(1,0,r,"color: inherit");var n=0,i=0;t[0].replace(/%[a-zA-Z%]/g,function(s){s!=="%%"&&(n++,s==="%c"&&(i=n))}),t.splice(i,0,r)}}function Ete(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function kte(t){try{t==null?rn.storage.removeItem("debug"):rn.storage.debug=t}catch{}}function xj(){var t;try{t=rn.storage.debug}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}rn.enable(xj());function Tte(){try{return window.localStorage}catch{}}});var Ij=$((mr,$j)=>{var kj=require("tty"),xp=require("util");mr=$j.exports=Wk();mr.init=Ate;mr.log=Ote;mr.formatArgs=Rte;mr.save=Cte;mr.load=Tj;mr.useColors=Ite;mr.colors=[6,2,3,4,5,1];mr.inspectOpts=Object.keys(process.env).filter(function(t){return/^debug_/i.test(t)}).reduce(function(t,e){var r=e.substring(6).toLowerCase().replace(/_([a-z])/g,function(i,s){return s.toUpperCase()}),n=process.env[e];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),t[r]=n,t},{});var ru=parseInt(process.env.DEBUG_FD,10)||2;ru!==1&&ru!==2&&xp.deprecate(function(){},"except for stderr(2) and stdout(1), any other usage of DEBUG_FD is deprecated. Override debug.log if you want to use a different log function (https://git.io/debug_fd)")();var $te=ru===1?process.stdout:ru===2?process.stderr:Pte(ru);function Ite(){return"colors"in mr.inspectOpts?!!mr.inspectOpts.colors:kj.isatty(ru)}mr.formatters.o=function(t){return this.inspectOpts.colors=this.useColors,xp.inspect(t,this.inspectOpts).split(` +`).map(function(e){return e.trim()}).join(" ")};mr.formatters.O=function(t){return this.inspectOpts.colors=this.useColors,xp.inspect(t,this.inspectOpts)};function Rte(t){var e=this.namespace,r=this.useColors;if(r){var n=this.color,i=" \x1B[3"+n+";1m"+e+" \x1B[0m";t[0]=i+t[0].split(` +`).join(` +`+i),t.push("\x1B[3"+n+"m+"+mr.humanize(this.diff)+"\x1B[0m")}else t[0]=new Date().toUTCString()+" "+e+" "+t[0]}function Ote(){return $te.write(xp.format.apply(xp,arguments)+` +`)}function Cte(t){t==null?delete process.env.DEBUG:process.env.DEBUG=t}function Tj(){return process.env.DEBUG}function Pte(t){var e,r=process.binding("tty_wrap");switch(r.guessHandleType(t)){case"TTY":e=new kj.WriteStream(t),e._type="tty",e._handle&&e._handle.unref&&e._handle.unref();break;case"FILE":var n=require("fs");e=new n.SyncWriteStream(t,{autoClose:!1}),e._type="fs";break;case"PIPE":case"TCP":var i=require("net");e=new i.Socket({fd:t,readable:!1,writable:!0}),e.readable=!1,e.read=null,e._type="pipe",e._handle&&e._handle.unref&&e._handle.unref();break;default:throw new Error("Implement me. Unknown stream file type!")}return e.fd=t,e._isStdio=!0,e}function Ate(t){t.inspectOpts={};for(var e=Object.keys(mr.inspectOpts),r=0;r{typeof process<"u"&&process.type==="renderer"?Vk.exports=Ej():Vk.exports=Ij()});var Kk=$((INe,Oj)=>{"use strict";var Nte=require("events").EventEmitter,Mte=require("fs").ReadStream,Rj=require("stream"),ha=require("zlib");Oj.exports=Dte;function Dte(t,e){return qte(t)?jte(t):Hte(t)?Lte(t):Ute(t)&&t.destroy(),Fte(t)&&e&&(t.removeAllListeners("error"),t.addListener("error",Zte)),t}function jte(t){t.destroy(),typeof t.close=="function"&&t.on("open",Gte)}function zte(t){if(t._hadError===!0){var e=t._binding===null?"_binding":"_handle";t[e]={close:function(){this[e]=null}}}t.close()}function Lte(t){typeof t.destroy=="function"?t._binding?(t.destroy(),t._processing?(t._needDrain=!0,t.once("drain",Bte)):t._binding.clear()):t._destroy&&t._destroy!==Rj.Transform.prototype._destroy?t.destroy():t._destroy&&typeof t.close=="function"?(t.destroyed=!0,t.close()):t.destroy():typeof t.close=="function"&&zte(t)}function Ute(t){return t instanceof Rj&&typeof t.destroy=="function"}function Fte(t){return t instanceof Nte}function qte(t){return t instanceof Mte}function Hte(t){return t instanceof ha.Gzip||t instanceof ha.Gunzip||t instanceof ha.Deflate||t instanceof ha.DeflateRaw||t instanceof ha.Inflate||t instanceof ha.InflateRaw||t instanceof ha.Unzip}function Zte(){}function Bte(){this._binding.clear()}function Gte(){typeof this.fd=="number"&&this.close()}});var ga=$((RNe,Cj)=>{"use strict";var Vg=require("buffer"),nu=Vg.Buffer,Yn={},Qn;for(Qn in Vg)Vg.hasOwnProperty(Qn)&&(Qn==="SlowBuffer"||Qn==="Buffer"||(Yn[Qn]=Vg[Qn]));var iu=Yn.Buffer={};for(Qn in nu)nu.hasOwnProperty(Qn)&&(Qn==="allocUnsafe"||Qn==="allocUnsafeSlow"||(iu[Qn]=nu[Qn]));Yn.Buffer.prototype=nu.prototype;(!iu.from||iu.from===Uint8Array.from)&&(iu.from=function(t,e,r){if(typeof t=="number")throw new TypeError('The "value" argument must not be of type number. Received type '+typeof t);if(t&&typeof t.length>"u")throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);return nu(t,e,r)});iu.alloc||(iu.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError('The "size" argument must be of type number. Received type '+typeof t);if(t<0||t>=2*(1<<30))throw new RangeError('The value "'+t+'" is invalid for option "size"');var n=nu(t);return!e||e.length===0?n.fill(0):typeof r=="string"?n.fill(e,r):n.fill(e),n});if(!Yn.kStringMaxLength)try{Yn.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch{}Yn.constants||(Yn.constants={MAX_LENGTH:Yn.kMaxLength},Yn.kStringMaxLength&&(Yn.constants.MAX_STRING_LENGTH=Yn.kStringMaxLength));Cj.exports=Yn});var Aj=$(Yk=>{"use strict";var Pj="\uFEFF";Yk.PrependBOM=Jk;function Jk(t,e){this.encoder=t,this.addBOM=!0}Jk.prototype.write=function(t){return this.addBOM&&(t=Pj+t,this.addBOM=!1),this.encoder.write(t)};Jk.prototype.end=function(){return this.encoder.end()};Yk.StripBOM=Xk;function Xk(t,e){this.decoder=t,this.pass=!1,this.options=e||{}}Xk.prototype.write=function(t){var e=this.decoder.write(t);return this.pass||!e||(e[0]===Pj&&(e=e.slice(1),typeof this.options.stripBOM=="function"&&this.options.stripBOM()),this.pass=!0),e};Xk.prototype.end=function(){return this.decoder.end()}});var Dj=$((CNe,Mj)=>{"use strict";var wp=ga().Buffer;Mj.exports={utf8:{type:"_internal",bomAware:!0},cesu8:{type:"_internal",bomAware:!0},unicode11utf8:"utf8",ucs2:{type:"_internal",bomAware:!0},utf16le:"ucs2",binary:{type:"_internal"},base64:{type:"_internal"},hex:{type:"_internal"},_internal:Qk};function Qk(t,e){this.enc=t.encodingName,this.bomAware=t.bomAware,this.enc==="base64"?this.encoder=tT:this.enc==="cesu8"&&(this.enc="utf8",this.encoder=rT,wp.from("eda0bdedb2a9","hex").toString()!=="\u{1F4A9}"&&(this.decoder=nT,this.defaultCharUnicode=e.defaultCharUnicode))}Qk.prototype.encoder=eT;Qk.prototype.decoder=Nj;var Kg=require("string_decoder").StringDecoder;Kg.prototype.end||(Kg.prototype.end=function(){});function Nj(t,e){Kg.call(this,e.enc)}Nj.prototype=Kg.prototype;function eT(t,e){this.enc=e.enc}eT.prototype.write=function(t){return wp.from(t,this.enc)};eT.prototype.end=function(){};function tT(t,e){this.prevStr=""}tT.prototype.write=function(t){t=this.prevStr+t;var e=t.length-t.length%4;return this.prevStr=t.slice(e),t=t.slice(0,e),wp.from(t,"base64")};tT.prototype.end=function(){return wp.from(this.prevStr,"base64")};function rT(t,e){}rT.prototype.write=function(t){for(var e=wp.alloc(t.length*3),r=0,n=0;n>>6),e[r++]=128+(i&63)):(e[r++]=224+(i>>>12),e[r++]=128+(i>>>6&63),e[r++]=128+(i&63))}return e.slice(0,r)};rT.prototype.end=function(){};function nT(t,e){this.acc=0,this.contBytes=0,this.accBytes=0,this.defaultCharUnicode=e.defaultCharUnicode}nT.prototype.write=function(t){for(var e=this.acc,r=this.contBytes,n=this.accBytes,i="",s=0;s0&&(i+=this.defaultCharUnicode,r=0),o<128?i+=String.fromCharCode(o):o<224?(e=o&31,r=1,n=1):o<240?(e=o&15,r=2,n=1):i+=this.defaultCharUnicode):r>0?(e=e<<6|o&63,r--,n++,r===0&&(n===2&&e<128&&e>0?i+=this.defaultCharUnicode:n===3&&e<2048?i+=this.defaultCharUnicode:i+=String.fromCharCode(e))):i+=this.defaultCharUnicode}return this.acc=e,this.contBytes=r,this.accBytes=n,i};nT.prototype.end=function(){var t=0;return this.contBytes>0&&(t+=this.defaultCharUnicode),t}});var zj=$(uT=>{"use strict";var Jg=ga().Buffer;uT.utf16be=Xg;function Xg(){}Xg.prototype.encoder=iT;Xg.prototype.decoder=sT;Xg.prototype.bomAware=!0;function iT(){}iT.prototype.write=function(t){for(var e=Jg.from(t,"ucs2"),r=0;r=2)if(t[0]==254&&t[1]==255)r="utf-16be";else if(t[0]==255&&t[1]==254)r="utf-16le";else{for(var n=0,i=0,s=Math.min(t.length-t.length%2,64),o=0;on?r="utf-16be":i{"use strict";var Xi=ga().Buffer;ev.utf7=Yg;ev.unicode11utf7="utf7";function Yg(t,e){this.iconv=e}Yg.prototype.encoder=dT;Yg.prototype.decoder=pT;Yg.prototype.bomAware=!0;var Wte=/[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;function dT(t,e){this.iconv=e.iconv}dT.prototype.write=function(t){return Xi.from(t.replace(Wte,function(e){return"+"+(e==="+"?"":this.iconv.encode(e,"utf16-be").toString("base64").replace(/=+$/,""))+"-"}.bind(this)))};dT.prototype.end=function(){};function pT(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=""}var Vte=/[A-Za-z0-9\/+]/,fT=[];for(Ep=0;Ep<256;Ep++)fT[Ep]=Vte.test(String.fromCharCode(Ep));var Ep,Kte=43,va=45,lT=38;pT.prototype.write=function(t){for(var e="",r=0,n=this.inBase64,i=this.base64Accum,s=0;s0&&(t=this.iconv.decode(Xi.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",t};ev.utf7imap=Qg;function Qg(t,e){this.iconv=e}Qg.prototype.encoder=mT;Qg.prototype.decoder=hT;Qg.prototype.bomAware=!0;function mT(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=Xi.alloc(6),this.base64AccumIdx=0}mT.prototype.write=function(t){for(var e=this.inBase64,r=this.base64Accum,n=this.base64AccumIdx,i=Xi.alloc(t.length*5+10),s=0,o=0;o0&&(s+=i.write(r.slice(0,n).toString("base64").replace(/\//g,",").replace(/=+$/,""),s),n=0),i[s++]=va,e=!1),e||(i[s++]=a,a===lT&&(i[s++]=va))):(e||(i[s++]=lT,e=!0),e&&(r[n++]=a>>8,r[n++]=a&255,n==r.length&&(s+=i.write(r.toString("base64").replace(/\//g,","),s),n=0)))}return this.inBase64=e,this.base64AccumIdx=n,i.slice(0,s)};mT.prototype.end=function(){var t=Xi.alloc(10),e=0;return this.inBase64&&(this.base64AccumIdx>0&&(e+=t.write(this.base64Accum.slice(0,this.base64AccumIdx).toString("base64").replace(/\//g,",").replace(/=+$/,""),e),this.base64AccumIdx=0),t[e++]=va,this.inBase64=!1),t.slice(0,e)};function hT(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=""}var Lj=fT.slice();Lj[44]=!0;hT.prototype.write=function(t){for(var e="",r=0,n=this.inBase64,i=this.base64Accum,s=0;s0&&(t=this.iconv.decode(Xi.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",t}});var qj=$(Fj=>{"use strict";var tv=ga().Buffer;Fj._sbcs=gT;function gT(t,e){if(!t)throw new Error("SBCS codec is called without the data.");if(!t.chars||t.chars.length!==128&&t.chars.length!==256)throw new Error("Encoding '"+t.type+"' has incorrect 'chars' (must be of len 128 or 256)");if(t.chars.length===128){for(var r="",n=0;n<128;n++)r+=String.fromCharCode(n);t.chars=r+t.chars}this.decodeBuf=tv.from(t.chars,"ucs2");for(var i=tv.alloc(65536,e.defaultCharSingleByte.charCodeAt(0)),n=0;n{"use strict";Hj.exports={10029:"maccenteuro",maccenteuro:{type:"_sbcs",chars:"\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7"},808:"cp808",ibm808:"cp808",cp808:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0"},mik:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ascii8bit:"ascii",usascii:"ascii",ansix34:"ascii",ansix341968:"ascii",ansix341986:"ascii",csascii:"ascii",cp367:"ascii",ibm367:"ascii",isoir6:"ascii",iso646us:"ascii",iso646irv:"ascii",us:"ascii",latin1:"iso88591",latin2:"iso88592",latin3:"iso88593",latin4:"iso88594",latin5:"iso88599",latin6:"iso885910",latin7:"iso885913",latin8:"iso885914",latin9:"iso885915",latin10:"iso885916",csisolatin1:"iso88591",csisolatin2:"iso88592",csisolatin3:"iso88593",csisolatin4:"iso88594",csisolatincyrillic:"iso88595",csisolatinarabic:"iso88596",csisolatingreek:"iso88597",csisolatinhebrew:"iso88598",csisolatin5:"iso88599",csisolatin6:"iso885910",l1:"iso88591",l2:"iso88592",l3:"iso88593",l4:"iso88594",l5:"iso88599",l6:"iso885910",l7:"iso885913",l8:"iso885914",l9:"iso885915",l10:"iso885916",isoir14:"iso646jp",isoir57:"iso646cn",isoir100:"iso88591",isoir101:"iso88592",isoir109:"iso88593",isoir110:"iso88594",isoir144:"iso88595",isoir127:"iso88596",isoir126:"iso88597",isoir138:"iso88598",isoir148:"iso88599",isoir157:"iso885910",isoir166:"tis620",isoir179:"iso885913",isoir199:"iso885914",isoir203:"iso885915",isoir226:"iso885916",cp819:"iso88591",ibm819:"iso88591",cyrillic:"iso88595",arabic:"iso88596",arabic8:"iso88596",ecma114:"iso88596",asmo708:"iso88596",greek:"iso88597",greek8:"iso88597",ecma118:"iso88597",elot928:"iso88597",hebrew:"iso88598",hebrew8:"iso88598",turkish:"iso88599",turkish8:"iso88599",thai:"iso885911",thai8:"iso885911",celtic:"iso885914",celtic8:"iso885914",isoceltic:"iso885914",tis6200:"tis620",tis62025291:"tis620",tis62025330:"tis620",1e4:"macroman",10006:"macgreek",10007:"maccyrillic",10079:"maciceland",10081:"macturkish",cspc8codepage437:"cp437",cspc775baltic:"cp775",cspc850multilingual:"cp850",cspcp852:"cp852",cspc862latinhebrew:"cp862",cpgr:"cp869",msee:"cp1250",mscyrl:"cp1251",msansi:"cp1252",msgreek:"cp1253",msturk:"cp1254",mshebr:"cp1255",msarab:"cp1256",winbaltrim:"cp1257",cp20866:"koi8r",20866:"koi8r",ibm878:"koi8r",cskoi8r:"koi8r",cp21866:"koi8u",21866:"koi8u",ibm1168:"koi8u",strk10482002:"rk1048",tcvn5712:"tcvn",tcvn57121:"tcvn",gb198880:"iso646cn",cn:"iso646cn",csiso14jisc6220ro:"iso646jp",jisc62201969ro:"iso646jp",jp:"iso646jp",cshproman8:"hproman8",r8:"hproman8",roman8:"hproman8",xroman8:"hproman8",ibm1051:"hproman8",mac:"macintosh",csmacintosh:"macintosh"}});var Gj=$((DNe,Bj)=>{"use strict";Bj.exports={437:"cp437",737:"cp737",775:"cp775",850:"cp850",852:"cp852",855:"cp855",856:"cp856",857:"cp857",858:"cp858",860:"cp860",861:"cp861",862:"cp862",863:"cp863",864:"cp864",865:"cp865",866:"cp866",869:"cp869",874:"windows874",922:"cp922",1046:"cp1046",1124:"cp1124",1125:"cp1125",1129:"cp1129",1133:"cp1133",1161:"cp1161",1162:"cp1162",1163:"cp1163",1250:"windows1250",1251:"windows1251",1252:"windows1252",1253:"windows1253",1254:"windows1254",1255:"windows1255",1256:"windows1256",1257:"windows1257",1258:"windows1258",28591:"iso88591",28592:"iso88592",28593:"iso88593",28594:"iso88594",28595:"iso88595",28596:"iso88596",28597:"iso88597",28598:"iso88598",28599:"iso88599",28600:"iso885910",28601:"iso885911",28603:"iso885913",28604:"iso885914",28605:"iso885915",28606:"iso885916",windows874:{type:"_sbcs",chars:"\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},win874:"windows874",cp874:"windows874",windows1250:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},win1250:"windows1250",cp1250:"windows1250",windows1251:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},win1251:"windows1251",cp1251:"windows1251",windows1252:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},win1252:"windows1252",cp1252:"windows1252",windows1253:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},win1253:"windows1253",cp1253:"windows1253",windows1254:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},win1254:"windows1254",cp1254:"windows1254",windows1255:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},win1255:"windows1255",cp1255:"windows1255",windows1256:{type:"_sbcs",chars:"\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2"},win1256:"windows1256",cp1256:"windows1256",windows1257:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9"},win1257:"windows1257",cp1257:"windows1257",windows1258:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},win1258:"windows1258",cp1258:"windows1258",iso88591:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28591:"iso88591",iso88592:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},cp28592:"iso88592",iso88593:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9"},cp28593:"iso88593",iso88594:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9"},cp28594:"iso88594",iso88595:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},cp28595:"iso88595",iso88596:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},cp28596:"iso88596",iso88597:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},cp28597:"iso88597",iso88598:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},cp28598:"iso88598",iso88599:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},cp28599:"iso88599",iso885910:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138"},cp28600:"iso885910",iso885911:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},cp28601:"iso885911",iso885913:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019"},cp28603:"iso885913",iso885914:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF"},cp28604:"iso885914",iso885915:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28605:"iso885915",iso885916:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF"},cp28606:"iso885916",cp437:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm437:"cp437",csibm437:"cp437",cp737:{type:"_sbcs",chars:"\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm737:"cp737",csibm737:"cp737",cp775:{type:"_sbcs",chars:"\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm775:"cp775",csibm775:"cp775",cp850:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm850:"cp850",csibm850:"cp850",cp852:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0"},ibm852:"cp852",csibm852:"cp852",cp855:{type:"_sbcs",chars:"\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0"},ibm855:"cp855",csibm855:"cp855",cp856:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm856:"cp856",csibm856:"cp856",cp857:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm857:"cp857",csibm857:"cp857",cp858:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm858:"cp858",csibm858:"cp858",cp860:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm860:"cp860",csibm860:"cp860",cp861:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm861:"cp861",csibm861:"cp861",cp862:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm862:"cp862",csibm862:"cp862",cp863:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm863:"cp863",csibm863:"cp863",cp864:{type:"_sbcs",chars:`\0\x07\b +\v\f\r\x1B !"#$\u066A&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xB0\xB7\u2219\u221A\u2592\u2500\u2502\u253C\u2524\u252C\u251C\u2534\u2510\u250C\u2514\u2518\u03B2\u221E\u03C6\xB1\xBD\xBC\u2248\xAB\xBB\uFEF7\uFEF8\uFFFD\uFFFD\uFEFB\uFEFC\uFFFD\xA0\xAD\uFE82\xA3\xA4\uFE84\uFFFD\uFFFD\uFE8E\uFE8F\uFE95\uFE99\u060C\uFE9D\uFEA1\uFEA5\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFED1\u061B\uFEB1\uFEB5\uFEB9\u061F\xA2\uFE80\uFE81\uFE83\uFE85\uFECA\uFE8B\uFE8D\uFE91\uFE93\uFE97\uFE9B\uFE9F\uFEA3\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uFEB3\uFEB7\uFEBB\uFEBF\uFEC1\uFEC5\uFECB\uFECF\xA6\xAC\xF7\xD7\uFEC9\u0640\uFED3\uFED7\uFEDB\uFEDF\uFEE3\uFEE7\uFEEB\uFEED\uFEEF\uFEF3\uFEBD\uFECC\uFECE\uFECD\uFEE1\uFE7D\u0651\uFEE5\uFEE9\uFEEC\uFEF0\uFEF2\uFED0\uFED5\uFEF5\uFEF6\uFEDD\uFED9\uFEF1\u25A0\uFFFD`},ibm864:"cp864",csibm864:"cp864",cp865:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xA4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm865:"cp865",csibm865:"cp865",cp866:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\xA4\u25A0\xA0"},ibm866:"cp866",csibm866:"cp866",cp869:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0386\uFFFD\xB7\xAC\xA6\u2018\u2019\u0388\u2015\u0389\u038A\u03AA\u038C\uFFFD\uFFFD\u038E\u03AB\xA9\u038F\xB2\xB3\u03AC\xA3\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03CD\u0391\u0392\u0393\u0394\u0395\u0396\u0397\xBD\u0398\u0399\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u039A\u039B\u039C\u039D\u2563\u2551\u2557\u255D\u039E\u039F\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u03A0\u03A1\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u2518\u250C\u2588\u2584\u03B4\u03B5\u2580\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u0384\xAD\xB1\u03C5\u03C6\u03C7\xA7\u03C8\u0385\xB0\xA8\u03C9\u03CB\u03B0\u03CE\u25A0\xA0"},ibm869:"cp869",csibm869:"cp869",cp922:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\u203E\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0160\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\u017D\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0161\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\u017E\xFF"},ibm922:"cp922",csibm922:"cp922",cp1046:{type:"_sbcs",chars:"\uFE88\xD7\xF7\uF8F6\uF8F5\uF8F4\uF8F7\uFE71\x88\u25A0\u2502\u2500\u2510\u250C\u2514\u2518\uFE79\uFE7B\uFE7D\uFE7F\uFE77\uFE8A\uFEF0\uFEF3\uFEF2\uFECE\uFECF\uFED0\uFEF6\uFEF8\uFEFA\uFEFC\xA0\uF8FA\uF8F9\uF8F8\xA4\uF8FB\uFE8B\uFE91\uFE97\uFE9B\uFE9F\uFEA3\u060C\xAD\uFEA7\uFEB3\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFEB7\u061B\uFEBB\uFEBF\uFECA\u061F\uFECB\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\uFEC7\u0639\u063A\uFECC\uFE82\uFE84\uFE8E\uFED3\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFED7\uFEDB\uFEDF\uF8FC\uFEF5\uFEF7\uFEF9\uFEFB\uFEE3\uFEE7\uFEEC\uFEE9\uFFFD"},ibm1046:"cp1046",csibm1046:"cp1046",cp1124:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0490\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0491\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},ibm1124:"cp1124",csibm1124:"cp1124",cp1125:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0490\u0491\u0404\u0454\u0406\u0456\u0407\u0457\xB7\u221A\u2116\xA4\u25A0\xA0"},ibm1125:"cp1125",csibm1125:"cp1125",cp1129:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},ibm1129:"cp1129",csibm1129:"cp1129",cp1133:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E81\u0E82\u0E84\u0E87\u0E88\u0EAA\u0E8A\u0E8D\u0E94\u0E95\u0E96\u0E97\u0E99\u0E9A\u0E9B\u0E9C\u0E9D\u0E9E\u0E9F\u0EA1\u0EA2\u0EA3\u0EA5\u0EA7\u0EAB\u0EAD\u0EAE\uFFFD\uFFFD\uFFFD\u0EAF\u0EB0\u0EB2\u0EB3\u0EB4\u0EB5\u0EB6\u0EB7\u0EB8\u0EB9\u0EBC\u0EB1\u0EBB\u0EBD\uFFFD\uFFFD\uFFFD\u0EC0\u0EC1\u0EC2\u0EC3\u0EC4\u0EC8\u0EC9\u0ECA\u0ECB\u0ECC\u0ECD\u0EC6\uFFFD\u0EDC\u0EDD\u20AD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0ED0\u0ED1\u0ED2\u0ED3\u0ED4\u0ED5\u0ED6\u0ED7\u0ED8\u0ED9\uFFFD\uFFFD\xA2\xAC\xA6\uFFFD"},ibm1133:"cp1133",csibm1133:"cp1133",cp1161:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E48\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\u0E49\u0E4A\u0E4B\u20AC\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\xA2\xAC\xA6\xA0"},ibm1161:"cp1161",csibm1161:"cp1161",cp1162:{type:"_sbcs",chars:"\u20AC\x81\x82\x83\x84\u2026\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},ibm1162:"cp1162",csibm1162:"cp1162",cp1163:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},ibm1163:"cp1163",csibm1163:"cp1163",maccroatian:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u2126\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uFFFD\xA9\u2044\xA4\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7"},maccyrillic:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\xA2\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u2202\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"},macgreek:{type:"_sbcs",chars:"\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\xAD\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\u0387\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\uFFFD"},maciceland:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macroman:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macromania:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u015E\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\u0103\u015F\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\u0162\u0163\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macthai:{type:"_sbcs",chars:"\xAB\xBB\u2026\uF88C\uF88F\uF892\uF895\uF898\uF88B\uF88E\uF891\uF894\uF897\u201C\u201D\uF899\uFFFD\u2022\uF884\uF889\uF885\uF886\uF887\uF888\uF88A\uF88D\uF890\uF893\uF896\u2018\u2019\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFEFF\u200B\u2013\u2014\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u2122\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\xAE\xA9\uFFFD\uFFFD\uFFFD\uFFFD"},macturkish:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\uFFFD\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macukraine:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"},koi8r:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556\u2557\u2558\u2559\u255A\u255B\u255C\u255D\u255E\u255F\u2560\u2561\u0401\u2562\u2563\u2564\u2565\u2566\u2567\u2568\u2569\u256A\u256B\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8u:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u255D\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8ru:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u045E\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u040E\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8t:{type:"_sbcs",chars:"\u049B\u0493\u201A\u0492\u201E\u2026\u2020\u2021\uFFFD\u2030\u04B3\u2039\u04B2\u04B7\u04B6\uFFFD\u049A\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u04EF\u04EE\u0451\xA4\u04E3\xA6\xA7\uFFFD\uFFFD\uFFFD\xAB\xAC\xAD\xAE\uFFFD\xB0\xB1\xB2\u0401\uFFFD\u04E2\xB6\xB7\uFFFD\u2116\uFFFD\xBB\uFFFD\uFFFD\uFFFD\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},armscii8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\u0587\u0589)(\xBB\xAB\u2014.\u055D,-\u058A\u2026\u055C\u055B\u055E\u0531\u0561\u0532\u0562\u0533\u0563\u0534\u0564\u0535\u0565\u0536\u0566\u0537\u0567\u0538\u0568\u0539\u0569\u053A\u056A\u053B\u056B\u053C\u056C\u053D\u056D\u053E\u056E\u053F\u056F\u0540\u0570\u0541\u0571\u0542\u0572\u0543\u0573\u0544\u0574\u0545\u0575\u0546\u0576\u0547\u0577\u0548\u0578\u0549\u0579\u054A\u057A\u054B\u057B\u054C\u057C\u054D\u057D\u054E\u057E\u054F\u057F\u0550\u0580\u0551\u0581\u0552\u0582\u0553\u0583\u0554\u0584\u0555\u0585\u0556\u0586\u055A\uFFFD"},rk1048:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u049A\u04BA\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u049B\u04BB\u045F\xA0\u04B0\u04B1\u04D8\xA4\u04E8\xA6\xA7\u0401\xA9\u0492\xAB\xAC\xAD\xAE\u04AE\xB0\xB1\u0406\u0456\u04E9\xB5\xB6\xB7\u0451\u2116\u0493\xBB\u04D9\u04A2\u04A3\u04AF\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},tcvn:{type:"_sbcs",chars:`\0\xDA\u1EE4\u1EEA\u1EEC\u1EEE\x07\b +\v\f\r\u1EE8\u1EF0\u1EF2\u1EF6\u1EF8\xDD\u1EF4\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC0\u1EA2\xC3\xC1\u1EA0\u1EB6\u1EAC\xC8\u1EBA\u1EBC\xC9\u1EB8\u1EC6\xCC\u1EC8\u0128\xCD\u1ECA\xD2\u1ECE\xD5\xD3\u1ECC\u1ED8\u1EDC\u1EDE\u1EE0\u1EDA\u1EE2\xD9\u1EE6\u0168\xA0\u0102\xC2\xCA\xD4\u01A0\u01AF\u0110\u0103\xE2\xEA\xF4\u01A1\u01B0\u0111\u1EB0\u0300\u0309\u0303\u0301\u0323\xE0\u1EA3\xE3\xE1\u1EA1\u1EB2\u1EB1\u1EB3\u1EB5\u1EAF\u1EB4\u1EAE\u1EA6\u1EA8\u1EAA\u1EA4\u1EC0\u1EB7\u1EA7\u1EA9\u1EAB\u1EA5\u1EAD\xE8\u1EC2\u1EBB\u1EBD\xE9\u1EB9\u1EC1\u1EC3\u1EC5\u1EBF\u1EC7\xEC\u1EC9\u1EC4\u1EBE\u1ED2\u0129\xED\u1ECB\xF2\u1ED4\u1ECF\xF5\xF3\u1ECD\u1ED3\u1ED5\u1ED7\u1ED1\u1ED9\u1EDD\u1EDF\u1EE1\u1EDB\u1EE3\xF9\u1ED6\u1EE7\u0169\xFA\u1EE5\u1EEB\u1EED\u1EEF\u1EE9\u1EF1\u1EF3\u1EF7\u1EF9\xFD\u1EF5\u1ED0`},georgianacademy:{type:"_sbcs",chars:"\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10EF\u10F0\u10F1\u10F2\u10F3\u10F4\u10F5\u10F6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},georgianps:{type:"_sbcs",chars:"\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10F1\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10F2\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10F3\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10F4\u10EF\u10F0\u10F5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},pt154:{type:"_sbcs",chars:"\u0496\u0492\u04EE\u0493\u201E\u2026\u04B6\u04AE\u04B2\u04AF\u04A0\u04E2\u04A2\u049A\u04BA\u04B8\u0497\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u04B3\u04B7\u04A1\u04E3\u04A3\u049B\u04BB\u04B9\xA0\u040E\u045E\u0408\u04E8\u0498\u04B0\xA7\u0401\xA9\u04D8\xAB\xAC\u04EF\xAE\u049C\xB0\u04B1\u0406\u0456\u0499\u04E9\xB6\xB7\u0451\u2116\u04D9\xBB\u0458\u04AA\u04AB\u049D\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},viscii:{type:"_sbcs",chars:`\0\u1EB2\u1EB4\u1EAA\x07\b +\v\f\r\u1EF6\u1EF8\x1B\u1EF4 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u1EA0\u1EAE\u1EB0\u1EB6\u1EA4\u1EA6\u1EA8\u1EAC\u1EBC\u1EB8\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EE2\u1EDA\u1EDC\u1EDE\u1ECA\u1ECE\u1ECC\u1EC8\u1EE6\u0168\u1EE4\u1EF2\xD5\u1EAF\u1EB1\u1EB7\u1EA5\u1EA7\u1EA9\u1EAD\u1EBD\u1EB9\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1ED1\u1ED3\u1ED5\u1ED7\u1EE0\u01A0\u1ED9\u1EDD\u1EDF\u1ECB\u1EF0\u1EE8\u1EEA\u1EEC\u01A1\u1EDB\u01AF\xC0\xC1\xC2\xC3\u1EA2\u0102\u1EB3\u1EB5\xC8\xC9\xCA\u1EBA\xCC\xCD\u0128\u1EF3\u0110\u1EE9\xD2\xD3\xD4\u1EA1\u1EF7\u1EEB\u1EED\xD9\xDA\u1EF9\u1EF5\xDD\u1EE1\u01B0\xE0\xE1\xE2\xE3\u1EA3\u0103\u1EEF\u1EAB\xE8\xE9\xEA\u1EBB\xEC\xED\u0129\u1EC9\u0111\u1EF1\xF2\xF3\xF4\xF5\u1ECF\u1ECD\u1EE5\xF9\xFA\u0169\u1EE7\xFD\u1EE3\u1EEE`},iso646cn:{type:"_sbcs",chars:`\0\x07\b +\v\f\r\x1B !"#\xA5%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},iso646jp:{type:"_sbcs",chars:`\0\x07\b +\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},hproman8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"},macintosh:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},ascii:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},tis620:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"}}});var Kj=$(Vj=>{"use strict";var ou=ga().Buffer;Vj._dbcs=Ds;var vn=-1,Wj=-2,ei=-10,Yi=-1e3,su=new Array(256),kp=-1;for(rv=0;rv<256;rv++)su[rv]=vn;var rv;function Ds(t,e){if(this.encodingName=t.encodingName,!t)throw new Error("DBCS codec is called without the data.");if(!t.table)throw new Error("Encoding '"+this.encodingName+"' has no data.");var r=t.table();this.decodeTables=[],this.decodeTables[0]=su.slice(0),this.decodeTableSeq=[];for(var n=0;n0;t>>=8)e.push(t&255);e.length==0&&e.push(0);for(var r=this.decodeTables[0],n=e.length-1;n>0;n--){var i=r[e[n]];if(i==vn)r[e[n]]=Yi-this.decodeTables.length,this.decodeTables.push(r=su.slice(0));else if(i<=Yi)r=this.decodeTables[Yi-i];else throw new Error("Overwrite byte in "+this.encodingName+", addr: "+t.toString(16))}return r};Ds.prototype._addDecodeChunk=function(t){var e=parseInt(t[0],16),r=this._getDecodeTrieNode(e);e=e&255;for(var n=1;n255)throw new Error("Incorrect chunk in "+this.encodingName+" at addr "+t[0]+": too long"+e)};Ds.prototype._getEncodeBucket=function(t){var e=t>>8;return this.encodeTable[e]===void 0&&(this.encodeTable[e]=su.slice(0)),this.encodeTable[e]};Ds.prototype._setEncodeChar=function(t,e){var r=this._getEncodeBucket(t),n=t&255;r[n]<=ei?this.encodeTableSeq[ei-r[n]][kp]=e:r[n]==vn&&(r[n]=e)};Ds.prototype._setEncodeSequence=function(t,e){var r=t[0],n=this._getEncodeBucket(r),i=r&255,s;n[i]<=ei?s=this.encodeTableSeq[ei-n[i]]:(s={},n[i]!==vn&&(s[kp]=n[i]),n[i]=ei-this.encodeTableSeq.length,this.encodeTableSeq.push(s));for(var o=1;o=0?this._setEncodeChar(s,o):s<=Yi?this._fillEncodeTable(Yi-s,o<<8,r):s<=ei&&this._setEncodeSequence(this.decodeTableSeq[ei-s],o))}};function nv(t,e){this.leadSurrogate=-1,this.seqObj=void 0,this.encodeTable=e.encodeTable,this.encodeTableSeq=e.encodeTableSeq,this.defaultCharSingleByte=e.defCharSB,this.gb18030=e.gb18030}nv.prototype.write=function(t){for(var e=ou.alloc(t.length*(this.gb18030?4:3)),r=this.leadSurrogate,n=this.seqObj,i=-1,s=0,o=0;;){if(i===-1){if(s==t.length)break;var a=t.charCodeAt(s++)}else{var a=i;i=-1}if(55296<=a&&a<57344)if(a<56320)if(r===-1){r=a;continue}else r=a,a=vn;else r!==-1?(a=65536+(r-55296)*1024+(a-56320),r=-1):a=vn;else r!==-1&&(i=a,a=vn,r=-1);var c=vn;if(n!==void 0&&a!=vn){var u=n[a];if(typeof u=="object"){n=u;continue}else typeof u=="number"?c=u:u==null&&(u=n[kp],u!==void 0&&(c=u,i=a));n=void 0}else if(a>=0){var l=this.encodeTable[a>>8];if(l!==void 0&&(c=l[a&255]),c<=ei){n=this.encodeTableSeq[ei-c];continue}if(c==vn&&this.gb18030){var d=bT(this.gb18030.uChars,a);if(d!=-1){var c=this.gb18030.gbChars[d]+(a-this.gb18030.uChars[d]);e[o++]=129+Math.floor(c/12600),c=c%12600,e[o++]=48+Math.floor(c/1260),c=c%1260,e[o++]=129+Math.floor(c/10),c=c%10,e[o++]=48+c;continue}}}c===vn&&(c=this.defaultCharSingleByte),c<256?e[o++]=c:c<65536?(e[o++]=c>>8,e[o++]=c&255):(e[o++]=c>>16,e[o++]=c>>8&255,e[o++]=c&255)}return this.seqObj=n,this.leadSurrogate=r,e.slice(0,o)};nv.prototype.end=function(){if(!(this.leadSurrogate===-1&&this.seqObj===void 0)){var t=ou.alloc(10),e=0;if(this.seqObj){var r=this.seqObj[kp];r!==void 0&&(r<256?t[e++]=r:(t[e++]=r>>8,t[e++]=r&255)),this.seqObj=void 0}return this.leadSurrogate!==-1&&(t[e++]=this.defaultCharSingleByte,this.leadSurrogate=-1),t.slice(0,e)}};nv.prototype.findIdx=bT;function _T(t,e){this.nodeIdx=0,this.prevBuf=ou.alloc(0),this.decodeTables=e.decodeTables,this.decodeTableSeq=e.decodeTableSeq,this.defaultCharUnicode=e.defaultCharUnicode,this.gb18030=e.gb18030}_T.prototype.write=function(t){var e=ou.alloc(t.length*2),r=this.nodeIdx,n=this.prevBuf,i=this.prevBuf.length,s=-this.prevBuf.length,o;i>0&&(n=ou.concat([n,t.slice(0,10)]));for(var a=0,c=0;a=0?t[a]:n[a+i],o=this.decodeTables[r][u];if(!(o>=0))if(o===vn)a=s,o=this.defaultCharUnicode.charCodeAt(0);else if(o===Wj){var l=s>=0?t.slice(s,a+1):n.slice(s+i,a+1+i),d=(l[0]-129)*12600+(l[1]-48)*1260+(l[2]-129)*10+(l[3]-48),p=bT(this.gb18030.gbChars,d);o=this.gb18030.uChars[p]+d-this.gb18030.gbChars[p]}else if(o<=Yi){r=Yi-o;continue}else if(o<=ei){for(var f=this.decodeTableSeq[ei-o],m=0;m>8;o=f[f.length-1]}else throw new Error("iconv-lite internal error: invalid decoding table value "+o+" at "+r+"/"+u);if(o>65535){o-=65536;var h=55296+Math.floor(o/1024);e[c++]=h&255,e[c++]=h>>8,o=56320+o%1024}e[c++]=o&255,e[c++]=o>>8,r=0,s=a+1}return this.nodeIdx=r,this.prevBuf=s>=0?t.slice(s):n.slice(s+i),e.slice(0,c).toString("ucs2")};_T.prototype.end=function(){for(var t="";this.prevBuf.length>0;){t+=this.defaultCharUnicode;var e=this.prevBuf.slice(1);this.prevBuf=ou.alloc(0),this.nodeIdx=0,e.length>0&&(t+=this.write(e))}return this.nodeIdx=0,t};function bT(t,e){if(t[0]>e)return-1;for(var r=0,n=t.length;r{Jte.exports=[["0","\0",128],["a1","\uFF61",62],["8140","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7"],["8180","\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["81b8","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["81c8","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["81da","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["81f0","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["81fc","\u25EF"],["824f","\uFF10",9],["8260","\uFF21",25],["8281","\uFF41",25],["829f","\u3041",82],["8340","\u30A1",62],["8380","\u30E0",22],["839f","\u0391",16,"\u03A3",6],["83bf","\u03B1",16,"\u03C3",6],["8440","\u0410",5,"\u0401\u0416",25],["8470","\u0430",5,"\u0451\u0436",7],["8480","\u043E",17],["849f","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["8740","\u2460",19,"\u2160",9],["875f","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["877e","\u337B"],["8780","\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["889f","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["8940","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],["8980","\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["8a40","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],["8a80","\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["8b40","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],["8b80","\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["8c40","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],["8c80","\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["8d40","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],["8d80","\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["8e40","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],["8e80","\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["8f40","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],["8f80","\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["9040","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],["9080","\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["9140","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],["9180","\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["9240","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],["9280","\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["9340","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],["9380","\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["9440","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],["9480","\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["9540","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],["9580","\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["9640","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],["9680","\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["9740","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],["9780","\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["9840","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["989f","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["9940","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],["9980","\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["9a40","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],["9a80","\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["9b40","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],["9b80","\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["9c40","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],["9c80","\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["9d40","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],["9d80","\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["9e40","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],["9e80","\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["9f40","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],["9f80","\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["e040","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],["e080","\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e140","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],["e180","\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e240","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],["e280","\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e340","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],["e380","\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e440","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],["e480","\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e540","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],["e580","\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["e640","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],["e680","\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["e740","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],["e780","\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["e840","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],["e880","\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["e940","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],["e980","\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["ea40","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],["ea80","\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],["ed40","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],["ed80","\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["ee40","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],["ee80","\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["eeef","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["f040","\uE000",62],["f080","\uE03F",124],["f140","\uE0BC",62],["f180","\uE0FB",124],["f240","\uE178",62],["f280","\uE1B7",124],["f340","\uE234",62],["f380","\uE273",124],["f440","\uE2F0",62],["f480","\uE32F",124],["f540","\uE3AC",62],["f580","\uE3EB",124],["f640","\uE468",62],["f680","\uE4A7",124],["f740","\uE524",62],["f780","\uE563",124],["f840","\uE5E0",62],["f880","\uE61F",124],["f940","\uE69C"],["fa40","\u2170",9,"\u2160",9,"\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],["fa80","\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],["fb40","\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],["fb80","\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],["fc40","\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]]});var Xj=$((LNe,Xte)=>{Xte.exports=[["0","\0",127],["8ea1","\uFF61",62],["a1a1","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],["a2a1","\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["a2ba","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["a2ca","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["a2dc","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["a2f2","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["a2fe","\u25EF"],["a3b0","\uFF10",9],["a3c1","\uFF21",25],["a3e1","\uFF41",25],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a8a1","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["ada1","\u2460",19,"\u2160",9],["adc0","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["addf","\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["b0a1","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["b1a1","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],["b2a1","\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["b3a1","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],["b4a1","\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["b5a1","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],["b6a1","\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["b7a1","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],["b8a1","\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["b9a1","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],["baa1","\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["bba1","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],["bca1","\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["bda1","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],["bea1","\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["bfa1","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],["c0a1","\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["c1a1","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],["c2a1","\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["c3a1","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],["c4a1","\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["c5a1","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],["c6a1","\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["c7a1","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],["c8a1","\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["c9a1","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],["caa1","\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["cba1","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],["cca1","\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["cda1","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],["cea1","\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["cfa1","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["d0a1","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["d1a1","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],["d2a1","\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["d3a1","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],["d4a1","\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["d5a1","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],["d6a1","\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["d7a1","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],["d8a1","\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["d9a1","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],["daa1","\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["dba1","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],["dca1","\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["dda1","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],["dea1","\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["dfa1","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],["e0a1","\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e1a1","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],["e2a1","\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e3a1","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],["e4a1","\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e5a1","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],["e6a1","\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e7a1","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],["e8a1","\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e9a1","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],["eaa1","\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["eba1","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],["eca1","\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["eda1","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],["eea1","\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["efa1","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],["f0a1","\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["f1a1","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],["f2a1","\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["f3a1","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],["f4a1","\u582F\u69C7\u9059\u7464\u51DC\u7199"],["f9a1","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],["faa1","\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["fba1","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],["fca1","\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["fcf1","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["8fa2af","\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],["8fa2c2","\xA1\xA6\xBF"],["8fa2eb","\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],["8fa6e1","\u0386\u0388\u0389\u038A\u03AA"],["8fa6e7","\u038C"],["8fa6e9","\u038E\u03AB"],["8fa6ec","\u038F"],["8fa6f1","\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],["8fa7c2","\u0402",10,"\u040E\u040F"],["8fa7f2","\u0452",10,"\u045E\u045F"],["8fa9a1","\xC6\u0110"],["8fa9a4","\u0126"],["8fa9a6","\u0132"],["8fa9a8","\u0141\u013F"],["8fa9ab","\u014A\xD8\u0152"],["8fa9af","\u0166\xDE"],["8fa9c1","\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],["8faaa1","\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],["8faaba","\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],["8faba1","\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],["8fabbd","\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],["8fabc5","\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],["8fb0a1","\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],["8fb1a1","\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],["8fb2a1","\u5092\u5093\u5094\u5096\u509B\u509C\u509E",4,"\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],["8fb3a1","\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],["8fb4a1","\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],["8fb5a1","\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],["8fb6a1","\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D",5,"\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4",4,"\u56F1\u56EB\u56ED"],["8fb7a1","\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D",4,"\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],["8fb8a1","\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],["8fb9a1","\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],["8fbaa1","\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6",4,"\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],["8fbba1","\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],["8fbca1","\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A",4,"\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],["8fbda1","\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0",4,"\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],["8fbea1","\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110",4,"\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],["8fbfa1","\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],["8fc0a1","\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],["8fc1a1","\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],["8fc2a1","\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],["8fc3a1","\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E",4,"\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],["8fc4a1","\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],["8fc5a1","\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],["8fc6a1","\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],["8fc7a1","\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],["8fc8a1","\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],["8fc9a1","\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094",4,"\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103",4,"\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],["8fcaa1","\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],["8fcba1","\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],["8fcca1","\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428",9,"\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],["8fcda1","\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579",5,"\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],["8fcea1","\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2",6,"\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],["8fcfa1","\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],["8fd0a1","\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],["8fd1a1","\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],["8fd2a1","\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59",5],["8fd3a1","\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],["8fd4a1","\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2",4,"\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],["8fd5a1","\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],["8fd6a1","\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],["8fd7a1","\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],["8fd8a1","\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],["8fd9a1","\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F",4,"\u8556\u8559\u855C",6,"\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],["8fdaa1","\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660",4,"\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],["8fdba1","\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783",6,"\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],["8fdca1","\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA",4,"\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],["8fdda1","\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4",4,"\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],["8fdea1","\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42",4,"\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],["8fdfa1","\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],["8fe0a1","\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],["8fe1a1","\u8F43\u8F47\u8F4F\u8F51",4,"\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],["8fe2a1","\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],["8fe3a1","\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC",5,"\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275",4,"\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],["8fe4a1","\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF",4,"\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],["8fe5a1","\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9",4,"\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],["8fe6a1","\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],["8fe7a1","\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],["8fe8a1","\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931",4,"\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],["8fe9a1","\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF",4],["8feaa1","\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A",4,"\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],["8feba1","\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26",4,"\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],["8feca1","\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],["8feda1","\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43",4,"\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D",4,"\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]]});var iv=$((UNe,Yte)=>{Yte.exports=[["0","\0",127,"\u20AC"],["8140","\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A",5,"\u4E72\u4E74",9,"\u4E7F",6,"\u4E87\u4E8A"],["8180","\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02",6,"\u4F0B\u4F0C\u4F12",4,"\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E",4,"\u4F44\u4F45\u4F47",5,"\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],["8240","\u4FA4\u4FAB\u4FAD\u4FB0",4,"\u4FB6",8,"\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2",4,"\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF",11],["8280","\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F",10,"\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050",4,"\u5056\u5057\u5058\u5059\u505B\u505D",7,"\u5066",5,"\u506D",8,"\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E",20,"\u50A4\u50A6\u50AA\u50AB\u50AD",4,"\u50B3",6,"\u50BC"],["8340","\u50BD",17,"\u50D0",5,"\u50D7\u50D8\u50D9\u50DB",10,"\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6",4,"\u50FC",9,"\u5108"],["8380","\u5109\u510A\u510C",5,"\u5113",13,"\u5122",28,"\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D",4,"\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6",4,"\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2",5],["8440","\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5",5,"\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244",5,"\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],["8480","\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273",9,"\u527E\u5280\u5283",4,"\u5289",6,"\u5291\u5292\u5294",6,"\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4",9,"\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9",5,"\u52E0\u52E1\u52E2\u52E3\u52E5",10,"\u52F1",7,"\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],["8540","\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F",9,"\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],["8580","\u5390",4,"\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF",6,"\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3",4,"\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D",4,"\u5463\u5465\u5467\u5469",7,"\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],["8640","\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0",4,"\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4",5,"\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A",4,"\u5512\u5513\u5515",5,"\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],["8680","\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B",4,"\u5551\u5552\u5553\u5554\u5557",4,"\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F",5,"\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0",6,"\u55A8",8,"\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF",4,"\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7",4,"\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8",4,"\u55FF\u5602\u5603\u5604\u5605"],["8740","\u5606\u5607\u560A\u560B\u560D\u5610",7,"\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640",11,"\u564F",4,"\u5655\u5656\u565A\u565B\u565D",4],["8780","\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D",7,"\u5687",6,"\u5690\u5691\u5692\u5694",14,"\u56A4",10,"\u56B0",6,"\u56B8\u56B9\u56BA\u56BB\u56BD",12,"\u56CB",8,"\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5",5,"\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B",6],["8840","\u5712",9,"\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734",4,"\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752",4,"\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],["8880","\u5781\u5787\u5788\u5789\u578A\u578D",4,"\u5794",6,"\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9",8,"\u57C4",6,"\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5",7,"\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825",4,"\u582B",4,"\u5831\u5832\u5833\u5834\u5836",7],["8940","\u583E",5,"\u5845",6,"\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859",4,"\u585F",5,"\u5866",4,"\u586D",16,"\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],["8980","\u588D",4,"\u5894",4,"\u589B\u589C\u589D\u58A0",7,"\u58AA",17,"\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6",10,"\u58D2\u58D3\u58D4\u58D6",13,"\u58E5",5,"\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA",7,"\u5903\u5905\u5906\u5908",4,"\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],["8a40","\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B",4,"\u5961\u5963\u5964\u5966",12,"\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],["8a80","\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3",5,"\u59BA\u59BC\u59BD\u59BF",6,"\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE",4,"\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED",11,"\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A",6,"\u5A33\u5A35\u5A37",4,"\u5A3D\u5A3E\u5A3F\u5A41",4,"\u5A47\u5A48\u5A4B",9,"\u5A56\u5A57\u5A58\u5A59\u5A5B",5],["8b40","\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B",8,"\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80",17,"\u5A93",6,"\u5A9C",13,"\u5AAB\u5AAC"],["8b80","\u5AAD",4,"\u5AB4\u5AB6\u5AB7\u5AB9",4,"\u5ABF\u5AC0\u5AC3",5,"\u5ACA\u5ACB\u5ACD",4,"\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC",4,"\u5AF2",22,"\u5B0A",11,"\u5B18",25,"\u5B33\u5B35\u5B36\u5B38",7,"\u5B41",6],["8c40","\u5B48",7,"\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],["8c80","\u5BD1\u5BD4",8,"\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9",4,"\u5BEF\u5BF1",6,"\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67",6,"\u5C70\u5C72",6,"\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83",4,"\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D",4,"\u5CA4",4],["8d40","\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5",5,"\u5CCC",5,"\u5CD3",5,"\u5CDA",6,"\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1",9,"\u5CFC",4],["8d80","\u5D01\u5D04\u5D05\u5D08",5,"\u5D0F",4,"\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F",4,"\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F",4,"\u5D35",7,"\u5D3F",7,"\u5D48\u5D49\u5D4D",10,"\u5D59\u5D5A\u5D5C\u5D5E",10,"\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75",12,"\u5D83",21,"\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],["8e40","\u5DA1",21,"\u5DB8",12,"\u5DC6",6,"\u5DCE",12,"\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],["8e80","\u5DF0\u5DF5\u5DF6\u5DF8",4,"\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E",7,"\u5E28",4,"\u5E2F\u5E30\u5E32",4,"\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46",5,"\u5E4D",6,"\u5E56",4,"\u5E5C\u5E5D\u5E5F\u5E60\u5E63",14,"\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8",4,"\u5EAE",4,"\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF",6],["8f40","\u5EC6\u5EC7\u5EC8\u5ECB",5,"\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC",11,"\u5EE9\u5EEB",8,"\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],["8f80","\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32",6,"\u5F3B\u5F3D\u5F3E\u5F3F\u5F41",14,"\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2",5,"\u5FA9\u5FAB\u5FAC\u5FAF",5,"\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE",4,"\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],["9040","\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030",4,"\u6036",4,"\u603D\u603E\u6040\u6044",6,"\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],["9080","\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD",7,"\u60C7\u60C8\u60C9\u60CC",4,"\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1",4,"\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB",4,"\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110",4,"\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C",18,"\u6140",6],["9140","\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156",6,"\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169",6,"\u6171\u6172\u6173\u6174\u6176\u6178",18,"\u618C\u618D\u618F",4,"\u6195"],["9180","\u6196",6,"\u619E",8,"\u61AA\u61AB\u61AD",9,"\u61B8",5,"\u61BF\u61C0\u61C1\u61C3",4,"\u61C9\u61CC",4,"\u61D3\u61D5",16,"\u61E7",13,"\u61F6",8,"\u6200",5,"\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238",4,"\u6242\u6244\u6245\u6246\u624A"],["9240","\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C",6,"\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B",5,"\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],["9280","\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333",5,"\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356",7,"\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399",6,"\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],["9340","\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7",6,"\u63DF\u63E2\u63E4",4,"\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406",4,"\u640D\u640E\u6411\u6412\u6415",5,"\u641D\u641F\u6422\u6423\u6424"],["9380","\u6425\u6427\u6428\u6429\u642B\u642E",5,"\u6435",4,"\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B",6,"\u6453\u6455\u6456\u6457\u6459",4,"\u645F",7,"\u6468\u646A\u646B\u646C\u646E",9,"\u647B",6,"\u6483\u6486\u6488",8,"\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F",4,"\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6",6,"\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],["9440","\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7",24,"\u6501",7,"\u650A",7,"\u6513",4,"\u6519",8],["9480","\u6522\u6523\u6524\u6526",4,"\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540",4,"\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578",14,"\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1",7,"\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8",7,"\u65E1\u65E3\u65E4\u65EA\u65EB"],["9540","\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB",4,"\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637",4,"\u663D\u663F\u6640\u6642\u6644",6,"\u664D\u664E\u6650\u6651\u6658"],["9580","\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669",4,"\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698",4,"\u669E",8,"\u66A9",4,"\u66AF",4,"\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF",25,"\u66DA\u66DE",7,"\u66E7\u66E8\u66EA",5,"\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],["9640","\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720",5,"\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757",4,"\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],["9680","\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9",7,"\u67C2\u67C5",9,"\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5",7,"\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818",4,"\u681E\u681F\u6820\u6822",6,"\u682B",6,"\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856",5],["9740","\u685C\u685D\u685E\u685F\u686A\u686C",7,"\u6875\u6878",8,"\u6882\u6884\u6887",7,"\u6890\u6891\u6892\u6894\u6895\u6896\u6898",9,"\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],["9780","\u68B9",6,"\u68C1\u68C3",5,"\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB",4,"\u68E1\u68E2\u68E4",9,"\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906",4,"\u690C\u690F\u6911\u6913",11,"\u6921\u6922\u6923\u6925",7,"\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943",16,"\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],["9840","\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972",4,"\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E",5,"\u6996\u6997\u6999\u699A\u699D",9,"\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],["9880","\u69BE\u69BF\u69C0\u69C2",7,"\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5",5,"\u69DC\u69DD\u69DE\u69E1",11,"\u69EE\u69EF\u69F0\u69F1\u69F3",9,"\u69FE\u6A00",9,"\u6A0B",11,"\u6A19",5,"\u6A20\u6A22",5,"\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36",6,"\u6A3F",4,"\u6A45\u6A46\u6A48",7,"\u6A51",6,"\u6A5A"],["9940","\u6A5C",4,"\u6A62\u6A63\u6A64\u6A66",10,"\u6A72",6,"\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85",8,"\u6A8F\u6A92",4,"\u6A98",7,"\u6AA1",5],["9980","\u6AA7\u6AA8\u6AAA\u6AAD",114,"\u6B25\u6B26\u6B28",6],["9a40","\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D",11,"\u6B5A",7,"\u6B68\u6B69\u6B6B",13,"\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],["9a80","\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C",4,"\u6BA2",7,"\u6BAB",7,"\u6BB6\u6BB8",6,"\u6BC0\u6BC3\u6BC4\u6BC6",4,"\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC",4,"\u6BE2",7,"\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE",6,"\u6C08",4,"\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B",4,"\u6C51\u6C52\u6C53\u6C56\u6C58"],["9b40","\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B",4,"\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],["9b80","\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F",5,"\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D",4,"\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96",4,"\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9",5,"\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],["9c40","\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD",7,"\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],["9c80","\u6E36\u6E37\u6E39\u6E3B",7,"\u6E45",7,"\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60",10,"\u6E6C\u6E6D\u6E6F",14,"\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A",4,"\u6E91",6,"\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA",5],["9d40","\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA",7,"\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A",4,"\u6F10\u6F11\u6F12\u6F16",9,"\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37",6,"\u6F3F\u6F40\u6F41\u6F42"],["9d80","\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E",9,"\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67",5,"\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D",6,"\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F",12,"\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2",4,"\u6FA8",10,"\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA",5,"\u6FC1\u6FC3",5,"\u6FCA",6,"\u6FD3",10,"\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],["9e40","\u6FE6",7,"\u6FF0",32,"\u7012",7,"\u701C",6,"\u7024",6],["9e80","\u702B",9,"\u7036\u7037\u7038\u703A",17,"\u704D\u704E\u7050",13,"\u705F",11,"\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E",12,"\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB",12,"\u70DA"],["9f40","\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0",6,"\u70F8\u70FA\u70FB\u70FC\u70FE",10,"\u710B",4,"\u7111\u7112\u7114\u7117\u711B",10,"\u7127",7,"\u7132\u7133\u7134"],["9f80","\u7135\u7137",13,"\u7146\u7147\u7148\u7149\u714B\u714D\u714F",12,"\u715D\u715F",4,"\u7165\u7169",4,"\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E",5,"\u7185",4,"\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A",4,"\u71A1",6,"\u71A9\u71AA\u71AB\u71AD",5,"\u71B4\u71B6\u71B7\u71B8\u71BA",8,"\u71C4",9,"\u71CF",4],["a040","\u71D6",9,"\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8",5,"\u71EF",9,"\u71FA",11,"\u7207",19],["a080","\u721B\u721C\u721E",9,"\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240",6,"\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285",4,"\u728C\u728E\u7290\u7291\u7293",11,"\u72A0",11,"\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA",6,"\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],["a1a1","\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008",7,"\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],["a2a1","\u2170",9],["a2b1","\u2488",19,"\u2474",19,"\u2460",9],["a2e5","\u3220",9],["a2f1","\u2160",11],["a3a1","\uFF01\uFF02\uFF03\uFFE5\uFF05",88,"\uFFE3"],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a6e0","\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],["a6ee","\uFE3B\uFE3C\uFE37\uFE38\uFE31"],["a6f4","\uFE33\uFE34"],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a840","\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550",35,"\u2581",6],["a880","\u2588",7,"\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],["a8a1","\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],["a8bd","\u0144\u0148"],["a8c0","\u0261"],["a8c5","\u3105",36],["a940","\u3021",8,"\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],["a959","\u2121\u3231"],["a95c","\u2010"],["a960","\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49",9,"\uFE54\uFE55\uFE56\uFE57\uFE59",8],["a980","\uFE62",4,"\uFE68\uFE69\uFE6A\uFE6B"],["a996","\u3007"],["a9a4","\u2500",75],["aa40","\u72DC\u72DD\u72DF\u72E2",5,"\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304",5,"\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340",8],["aa80","\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358",7,"\u7361",10,"\u736E\u7370\u7371"],["ab40","\u7372",11,"\u737F",4,"\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3",5,"\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3",4],["ab80","\u73CB\u73CC\u73CE\u73D2",6,"\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3",4],["ac40","\u73F8",10,"\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411",8,"\u741C",5,"\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437",4,"\u743D\u743E\u743F\u7440\u7442",11],["ac80","\u744E",6,"\u7456\u7458\u745D\u7460",12,"\u746E\u746F\u7471",4,"\u7478\u7479\u747A"],["ad40","\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491",10,"\u749D\u749F",7,"\u74AA",15,"\u74BB",12],["ad80","\u74C8",9,"\u74D3",8,"\u74DD\u74DF\u74E1\u74E5\u74E7",6,"\u74F0\u74F1\u74F2"],["ae40","\u74F3\u74F5\u74F8",6,"\u7500\u7501\u7502\u7503\u7505",7,"\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520",4,"\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],["ae80","\u755D",7,"\u7567\u7568\u7569\u756B",6,"\u7573\u7575\u7576\u7577\u757A",4,"\u7580\u7581\u7582\u7584\u7585\u7587"],["af40","\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6",4,"\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],["af80","\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],["b040","\u7645",6,"\u764E",5,"\u7655\u7657",4,"\u765D\u765F\u7660\u7661\u7662\u7664",6,"\u766C\u766D\u766E\u7670",7,"\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],["b080","\u769C",7,"\u76A5",8,"\u76AF\u76B0\u76B3\u76B5",9,"\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],["b140","\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0",4,"\u76E6",7,"\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E",10,"\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],["b180","\u772C\u772E\u7730",4,"\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748",7,"\u7752",7,"\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],["b240","\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D",11,"\u777A\u777B\u777C\u7781\u7782\u7783\u7786",5,"\u778F\u7790\u7793",11,"\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6",4],["b280","\u77BC\u77BE\u77C0",12,"\u77CE",8,"\u77D8\u77D9\u77DA\u77DD",4,"\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],["b340","\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803",5,"\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],["b380","\u785B\u785C\u785E",11,"\u786F",7,"\u7878\u7879\u787A\u787B\u787D",6,"\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],["b440","\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8",7,"\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA",9],["b480","\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED",4,"\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB",5,"\u7902\u7903\u7904\u7906",6,"\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],["b540","\u790D",5,"\u7914",9,"\u791F",4,"\u7925",14,"\u7935",4,"\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A",8,"\u7954\u7955\u7958\u7959\u7961\u7963"],["b580","\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970",6,"\u7979\u797B",4,"\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],["b640","\u7993",6,"\u799B",11,"\u79A8",10,"\u79B4",4,"\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9",5,"\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],["b680","\u79EC\u79EE\u79F1",6,"\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F",4,"\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],["b740","\u7A1D\u7A1F\u7A21\u7A22\u7A24",14,"\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40",5,"\u7A47",9,"\u7A52",4,"\u7A58",16],["b780","\u7A69",6,"\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],["b840","\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE",4,"\u7AB4",10,"\u7AC0",10,"\u7ACC",9,"\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7",5,"\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],["b880","\u7AF4",4,"\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],["b940","\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F",5,"\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63",10,"\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86",6,"\u7B8E\u7B8F"],["b980","\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9",7,"\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],["ba40","\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4",4,"\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2",4,"\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF",7,"\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10",5,"\u7C17\u7C18\u7C19"],["ba80","\u7C1A",4,"\u7C20",5,"\u7C28\u7C29\u7C2B",12,"\u7C39",5,"\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],["bb40","\u7C43",9,"\u7C4E",36,"\u7C75",5,"\u7C7E",9],["bb80","\u7C88\u7C8A",6,"\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4",4,"\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],["bc40","\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE",6,"\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1",6,"\u7CE9",5,"\u7CF0",7,"\u7CF9\u7CFA\u7CFC",13,"\u7D0B",5],["bc80","\u7D11",14,"\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30",6,"\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],["bd40","\u7D37",54,"\u7D6F",7],["bd80","\u7D78",32,"\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],["be40","\u7D99",12,"\u7DA7",6,"\u7DAF",42],["be80","\u7DDA",32,"\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],["bf40","\u7DFB",62],["bf80","\u7E3A\u7E3C",4,"\u7E42",4,"\u7E48",21,"\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],["c040","\u7E5E",35,"\u7E83",23,"\u7E9C\u7E9D\u7E9E"],["c080","\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B",6,"\u7F43\u7F46",9,"\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],["c140","\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63",4,"\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82",7,"\u7F8B\u7F8D\u7F8F",4,"\u7F95",4,"\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8",6,"\u7FB1"],["c180","\u7FB3",4,"\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF",4,"\u7FD6\u7FD7\u7FD9",5,"\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],["c240","\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4",6,"\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B",5,"\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],["c280","\u8059\u805B",13,"\u806B",5,"\u8072",11,"\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],["c340","\u807E\u8081\u8082\u8085\u8088\u808A\u808D",5,"\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7",4,"\u80CF",6,"\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],["c380","\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F",12,"\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139",4,"\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],["c440","\u8140",5,"\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B",4,"\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183",4,"\u8189\u818B\u818C\u818D\u818E\u8190\u8192",5,"\u8199\u819A\u819E",4,"\u81A4\u81A5"],["c480","\u81A7\u81A9\u81AB",7,"\u81B4",5,"\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD",6,"\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],["c540","\u81D4",14,"\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE",4,"\u81F5",5,"\u81FD\u81FF\u8203\u8207",4,"\u820E\u820F\u8211\u8213\u8215",5,"\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],["c580","\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250",7,"\u8259\u825B\u825C\u825D\u825E\u8260",7,"\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],["c640","\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],["c680","\u82FA\u82FC",4,"\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D",9,"\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],["c740","\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A",4,"\u8353\u8355",4,"\u835D\u8362\u8370",6,"\u8379\u837A\u837E",6,"\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1",6,"\u83AC\u83AD\u83AE"],["c780","\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],["c840","\u83EE\u83EF\u83F3",4,"\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412",5,"\u8419\u841A\u841B\u841E",5,"\u8429",7,"\u8432",5,"\u8439\u843A\u843B\u843E",7,"\u8447\u8448\u8449"],["c880","\u844A",6,"\u8452",4,"\u8458\u845D\u845E\u845F\u8460\u8462\u8464",4,"\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],["c940","\u847D",4,"\u8483\u8484\u8485\u8486\u848A\u848D\u848F",7,"\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2",12,"\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],["c980","\u84D8",4,"\u84DE\u84E1\u84E2\u84E4\u84E7",4,"\u84ED\u84EE\u84EF\u84F1",10,"\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],["ca40","\u8503",8,"\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522",8,"\u852D",9,"\u853E",4,"\u8544\u8545\u8546\u8547\u854B",10],["ca80","\u8557\u8558\u855A\u855B\u855C\u855D\u855F",4,"\u8565\u8566\u8567\u8569",8,"\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],["cb40","\u8582\u8583\u8586\u8588",6,"\u8590",10,"\u859D",6,"\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1",5,"\u85B8\u85BA",6,"\u85C2",6,"\u85CA",4,"\u85D1\u85D2"],["cb80","\u85D4\u85D6",5,"\u85DD",6,"\u85E5\u85E6\u85E7\u85E8\u85EA",14,"\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],["cc40","\u85F9\u85FA\u85FC\u85FD\u85FE\u8600",4,"\u8606",10,"\u8612\u8613\u8614\u8615\u8617",15,"\u8628\u862A",13,"\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],["cc80","\u8641",11,"\u8652\u8653\u8655",4,"\u865B\u865C\u865D\u865F\u8660\u8661\u8663",7,"\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],["cd40","\u866D\u866F\u8670\u8672",6,"\u8683",6,"\u868E",4,"\u8694\u8696",5,"\u869E",4,"\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB",4,"\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],["cd80","\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],["ce40","\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740",6,"\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A",5,"\u8761\u8762\u8766",7,"\u876F\u8771\u8772\u8773\u8775"],["ce80","\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E",4,"\u8794\u8795\u8796\u8798",6,"\u87A0",4,"\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],["cf40","\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1",4,"\u87C7\u87C8\u87C9\u87CC",4,"\u87D4",6,"\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF",9],["cf80","\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804",5,"\u880B",7,"\u8814\u8817\u8818\u8819\u881A\u881C",4,"\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],["d040","\u8824",13,"\u8833",5,"\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846",5,"\u884E",5,"\u8855\u8856\u8858\u885A",6,"\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],["d080","\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897",4,"\u889D",4,"\u88A3\u88A5",5,"\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],["d140","\u88AC\u88AE\u88AF\u88B0\u88B2",4,"\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA",4,"\u88E0\u88E1\u88E6\u88E7\u88E9",6,"\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903",5],["d180","\u8909\u890B",4,"\u8911\u8914",4,"\u891C",4,"\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],["d240","\u8938",8,"\u8942\u8943\u8945",24,"\u8960",5,"\u8967",19,"\u897C"],["d280","\u897D\u897E\u8980\u8982\u8984\u8985\u8987",26,"\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],["d340","\u89A2",30,"\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4",6],["d380","\u89FB",4,"\u8A01",5,"\u8A08",21,"\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],["d440","\u8A1E",31,"\u8A3F",8,"\u8A49",21],["d480","\u8A5F",25,"\u8A7A",6,"\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],["d540","\u8A81",7,"\u8A8B",7,"\u8A94",46],["d580","\u8AC3",32,"\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],["d640","\u8AE4",34,"\u8B08",27],["d680","\u8B24\u8B25\u8B27",30,"\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],["d740","\u8B46",31,"\u8B67",4,"\u8B6D",25],["d780","\u8B87",24,"\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],["d840","\u8C38",8,"\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D",7,"\u8C56\u8C57\u8C58\u8C59\u8C5B",5,"\u8C63",6,"\u8C6C",6,"\u8C74\u8C75\u8C76\u8C77\u8C7B",6,"\u8C83\u8C84\u8C86\u8C87"],["d880","\u8C88\u8C8B\u8C8D",6,"\u8C95\u8C96\u8C97\u8C99",20,"\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],["d940","\u8CAE",62],["d980","\u8CED",32,"\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],["da40","\u8D0E",14,"\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78",8,"\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C",4,"\u8D92\u8D93\u8D95",9,"\u8DA0\u8DA1"],["da80","\u8DA2\u8DA4",12,"\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],["db40","\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE",6,"\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15",7,"\u8E20\u8E21\u8E24",4,"\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],["db80","\u8E3F\u8E43\u8E45\u8E46\u8E4C",4,"\u8E53",5,"\u8E5A",11,"\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],["dc40","\u8E73\u8E75\u8E77",4,"\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88",6,"\u8E91\u8E92\u8E93\u8E95",6,"\u8E9D\u8E9F",11,"\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3",6,"\u8EBB",7],["dc80","\u8EC3",10,"\u8ECF",21,"\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],["dd40","\u8EE5",62],["dd80","\u8F24",32,"\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],["de40","\u8F45",32,"\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],["de80","\u8FC9",4,"\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],["df40","\u9019\u901C\u9023\u9024\u9025\u9027",5,"\u9030",4,"\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048",4,"\u904E\u9054\u9055\u9056\u9059\u905A\u905C",5,"\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F",4,"\u9076",6,"\u907E\u9081"],["df80","\u9084\u9085\u9086\u9087\u9089\u908A\u908C",4,"\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],["e040","\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105",19,"\u911A\u911B\u911C"],["e080","\u911D\u911F\u9120\u9121\u9124",10,"\u9130\u9132",6,"\u913A",8,"\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],["e140","\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180",4,"\u9186\u9188\u918A\u918E\u918F\u9193",6,"\u919C",5,"\u91A4",5,"\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],["e180","\u91BC",10,"\u91C8\u91CB\u91D0\u91D2",9,"\u91DD",8,"\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],["e240","\u91E6",62],["e280","\u9225",32,"\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967",5,"\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],["e340","\u9246",45,"\u9275",16],["e380","\u9286",7,"\u928F",24,"\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],["e440","\u92A8",5,"\u92AF",24,"\u92C9",31],["e480","\u92E9",32,"\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],["e540","\u930A",51,"\u933F",10],["e580","\u934A",31,"\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],["e640","\u936C",34,"\u9390",27],["e680","\u93AC",29,"\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],["e740","\u93CE",7,"\u93D7",54],["e780","\u940E",32,"\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21",6,"\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F",4,"\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],["e840","\u942F",14,"\u943F",43,"\u946C\u946D\u946E\u946F"],["e880","\u9470",20,"\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],["e940","\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577",7,"\u9580",42],["e980","\u95AB",32,"\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],["ea40","\u95CC",27,"\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623",6,"\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],["ea80","\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D",4,"\u9673\u9678",12,"\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],["eb40","\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D",9,"\u96A8",7,"\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6",9,"\u96E1",6,"\u96EB"],["eb80","\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717",4,"\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],["ec40","\u9721",8,"\u972B\u972C\u972E\u972F\u9731\u9733",4,"\u973A\u973B\u973C\u973D\u973F",18,"\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A",7],["ec80","\u9772\u9775\u9777",4,"\u977D",7,"\u9786",4,"\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799",4,"\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],["ed40","\u979E\u979F\u97A1\u97A2\u97A4",6,"\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5",46],["ed80","\u97E4\u97E5\u97E8\u97EE",4,"\u97F4\u97F7",23,"\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],["ee40","\u980F",62],["ee80","\u984E",32,"\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6",4,"\u94BC\u94BD\u94BF\u94C4\u94C8",6,"\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],["ef40","\u986F",5,"\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8",37,"\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0",4],["ef80","\u98E5\u98E6\u98E9",30,"\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512",4,"\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564",8,"\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],["f040","\u9908",4,"\u990E\u990F\u9911",28,"\u992F",26],["f080","\u994A",9,"\u9956",12,"\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28",4,"\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66",6,"\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],["f140","\u998C\u998E\u999A",10,"\u99A6\u99A7\u99A9",47],["f180","\u99D9",32,"\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],["f240","\u99FA",62],["f280","\u9A39",32,"\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],["f340","\u9A5A",17,"\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9",6,"\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6",4,"\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],["f380","\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0",8,"\u9AFA\u9AFC",6,"\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],["f440","\u9B07\u9B09",5,"\u9B10\u9B11\u9B12\u9B14",10,"\u9B20\u9B21\u9B22\u9B24",10,"\u9B30\u9B31\u9B33",7,"\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55",5],["f480","\u9B5B",32,"\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],["f540","\u9B7C",62],["f580","\u9BBB",32,"\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],["f640","\u9BDC",62],["f680","\u9C1B",32,"\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85",5,"\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E",5,"\u9CA5",4,"\u9CAB\u9CAD\u9CAE\u9CB0",7,"\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],["f740","\u9C3C",62],["f780","\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE",4,"\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC",4,"\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],["f840","\u9CE3",62],["f880","\u9D22",32],["f940","\u9D43",62],["f980","\u9D82",32],["fa40","\u9DA3",62],["fa80","\u9DE2",32],["fb40","\u9E03",27,"\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74",9,"\u9E80"],["fb80","\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C",5,"\u9E94",8,"\u9E9E\u9EA0",5,"\u9EA7\u9EA8\u9EA9\u9EAA"],["fc40","\u9EAB",8,"\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF",4,"\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0",8,"\u9EFA\u9EFD\u9EFF",6],["fc80","\u9F06",4,"\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A",5,"\u9F21\u9F23",8,"\u9F2D\u9F2E\u9F30\u9F31"],["fd40","\u9F32",4,"\u9F38\u9F3A\u9F3C\u9F3F",4,"\u9F45",10,"\u9F52",38],["fd80","\u9F79",5,"\u9F81\u9F82\u9F8D",11,"\u9F9C\u9F9D\u9F9E\u9FA1",4,"\uF92C\uF979\uF995\uF9E7\uF9F1"],["fe40","\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]]});var ST=$((FNe,Qte)=>{Qte.exports=[["a140","\uE4C6",62],["a180","\uE505",32],["a240","\uE526",62],["a280","\uE565",32],["a2ab","\uE766",5],["a2e3","\u20AC\uE76D"],["a2ef","\uE76E\uE76F"],["a2fd","\uE770\uE771"],["a340","\uE586",62],["a380","\uE5C5",31,"\u3000"],["a440","\uE5E6",62],["a480","\uE625",32],["a4f4","\uE772",10],["a540","\uE646",62],["a580","\uE685",32],["a5f7","\uE77D",7],["a640","\uE6A6",62],["a680","\uE6E5",32],["a6b9","\uE785",7],["a6d9","\uE78D",6],["a6ec","\uE794\uE795"],["a6f3","\uE796"],["a6f6","\uE797",8],["a740","\uE706",62],["a780","\uE745",32],["a7c2","\uE7A0",14],["a7f2","\uE7AF",12],["a896","\uE7BC",10],["a8bc","\uE7C7"],["a8bf","\u01F9"],["a8c1","\uE7C9\uE7CA\uE7CB\uE7CC"],["a8ea","\uE7CD",20],["a958","\uE7E2"],["a95b","\uE7E3"],["a95d","\uE7E4\uE7E5\uE7E6"],["a989","\u303E\u2FF0",11],["a997","\uE7F4",12],["a9f0","\uE801",14],["aaa1","\uE000",93],["aba1","\uE05E",93],["aca1","\uE0BC",93],["ada1","\uE11A",93],["aea1","\uE178",93],["afa1","\uE1D6",93],["d7fa","\uE810",4],["f8a1","\uE234",93],["f9a1","\uE292",93],["faa1","\uE2F0",93],["fba1","\uE34E",93],["fca1","\uE3AC",93],["fda1","\uE40A",93],["fe50","\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],["fe80","\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13",6,"\u4DAE\uE864\uE468",93]]});var Yj=$((qNe,ere)=>{ere.exports={uChars:[128,165,169,178,184,216,226,235,238,244,248,251,253,258,276,284,300,325,329,334,364,463,465,467,469,471,473,475,477,506,594,610,712,716,730,930,938,962,970,1026,1104,1106,8209,8215,8218,8222,8231,8241,8244,8246,8252,8365,8452,8454,8458,8471,8482,8556,8570,8596,8602,8713,8720,8722,8726,8731,8737,8740,8742,8748,8751,8760,8766,8777,8781,8787,8802,8808,8816,8854,8858,8870,8896,8979,9322,9372,9548,9588,9616,9622,9634,9652,9662,9672,9676,9680,9702,9735,9738,9793,9795,11906,11909,11913,11917,11928,11944,11947,11951,11956,11960,11964,11979,12284,12292,12312,12319,12330,12351,12436,12447,12535,12543,12586,12842,12850,12964,13200,13215,13218,13253,13263,13267,13270,13384,13428,13727,13839,13851,14617,14703,14801,14816,14964,15183,15471,15585,16471,16736,17208,17325,17330,17374,17623,17997,18018,18212,18218,18301,18318,18760,18811,18814,18820,18823,18844,18848,18872,19576,19620,19738,19887,40870,59244,59336,59367,59413,59417,59423,59431,59437,59443,59452,59460,59478,59493,63789,63866,63894,63976,63986,64016,64018,64021,64025,64034,64037,64042,65074,65093,65107,65112,65127,65132,65375,65510,65536],gbChars:[0,36,38,45,50,81,89,95,96,100,103,104,105,109,126,133,148,172,175,179,208,306,307,308,309,310,311,312,313,341,428,443,544,545,558,741,742,749,750,805,819,820,7922,7924,7925,7927,7934,7943,7944,7945,7950,8062,8148,8149,8152,8164,8174,8236,8240,8262,8264,8374,8380,8381,8384,8388,8390,8392,8393,8394,8396,8401,8406,8416,8419,8424,8437,8439,8445,8482,8485,8496,8521,8603,8936,8946,9046,9050,9063,9066,9076,9092,9100,9108,9111,9113,9131,9162,9164,9218,9219,11329,11331,11334,11336,11346,11361,11363,11366,11370,11372,11375,11389,11682,11686,11687,11692,11694,11714,11716,11723,11725,11730,11736,11982,11989,12102,12336,12348,12350,12384,12393,12395,12397,12510,12553,12851,12962,12973,13738,13823,13919,13933,14080,14298,14585,14698,15583,15847,16318,16434,16438,16481,16729,17102,17122,17315,17320,17402,17418,17859,17909,17911,17915,17916,17936,17939,17961,18664,18703,18814,18962,19043,33469,33470,33471,33484,33485,33490,33497,33501,33505,33513,33520,33536,33550,37845,37921,37948,38029,38038,38064,38065,38066,38069,38075,38076,38078,39108,39109,39113,39114,39115,39116,39265,39394,189e3]}});var Qj=$((HNe,tre)=>{tre.exports=[["0","\0",127],["8141","\uAC02\uAC03\uAC05\uAC06\uAC0B",4,"\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25",6,"\uAC2E\uAC32\uAC33\uAC34"],["8161","\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41",9,"\uAC4C\uAC4E",5,"\uAC55"],["8181","\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D",18,"\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B",4,"\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95",6,"\uAC9E\uACA2",5,"\uACAB\uACAD\uACAE\uACB1",6,"\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD",7,"\uACD6\uACD8",7,"\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7",4,"\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07",4,"\uAD0E\uAD10\uAD12\uAD13"],["8241","\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21",7,"\uAD2A\uAD2B\uAD2E",5],["8261","\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D",6,"\uAD46\uAD48\uAD4A",5,"\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],["8281","\uAD59",7,"\uAD62\uAD64",7,"\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83",4,"\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91",10,"\uAD9E",5,"\uADA5",17,"\uADB8",7,"\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9",6,"\uADD2\uADD4",7,"\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5",18],["8341","\uADFA\uADFB\uADFD\uADFE\uAE02",5,"\uAE0A\uAE0C\uAE0E",5,"\uAE15",7],["8361","\uAE1D",18,"\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],["8381","\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57",4,"\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71",6,"\uAE7A\uAE7E",5,"\uAE86",5,"\uAE8D",46,"\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5",6,"\uAECE\uAED2",5,"\uAEDA\uAEDB\uAEDD",8],["8441","\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE",5,"\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD",8],["8461","\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11",18],["8481","\uAF24",7,"\uAF2E\uAF2F\uAF31\uAF33\uAF35",6,"\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A",5,"\uAF51",10,"\uAF5E",5,"\uAF66",18,"\uAF7A",5,"\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89",6,"\uAF92\uAF93\uAF94\uAF96",5,"\uAF9D",26,"\uAFBA\uAFBB\uAFBD\uAFBE"],["8541","\uAFBF\uAFC1",5,"\uAFCA\uAFCC\uAFCF",4,"\uAFD5",6,"\uAFDD",4],["8561","\uAFE2",5,"\uAFEA",5,"\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9",6,"\uB002\uB003"],["8581","\uB005",6,"\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015",6,"\uB01E",9,"\uB029",26,"\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E",29,"\uB07E\uB07F\uB081\uB082\uB083\uB085",6,"\uB08E\uB090\uB092",5,"\uB09B\uB09D\uB09E\uB0A3\uB0A4"],["8641","\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD",6,"\uB0C6\uB0CA",5,"\uB0D2"],["8661","\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9",6,"\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6",10],["8681","\uB0F1",22,"\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E",4,"\uB126\uB127\uB129\uB12A\uB12B\uB12D",6,"\uB136\uB13A",5,"\uB142\uB143\uB145\uB146\uB147\uB149",6,"\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161",22,"\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183",4,"\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],["8741","\uB19E",9,"\uB1A9",15],["8761","\uB1B9",18,"\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],["8781","\uB1D6",5,"\uB1DE\uB1E0",7,"\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1",7,"\uB1FA\uB1FC\uB1FE",5,"\uB206\uB207\uB209\uB20A\uB20D",6,"\uB216\uB218\uB21A",5,"\uB221",18,"\uB235",6,"\uB23D",26,"\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261",6,"\uB26A",4],["8841","\uB26F",4,"\uB276",5,"\uB27D",6,"\uB286\uB287\uB288\uB28A",4],["8861","\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B",4,"\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],["8881","\uB2B8",15,"\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3",4,"\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309",6,"\uB312\uB316",5,"\uB31D",54,"\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],["8941","\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379",6,"\uB382\uB386",5,"\uB38D"],["8961","\uB38E\uB38F\uB391\uB392\uB393\uB395",10,"\uB3A2",5,"\uB3A9\uB3AA\uB3AB\uB3AD"],["8981","\uB3AE",21,"\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9",18,"\uB3FD",18,"\uB411",6,"\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421",6,"\uB42A\uB42C",7,"\uB435",15],["8a41","\uB445",10,"\uB452\uB453\uB455\uB456\uB457\uB459",6,"\uB462\uB464\uB466"],["8a61","\uB467",4,"\uB46D",18,"\uB481\uB482"],["8a81","\uB483",4,"\uB489",19,"\uB49E",5,"\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD",7,"\uB4B6\uB4B8\uB4BA",5,"\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9",6,"\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6",5,"\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7",4,"\uB4EE\uB4F0\uB4F2",5,"\uB4F9",26,"\uB516\uB517\uB519\uB51A\uB51D"],["8b41","\uB51E",5,"\uB526\uB52B",4,"\uB532\uB533\uB535\uB536\uB537\uB539",6,"\uB542\uB546"],["8b61","\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555",6,"\uB55E\uB562",8],["8b81","\uB56B",52,"\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6",4,"\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5",6,"\uB5CE\uB5D2",5,"\uB5D9",18,"\uB5ED",18],["8c41","\uB600",15,"\uB612\uB613\uB615\uB616\uB617\uB619",4],["8c61","\uB61E",6,"\uB626",5,"\uB62D",6,"\uB635",5],["8c81","\uB63B",12,"\uB649",26,"\uB665\uB666\uB667\uB669",50,"\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5",5,"\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2",16],["8d41","\uB6C3",16,"\uB6D5",8],["8d61","\uB6DE",17,"\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],["8d81","\uB6FB",4,"\uB702\uB703\uB704\uB706",33,"\uB72A\uB72B\uB72D\uB72E\uB731",6,"\uB73A\uB73C",7,"\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D",6,"\uB756",9,"\uB761\uB762\uB763\uB765\uB766\uB767\uB769",6,"\uB772\uB774\uB776",5,"\uB77E\uB77F\uB781\uB782\uB783\uB785",6,"\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],["8e41","\uB79F\uB7A1",6,"\uB7AA\uB7AE",5,"\uB7B6\uB7B7\uB7B9",8],["8e61","\uB7C2",4,"\uB7C8\uB7CA",19],["8e81","\uB7DE",13,"\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5",6,"\uB7FE\uB802",4,"\uB80A\uB80B\uB80D\uB80E\uB80F\uB811",6,"\uB81A\uB81C\uB81E",5,"\uB826\uB827\uB829\uB82A\uB82B\uB82D",6,"\uB836\uB83A",5,"\uB841\uB842\uB843\uB845",11,"\uB852\uB854",7,"\uB85E\uB85F\uB861\uB862\uB863\uB865",6,"\uB86E\uB870\uB872",5,"\uB879\uB87A\uB87B\uB87D",7],["8f41","\uB885",7,"\uB88E",17],["8f61","\uB8A0",7,"\uB8A9",6,"\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9",4],["8f81","\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6",5,"\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5",7,"\uB8DE\uB8E0\uB8E2",5,"\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1",6,"\uB8FA\uB8FC\uB8FE",5,"\uB905",18,"\uB919",6,"\uB921",26,"\uB93E\uB93F\uB941\uB942\uB943\uB945",6,"\uB94D\uB94E\uB950\uB952",5],["9041","\uB95A\uB95B\uB95D\uB95E\uB95F\uB961",6,"\uB96A\uB96C\uB96E",5,"\uB976\uB977\uB979\uB97A\uB97B\uB97D"],["9061","\uB97E",5,"\uB986\uB988\uB98B\uB98C\uB98F",15],["9081","\uB99F",12,"\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5",6,"\uB9BE\uB9C0\uB9C2",5,"\uB9CA\uB9CB\uB9CD\uB9D3",4,"\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED",6,"\uB9F6\uB9FB",4,"\uBA02",5,"\uBA09",11,"\uBA16",33,"\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],["9141","\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D",6,"\uBA66\uBA6A",5],["9161","\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79",9,"\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D",5],["9181","\uBA93",20,"\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3",4,"\uBABA\uBABC\uBABE",5,"\uBAC5\uBAC6\uBAC7\uBAC9",14,"\uBADA",33,"\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05",7,"\uBB0E\uBB10\uBB12",5,"\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21",6],["9241","\uBB28\uBB2A\uBB2C",7,"\uBB37\uBB39\uBB3A\uBB3F",4,"\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],["9261","\uBB53\uBB55\uBB56\uBB57\uBB59",7,"\uBB62\uBB64",7,"\uBB6D",4],["9281","\uBB72",21,"\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91",18,"\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD",6,"\uBBB5\uBBB6\uBBB8",7,"\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9",6,"\uBBD1\uBBD2\uBBD4",35,"\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],["9341","\uBC03",4,"\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],["9361","\uBC36\uBC37\uBC39",6,"\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51",8],["9381","\uBC5A\uBC5B\uBC5C\uBC5E",37,"\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F",4,"\uBC96\uBC98\uBC9B",4,"\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9",6,"\uBCB2\uBCB6",5,"\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5",7,"\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD",22,"\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],["9441","\uBCFE",5,"\uBD06\uBD08\uBD0A",5,"\uBD11\uBD12\uBD13\uBD15",8],["9461","\uBD1E",5,"\uBD25",6,"\uBD2D",12],["9481","\uBD3A",5,"\uBD41",6,"\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51",6,"\uBD5A",9,"\uBD65\uBD66\uBD67\uBD69",22,"\uBD82\uBD83\uBD85\uBD86\uBD8B",4,"\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D",6,"\uBDA5",10,"\uBDB1",6,"\uBDB9",24],["9541","\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD",11,"\uBDEA",5,"\uBDF1"],["9561","\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9",6,"\uBE01\uBE02\uBE04\uBE06",5,"\uBE0E\uBE0F\uBE11\uBE12\uBE13"],["9581","\uBE15",6,"\uBE1E\uBE20",35,"\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F",4,"\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B",4,"\uBE72\uBE76",4,"\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85",6,"\uBE8E\uBE92",5,"\uBE9A",13,"\uBEA9",14],["9641","\uBEB8",23,"\uBED2\uBED3"],["9661","\uBED5\uBED6\uBED9",6,"\uBEE1\uBEE2\uBEE6",5,"\uBEED",8],["9681","\uBEF6",10,"\uBF02",5,"\uBF0A",13,"\uBF1A\uBF1E",33,"\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49",6,"\uBF52\uBF53\uBF54\uBF56",44],["9741","\uBF83",16,"\uBF95",8],["9761","\uBF9E",17,"\uBFB1",7],["9781","\uBFB9",11,"\uBFC6",5,"\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5",6,"\uBFDD\uBFDE\uBFE0\uBFE2",89,"\uC03D\uC03E\uC03F"],["9841","\uC040",16,"\uC052",5,"\uC059\uC05A\uC05B"],["9861","\uC05D\uC05E\uC05F\uC061",6,"\uC06A",15],["9881","\uC07A",21,"\uC092\uC093\uC095\uC096\uC097\uC099",6,"\uC0A2\uC0A4\uC0A6",5,"\uC0AE\uC0B1\uC0B2\uC0B7",4,"\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1",6,"\uC0DA\uC0DE",5,"\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED",6,"\uC0F6\uC0F8\uC0FA",5,"\uC101\uC102\uC103\uC105\uC106\uC107\uC109",6,"\uC111\uC112\uC113\uC114\uC116",5,"\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],["9941","\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141",6,"\uC14A\uC14E",5,"\uC156\uC157"],["9961","\uC159\uC15A\uC15B\uC15D",6,"\uC166\uC16A",5,"\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],["9981","\uC17C",8,"\uC186",5,"\uC18F\uC191\uC192\uC193\uC195\uC197",4,"\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1",11,"\uC1BE",5,"\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD",6,"\uC1D5\uC1D6\uC1D9",6,"\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9",6,"\uC1F2\uC1F4",7,"\uC1FE\uC1FF\uC201\uC202\uC203\uC205",6,"\uC20E\uC210\uC212",5,"\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],["9a41","\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235",16],["9a61","\uC246\uC247\uC249",6,"\uC252\uC253\uC255\uC256\uC257\uC259",6,"\uC261\uC262\uC263\uC264\uC266"],["9a81","\uC267",4,"\uC26E\uC26F\uC271\uC272\uC273\uC275",6,"\uC27E\uC280\uC282",5,"\uC28A",5,"\uC291",6,"\uC299\uC29A\uC29C\uC29E",5,"\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE",5,"\uC2B6\uC2B8\uC2BA",33,"\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5",5,"\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301",6,"\uC30A\uC30B\uC30E\uC30F"],["9b41","\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D",6,"\uC326\uC327\uC32A",8],["9b61","\uC333",17,"\uC346",7],["9b81","\uC34E",25,"\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373",4,"\uC37A\uC37B\uC37E",5,"\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D",50,"\uC3C1",22,"\uC3DA"],["9c41","\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3",4,"\uC3EA\uC3EB\uC3EC\uC3EE",5,"\uC3F6\uC3F7\uC3F9",5],["9c61","\uC3FF",8,"\uC409",6,"\uC411",9],["9c81","\uC41B",8,"\uC425",6,"\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435",6,"\uC43E",9,"\uC449",26,"\uC466\uC467\uC469\uC46A\uC46B\uC46D",6,"\uC476\uC477\uC478\uC47A",5,"\uC481",18,"\uC495",6,"\uC49D",12],["9d41","\uC4AA",13,"\uC4B9\uC4BA\uC4BB\uC4BD",8],["9d61","\uC4C6",25],["9d81","\uC4E0",8,"\uC4EA",5,"\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502",9,"\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515",6,"\uC51D",10,"\uC52A\uC52B\uC52D\uC52E\uC52F\uC531",6,"\uC53A\uC53C\uC53E",5,"\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569",6,"\uC572\uC576",5,"\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],["9e41","\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1",7,"\uC5AA",9,"\uC5B6"],["9e61","\uC5B7\uC5BA\uC5BF",4,"\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9",6,"\uC5E2\uC5E4\uC5E6\uC5E7"],["9e81","\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611",6,"\uC61A\uC61D",6,"\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649",6,"\uC652\uC656",5,"\uC65E\uC65F\uC661",10,"\uC66D\uC66E\uC670\uC672",5,"\uC67A\uC67B\uC67D\uC67E\uC67F\uC681",6,"\uC68A\uC68C\uC68E",5,"\uC696\uC697\uC699\uC69A\uC69B\uC69D",6,"\uC6A6"],["9f41","\uC6A8\uC6AA",5,"\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB",4,"\uC6C2\uC6C4\uC6C6",5,"\uC6CE"],["9f61","\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5",6,"\uC6DE\uC6DF\uC6E2",5,"\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],["9f81","\uC6F3",4,"\uC6FA\uC6FB\uC6FC\uC6FE",5,"\uC706\uC707\uC709\uC70A\uC70B\uC70D",6,"\uC716\uC718\uC71A",5,"\uC722\uC723\uC725\uC726\uC727\uC729",6,"\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745",4,"\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761",6,"\uC769\uC76A\uC76C",7,"\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B",4,"\uC7A2\uC7A7",4,"\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],["a041","\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2",5,"\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1",6,"\uC7D9\uC7DA\uC7DB\uC7DC"],["a061","\uC7DE",5,"\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED",13],["a081","\uC7FB",4,"\uC802\uC803\uC805\uC806\uC807\uC809\uC80B",4,"\uC812\uC814\uC817",4,"\uC81E\uC81F\uC821\uC822\uC823\uC825",6,"\uC82E\uC830\uC832",5,"\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841",6,"\uC84A\uC84B\uC84E",5,"\uC855",26,"\uC872\uC873\uC875\uC876\uC877\uC879\uC87B",4,"\uC882\uC884\uC888\uC889\uC88A\uC88E",5,"\uC895",7,"\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],["a141","\uC8A5\uC8A6\uC8A7\uC8A9",18,"\uC8BE\uC8BF\uC8C0\uC8C1"],["a161","\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD",6,"\uC8D6\uC8D8\uC8DA",5,"\uC8E2\uC8E3\uC8E5"],["a181","\uC8E6",14,"\uC8F6",5,"\uC8FE\uC8FF\uC901\uC902\uC903\uC907",4,"\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008",9,"\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],["a241","\uC910\uC912",5,"\uC919",18],["a261","\uC92D",6,"\uC935",18],["a281","\uC948",7,"\uC952\uC953\uC955\uC956\uC957\uC959",6,"\uC962\uC964",7,"\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],["a341","\uC971\uC972\uC973\uC975",6,"\uC97D",10,"\uC98A\uC98B\uC98D\uC98E\uC98F"],["a361","\uC991",6,"\uC99A\uC99C\uC99E",16],["a381","\uC9AF",16,"\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB",4,"\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01",58,"\uFFE6\uFF3D",32,"\uFFE3"],["a441","\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2",5,"\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],["a461","\uCA05\uCA06\uCA07\uCA0A\uCA0E",5,"\uCA15\uCA16\uCA17\uCA19",12],["a481","\uCA26\uCA27\uCA28\uCA2A",28,"\u3131",93],["a541","\uCA47",4,"\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55",6,"\uCA5E\uCA62",5,"\uCA69\uCA6A"],["a561","\uCA6B",17,"\uCA7E",5,"\uCA85\uCA86"],["a581","\uCA87",16,"\uCA99",14,"\u2170",9],["a5b0","\u2160",9],["a5c1","\u0391",16,"\u03A3",6],["a5e1","\u03B1",16,"\u03C3",6],["a641","\uCAA8",19,"\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],["a661","\uCAC6",5,"\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA",5,"\uCAE1",6],["a681","\uCAE8\uCAE9\uCAEA\uCAEB\uCAED",6,"\uCAF5",18,"\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543",7],["a741","\uCB0B",4,"\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19",6,"\uCB22",7],["a761","\uCB2A",22,"\uCB42\uCB43\uCB44"],["a781","\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51",6,"\uCB5A\uCB5B\uCB5C\uCB5E",5,"\uCB65",7,"\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399",9,"\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0",9,"\u3380",4,"\u33BA",5,"\u3390",4,"\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],["a841","\uCB6D",10,"\uCB7A",14],["a861","\uCB89",18,"\uCB9D",6],["a881","\uCBA4",19,"\uCBB9",11,"\xC6\xD0\xAA\u0126"],["a8a6","\u0132"],["a8a8","\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],["a8b1","\u3260",27,"\u24D0",25,"\u2460",14,"\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],["a941","\uCBC5",14,"\uCBD5",10],["a961","\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA",18],["a981","\uCBFD",14,"\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15",6,"\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200",27,"\u249C",25,"\u2474",14,"\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],["aa41","\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31",6,"\uCC3A\uCC3F",4,"\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],["aa61","\uCC4F",4,"\uCC56\uCC5A",5,"\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69",6,"\uCC71\uCC72"],["aa81","\uCC73\uCC74\uCC76",29,"\u3041",82],["ab41","\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1",6,"\uCCAA\uCCAE",5,"\uCCB6\uCCB7\uCCB9"],["ab61","\uCCBA\uCCBB\uCCBD",6,"\uCCC6\uCCC8\uCCCA",5,"\uCCD1\uCCD2\uCCD3\uCCD5",5],["ab81","\uCCDB",8,"\uCCE5",6,"\uCCED\uCCEE\uCCEF\uCCF1",12,"\u30A1",85],["ac41","\uCCFE\uCCFF\uCD00\uCD02",5,"\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11",6,"\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],["ac61","\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D",11,"\uCD3A",4],["ac81","\uCD3F",28,"\uCD5D\uCD5E\uCD5F\u0410",5,"\u0401\u0416",25],["acd1","\u0430",5,"\u0451\u0436",25],["ad41","\uCD61\uCD62\uCD63\uCD65",6,"\uCD6E\uCD70\uCD72",5,"\uCD79",7],["ad61","\uCD81",6,"\uCD89",10,"\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],["ad81","\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA",5,"\uCDB1",18,"\uCDC5"],["ae41","\uCDC6",5,"\uCDCD\uCDCE\uCDCF\uCDD1",16],["ae61","\uCDE2",5,"\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1",6,"\uCDFA\uCDFC\uCDFE",4],["ae81","\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D",6,"\uCE15\uCE16\uCE17\uCE18\uCE1A",5,"\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],["af41","\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36",19],["af61","\uCE4A",13,"\uCE5A\uCE5B\uCE5D\uCE5E\uCE62",5,"\uCE6A\uCE6C"],["af81","\uCE6E",5,"\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D",6,"\uCE86\uCE88\uCE8A",5,"\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],["b041","\uCE9A",5,"\uCEA2\uCEA6",5,"\uCEAE",12],["b061","\uCEBB",5,"\uCEC2",19],["b081","\uCED6",13,"\uCEE6\uCEE7\uCEE9\uCEEA\uCEED",6,"\uCEF6\uCEFA",5,"\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10",7,"\uAC19",4,"\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],["b141","\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09",6,"\uCF12\uCF14\uCF16",5,"\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],["b161","\uCF25",6,"\uCF2E\uCF32",5,"\uCF39",11],["b181","\uCF45",14,"\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D",6,"\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],["b241","\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79",6,"\uCF81\uCF82\uCF83\uCF84\uCF86",5,"\uCF8D"],["b261","\uCF8E",18,"\uCFA2",5,"\uCFA9"],["b281","\uCFAA",5,"\uCFB1",18,"\uCFC5",6,"\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],["b341","\uCFCC",19,"\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],["b361","\uCFEA",5,"\uCFF2\uCFF4\uCFF6",5,"\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005",5],["b381","\uD00B",5,"\uD012",5,"\uD019",19,"\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB",4,"\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],["b441","\uD02E",5,"\uD036\uD037\uD039\uD03A\uD03B\uD03D",6,"\uD046\uD048\uD04A",5],["b461","\uD051\uD052\uD053\uD055\uD056\uD057\uD059",6,"\uD061",10,"\uD06E\uD06F"],["b481","\uD071\uD072\uD073\uD075",6,"\uD07E\uD07F\uD080\uD082",18,"\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB",4,"\uB2F3\uB2F4\uB2F5\uB2F7",4,"\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],["b541","\uD095",14,"\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD",5],["b561","\uD0B3\uD0B6\uD0B8\uD0BA",5,"\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA",5,"\uD0D2\uD0D6",4],["b581","\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5",6,"\uD0EE\uD0F2",5,"\uD0F9",11,"\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],["b641","\uD105",7,"\uD10E",17],["b661","\uD120",15,"\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],["b681","\uD13F\uD142\uD146",5,"\uD14E\uD14F\uD151\uD152\uD153\uD155",6,"\uD15E\uD160\uD162",5,"\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],["b741","\uD16E",13,"\uD17D",6,"\uD185\uD186\uD187\uD189\uD18A"],["b761","\uD18B",20,"\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],["b781","\uD1A9",6,"\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1",14,"\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],["b841","\uD1D0",7,"\uD1D9",17],["b861","\uD1EB",8,"\uD1F5\uD1F6\uD1F7\uD1F9",13],["b881","\uD208\uD20A",5,"\uD211",24,"\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE",4,"\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],["b941","\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235",6,"\uD23E\uD240\uD242",5,"\uD249\uD24A\uD24B\uD24C"],["b961","\uD24D",14,"\uD25D",6,"\uD265\uD266\uD267\uD268"],["b981","\uD269",22,"\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14",4,"\uBC1B",4,"\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],["ba41","\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296",5,"\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5",6,"\uD2AD"],["ba61","\uD2AE\uD2AF\uD2B0\uD2B2",5,"\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3",4,"\uD2CA\uD2CC",5],["ba81","\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD",6,"\uD2E6",9,"\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],["bb41","\uD2FB",4,"\uD302\uD304\uD306",5,"\uD30F\uD311\uD312\uD313\uD315\uD317",4,"\uD31E\uD322\uD323"],["bb61","\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331",6,"\uD33A\uD33E",5,"\uD346\uD347\uD348\uD349"],["bb81","\uD34A",31,"\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],["bc41","\uD36A",17,"\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],["bc61","\uD388\uD389\uD38A\uD38B\uD38E\uD392",5,"\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1",6,"\uD3AA\uD3AC\uD3AE"],["bc81","\uD3AF",4,"\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD",6,"\uD3C6\uD3C7\uD3CA",5,"\uD3D1",5,"\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C",4,"\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],["bd41","\uD3D7\uD3D9",7,"\uD3E2\uD3E4",7,"\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],["bd61","\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402",5,"\uD409",13],["bd81","\uD417",5,"\uD41E",25,"\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],["be41","\uD438",7,"\uD441\uD442\uD443\uD445",14],["be61","\uD454",7,"\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465",7,"\uD46E\uD470\uD471\uD472"],["be81","\uD473",4,"\uD47A\uD47B\uD47D\uD47E\uD481\uD483",4,"\uD48A\uD48C\uD48E",5,"\uD495",8,"\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4",6,"\uC5CC\uC5CE"],["bf41","\uD49E",10,"\uD4AA",14],["bf61","\uD4B9",18,"\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],["bf81","\uD4D6",5,"\uD4DD\uD4DE\uD4E0",7,"\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1",6,"\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC",5,"\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],["c041","\uD4FE",5,"\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D",6,"\uD516\uD518",5],["c061","\uD51E",25],["c081","\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545",6,"\uD54E\uD550\uD552",5,"\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751",7,"\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],["c141","\uD564\uD566\uD567\uD56A\uD56C\uD56E",5,"\uD576\uD577\uD579\uD57A\uD57B\uD57D",6,"\uD586\uD58A\uD58B"],["c161","\uD58C\uD58D\uD58E\uD58F\uD591",19,"\uD5A6\uD5A7"],["c181","\uD5A8",31,"\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],["c241","\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3",4,"\uD5DA\uD5DC\uD5DE",5,"\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],["c261","\uD5EF",4,"\uD5F6\uD5F8\uD5FA",5,"\uD602\uD603\uD605\uD606\uD607\uD609",6,"\uD612"],["c281","\uD616",5,"\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625",7,"\uD62E",9,"\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],["c341","\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D",4],["c361","\uD662",4,"\uD668\uD66A",5,"\uD672\uD673\uD675",11],["c381","\uD681\uD682\uD684\uD686",5,"\uD68E\uD68F\uD691\uD692\uD693\uD695",7,"\uD69E\uD6A0\uD6A2",5,"\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],["c441","\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1",7,"\uD6BA\uD6BC",7,"\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],["c461","\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA",5,"\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9",4],["c481","\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6",5,"\uD6FE\uD6FF\uD701\uD702\uD703\uD705",11,"\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],["c541","\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721",6,"\uD72A\uD72C\uD72E",5,"\uD736\uD737\uD739"],["c561","\uD73A\uD73B\uD73D",6,"\uD745\uD746\uD748\uD74A",5,"\uD752\uD753\uD755\uD75A",4],["c581","\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775",6,"\uD77E\uD77F\uD780\uD782",5,"\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],["c641","\uD78D\uD78E\uD78F\uD791",6,"\uD79A\uD79C\uD79E",5],["c6a1","\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],["c7a1","\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],["c8a1","\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],["caa1","\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],["cba1","\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],["cca1","\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],["cda1","\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],["cea1","\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],["cfa1","\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],["d0a1","\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],["d1a1","\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E",5,"\u90A3\uF914",4,"\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],["d2a1","\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928",4,"\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933",5,"\u99D1\uF939",10,"\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A",7,"\u5AE9\u8A25\u677B\u7D10\uF952",5,"\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],["d3a1","\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],["d4a1","\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],["d5a1","\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],["d6a1","\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],["d7a1","\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],["d8a1","\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],["d9a1","\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],["daa1","\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],["dba1","\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],["dca1","\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],["dda1","\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],["dea1","\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],["dfa1","\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],["e0a1","\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],["e1a1","\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],["e2a1","\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],["e3a1","\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],["e4a1","\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],["e5a1","\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],["e6a1","\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],["e7a1","\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],["e8a1","\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],["e9a1","\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],["eaa1","\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],["eba1","\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],["eca1","\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],["eda1","\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],["eea1","\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],["efa1","\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],["f0a1","\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],["f1a1","\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],["f2a1","\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],["f3a1","\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],["f4a1","\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],["f5a1","\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],["f6a1","\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],["f7a1","\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],["f8a1","\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],["f9a1","\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],["faa1","\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],["fba1","\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],["fca1","\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],["fda1","\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]]});var xT=$((ZNe,rre)=>{rre.exports=[["0","\0",127],["a140","\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],["a1a1","\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62",4,"\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],["a240","\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581",7,"\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],["a2a1","\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10",9,"\u2160",9,"\u3021",8,"\u5341\u5344\u5345\uFF21",25,"\uFF41",21],["a340","\uFF57\uFF58\uFF59\uFF5A\u0391",16,"\u03A3",6,"\u03B1",16,"\u03C3",6,"\u3105",10],["a3a1","\u3110",25,"\u02D9\u02C9\u02CA\u02C7\u02CB"],["a3e1","\u20AC"],["a440","\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],["a4a1","\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],["a540","\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],["a5a1","\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],["a640","\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],["a6a1","\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],["a740","\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],["a7a1","\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],["a840","\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],["a8a1","\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],["a940","\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],["a9a1","\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],["aa40","\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],["aaa1","\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],["ab40","\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],["aba1","\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],["ac40","\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],["aca1","\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],["ad40","\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],["ada1","\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],["ae40","\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],["aea1","\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],["af40","\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],["afa1","\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],["b040","\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],["b0a1","\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],["b140","\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],["b1a1","\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],["b240","\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],["b2a1","\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],["b340","\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],["b3a1","\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],["b440","\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],["b4a1","\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],["b540","\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],["b5a1","\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],["b640","\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],["b6a1","\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],["b740","\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],["b7a1","\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],["b840","\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],["b8a1","\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],["b940","\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],["b9a1","\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],["ba40","\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],["baa1","\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],["bb40","\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],["bba1","\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],["bc40","\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],["bca1","\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],["bd40","\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],["bda1","\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],["be40","\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],["bea1","\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],["bf40","\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],["bfa1","\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],["c040","\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],["c0a1","\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],["c140","\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],["c1a1","\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],["c240","\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],["c2a1","\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],["c340","\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],["c3a1","\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],["c440","\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],["c4a1","\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],["c540","\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],["c5a1","\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],["c640","\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],["c940","\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],["c9a1","\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],["ca40","\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],["caa1","\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],["cb40","\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],["cba1","\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],["cc40","\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],["cca1","\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],["cd40","\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],["cda1","\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],["ce40","\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],["cea1","\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],["cf40","\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],["cfa1","\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],["d040","\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],["d0a1","\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],["d140","\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],["d1a1","\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],["d240","\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],["d2a1","\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],["d340","\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],["d3a1","\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],["d440","\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],["d4a1","\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],["d540","\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],["d5a1","\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],["d640","\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],["d6a1","\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],["d740","\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],["d7a1","\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],["d840","\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],["d8a1","\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],["d940","\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],["d9a1","\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],["da40","\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],["daa1","\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],["db40","\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],["dba1","\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],["dc40","\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],["dca1","\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],["dd40","\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],["dda1","\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],["de40","\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],["dea1","\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],["df40","\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],["dfa1","\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],["e040","\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],["e0a1","\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],["e140","\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],["e1a1","\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],["e240","\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],["e2a1","\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],["e340","\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],["e3a1","\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],["e440","\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],["e4a1","\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],["e540","\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],["e5a1","\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],["e640","\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],["e6a1","\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],["e740","\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],["e7a1","\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],["e840","\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],["e8a1","\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],["e940","\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],["e9a1","\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],["ea40","\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],["eaa1","\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],["eb40","\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],["eba1","\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],["ec40","\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],["eca1","\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],["ed40","\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],["eda1","\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],["ee40","\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],["eea1","\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],["ef40","\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],["efa1","\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],["f040","\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],["f0a1","\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],["f140","\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],["f1a1","\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],["f240","\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],["f2a1","\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],["f340","\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],["f3a1","\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],["f440","\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],["f4a1","\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],["f540","\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],["f5a1","\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],["f640","\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],["f6a1","\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],["f740","\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],["f7a1","\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],["f840","\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],["f8a1","\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],["f940","\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],["f9a1","\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]]});var ez=$((BNe,nre)=>{nre.exports=[["8740","\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],["8767","\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],["87a1","\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],["8840","\u31C0",4,"\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],["88a1","\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],["8940","\u{2A3A9}\u{21145}"],["8943","\u650A"],["8946","\u4E3D\u6EDD\u9D4E\u91DF"],["894c","\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],["89a1","\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],["89ab","\u918C\u78B8\u915E\u80BC"],["89b0","\u8D0B\u80F6\u{209E7}"],["89b5","\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],["89c1","\u6E9A\u823E\u7519"],["89c5","\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],["8a40","\u{27D84}\u5525"],["8a43","\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],["8a64","\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],["8a76","\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],["8aa1","\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],["8aac","\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],["8ab2","\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],["8abb","\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],["8ac9","\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],["8ace","\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],["8adf","\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],["8af6","\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],["8b40","\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],["8b55","\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],["8ba1","\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],["8bde","\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],["8c40","\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],["8ca1","\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],["8ca7","\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],["8cc9","\u9868\u676B\u4276\u573D"],["8cce","\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],["8ce6","\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],["8d40","\u{20B9F}"],["8d42","\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],["8da1","\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],["8e40","\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],["8ea1","\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],["8f40","\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],["8fa1","\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],["9040","\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],["90a1","\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],["9140","\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],["91a1","\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],["9240","\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],["92a1","\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],["9340","\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],["93a1","\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],["9440","\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],["94a1","\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],["9540","\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],["95a1","\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],["9640","\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],["96a1","\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],["9740","\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],["97a1","\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],["9840","\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],["98a1","\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],["9940","\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],["99a1","\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],["9a40","\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],["9aa1","\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],["9b40","\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],["9b62","\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],["9ba1","\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],["9c40","\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],["9ca1","\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],["9d40","\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],["9da1","\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],["9e40","\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],["9ea1","\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],["9ead","\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],["9ec5","\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],["9ef5","\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],["9f40","\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],["9f4f","\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],["9fa1","\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],["9fae","\u9159\u9681\u915C"],["9fb2","\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],["9fc1","\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],["9fc9","\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],["9fdb","\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],["9fe7","\u6BFA\u8818\u7F78"],["9feb","\u5620\u{2A64A}\u8E77\u9F53"],["9ff0","\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],["a040","\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],["a055","\u{2183B}\u{26E05}"],["a058","\u8A7E\u{2251B}"],["a05b","\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],["a063","\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],["a073","\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],["a0a1","\u5D57\u{28BC2}\u8FDA\u{28E39}"],["a0a6","\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],["a0ae","\u77FE"],["a0b0","\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],["a0d4","\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],["a0e2","\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],["a3c0","\u2400",31,"\u2421"],["c6a1","\u2460",9,"\u2474",9,"\u2170",9,"\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041",23],["c740","\u3059",58,"\u30A1\u30A2\u30A3\u30A4"],["c7a1","\u30A5",81,"\u0410",5,"\u0401\u0416",4],["c840","\u041B",26,"\u0451\u0436",25,"\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],["c8a1","\u9FB0\u5188\u9FB1\u{27607}"],["c8cd","\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],["c8f5","\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],["f9fe","\uFFED"],["fa40","\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],["faa1","\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],["fb40","\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],["fba1","\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],["fc40","\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],["fca1","\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],["fd40","\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],["fda1","\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],["fe40","\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],["fea1","\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]]});var rz=$((GNe,tz)=>{"use strict";tz.exports={shiftjis:{type:"_dbcs",table:function(){return Jj()},encodeAdd:{"\xA5":92,"\u203E":126},encodeSkipVals:[{from:60736,to:63808}]},csshiftjis:"shiftjis",mskanji:"shiftjis",sjis:"shiftjis",windows31j:"shiftjis",ms31j:"shiftjis",xsjis:"shiftjis",windows932:"shiftjis",ms932:"shiftjis",932:"shiftjis",cp932:"shiftjis",eucjp:{type:"_dbcs",table:function(){return Xj()},encodeAdd:{"\xA5":92,"\u203E":126}},gb2312:"cp936",gb231280:"cp936",gb23121980:"cp936",csgb2312:"cp936",csiso58gb231280:"cp936",euccn:"cp936",windows936:"cp936",ms936:"cp936",936:"cp936",cp936:{type:"_dbcs",table:function(){return iv()}},gbk:{type:"_dbcs",table:function(){return iv().concat(ST())}},xgbk:"gbk",isoir58:"gbk",gb18030:{type:"_dbcs",table:function(){return iv().concat(ST())},gb18030:function(){return Yj()},encodeSkipVals:[128],encodeAdd:{"\u20AC":41699}},chinese:"gb18030",windows949:"cp949",ms949:"cp949",949:"cp949",cp949:{type:"_dbcs",table:function(){return Qj()}},cseuckr:"cp949",csksc56011987:"cp949",euckr:"cp949",isoir149:"cp949",korean:"cp949",ksc56011987:"cp949",ksc56011989:"cp949",ksc5601:"cp949",windows950:"cp950",ms950:"cp950",950:"cp950",cp950:{type:"_dbcs",table:function(){return xT()}},big5:"big5hkscs",big5hkscs:{type:"_dbcs",table:function(){return xT().concat(ez())},encodeSkipVals:[41676]},cnbig5:"big5hkscs",csbig5:"big5hkscs",xxbig5:"big5hkscs"}});var sz=$((iz,au)=>{"use strict";var nz=[Dj(),zj(),Uj(),qj(),Zj(),Gj(),Kj(),rz()];for(sv=0;sv{"use strict";var oz=require("buffer").Buffer,av=require("stream").Transform;az.exports=function(t){t.encodeStream=function(r,n){return new ya(t.getEncoder(r,n),n)},t.decodeStream=function(r,n){return new To(t.getDecoder(r,n),n)},t.supportsStreams=!0,t.IconvLiteEncoderStream=ya,t.IconvLiteDecoderStream=To,t._collect=To.prototype.collect};function ya(t,e){this.conv=t,e=e||{},e.decodeStrings=!1,av.call(this,e)}ya.prototype=Object.create(av.prototype,{constructor:{value:ya}});ya.prototype._transform=function(t,e,r){if(typeof t!="string")return r(new Error("Iconv encoding stream needs strings as its input."));try{var n=this.conv.write(t);n&&n.length&&this.push(n),r()}catch(i){r(i)}};ya.prototype._flush=function(t){try{var e=this.conv.end();e&&e.length&&this.push(e),t()}catch(r){t(r)}};ya.prototype.collect=function(t){var e=[];return this.on("error",t),this.on("data",function(r){e.push(r)}),this.on("end",function(){t(null,oz.concat(e))}),this};function To(t,e){this.conv=t,e=e||{},e.encoding=this.encoding="utf8",av.call(this,e)}To.prototype=Object.create(av.prototype,{constructor:{value:To}});To.prototype._transform=function(t,e,r){if(!oz.isBuffer(t))return r(new Error("Iconv decoding stream needs buffers as its input."));try{var n=this.conv.write(t);n&&n.length&&this.push(n,this.encoding),r()}catch(i){r(i)}};To.prototype._flush=function(t){try{var e=this.conv.end();e&&e.length&&this.push(e,this.encoding),t()}catch(r){t(r)}};To.prototype.collect=function(t){var e="";return this.on("error",t),this.on("data",function(r){e+=r}),this.on("end",function(){t(null,e)}),this}});var lz=$((VNe,uz)=>{"use strict";var Vt=require("buffer").Buffer;uz.exports=function(t){var e=void 0;t.supportsNodeEncodingsExtension=!(Vt.from||new Vt(0)instanceof Uint8Array),t.extendNodeEncodings=function(){if(!e){if(e={},!t.supportsNodeEncodingsExtension){console.error("ACTION NEEDED: require('iconv-lite').extendNodeEncodings() is not supported in your version of Node"),console.error("See more info at https://github.com/ashtuchkin/iconv-lite/wiki/Node-v4-compatibility");return}var n={hex:!0,utf8:!0,"utf-8":!0,ascii:!0,binary:!0,base64:!0,ucs2:!0,"ucs-2":!0,utf16le:!0,"utf-16le":!0};Vt.isNativeEncoding=function(o){return o&&n[o.toLowerCase()]};var i=require("buffer").SlowBuffer;if(e.SlowBufferToString=i.prototype.toString,i.prototype.toString=function(o,a,c){return o=String(o||"utf8").toLowerCase(),Vt.isNativeEncoding(o)?e.SlowBufferToString.call(this,o,a,c):(typeof a>"u"&&(a=0),typeof c>"u"&&(c=this.length),t.decode(this.slice(a,c),o))},e.SlowBufferWrite=i.prototype.write,i.prototype.write=function(o,a,c,u){if(isFinite(a))isFinite(c)||(u=c,c=void 0);else{var l=u;u=a,a=c,c=l}a=+a||0;var d=this.length-a;if(c?(c=+c,c>d&&(c=d)):c=d,u=String(u||"utf8").toLowerCase(),Vt.isNativeEncoding(u))return e.SlowBufferWrite.call(this,o,a,c,u);if(o.length>0&&(c<0||a<0))throw new RangeError("attempt to write beyond buffer bounds");var p=t.encode(o,u);return p.length"u"&&(a=0),typeof c>"u"&&(c=this.length),t.decode(this.slice(a,c),o))},e.BufferWrite=Vt.prototype.write,Vt.prototype.write=function(o,a,c,u){var l=a,d=c,p=u;if(isFinite(a))isFinite(c)||(u=c,c=void 0);else{var f=u;u=a,a=c,c=f}if(u=String(u||"utf8").toLowerCase(),Vt.isNativeEncoding(u))return e.BufferWrite.call(this,o,l,d,p);a=+a||0;var m=this.length-a;if(c?(c=+c,c>m&&(c=m)):c=m,o.length>0&&(c<0||a<0))throw new RangeError("attempt to write beyond buffer bounds");var h=t.encode(o,u);return h.length{"use strict";var pz=ga().Buffer,fz=Aj(),lt=mz.exports;lt.encodings=null;lt.defaultCharUnicode="\uFFFD";lt.defaultCharSingleByte="?";lt.encode=function(e,r,n){e=""+(e||"");var i=lt.getEncoder(r,n),s=i.write(e),o=i.end();return o&&o.length>0?pz.concat([s,o]):s};lt.decode=function(e,r,n){typeof e=="string"&&(lt.skipDecodeWarning||(console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"),lt.skipDecodeWarning=!0),e=pz.from(""+(e||""),"binary"));var i=lt.getDecoder(r,n),s=i.write(e),o=i.end();return o?s+o:s};lt.encodingExists=function(e){try{return lt.getCodec(e),!0}catch{return!1}};lt.toEncoding=lt.encode;lt.fromEncoding=lt.decode;lt._codecDataCache={};lt.getCodec=function(e){lt.encodings||(lt.encodings=sz());for(var r=lt._canonicalizeEncoding(e),n={};;){var i=lt._codecDataCache[r];if(i)return i;var s=lt.encodings[r];switch(typeof s){case"string":r=s;break;case"object":for(var o in s)n[o]=s[o];n.encodingName||(n.encodingName=r),r=s.type;break;case"function":return n.encodingName||(n.encodingName=r),i=new s(n,lt),lt._codecDataCache[n.encodingName]=i,i;default:throw new Error("Encoding not recognized: '"+e+"' (searched as: '"+r+"')")}}};lt._canonicalizeEncoding=function(t){return(""+t).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g,"")};lt.getEncoder=function(e,r){var n=lt.getCodec(e),i=new n.encoder(r,n);return n.bomAware&&r&&r.addBOM&&(i=new fz.PrependBOM(i,r)),i};lt.getDecoder=function(e,r){var n=lt.getCodec(e),i=new n.decoder(r,n);return n.bomAware&&!(r&&r.stripBOM===!1)&&(i=new fz.StripBOM(i,r)),i};var dz=typeof process<"u"&&process.versions&&process.versions.node;dz&&(wT=dz.split(".").map(Number),(wT[0]>0||wT[1]>=10)&&cz()(lt),lz()(lt));var wT});var cv=$((JNe,hz)=>{"use strict";hz.exports=sre;function ire(t){for(var e=t.listeners("data"),r=0;r{"use strict";var gz=fre(),ore=eu(),_a=ma(),are=ET(),cre=cv();yz.exports=dre;var ure=/^Encoding not recognized: /;function lre(t){if(!t)return null;try{return are.getDecoder(t)}catch(e){throw ure.test(e.message)?_a(415,"specified encoding unsupported",{encoding:t,type:"encoding.unsupported"}):e}}function dre(t,e,r){var n=r,i=e||{};if(t===void 0)throw new TypeError("argument stream is required");if(typeof t!="object"||t===null||typeof t.on!="function")throw new TypeError("argument stream must be a stream");if((e===!0||typeof e=="string")&&(i={encoding:e}),typeof e=="function"&&(n=e,i={}),n!==void 0&&typeof n!="function")throw new TypeError("argument callback must be a function");if(!n&&!global.Promise)throw new TypeError("argument callback is required");var s=i.encoding!==!0?i.encoding:"utf-8",o=ore.parse(i.limit),a=i.length!=null&&!isNaN(i.length)?parseInt(i.length,10):null;return n?vz(t,s,a,o,mre(n)):new Promise(function(u,l){vz(t,s,a,o,function(p,f){if(p)return l(p);u(f)})})}function pre(t){cre(t),typeof t.pause=="function"&&t.pause()}function vz(t,e,r,n,i){var s=!1,o=!0;if(n!==null&&r!==null&&r>n)return d(_a(413,"request entity too large",{expected:r,length:r,limit:n,type:"entity.too.large"}));var a=t._readableState;if(t._decoder||a&&(a.encoding||a.decoder))return d(_a(500,"stream encoding should not be set",{type:"stream.encoding.set"}));if(typeof t.readable<"u"&&!t.readable)return d(_a(500,"stream is not readable",{type:"stream.not.readable"}));var c=0,u;try{u=lre(e)}catch(g){return d(g)}var l=u?"":[];t.on("aborted",p),t.on("close",h),t.on("data",f),t.on("end",m),t.on("error",m),o=!1;function d(){for(var g=new Array(arguments.length),v=0;vn?d(_a(413,"request entity too large",{limit:n,received:c,type:"entity.too.large"})):u?l+=u.write(g):l.push(g))}function m(g){if(!s){if(g)return d(g);if(r!==null&&c!==r)d(_a(400,"request size did not match content length",{expected:r,length:r,received:c,type:"request.size.invalid"}));else{var v=u?l+(u.end()||""):Buffer.concat(l);d(null,v)}}}function h(){l=null,t.removeListener("aborted",p),t.removeListener("data",f),t.removeListener("end",m),t.removeListener("error",m),t.removeListener("close",h)}}function fre(){try{return require("async_hooks")}catch{return{}}}function mre(t){var e;return gz.AsyncResource&&(e=new gz.AsyncResource(t.name||"bound-anonymous-fn")),!e||!e.runInAsyncScope?t:e.runInAsyncScope.bind(e,t,null)}});var Sz=$((YNe,bz)=>{"use strict";bz.exports=hre;function hre(t,e){if(!Array.isArray(t))throw new TypeError("arg must be an array of [ee, events...] arrays");for(var r=[],n=0;n{"use strict";kT.exports=yre;kT.exports.isFinished=Ez;var xz=wre(),wz=Sz(),vre=typeof setImmediate=="function"?setImmediate:function(t){process.nextTick(t.bind.apply(t,arguments))};function yre(t,e){return Ez(t)!==!1?(vre(e,null,t),t):(bre(t,Ere(e)),t)}function Ez(t){var e=t.socket;if(typeof t.finished=="boolean")return!!(t.finished||e&&!e.writable);if(typeof t.complete=="boolean")return!!(t.upgrade||!e||!e.readable||t.complete&&!t.readable)}function _re(t,e){var r,n,i=!1;function s(a){r.cancel(),n.cancel(),i=!0,e(a)}r=n=wz([[t,"end","finish"]],s);function o(a){t.removeListener("socket",o),!i&&r===n&&(n=wz([[a,"error","close"]],s))}if(t.socket){o(t.socket);return}t.on("socket",o),t.socket===void 0&&xre(t,o)}function bre(t,e){var r=t.__onFinished;(!r||!r.queue)&&(r=t.__onFinished=Sre(t),_re(t,r)),r.queue.push(e)}function Sre(t){function e(r){if(t.__onFinished===e&&(t.__onFinished=null),!!e.queue){var n=e.queue;e.queue=null;for(var i=0;i{"use strict";var $o=ma(),kre=Kk(),Tre=_z(),kz=ET(),Tz=Tp(),$re=cv(),$z=require("zlib");Iz.exports=Ire;function Ire(t,e,r,n,i,s){var o,a=s,c;t._body=!0;var u=a.encoding!==null?a.encoding:null,l=a.verify;try{c=Rre(t,i,a.inflate),o=c.length,c.length=void 0}catch(d){return r(d)}if(a.length=o,a.encoding=l?null:u,a.encoding===null&&u!==null&&!kz.encodingExists(u))return r($o(415,'unsupported charset "'+u.toUpperCase()+'"',{charset:u.toLowerCase(),type:"charset.unsupported"}));i("read body"),Tre(c,a,function(d,p){if(d){var f;d.type==="encoding.unsupported"?f=$o(415,'unsupported charset "'+u.toUpperCase()+'"',{charset:u.toLowerCase(),type:"charset.unsupported"}):f=$o(400,d),c!==t&&($re(t),kre(c,!0)),Ore(t,function(){r($o(400,f))});return}if(l)try{i("verify body"),l(t,e,p,u)}catch(h){r($o(403,h,{body:p,type:h.type||"entity.verify.failed"}));return}var m=p;try{i("parse body"),m=typeof p!="string"&&u!==null?kz.decode(p,u):p,t.body=n(m)}catch(h){r($o(400,h,{body:m,type:h.type||"entity.parse.failed"}));return}r()})}function Rre(t,e,r){var n=(t.headers["content-encoding"]||"identity").toLowerCase(),i=t.headers["content-length"],s;if(e('content-encoding "%s"',n),r===!1&&n!=="identity")throw $o(415,"content encoding unsupported",{encoding:n,type:"encoding.unsupported"});switch(n){case"deflate":s=$z.createInflate(),e("inflate body"),t.pipe(s);break;case"gzip":s=$z.createGunzip(),e("gunzip body"),t.pipe(s);break;case"identity":s=t,s.length=i;break;default:throw $o(415,'unsupported content encoding "'+n+'"',{encoding:n,type:"encoding.unsupported"})}return s}function Ore(t,e){Tz.isFinished(t)?e(null):(Tz(t,e),t.resume())}});var Pz=$(TT=>{var Rz=/; *([!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+) *= *("(?:[ !\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u0020-\u007e])*"|[!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+) */g,Cre=/^[\u0020-\u007e\u0080-\u00ff]+$/,Cz=/^[!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+$/,Pre=/\\([\u0000-\u007f])/g,Are=/([\\"])/g,Nre=/^[A-Za-z0-9][A-Za-z0-9!#$&^_.-]{0,126}$/,Oz=/^[A-Za-z0-9][A-Za-z0-9!#$&^_-]{0,126}$/,Mre=/^ *([A-Za-z0-9][A-Za-z0-9!#$&^_-]{0,126})\/([A-Za-z0-9][A-Za-z0-9!#$&^_.+-]{0,126}) *$/;TT.format=Dre;TT.parse=jre;function Dre(t){if(!t||typeof t!="object")throw new TypeError("argument obj is required");var e=t.parameters,r=t.subtype,n=t.suffix,i=t.type;if(!i||!Oz.test(i))throw new TypeError("invalid type");if(!r||!Nre.test(r))throw new TypeError("invalid subtype");var s=i+"/"+r;if(n){if(!Oz.test(n))throw new TypeError("invalid suffix");s+="+"+n}if(e&&typeof e=="object")for(var o,a=Object.keys(e).sort(),c=0;c0&&!Cre.test(e))throw new TypeError("invalid parameter value");return'"'+e.replace(Are,"\\$1")+'"'}function Ure(t){var e=Mre.exec(t.toLowerCase());if(!e)throw new TypeError("invalid media type");var r=e[1],n=e[2],i,s=n.lastIndexOf("+");s!==-1&&(i=n.substr(s+1),n=n.substr(0,s));var o={type:r,subtype:n,suffix:i};return o}});var Az=$((rMe,Fre)=>{Fre.exports={"application/1d-interleaved-parityfec":{source:"iana"},"application/3gpdash-qoe-report+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/3gpp-ims+xml":{source:"iana",compressible:!0},"application/3gpphal+json":{source:"iana",compressible:!0},"application/3gpphalforms+json":{source:"iana",compressible:!0},"application/a2l":{source:"iana"},"application/ace+cbor":{source:"iana"},"application/activemessage":{source:"iana"},"application/activity+json":{source:"iana",compressible:!0},"application/alto-costmap+json":{source:"iana",compressible:!0},"application/alto-costmapfilter+json":{source:"iana",compressible:!0},"application/alto-directory+json":{source:"iana",compressible:!0},"application/alto-endpointcost+json":{source:"iana",compressible:!0},"application/alto-endpointcostparams+json":{source:"iana",compressible:!0},"application/alto-endpointprop+json":{source:"iana",compressible:!0},"application/alto-endpointpropparams+json":{source:"iana",compressible:!0},"application/alto-error+json":{source:"iana",compressible:!0},"application/alto-networkmap+json":{source:"iana",compressible:!0},"application/alto-networkmapfilter+json":{source:"iana",compressible:!0},"application/alto-updatestreamcontrol+json":{source:"iana",compressible:!0},"application/alto-updatestreamparams+json":{source:"iana",compressible:!0},"application/aml":{source:"iana"},"application/andrew-inset":{source:"iana",extensions:["ez"]},"application/applefile":{source:"iana"},"application/applixware":{source:"apache",extensions:["aw"]},"application/at+jwt":{source:"iana"},"application/atf":{source:"iana"},"application/atfx":{source:"iana"},"application/atom+xml":{source:"iana",compressible:!0,extensions:["atom"]},"application/atomcat+xml":{source:"iana",compressible:!0,extensions:["atomcat"]},"application/atomdeleted+xml":{source:"iana",compressible:!0,extensions:["atomdeleted"]},"application/atomicmail":{source:"iana"},"application/atomsvc+xml":{source:"iana",compressible:!0,extensions:["atomsvc"]},"application/atsc-dwd+xml":{source:"iana",compressible:!0,extensions:["dwd"]},"application/atsc-dynamic-event-message":{source:"iana"},"application/atsc-held+xml":{source:"iana",compressible:!0,extensions:["held"]},"application/atsc-rdt+json":{source:"iana",compressible:!0},"application/atsc-rsat+xml":{source:"iana",compressible:!0,extensions:["rsat"]},"application/atxml":{source:"iana"},"application/auth-policy+xml":{source:"iana",compressible:!0},"application/bacnet-xdd+zip":{source:"iana",compressible:!1},"application/batch-smtp":{source:"iana"},"application/bdoc":{compressible:!1,extensions:["bdoc"]},"application/beep+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/calendar+json":{source:"iana",compressible:!0},"application/calendar+xml":{source:"iana",compressible:!0,extensions:["xcs"]},"application/call-completion":{source:"iana"},"application/cals-1840":{source:"iana"},"application/captive+json":{source:"iana",compressible:!0},"application/cbor":{source:"iana"},"application/cbor-seq":{source:"iana"},"application/cccex":{source:"iana"},"application/ccmp+xml":{source:"iana",compressible:!0},"application/ccxml+xml":{source:"iana",compressible:!0,extensions:["ccxml"]},"application/cdfx+xml":{source:"iana",compressible:!0,extensions:["cdfx"]},"application/cdmi-capability":{source:"iana",extensions:["cdmia"]},"application/cdmi-container":{source:"iana",extensions:["cdmic"]},"application/cdmi-domain":{source:"iana",extensions:["cdmid"]},"application/cdmi-object":{source:"iana",extensions:["cdmio"]},"application/cdmi-queue":{source:"iana",extensions:["cdmiq"]},"application/cdni":{source:"iana"},"application/cea":{source:"iana"},"application/cea-2018+xml":{source:"iana",compressible:!0},"application/cellml+xml":{source:"iana",compressible:!0},"application/cfw":{source:"iana"},"application/city+json":{source:"iana",compressible:!0},"application/clr":{source:"iana"},"application/clue+xml":{source:"iana",compressible:!0},"application/clue_info+xml":{source:"iana",compressible:!0},"application/cms":{source:"iana"},"application/cnrp+xml":{source:"iana",compressible:!0},"application/coap-group+json":{source:"iana",compressible:!0},"application/coap-payload":{source:"iana"},"application/commonground":{source:"iana"},"application/conference-info+xml":{source:"iana",compressible:!0},"application/cose":{source:"iana"},"application/cose-key":{source:"iana"},"application/cose-key-set":{source:"iana"},"application/cpl+xml":{source:"iana",compressible:!0,extensions:["cpl"]},"application/csrattrs":{source:"iana"},"application/csta+xml":{source:"iana",compressible:!0},"application/cstadata+xml":{source:"iana",compressible:!0},"application/csvm+json":{source:"iana",compressible:!0},"application/cu-seeme":{source:"apache",extensions:["cu"]},"application/cwt":{source:"iana"},"application/cybercash":{source:"iana"},"application/dart":{compressible:!0},"application/dash+xml":{source:"iana",compressible:!0,extensions:["mpd"]},"application/dash-patch+xml":{source:"iana",compressible:!0,extensions:["mpp"]},"application/dashdelta":{source:"iana"},"application/davmount+xml":{source:"iana",compressible:!0,extensions:["davmount"]},"application/dca-rft":{source:"iana"},"application/dcd":{source:"iana"},"application/dec-dx":{source:"iana"},"application/dialog-info+xml":{source:"iana",compressible:!0},"application/dicom":{source:"iana"},"application/dicom+json":{source:"iana",compressible:!0},"application/dicom+xml":{source:"iana",compressible:!0},"application/dii":{source:"iana"},"application/dit":{source:"iana"},"application/dns":{source:"iana"},"application/dns+json":{source:"iana",compressible:!0},"application/dns-message":{source:"iana"},"application/docbook+xml":{source:"apache",compressible:!0,extensions:["dbk"]},"application/dots+cbor":{source:"iana"},"application/dskpp+xml":{source:"iana",compressible:!0},"application/dssc+der":{source:"iana",extensions:["dssc"]},"application/dssc+xml":{source:"iana",compressible:!0,extensions:["xdssc"]},"application/dvcs":{source:"iana"},"application/ecmascript":{source:"iana",compressible:!0,extensions:["es","ecma"]},"application/edi-consent":{source:"iana"},"application/edi-x12":{source:"iana",compressible:!1},"application/edifact":{source:"iana",compressible:!1},"application/efi":{source:"iana"},"application/elm+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/elm+xml":{source:"iana",compressible:!0},"application/emergencycalldata.cap+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/emergencycalldata.comment+xml":{source:"iana",compressible:!0},"application/emergencycalldata.control+xml":{source:"iana",compressible:!0},"application/emergencycalldata.deviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.ecall.msd":{source:"iana"},"application/emergencycalldata.providerinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.serviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.subscriberinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.veds+xml":{source:"iana",compressible:!0},"application/emma+xml":{source:"iana",compressible:!0,extensions:["emma"]},"application/emotionml+xml":{source:"iana",compressible:!0,extensions:["emotionml"]},"application/encaprtp":{source:"iana"},"application/epp+xml":{source:"iana",compressible:!0},"application/epub+zip":{source:"iana",compressible:!1,extensions:["epub"]},"application/eshop":{source:"iana"},"application/exi":{source:"iana",extensions:["exi"]},"application/expect-ct-report+json":{source:"iana",compressible:!0},"application/express":{source:"iana",extensions:["exp"]},"application/fastinfoset":{source:"iana"},"application/fastsoap":{source:"iana"},"application/fdt+xml":{source:"iana",compressible:!0,extensions:["fdt"]},"application/fhir+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/fhir+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/fido.trusted-apps+json":{compressible:!0},"application/fits":{source:"iana"},"application/flexfec":{source:"iana"},"application/font-sfnt":{source:"iana"},"application/font-tdpfr":{source:"iana",extensions:["pfr"]},"application/font-woff":{source:"iana",compressible:!1},"application/framework-attributes+xml":{source:"iana",compressible:!0},"application/geo+json":{source:"iana",compressible:!0,extensions:["geojson"]},"application/geo+json-seq":{source:"iana"},"application/geopackage+sqlite3":{source:"iana"},"application/geoxacml+xml":{source:"iana",compressible:!0},"application/gltf-buffer":{source:"iana"},"application/gml+xml":{source:"iana",compressible:!0,extensions:["gml"]},"application/gpx+xml":{source:"apache",compressible:!0,extensions:["gpx"]},"application/gxf":{source:"apache",extensions:["gxf"]},"application/gzip":{source:"iana",compressible:!1,extensions:["gz"]},"application/h224":{source:"iana"},"application/held+xml":{source:"iana",compressible:!0},"application/hjson":{extensions:["hjson"]},"application/http":{source:"iana"},"application/hyperstudio":{source:"iana",extensions:["stk"]},"application/ibe-key-request+xml":{source:"iana",compressible:!0},"application/ibe-pkg-reply+xml":{source:"iana",compressible:!0},"application/ibe-pp-data":{source:"iana"},"application/iges":{source:"iana"},"application/im-iscomposing+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/index":{source:"iana"},"application/index.cmd":{source:"iana"},"application/index.obj":{source:"iana"},"application/index.response":{source:"iana"},"application/index.vnd":{source:"iana"},"application/inkml+xml":{source:"iana",compressible:!0,extensions:["ink","inkml"]},"application/iotp":{source:"iana"},"application/ipfix":{source:"iana",extensions:["ipfix"]},"application/ipp":{source:"iana"},"application/isup":{source:"iana"},"application/its+xml":{source:"iana",compressible:!0,extensions:["its"]},"application/java-archive":{source:"apache",compressible:!1,extensions:["jar","war","ear"]},"application/java-serialized-object":{source:"apache",compressible:!1,extensions:["ser"]},"application/java-vm":{source:"apache",compressible:!1,extensions:["class"]},"application/javascript":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["js","mjs"]},"application/jf2feed+json":{source:"iana",compressible:!0},"application/jose":{source:"iana"},"application/jose+json":{source:"iana",compressible:!0},"application/jrd+json":{source:"iana",compressible:!0},"application/jscalendar+json":{source:"iana",compressible:!0},"application/json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["json","map"]},"application/json-patch+json":{source:"iana",compressible:!0},"application/json-seq":{source:"iana"},"application/json5":{extensions:["json5"]},"application/jsonml+json":{source:"apache",compressible:!0,extensions:["jsonml"]},"application/jwk+json":{source:"iana",compressible:!0},"application/jwk-set+json":{source:"iana",compressible:!0},"application/jwt":{source:"iana"},"application/kpml-request+xml":{source:"iana",compressible:!0},"application/kpml-response+xml":{source:"iana",compressible:!0},"application/ld+json":{source:"iana",compressible:!0,extensions:["jsonld"]},"application/lgr+xml":{source:"iana",compressible:!0,extensions:["lgr"]},"application/link-format":{source:"iana"},"application/load-control+xml":{source:"iana",compressible:!0},"application/lost+xml":{source:"iana",compressible:!0,extensions:["lostxml"]},"application/lostsync+xml":{source:"iana",compressible:!0},"application/lpf+zip":{source:"iana",compressible:!1},"application/lxf":{source:"iana"},"application/mac-binhex40":{source:"iana",extensions:["hqx"]},"application/mac-compactpro":{source:"apache",extensions:["cpt"]},"application/macwriteii":{source:"iana"},"application/mads+xml":{source:"iana",compressible:!0,extensions:["mads"]},"application/manifest+json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["webmanifest"]},"application/marc":{source:"iana",extensions:["mrc"]},"application/marcxml+xml":{source:"iana",compressible:!0,extensions:["mrcx"]},"application/mathematica":{source:"iana",extensions:["ma","nb","mb"]},"application/mathml+xml":{source:"iana",compressible:!0,extensions:["mathml"]},"application/mathml-content+xml":{source:"iana",compressible:!0},"application/mathml-presentation+xml":{source:"iana",compressible:!0},"application/mbms-associated-procedure-description+xml":{source:"iana",compressible:!0},"application/mbms-deregister+xml":{source:"iana",compressible:!0},"application/mbms-envelope+xml":{source:"iana",compressible:!0},"application/mbms-msk+xml":{source:"iana",compressible:!0},"application/mbms-msk-response+xml":{source:"iana",compressible:!0},"application/mbms-protection-description+xml":{source:"iana",compressible:!0},"application/mbms-reception-report+xml":{source:"iana",compressible:!0},"application/mbms-register+xml":{source:"iana",compressible:!0},"application/mbms-register-response+xml":{source:"iana",compressible:!0},"application/mbms-schedule+xml":{source:"iana",compressible:!0},"application/mbms-user-service-description+xml":{source:"iana",compressible:!0},"application/mbox":{source:"iana",extensions:["mbox"]},"application/media-policy-dataset+xml":{source:"iana",compressible:!0,extensions:["mpf"]},"application/media_control+xml":{source:"iana",compressible:!0},"application/mediaservercontrol+xml":{source:"iana",compressible:!0,extensions:["mscml"]},"application/merge-patch+json":{source:"iana",compressible:!0},"application/metalink+xml":{source:"apache",compressible:!0,extensions:["metalink"]},"application/metalink4+xml":{source:"iana",compressible:!0,extensions:["meta4"]},"application/mets+xml":{source:"iana",compressible:!0,extensions:["mets"]},"application/mf4":{source:"iana"},"application/mikey":{source:"iana"},"application/mipc":{source:"iana"},"application/missing-blocks+cbor-seq":{source:"iana"},"application/mmt-aei+xml":{source:"iana",compressible:!0,extensions:["maei"]},"application/mmt-usd+xml":{source:"iana",compressible:!0,extensions:["musd"]},"application/mods+xml":{source:"iana",compressible:!0,extensions:["mods"]},"application/moss-keys":{source:"iana"},"application/moss-signature":{source:"iana"},"application/mosskey-data":{source:"iana"},"application/mosskey-request":{source:"iana"},"application/mp21":{source:"iana",extensions:["m21","mp21"]},"application/mp4":{source:"iana",extensions:["mp4s","m4p"]},"application/mpeg4-generic":{source:"iana"},"application/mpeg4-iod":{source:"iana"},"application/mpeg4-iod-xmt":{source:"iana"},"application/mrb-consumer+xml":{source:"iana",compressible:!0},"application/mrb-publish+xml":{source:"iana",compressible:!0},"application/msc-ivr+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msc-mixer+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msword":{source:"iana",compressible:!1,extensions:["doc","dot"]},"application/mud+json":{source:"iana",compressible:!0},"application/multipart-core":{source:"iana"},"application/mxf":{source:"iana",extensions:["mxf"]},"application/n-quads":{source:"iana",extensions:["nq"]},"application/n-triples":{source:"iana",extensions:["nt"]},"application/nasdata":{source:"iana"},"application/news-checkgroups":{source:"iana",charset:"US-ASCII"},"application/news-groupinfo":{source:"iana",charset:"US-ASCII"},"application/news-transmission":{source:"iana"},"application/nlsml+xml":{source:"iana",compressible:!0},"application/node":{source:"iana",extensions:["cjs"]},"application/nss":{source:"iana"},"application/oauth-authz-req+jwt":{source:"iana"},"application/oblivious-dns-message":{source:"iana"},"application/ocsp-request":{source:"iana"},"application/ocsp-response":{source:"iana"},"application/octet-stream":{source:"iana",compressible:!1,extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{source:"iana",extensions:["oda"]},"application/odm+xml":{source:"iana",compressible:!0},"application/odx":{source:"iana"},"application/oebps-package+xml":{source:"iana",compressible:!0,extensions:["opf"]},"application/ogg":{source:"iana",compressible:!1,extensions:["ogx"]},"application/omdoc+xml":{source:"apache",compressible:!0,extensions:["omdoc"]},"application/onenote":{source:"apache",extensions:["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{source:"iana",compressible:!0},"application/oscore":{source:"iana"},"application/oxps":{source:"iana",extensions:["oxps"]},"application/p21":{source:"iana"},"application/p21+zip":{source:"iana",compressible:!1},"application/p2p-overlay+xml":{source:"iana",compressible:!0,extensions:["relo"]},"application/parityfec":{source:"iana"},"application/passport":{source:"iana"},"application/patch-ops-error+xml":{source:"iana",compressible:!0,extensions:["xer"]},"application/pdf":{source:"iana",compressible:!1,extensions:["pdf"]},"application/pdx":{source:"iana"},"application/pem-certificate-chain":{source:"iana"},"application/pgp-encrypted":{source:"iana",compressible:!1,extensions:["pgp"]},"application/pgp-keys":{source:"iana",extensions:["asc"]},"application/pgp-signature":{source:"iana",extensions:["asc","sig"]},"application/pics-rules":{source:"apache",extensions:["prf"]},"application/pidf+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pidf-diff+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pkcs10":{source:"iana",extensions:["p10"]},"application/pkcs12":{source:"iana"},"application/pkcs7-mime":{source:"iana",extensions:["p7m","p7c"]},"application/pkcs7-signature":{source:"iana",extensions:["p7s"]},"application/pkcs8":{source:"iana",extensions:["p8"]},"application/pkcs8-encrypted":{source:"iana"},"application/pkix-attr-cert":{source:"iana",extensions:["ac"]},"application/pkix-cert":{source:"iana",extensions:["cer"]},"application/pkix-crl":{source:"iana",extensions:["crl"]},"application/pkix-pkipath":{source:"iana",extensions:["pkipath"]},"application/pkixcmp":{source:"iana",extensions:["pki"]},"application/pls+xml":{source:"iana",compressible:!0,extensions:["pls"]},"application/poc-settings+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/postscript":{source:"iana",compressible:!0,extensions:["ai","eps","ps"]},"application/ppsp-tracker+json":{source:"iana",compressible:!0},"application/problem+json":{source:"iana",compressible:!0},"application/problem+xml":{source:"iana",compressible:!0},"application/provenance+xml":{source:"iana",compressible:!0,extensions:["provx"]},"application/prs.alvestrand.titrax-sheet":{source:"iana"},"application/prs.cww":{source:"iana",extensions:["cww"]},"application/prs.cyn":{source:"iana",charset:"7-BIT"},"application/prs.hpub+zip":{source:"iana",compressible:!1},"application/prs.nprend":{source:"iana"},"application/prs.plucker":{source:"iana"},"application/prs.rdf-xml-crypt":{source:"iana"},"application/prs.xsf+xml":{source:"iana",compressible:!0},"application/pskc+xml":{source:"iana",compressible:!0,extensions:["pskcxml"]},"application/pvd+json":{source:"iana",compressible:!0},"application/qsig":{source:"iana"},"application/raml+yaml":{compressible:!0,extensions:["raml"]},"application/raptorfec":{source:"iana"},"application/rdap+json":{source:"iana",compressible:!0},"application/rdf+xml":{source:"iana",compressible:!0,extensions:["rdf","owl"]},"application/reginfo+xml":{source:"iana",compressible:!0,extensions:["rif"]},"application/relax-ng-compact-syntax":{source:"iana",extensions:["rnc"]},"application/remote-printing":{source:"iana"},"application/reputon+json":{source:"iana",compressible:!0},"application/resource-lists+xml":{source:"iana",compressible:!0,extensions:["rl"]},"application/resource-lists-diff+xml":{source:"iana",compressible:!0,extensions:["rld"]},"application/rfc+xml":{source:"iana",compressible:!0},"application/riscos":{source:"iana"},"application/rlmi+xml":{source:"iana",compressible:!0},"application/rls-services+xml":{source:"iana",compressible:!0,extensions:["rs"]},"application/route-apd+xml":{source:"iana",compressible:!0,extensions:["rapd"]},"application/route-s-tsid+xml":{source:"iana",compressible:!0,extensions:["sls"]},"application/route-usd+xml":{source:"iana",compressible:!0,extensions:["rusd"]},"application/rpki-ghostbusters":{source:"iana",extensions:["gbr"]},"application/rpki-manifest":{source:"iana",extensions:["mft"]},"application/rpki-publication":{source:"iana"},"application/rpki-roa":{source:"iana",extensions:["roa"]},"application/rpki-updown":{source:"iana"},"application/rsd+xml":{source:"apache",compressible:!0,extensions:["rsd"]},"application/rss+xml":{source:"apache",compressible:!0,extensions:["rss"]},"application/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"application/rtploopback":{source:"iana"},"application/rtx":{source:"iana"},"application/samlassertion+xml":{source:"iana",compressible:!0},"application/samlmetadata+xml":{source:"iana",compressible:!0},"application/sarif+json":{source:"iana",compressible:!0},"application/sarif-external-properties+json":{source:"iana",compressible:!0},"application/sbe":{source:"iana"},"application/sbml+xml":{source:"iana",compressible:!0,extensions:["sbml"]},"application/scaip+xml":{source:"iana",compressible:!0},"application/scim+json":{source:"iana",compressible:!0},"application/scvp-cv-request":{source:"iana",extensions:["scq"]},"application/scvp-cv-response":{source:"iana",extensions:["scs"]},"application/scvp-vp-request":{source:"iana",extensions:["spq"]},"application/scvp-vp-response":{source:"iana",extensions:["spp"]},"application/sdp":{source:"iana",extensions:["sdp"]},"application/secevent+jwt":{source:"iana"},"application/senml+cbor":{source:"iana"},"application/senml+json":{source:"iana",compressible:!0},"application/senml+xml":{source:"iana",compressible:!0,extensions:["senmlx"]},"application/senml-etch+cbor":{source:"iana"},"application/senml-etch+json":{source:"iana",compressible:!0},"application/senml-exi":{source:"iana"},"application/sensml+cbor":{source:"iana"},"application/sensml+json":{source:"iana",compressible:!0},"application/sensml+xml":{source:"iana",compressible:!0,extensions:["sensmlx"]},"application/sensml-exi":{source:"iana"},"application/sep+xml":{source:"iana",compressible:!0},"application/sep-exi":{source:"iana"},"application/session-info":{source:"iana"},"application/set-payment":{source:"iana"},"application/set-payment-initiation":{source:"iana",extensions:["setpay"]},"application/set-registration":{source:"iana"},"application/set-registration-initiation":{source:"iana",extensions:["setreg"]},"application/sgml":{source:"iana"},"application/sgml-open-catalog":{source:"iana"},"application/shf+xml":{source:"iana",compressible:!0,extensions:["shf"]},"application/sieve":{source:"iana",extensions:["siv","sieve"]},"application/simple-filter+xml":{source:"iana",compressible:!0},"application/simple-message-summary":{source:"iana"},"application/simplesymbolcontainer":{source:"iana"},"application/sipc":{source:"iana"},"application/slate":{source:"iana"},"application/smil":{source:"iana"},"application/smil+xml":{source:"iana",compressible:!0,extensions:["smi","smil"]},"application/smpte336m":{source:"iana"},"application/soap+fastinfoset":{source:"iana"},"application/soap+xml":{source:"iana",compressible:!0},"application/sparql-query":{source:"iana",extensions:["rq"]},"application/sparql-results+xml":{source:"iana",compressible:!0,extensions:["srx"]},"application/spdx+json":{source:"iana",compressible:!0},"application/spirits-event+xml":{source:"iana",compressible:!0},"application/sql":{source:"iana"},"application/srgs":{source:"iana",extensions:["gram"]},"application/srgs+xml":{source:"iana",compressible:!0,extensions:["grxml"]},"application/sru+xml":{source:"iana",compressible:!0,extensions:["sru"]},"application/ssdl+xml":{source:"apache",compressible:!0,extensions:["ssdl"]},"application/ssml+xml":{source:"iana",compressible:!0,extensions:["ssml"]},"application/stix+json":{source:"iana",compressible:!0},"application/swid+xml":{source:"iana",compressible:!0,extensions:["swidtag"]},"application/tamp-apex-update":{source:"iana"},"application/tamp-apex-update-confirm":{source:"iana"},"application/tamp-community-update":{source:"iana"},"application/tamp-community-update-confirm":{source:"iana"},"application/tamp-error":{source:"iana"},"application/tamp-sequence-adjust":{source:"iana"},"application/tamp-sequence-adjust-confirm":{source:"iana"},"application/tamp-status-query":{source:"iana"},"application/tamp-status-response":{source:"iana"},"application/tamp-update":{source:"iana"},"application/tamp-update-confirm":{source:"iana"},"application/tar":{compressible:!0},"application/taxii+json":{source:"iana",compressible:!0},"application/td+json":{source:"iana",compressible:!0},"application/tei+xml":{source:"iana",compressible:!0,extensions:["tei","teicorpus"]},"application/tetra_isi":{source:"iana"},"application/thraud+xml":{source:"iana",compressible:!0,extensions:["tfi"]},"application/timestamp-query":{source:"iana"},"application/timestamp-reply":{source:"iana"},"application/timestamped-data":{source:"iana",extensions:["tsd"]},"application/tlsrpt+gzip":{source:"iana"},"application/tlsrpt+json":{source:"iana",compressible:!0},"application/tnauthlist":{source:"iana"},"application/token-introspection+jwt":{source:"iana"},"application/toml":{compressible:!0,extensions:["toml"]},"application/trickle-ice-sdpfrag":{source:"iana"},"application/trig":{source:"iana",extensions:["trig"]},"application/ttml+xml":{source:"iana",compressible:!0,extensions:["ttml"]},"application/tve-trigger":{source:"iana"},"application/tzif":{source:"iana"},"application/tzif-leap":{source:"iana"},"application/ubjson":{compressible:!1,extensions:["ubj"]},"application/ulpfec":{source:"iana"},"application/urc-grpsheet+xml":{source:"iana",compressible:!0},"application/urc-ressheet+xml":{source:"iana",compressible:!0,extensions:["rsheet"]},"application/urc-targetdesc+xml":{source:"iana",compressible:!0,extensions:["td"]},"application/urc-uisocketdesc+xml":{source:"iana",compressible:!0},"application/vcard+json":{source:"iana",compressible:!0},"application/vcard+xml":{source:"iana",compressible:!0},"application/vemmi":{source:"iana"},"application/vividence.scriptfile":{source:"apache"},"application/vnd.1000minds.decision-model+xml":{source:"iana",compressible:!0,extensions:["1km"]},"application/vnd.3gpp-prose+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-prose-pc3ch+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-v2x-local-service-information":{source:"iana"},"application/vnd.3gpp.5gnas":{source:"iana"},"application/vnd.3gpp.access-transfer-events+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.bsf+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gmop+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gtpc":{source:"iana"},"application/vnd.3gpp.interworking-data":{source:"iana"},"application/vnd.3gpp.lpp":{source:"iana"},"application/vnd.3gpp.mc-signalling-ear":{source:"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-payload":{source:"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-signalling":{source:"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-floor-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-signed+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-init-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-transmission-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mid-call+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ngap":{source:"iana"},"application/vnd.3gpp.pfcp":{source:"iana"},"application/vnd.3gpp.pic-bw-large":{source:"iana",extensions:["plb"]},"application/vnd.3gpp.pic-bw-small":{source:"iana",extensions:["psb"]},"application/vnd.3gpp.pic-bw-var":{source:"iana",extensions:["pvb"]},"application/vnd.3gpp.s1ap":{source:"iana"},"application/vnd.3gpp.sms":{source:"iana"},"application/vnd.3gpp.sms+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-ext+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.state-and-event-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ussd+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.bcmcsinfo+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.sms":{source:"iana"},"application/vnd.3gpp2.tcap":{source:"iana",extensions:["tcap"]},"application/vnd.3lightssoftware.imagescal":{source:"iana"},"application/vnd.3m.post-it-notes":{source:"iana",extensions:["pwn"]},"application/vnd.accpac.simply.aso":{source:"iana",extensions:["aso"]},"application/vnd.accpac.simply.imp":{source:"iana",extensions:["imp"]},"application/vnd.acucobol":{source:"iana",extensions:["acu"]},"application/vnd.acucorp":{source:"iana",extensions:["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{source:"apache",compressible:!1,extensions:["air"]},"application/vnd.adobe.flash.movie":{source:"iana"},"application/vnd.adobe.formscentral.fcdt":{source:"iana",extensions:["fcdt"]},"application/vnd.adobe.fxp":{source:"iana",extensions:["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{source:"iana"},"application/vnd.adobe.xdp+xml":{source:"iana",compressible:!0,extensions:["xdp"]},"application/vnd.adobe.xfdf":{source:"iana",extensions:["xfdf"]},"application/vnd.aether.imp":{source:"iana"},"application/vnd.afpc.afplinedata":{source:"iana"},"application/vnd.afpc.afplinedata-pagedef":{source:"iana"},"application/vnd.afpc.cmoca-cmresource":{source:"iana"},"application/vnd.afpc.foca-charset":{source:"iana"},"application/vnd.afpc.foca-codedfont":{source:"iana"},"application/vnd.afpc.foca-codepage":{source:"iana"},"application/vnd.afpc.modca":{source:"iana"},"application/vnd.afpc.modca-cmtable":{source:"iana"},"application/vnd.afpc.modca-formdef":{source:"iana"},"application/vnd.afpc.modca-mediummap":{source:"iana"},"application/vnd.afpc.modca-objectcontainer":{source:"iana"},"application/vnd.afpc.modca-overlay":{source:"iana"},"application/vnd.afpc.modca-pagesegment":{source:"iana"},"application/vnd.age":{source:"iana",extensions:["age"]},"application/vnd.ah-barcode":{source:"iana"},"application/vnd.ahead.space":{source:"iana",extensions:["ahead"]},"application/vnd.airzip.filesecure.azf":{source:"iana",extensions:["azf"]},"application/vnd.airzip.filesecure.azs":{source:"iana",extensions:["azs"]},"application/vnd.amadeus+json":{source:"iana",compressible:!0},"application/vnd.amazon.ebook":{source:"apache",extensions:["azw"]},"application/vnd.amazon.mobi8-ebook":{source:"iana"},"application/vnd.americandynamics.acc":{source:"iana",extensions:["acc"]},"application/vnd.amiga.ami":{source:"iana",extensions:["ami"]},"application/vnd.amundsen.maze+xml":{source:"iana",compressible:!0},"application/vnd.android.ota":{source:"iana"},"application/vnd.android.package-archive":{source:"apache",compressible:!1,extensions:["apk"]},"application/vnd.anki":{source:"iana"},"application/vnd.anser-web-certificate-issue-initiation":{source:"iana",extensions:["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{source:"apache",extensions:["fti"]},"application/vnd.antix.game-component":{source:"iana",extensions:["atx"]},"application/vnd.apache.arrow.file":{source:"iana"},"application/vnd.apache.arrow.stream":{source:"iana"},"application/vnd.apache.thrift.binary":{source:"iana"},"application/vnd.apache.thrift.compact":{source:"iana"},"application/vnd.apache.thrift.json":{source:"iana"},"application/vnd.api+json":{source:"iana",compressible:!0},"application/vnd.aplextor.warrp+json":{source:"iana",compressible:!0},"application/vnd.apothekende.reservation+json":{source:"iana",compressible:!0},"application/vnd.apple.installer+xml":{source:"iana",compressible:!0,extensions:["mpkg"]},"application/vnd.apple.keynote":{source:"iana",extensions:["key"]},"application/vnd.apple.mpegurl":{source:"iana",extensions:["m3u8"]},"application/vnd.apple.numbers":{source:"iana",extensions:["numbers"]},"application/vnd.apple.pages":{source:"iana",extensions:["pages"]},"application/vnd.apple.pkpass":{compressible:!1,extensions:["pkpass"]},"application/vnd.arastra.swi":{source:"iana"},"application/vnd.aristanetworks.swi":{source:"iana",extensions:["swi"]},"application/vnd.artisan+json":{source:"iana",compressible:!0},"application/vnd.artsquare":{source:"iana"},"application/vnd.astraea-software.iota":{source:"iana",extensions:["iota"]},"application/vnd.audiograph":{source:"iana",extensions:["aep"]},"application/vnd.autopackage":{source:"iana"},"application/vnd.avalon+json":{source:"iana",compressible:!0},"application/vnd.avistar+xml":{source:"iana",compressible:!0},"application/vnd.balsamiq.bmml+xml":{source:"iana",compressible:!0,extensions:["bmml"]},"application/vnd.balsamiq.bmpr":{source:"iana"},"application/vnd.banana-accounting":{source:"iana"},"application/vnd.bbf.usp.error":{source:"iana"},"application/vnd.bbf.usp.msg":{source:"iana"},"application/vnd.bbf.usp.msg+json":{source:"iana",compressible:!0},"application/vnd.bekitzur-stech+json":{source:"iana",compressible:!0},"application/vnd.bint.med-content":{source:"iana"},"application/vnd.biopax.rdf+xml":{source:"iana",compressible:!0},"application/vnd.blink-idb-value-wrapper":{source:"iana"},"application/vnd.blueice.multipass":{source:"iana",extensions:["mpm"]},"application/vnd.bluetooth.ep.oob":{source:"iana"},"application/vnd.bluetooth.le.oob":{source:"iana"},"application/vnd.bmi":{source:"iana",extensions:["bmi"]},"application/vnd.bpf":{source:"iana"},"application/vnd.bpf3":{source:"iana"},"application/vnd.businessobjects":{source:"iana",extensions:["rep"]},"application/vnd.byu.uapi+json":{source:"iana",compressible:!0},"application/vnd.cab-jscript":{source:"iana"},"application/vnd.canon-cpdl":{source:"iana"},"application/vnd.canon-lips":{source:"iana"},"application/vnd.capasystems-pg+json":{source:"iana",compressible:!0},"application/vnd.cendio.thinlinc.clientconf":{source:"iana"},"application/vnd.century-systems.tcp_stream":{source:"iana"},"application/vnd.chemdraw+xml":{source:"iana",compressible:!0,extensions:["cdxml"]},"application/vnd.chess-pgn":{source:"iana"},"application/vnd.chipnuts.karaoke-mmd":{source:"iana",extensions:["mmd"]},"application/vnd.ciedi":{source:"iana"},"application/vnd.cinderella":{source:"iana",extensions:["cdy"]},"application/vnd.cirpack.isdn-ext":{source:"iana"},"application/vnd.citationstyles.style+xml":{source:"iana",compressible:!0,extensions:["csl"]},"application/vnd.claymore":{source:"iana",extensions:["cla"]},"application/vnd.cloanto.rp9":{source:"iana",extensions:["rp9"]},"application/vnd.clonk.c4group":{source:"iana",extensions:["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{source:"iana",extensions:["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{source:"iana",extensions:["c11amz"]},"application/vnd.coffeescript":{source:"iana"},"application/vnd.collabio.xodocuments.document":{source:"iana"},"application/vnd.collabio.xodocuments.document-template":{source:"iana"},"application/vnd.collabio.xodocuments.presentation":{source:"iana"},"application/vnd.collabio.xodocuments.presentation-template":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{source:"iana"},"application/vnd.collection+json":{source:"iana",compressible:!0},"application/vnd.collection.doc+json":{source:"iana",compressible:!0},"application/vnd.collection.next+json":{source:"iana",compressible:!0},"application/vnd.comicbook+zip":{source:"iana",compressible:!1},"application/vnd.comicbook-rar":{source:"iana"},"application/vnd.commerce-battelle":{source:"iana"},"application/vnd.commonspace":{source:"iana",extensions:["csp"]},"application/vnd.contact.cmsg":{source:"iana",extensions:["cdbcmsg"]},"application/vnd.coreos.ignition+json":{source:"iana",compressible:!0},"application/vnd.cosmocaller":{source:"iana",extensions:["cmc"]},"application/vnd.crick.clicker":{source:"iana",extensions:["clkx"]},"application/vnd.crick.clicker.keyboard":{source:"iana",extensions:["clkk"]},"application/vnd.crick.clicker.palette":{source:"iana",extensions:["clkp"]},"application/vnd.crick.clicker.template":{source:"iana",extensions:["clkt"]},"application/vnd.crick.clicker.wordbank":{source:"iana",extensions:["clkw"]},"application/vnd.criticaltools.wbs+xml":{source:"iana",compressible:!0,extensions:["wbs"]},"application/vnd.cryptii.pipe+json":{source:"iana",compressible:!0},"application/vnd.crypto-shade-file":{source:"iana"},"application/vnd.cryptomator.encrypted":{source:"iana"},"application/vnd.cryptomator.vault":{source:"iana"},"application/vnd.ctc-posml":{source:"iana",extensions:["pml"]},"application/vnd.ctct.ws+xml":{source:"iana",compressible:!0},"application/vnd.cups-pdf":{source:"iana"},"application/vnd.cups-postscript":{source:"iana"},"application/vnd.cups-ppd":{source:"iana",extensions:["ppd"]},"application/vnd.cups-raster":{source:"iana"},"application/vnd.cups-raw":{source:"iana"},"application/vnd.curl":{source:"iana"},"application/vnd.curl.car":{source:"apache",extensions:["car"]},"application/vnd.curl.pcurl":{source:"apache",extensions:["pcurl"]},"application/vnd.cyan.dean.root+xml":{source:"iana",compressible:!0},"application/vnd.cybank":{source:"iana"},"application/vnd.cyclonedx+json":{source:"iana",compressible:!0},"application/vnd.cyclonedx+xml":{source:"iana",compressible:!0},"application/vnd.d2l.coursepackage1p0+zip":{source:"iana",compressible:!1},"application/vnd.d3m-dataset":{source:"iana"},"application/vnd.d3m-problem":{source:"iana"},"application/vnd.dart":{source:"iana",compressible:!0,extensions:["dart"]},"application/vnd.data-vision.rdz":{source:"iana",extensions:["rdz"]},"application/vnd.datapackage+json":{source:"iana",compressible:!0},"application/vnd.dataresource+json":{source:"iana",compressible:!0},"application/vnd.dbf":{source:"iana",extensions:["dbf"]},"application/vnd.debian.binary-package":{source:"iana"},"application/vnd.dece.data":{source:"iana",extensions:["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{source:"iana",compressible:!0,extensions:["uvt","uvvt"]},"application/vnd.dece.unspecified":{source:"iana",extensions:["uvx","uvvx"]},"application/vnd.dece.zip":{source:"iana",extensions:["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{source:"iana",extensions:["fe_launch"]},"application/vnd.desmume.movie":{source:"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{source:"iana"},"application/vnd.dm.delegation+xml":{source:"iana",compressible:!0},"application/vnd.dna":{source:"iana",extensions:["dna"]},"application/vnd.document+json":{source:"iana",compressible:!0},"application/vnd.dolby.mlp":{source:"apache",extensions:["mlp"]},"application/vnd.dolby.mobile.1":{source:"iana"},"application/vnd.dolby.mobile.2":{source:"iana"},"application/vnd.doremir.scorecloud-binary-document":{source:"iana"},"application/vnd.dpgraph":{source:"iana",extensions:["dpg"]},"application/vnd.dreamfactory":{source:"iana",extensions:["dfac"]},"application/vnd.drive+json":{source:"iana",compressible:!0},"application/vnd.ds-keypoint":{source:"apache",extensions:["kpxx"]},"application/vnd.dtg.local":{source:"iana"},"application/vnd.dtg.local.flash":{source:"iana"},"application/vnd.dtg.local.html":{source:"iana"},"application/vnd.dvb.ait":{source:"iana",extensions:["ait"]},"application/vnd.dvb.dvbisl+xml":{source:"iana",compressible:!0},"application/vnd.dvb.dvbj":{source:"iana"},"application/vnd.dvb.esgcontainer":{source:"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess2":{source:"iana"},"application/vnd.dvb.ipdcesgpdd":{source:"iana"},"application/vnd.dvb.ipdcroaming":{source:"iana"},"application/vnd.dvb.iptv.alfec-base":{source:"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{source:"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-container+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-generic+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-msglist+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-request+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-response+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-init+xml":{source:"iana",compressible:!0},"application/vnd.dvb.pfr":{source:"iana"},"application/vnd.dvb.service":{source:"iana",extensions:["svc"]},"application/vnd.dxr":{source:"iana"},"application/vnd.dynageo":{source:"iana",extensions:["geo"]},"application/vnd.dzr":{source:"iana"},"application/vnd.easykaraoke.cdgdownload":{source:"iana"},"application/vnd.ecdis-update":{source:"iana"},"application/vnd.ecip.rlp":{source:"iana"},"application/vnd.eclipse.ditto+json":{source:"iana",compressible:!0},"application/vnd.ecowin.chart":{source:"iana",extensions:["mag"]},"application/vnd.ecowin.filerequest":{source:"iana"},"application/vnd.ecowin.fileupdate":{source:"iana"},"application/vnd.ecowin.series":{source:"iana"},"application/vnd.ecowin.seriesrequest":{source:"iana"},"application/vnd.ecowin.seriesupdate":{source:"iana"},"application/vnd.efi.img":{source:"iana"},"application/vnd.efi.iso":{source:"iana"},"application/vnd.emclient.accessrequest+xml":{source:"iana",compressible:!0},"application/vnd.enliven":{source:"iana",extensions:["nml"]},"application/vnd.enphase.envoy":{source:"iana"},"application/vnd.eprints.data+xml":{source:"iana",compressible:!0},"application/vnd.epson.esf":{source:"iana",extensions:["esf"]},"application/vnd.epson.msf":{source:"iana",extensions:["msf"]},"application/vnd.epson.quickanime":{source:"iana",extensions:["qam"]},"application/vnd.epson.salt":{source:"iana",extensions:["slt"]},"application/vnd.epson.ssf":{source:"iana",extensions:["ssf"]},"application/vnd.ericsson.quickcall":{source:"iana"},"application/vnd.espass-espass+zip":{source:"iana",compressible:!1},"application/vnd.eszigno3+xml":{source:"iana",compressible:!0,extensions:["es3","et3"]},"application/vnd.etsi.aoc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.asic-e+zip":{source:"iana",compressible:!1},"application/vnd.etsi.asic-s+zip":{source:"iana",compressible:!1},"application/vnd.etsi.cug+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvcommand+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-bc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-cod+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-npvr+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvservice+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsync+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvueprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mcid+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mheg5":{source:"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{source:"iana",compressible:!0},"application/vnd.etsi.pstn+xml":{source:"iana",compressible:!0},"application/vnd.etsi.sci+xml":{source:"iana",compressible:!0},"application/vnd.etsi.simservs+xml":{source:"iana",compressible:!0},"application/vnd.etsi.timestamp-token":{source:"iana"},"application/vnd.etsi.tsl+xml":{source:"iana",compressible:!0},"application/vnd.etsi.tsl.der":{source:"iana"},"application/vnd.eu.kasparian.car+json":{source:"iana",compressible:!0},"application/vnd.eudora.data":{source:"iana"},"application/vnd.evolv.ecig.profile":{source:"iana"},"application/vnd.evolv.ecig.settings":{source:"iana"},"application/vnd.evolv.ecig.theme":{source:"iana"},"application/vnd.exstream-empower+zip":{source:"iana",compressible:!1},"application/vnd.exstream-package":{source:"iana"},"application/vnd.ezpix-album":{source:"iana",extensions:["ez2"]},"application/vnd.ezpix-package":{source:"iana",extensions:["ez3"]},"application/vnd.f-secure.mobile":{source:"iana"},"application/vnd.familysearch.gedcom+zip":{source:"iana",compressible:!1},"application/vnd.fastcopy-disk-image":{source:"iana"},"application/vnd.fdf":{source:"iana",extensions:["fdf"]},"application/vnd.fdsn.mseed":{source:"iana",extensions:["mseed"]},"application/vnd.fdsn.seed":{source:"iana",extensions:["seed","dataless"]},"application/vnd.ffsns":{source:"iana"},"application/vnd.ficlab.flb+zip":{source:"iana",compressible:!1},"application/vnd.filmit.zfc":{source:"iana"},"application/vnd.fints":{source:"iana"},"application/vnd.firemonkeys.cloudcell":{source:"iana"},"application/vnd.flographit":{source:"iana",extensions:["gph"]},"application/vnd.fluxtime.clip":{source:"iana",extensions:["ftc"]},"application/vnd.font-fontforge-sfd":{source:"iana"},"application/vnd.framemaker":{source:"iana",extensions:["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{source:"iana",extensions:["fnc"]},"application/vnd.frogans.ltf":{source:"iana",extensions:["ltf"]},"application/vnd.fsc.weblaunch":{source:"iana",extensions:["fsc"]},"application/vnd.fujifilm.fb.docuworks":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.container":{source:"iana"},"application/vnd.fujifilm.fb.jfi+xml":{source:"iana",compressible:!0},"application/vnd.fujitsu.oasys":{source:"iana",extensions:["oas"]},"application/vnd.fujitsu.oasys2":{source:"iana",extensions:["oa2"]},"application/vnd.fujitsu.oasys3":{source:"iana",extensions:["oa3"]},"application/vnd.fujitsu.oasysgp":{source:"iana",extensions:["fg5"]},"application/vnd.fujitsu.oasysprs":{source:"iana",extensions:["bh2"]},"application/vnd.fujixerox.art-ex":{source:"iana"},"application/vnd.fujixerox.art4":{source:"iana"},"application/vnd.fujixerox.ddd":{source:"iana",extensions:["ddd"]},"application/vnd.fujixerox.docuworks":{source:"iana",extensions:["xdw"]},"application/vnd.fujixerox.docuworks.binder":{source:"iana",extensions:["xbd"]},"application/vnd.fujixerox.docuworks.container":{source:"iana"},"application/vnd.fujixerox.hbpl":{source:"iana"},"application/vnd.fut-misnet":{source:"iana"},"application/vnd.futoin+cbor":{source:"iana"},"application/vnd.futoin+json":{source:"iana",compressible:!0},"application/vnd.fuzzysheet":{source:"iana",extensions:["fzs"]},"application/vnd.genomatix.tuxedo":{source:"iana",extensions:["txd"]},"application/vnd.gentics.grd+json":{source:"iana",compressible:!0},"application/vnd.geo+json":{source:"iana",compressible:!0},"application/vnd.geocube+xml":{source:"iana",compressible:!0},"application/vnd.geogebra.file":{source:"iana",extensions:["ggb"]},"application/vnd.geogebra.slides":{source:"iana"},"application/vnd.geogebra.tool":{source:"iana",extensions:["ggt"]},"application/vnd.geometry-explorer":{source:"iana",extensions:["gex","gre"]},"application/vnd.geonext":{source:"iana",extensions:["gxt"]},"application/vnd.geoplan":{source:"iana",extensions:["g2w"]},"application/vnd.geospace":{source:"iana",extensions:["g3w"]},"application/vnd.gerber":{source:"iana"},"application/vnd.globalplatform.card-content-mgt":{source:"iana"},"application/vnd.globalplatform.card-content-mgt-response":{source:"iana"},"application/vnd.gmx":{source:"iana",extensions:["gmx"]},"application/vnd.google-apps.document":{compressible:!1,extensions:["gdoc"]},"application/vnd.google-apps.presentation":{compressible:!1,extensions:["gslides"]},"application/vnd.google-apps.spreadsheet":{compressible:!1,extensions:["gsheet"]},"application/vnd.google-earth.kml+xml":{source:"iana",compressible:!0,extensions:["kml"]},"application/vnd.google-earth.kmz":{source:"iana",compressible:!1,extensions:["kmz"]},"application/vnd.gov.sk.e-form+xml":{source:"iana",compressible:!0},"application/vnd.gov.sk.e-form+zip":{source:"iana",compressible:!1},"application/vnd.gov.sk.xmldatacontainer+xml":{source:"iana",compressible:!0},"application/vnd.grafeq":{source:"iana",extensions:["gqf","gqs"]},"application/vnd.gridmp":{source:"iana"},"application/vnd.groove-account":{source:"iana",extensions:["gac"]},"application/vnd.groove-help":{source:"iana",extensions:["ghf"]},"application/vnd.groove-identity-message":{source:"iana",extensions:["gim"]},"application/vnd.groove-injector":{source:"iana",extensions:["grv"]},"application/vnd.groove-tool-message":{source:"iana",extensions:["gtm"]},"application/vnd.groove-tool-template":{source:"iana",extensions:["tpl"]},"application/vnd.groove-vcard":{source:"iana",extensions:["vcg"]},"application/vnd.hal+json":{source:"iana",compressible:!0},"application/vnd.hal+xml":{source:"iana",compressible:!0,extensions:["hal"]},"application/vnd.handheld-entertainment+xml":{source:"iana",compressible:!0,extensions:["zmm"]},"application/vnd.hbci":{source:"iana",extensions:["hbci"]},"application/vnd.hc+json":{source:"iana",compressible:!0},"application/vnd.hcl-bireports":{source:"iana"},"application/vnd.hdt":{source:"iana"},"application/vnd.heroku+json":{source:"iana",compressible:!0},"application/vnd.hhe.lesson-player":{source:"iana",extensions:["les"]},"application/vnd.hl7cda+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hl7v2+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hp-hpgl":{source:"iana",extensions:["hpgl"]},"application/vnd.hp-hpid":{source:"iana",extensions:["hpid"]},"application/vnd.hp-hps":{source:"iana",extensions:["hps"]},"application/vnd.hp-jlyt":{source:"iana",extensions:["jlt"]},"application/vnd.hp-pcl":{source:"iana",extensions:["pcl"]},"application/vnd.hp-pclxl":{source:"iana",extensions:["pclxl"]},"application/vnd.httphone":{source:"iana"},"application/vnd.hydrostatix.sof-data":{source:"iana",extensions:["sfd-hdstx"]},"application/vnd.hyper+json":{source:"iana",compressible:!0},"application/vnd.hyper-item+json":{source:"iana",compressible:!0},"application/vnd.hyperdrive+json":{source:"iana",compressible:!0},"application/vnd.hzn-3d-crossword":{source:"iana"},"application/vnd.ibm.afplinedata":{source:"iana"},"application/vnd.ibm.electronic-media":{source:"iana"},"application/vnd.ibm.minipay":{source:"iana",extensions:["mpy"]},"application/vnd.ibm.modcap":{source:"iana",extensions:["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{source:"iana",extensions:["irm"]},"application/vnd.ibm.secure-container":{source:"iana",extensions:["sc"]},"application/vnd.iccprofile":{source:"iana",extensions:["icc","icm"]},"application/vnd.ieee.1905":{source:"iana"},"application/vnd.igloader":{source:"iana",extensions:["igl"]},"application/vnd.imagemeter.folder+zip":{source:"iana",compressible:!1},"application/vnd.imagemeter.image+zip":{source:"iana",compressible:!1},"application/vnd.immervision-ivp":{source:"iana",extensions:["ivp"]},"application/vnd.immervision-ivu":{source:"iana",extensions:["ivu"]},"application/vnd.ims.imsccv1p1":{source:"iana"},"application/vnd.ims.imsccv1p2":{source:"iana"},"application/vnd.ims.imsccv1p3":{source:"iana"},"application/vnd.ims.lis.v2.result+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy.id+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings.simple+json":{source:"iana",compressible:!0},"application/vnd.informedcontrol.rms+xml":{source:"iana",compressible:!0},"application/vnd.informix-visionary":{source:"iana"},"application/vnd.infotech.project":{source:"iana"},"application/vnd.infotech.project+xml":{source:"iana",compressible:!0},"application/vnd.innopath.wamp.notification":{source:"iana"},"application/vnd.insors.igm":{source:"iana",extensions:["igm"]},"application/vnd.intercon.formnet":{source:"iana",extensions:["xpw","xpx"]},"application/vnd.intergeo":{source:"iana",extensions:["i2g"]},"application/vnd.intertrust.digibox":{source:"iana"},"application/vnd.intertrust.nncp":{source:"iana"},"application/vnd.intu.qbo":{source:"iana",extensions:["qbo"]},"application/vnd.intu.qfx":{source:"iana",extensions:["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.conceptitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.knowledgeitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsmessage+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.packageitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.planningitem+xml":{source:"iana",compressible:!0},"application/vnd.ipunplugged.rcprofile":{source:"iana",extensions:["rcprofile"]},"application/vnd.irepository.package+xml":{source:"iana",compressible:!0,extensions:["irp"]},"application/vnd.is-xpr":{source:"iana",extensions:["xpr"]},"application/vnd.isac.fcs":{source:"iana",extensions:["fcs"]},"application/vnd.iso11783-10+zip":{source:"iana",compressible:!1},"application/vnd.jam":{source:"iana",extensions:["jam"]},"application/vnd.japannet-directory-service":{source:"iana"},"application/vnd.japannet-jpnstore-wakeup":{source:"iana"},"application/vnd.japannet-payment-wakeup":{source:"iana"},"application/vnd.japannet-registration":{source:"iana"},"application/vnd.japannet-registration-wakeup":{source:"iana"},"application/vnd.japannet-setstore-wakeup":{source:"iana"},"application/vnd.japannet-verification":{source:"iana"},"application/vnd.japannet-verification-wakeup":{source:"iana"},"application/vnd.jcp.javame.midlet-rms":{source:"iana",extensions:["rms"]},"application/vnd.jisp":{source:"iana",extensions:["jisp"]},"application/vnd.joost.joda-archive":{source:"iana",extensions:["joda"]},"application/vnd.jsk.isdn-ngn":{source:"iana"},"application/vnd.kahootz":{source:"iana",extensions:["ktz","ktr"]},"application/vnd.kde.karbon":{source:"iana",extensions:["karbon"]},"application/vnd.kde.kchart":{source:"iana",extensions:["chrt"]},"application/vnd.kde.kformula":{source:"iana",extensions:["kfo"]},"application/vnd.kde.kivio":{source:"iana",extensions:["flw"]},"application/vnd.kde.kontour":{source:"iana",extensions:["kon"]},"application/vnd.kde.kpresenter":{source:"iana",extensions:["kpr","kpt"]},"application/vnd.kde.kspread":{source:"iana",extensions:["ksp"]},"application/vnd.kde.kword":{source:"iana",extensions:["kwd","kwt"]},"application/vnd.kenameaapp":{source:"iana",extensions:["htke"]},"application/vnd.kidspiration":{source:"iana",extensions:["kia"]},"application/vnd.kinar":{source:"iana",extensions:["kne","knp"]},"application/vnd.koan":{source:"iana",extensions:["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{source:"iana",extensions:["sse"]},"application/vnd.las":{source:"iana"},"application/vnd.las.las+json":{source:"iana",compressible:!0},"application/vnd.las.las+xml":{source:"iana",compressible:!0,extensions:["lasxml"]},"application/vnd.laszip":{source:"iana"},"application/vnd.leap+json":{source:"iana",compressible:!0},"application/vnd.liberty-request+xml":{source:"iana",compressible:!0},"application/vnd.llamagraphics.life-balance.desktop":{source:"iana",extensions:["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{source:"iana",compressible:!0,extensions:["lbe"]},"application/vnd.logipipe.circuit+zip":{source:"iana",compressible:!1},"application/vnd.loom":{source:"iana"},"application/vnd.lotus-1-2-3":{source:"iana",extensions:["123"]},"application/vnd.lotus-approach":{source:"iana",extensions:["apr"]},"application/vnd.lotus-freelance":{source:"iana",extensions:["pre"]},"application/vnd.lotus-notes":{source:"iana",extensions:["nsf"]},"application/vnd.lotus-organizer":{source:"iana",extensions:["org"]},"application/vnd.lotus-screencam":{source:"iana",extensions:["scm"]},"application/vnd.lotus-wordpro":{source:"iana",extensions:["lwp"]},"application/vnd.macports.portpkg":{source:"iana",extensions:["portpkg"]},"application/vnd.mapbox-vector-tile":{source:"iana",extensions:["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.conftoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.license+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.mdcf":{source:"iana"},"application/vnd.mason+json":{source:"iana",compressible:!0},"application/vnd.maxar.archive.3tz+zip":{source:"iana",compressible:!1},"application/vnd.maxmind.maxmind-db":{source:"iana"},"application/vnd.mcd":{source:"iana",extensions:["mcd"]},"application/vnd.medcalcdata":{source:"iana",extensions:["mc1"]},"application/vnd.mediastation.cdkey":{source:"iana",extensions:["cdkey"]},"application/vnd.meridian-slingshot":{source:"iana"},"application/vnd.mfer":{source:"iana",extensions:["mwf"]},"application/vnd.mfmp":{source:"iana",extensions:["mfm"]},"application/vnd.micro+json":{source:"iana",compressible:!0},"application/vnd.micrografx.flo":{source:"iana",extensions:["flo"]},"application/vnd.micrografx.igx":{source:"iana",extensions:["igx"]},"application/vnd.microsoft.portable-executable":{source:"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{source:"iana"},"application/vnd.miele+json":{source:"iana",compressible:!0},"application/vnd.mif":{source:"iana",extensions:["mif"]},"application/vnd.minisoft-hp3000-save":{source:"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{source:"iana"},"application/vnd.mobius.daf":{source:"iana",extensions:["daf"]},"application/vnd.mobius.dis":{source:"iana",extensions:["dis"]},"application/vnd.mobius.mbk":{source:"iana",extensions:["mbk"]},"application/vnd.mobius.mqy":{source:"iana",extensions:["mqy"]},"application/vnd.mobius.msl":{source:"iana",extensions:["msl"]},"application/vnd.mobius.plc":{source:"iana",extensions:["plc"]},"application/vnd.mobius.txf":{source:"iana",extensions:["txf"]},"application/vnd.mophun.application":{source:"iana",extensions:["mpn"]},"application/vnd.mophun.certificate":{source:"iana",extensions:["mpc"]},"application/vnd.motorola.flexsuite":{source:"iana"},"application/vnd.motorola.flexsuite.adsi":{source:"iana"},"application/vnd.motorola.flexsuite.fis":{source:"iana"},"application/vnd.motorola.flexsuite.gotap":{source:"iana"},"application/vnd.motorola.flexsuite.kmr":{source:"iana"},"application/vnd.motorola.flexsuite.ttc":{source:"iana"},"application/vnd.motorola.flexsuite.wem":{source:"iana"},"application/vnd.motorola.iprm":{source:"iana"},"application/vnd.mozilla.xul+xml":{source:"iana",compressible:!0,extensions:["xul"]},"application/vnd.ms-3mfdocument":{source:"iana"},"application/vnd.ms-artgalry":{source:"iana",extensions:["cil"]},"application/vnd.ms-asf":{source:"iana"},"application/vnd.ms-cab-compressed":{source:"iana",extensions:["cab"]},"application/vnd.ms-color.iccprofile":{source:"apache"},"application/vnd.ms-excel":{source:"iana",compressible:!1,extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{source:"iana",extensions:["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{source:"iana",extensions:["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{source:"iana",extensions:["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{source:"iana",extensions:["xltm"]},"application/vnd.ms-fontobject":{source:"iana",compressible:!0,extensions:["eot"]},"application/vnd.ms-htmlhelp":{source:"iana",extensions:["chm"]},"application/vnd.ms-ims":{source:"iana",extensions:["ims"]},"application/vnd.ms-lrm":{source:"iana",extensions:["lrm"]},"application/vnd.ms-office.activex+xml":{source:"iana",compressible:!0},"application/vnd.ms-officetheme":{source:"iana",extensions:["thmx"]},"application/vnd.ms-opentype":{source:"apache",compressible:!0},"application/vnd.ms-outlook":{compressible:!1,extensions:["msg"]},"application/vnd.ms-package.obfuscated-opentype":{source:"apache"},"application/vnd.ms-pki.seccat":{source:"apache",extensions:["cat"]},"application/vnd.ms-pki.stl":{source:"apache",extensions:["stl"]},"application/vnd.ms-playready.initiator+xml":{source:"iana",compressible:!0},"application/vnd.ms-powerpoint":{source:"iana",compressible:!1,extensions:["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{source:"iana",extensions:["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{source:"iana",extensions:["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{source:"iana",extensions:["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{source:"iana",extensions:["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{source:"iana",extensions:["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{source:"iana",compressible:!0},"application/vnd.ms-printing.printticket+xml":{source:"apache",compressible:!0},"application/vnd.ms-printschematicket+xml":{source:"iana",compressible:!0},"application/vnd.ms-project":{source:"iana",extensions:["mpp","mpt"]},"application/vnd.ms-tnef":{source:"iana"},"application/vnd.ms-windows.devicepairing":{source:"iana"},"application/vnd.ms-windows.nwprinting.oob":{source:"iana"},"application/vnd.ms-windows.printerpairing":{source:"iana"},"application/vnd.ms-windows.wsd.oob":{source:"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.lic-resp":{source:"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.meter-resp":{source:"iana"},"application/vnd.ms-word.document.macroenabled.12":{source:"iana",extensions:["docm"]},"application/vnd.ms-word.template.macroenabled.12":{source:"iana",extensions:["dotm"]},"application/vnd.ms-works":{source:"iana",extensions:["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{source:"iana",extensions:["wpl"]},"application/vnd.ms-xpsdocument":{source:"iana",compressible:!1,extensions:["xps"]},"application/vnd.msa-disk-image":{source:"iana"},"application/vnd.mseq":{source:"iana",extensions:["mseq"]},"application/vnd.msign":{source:"iana"},"application/vnd.multiad.creator":{source:"iana"},"application/vnd.multiad.creator.cif":{source:"iana"},"application/vnd.music-niff":{source:"iana"},"application/vnd.musician":{source:"iana",extensions:["mus"]},"application/vnd.muvee.style":{source:"iana",extensions:["msty"]},"application/vnd.mynfc":{source:"iana",extensions:["taglet"]},"application/vnd.nacamar.ybrid+json":{source:"iana",compressible:!0},"application/vnd.ncd.control":{source:"iana"},"application/vnd.ncd.reference":{source:"iana"},"application/vnd.nearst.inv+json":{source:"iana",compressible:!0},"application/vnd.nebumind.line":{source:"iana"},"application/vnd.nervana":{source:"iana"},"application/vnd.netfpx":{source:"iana"},"application/vnd.neurolanguage.nlu":{source:"iana",extensions:["nlu"]},"application/vnd.nimn":{source:"iana"},"application/vnd.nintendo.nitro.rom":{source:"iana"},"application/vnd.nintendo.snes.rom":{source:"iana"},"application/vnd.nitf":{source:"iana",extensions:["ntf","nitf"]},"application/vnd.noblenet-directory":{source:"iana",extensions:["nnd"]},"application/vnd.noblenet-sealer":{source:"iana",extensions:["nns"]},"application/vnd.noblenet-web":{source:"iana",extensions:["nnw"]},"application/vnd.nokia.catalogs":{source:"iana"},"application/vnd.nokia.conml+wbxml":{source:"iana"},"application/vnd.nokia.conml+xml":{source:"iana",compressible:!0},"application/vnd.nokia.iptv.config+xml":{source:"iana",compressible:!0},"application/vnd.nokia.isds-radio-presets":{source:"iana"},"application/vnd.nokia.landmark+wbxml":{source:"iana"},"application/vnd.nokia.landmark+xml":{source:"iana",compressible:!0},"application/vnd.nokia.landmarkcollection+xml":{source:"iana",compressible:!0},"application/vnd.nokia.n-gage.ac+xml":{source:"iana",compressible:!0,extensions:["ac"]},"application/vnd.nokia.n-gage.data":{source:"iana",extensions:["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{source:"iana",extensions:["n-gage"]},"application/vnd.nokia.ncd":{source:"iana"},"application/vnd.nokia.pcd+wbxml":{source:"iana"},"application/vnd.nokia.pcd+xml":{source:"iana",compressible:!0},"application/vnd.nokia.radio-preset":{source:"iana",extensions:["rpst"]},"application/vnd.nokia.radio-presets":{source:"iana",extensions:["rpss"]},"application/vnd.novadigm.edm":{source:"iana",extensions:["edm"]},"application/vnd.novadigm.edx":{source:"iana",extensions:["edx"]},"application/vnd.novadigm.ext":{source:"iana",extensions:["ext"]},"application/vnd.ntt-local.content-share":{source:"iana"},"application/vnd.ntt-local.file-transfer":{source:"iana"},"application/vnd.ntt-local.ogw_remote-access":{source:"iana"},"application/vnd.ntt-local.sip-ta_remote":{source:"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{source:"iana"},"application/vnd.oasis.opendocument.chart":{source:"iana",extensions:["odc"]},"application/vnd.oasis.opendocument.chart-template":{source:"iana",extensions:["otc"]},"application/vnd.oasis.opendocument.database":{source:"iana",extensions:["odb"]},"application/vnd.oasis.opendocument.formula":{source:"iana",extensions:["odf"]},"application/vnd.oasis.opendocument.formula-template":{source:"iana",extensions:["odft"]},"application/vnd.oasis.opendocument.graphics":{source:"iana",compressible:!1,extensions:["odg"]},"application/vnd.oasis.opendocument.graphics-template":{source:"iana",extensions:["otg"]},"application/vnd.oasis.opendocument.image":{source:"iana",extensions:["odi"]},"application/vnd.oasis.opendocument.image-template":{source:"iana",extensions:["oti"]},"application/vnd.oasis.opendocument.presentation":{source:"iana",compressible:!1,extensions:["odp"]},"application/vnd.oasis.opendocument.presentation-template":{source:"iana",extensions:["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{source:"iana",compressible:!1,extensions:["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{source:"iana",extensions:["ots"]},"application/vnd.oasis.opendocument.text":{source:"iana",compressible:!1,extensions:["odt"]},"application/vnd.oasis.opendocument.text-master":{source:"iana",extensions:["odm"]},"application/vnd.oasis.opendocument.text-template":{source:"iana",extensions:["ott"]},"application/vnd.oasis.opendocument.text-web":{source:"iana",extensions:["oth"]},"application/vnd.obn":{source:"iana"},"application/vnd.ocf+cbor":{source:"iana"},"application/vnd.oci.image.manifest.v1+json":{source:"iana",compressible:!0},"application/vnd.oftn.l10n+json":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessdownload+xml":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessstreaming+xml":{source:"iana",compressible:!0},"application/vnd.oipf.cspg-hexbinary":{source:"iana"},"application/vnd.oipf.dae.svg+xml":{source:"iana",compressible:!0},"application/vnd.oipf.dae.xhtml+xml":{source:"iana",compressible:!0},"application/vnd.oipf.mippvcontrolmessage+xml":{source:"iana",compressible:!0},"application/vnd.oipf.pae.gem":{source:"iana"},"application/vnd.oipf.spdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.oipf.spdlist+xml":{source:"iana",compressible:!0},"application/vnd.oipf.ueprofile+xml":{source:"iana",compressible:!0},"application/vnd.oipf.userprofile+xml":{source:"iana",compressible:!0},"application/vnd.olpc-sugar":{source:"iana",extensions:["xo"]},"application/vnd.oma-scws-config":{source:"iana"},"application/vnd.oma-scws-http-request":{source:"iana"},"application/vnd.oma-scws-http-response":{source:"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.drm-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.imd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.ltkm":{source:"iana"},"application/vnd.oma.bcast.notification+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.provisioningtrigger":{source:"iana"},"application/vnd.oma.bcast.sgboot":{source:"iana"},"application/vnd.oma.bcast.sgdd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sgdu":{source:"iana"},"application/vnd.oma.bcast.simple-symbol-container":{source:"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sprov+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.stkm":{source:"iana"},"application/vnd.oma.cab-address-book+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-feature-handler+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-pcc+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-subs-invite+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-user-prefs+xml":{source:"iana",compressible:!0},"application/vnd.oma.dcd":{source:"iana"},"application/vnd.oma.dcdc":{source:"iana"},"application/vnd.oma.dd2+xml":{source:"iana",compressible:!0,extensions:["dd2"]},"application/vnd.oma.drm.risd+xml":{source:"iana",compressible:!0},"application/vnd.oma.group-usage-list+xml":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+cbor":{source:"iana"},"application/vnd.oma.lwm2m+json":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+tlv":{source:"iana"},"application/vnd.oma.pal+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.detailed-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.final-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.groups+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.invocation-descriptor+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.optimized-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.push":{source:"iana"},"application/vnd.oma.scidm.messages+xml":{source:"iana",compressible:!0},"application/vnd.oma.xcap-directory+xml":{source:"iana",compressible:!0},"application/vnd.omads-email+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-file+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-folder+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omaloc-supl-init":{source:"iana"},"application/vnd.onepager":{source:"iana"},"application/vnd.onepagertamp":{source:"iana"},"application/vnd.onepagertamx":{source:"iana"},"application/vnd.onepagertat":{source:"iana"},"application/vnd.onepagertatp":{source:"iana"},"application/vnd.onepagertatx":{source:"iana"},"application/vnd.openblox.game+xml":{source:"iana",compressible:!0,extensions:["obgx"]},"application/vnd.openblox.game-binary":{source:"iana"},"application/vnd.openeye.oeb":{source:"iana"},"application/vnd.openofficeorg.extension":{source:"apache",extensions:["oxt"]},"application/vnd.openstreetmap.data+xml":{source:"iana",compressible:!0,extensions:["osm"]},"application/vnd.opentimestamps.ots":{source:"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawing+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{source:"iana",compressible:!1,extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slide":{source:"iana",extensions:["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{source:"iana",extensions:["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.template":{source:"iana",extensions:["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{source:"iana",compressible:!1,extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{source:"iana",extensions:["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.theme+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.vmldrawing":{source:"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{source:"iana",compressible:!1,extensions:["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{source:"iana",extensions:["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.core-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.relationships+xml":{source:"iana",compressible:!0},"application/vnd.oracle.resource+json":{source:"iana",compressible:!0},"application/vnd.orange.indata":{source:"iana"},"application/vnd.osa.netdeploy":{source:"iana"},"application/vnd.osgeo.mapguide.package":{source:"iana",extensions:["mgp"]},"application/vnd.osgi.bundle":{source:"iana"},"application/vnd.osgi.dp":{source:"iana",extensions:["dp"]},"application/vnd.osgi.subsystem":{source:"iana",extensions:["esa"]},"application/vnd.otps.ct-kip+xml":{source:"iana",compressible:!0},"application/vnd.oxli.countgraph":{source:"iana"},"application/vnd.pagerduty+json":{source:"iana",compressible:!0},"application/vnd.palm":{source:"iana",extensions:["pdb","pqa","oprc"]},"application/vnd.panoply":{source:"iana"},"application/vnd.paos.xml":{source:"iana"},"application/vnd.patentdive":{source:"iana"},"application/vnd.patientecommsdoc":{source:"iana"},"application/vnd.pawaafile":{source:"iana",extensions:["paw"]},"application/vnd.pcos":{source:"iana"},"application/vnd.pg.format":{source:"iana",extensions:["str"]},"application/vnd.pg.osasli":{source:"iana",extensions:["ei6"]},"application/vnd.piaccess.application-licence":{source:"iana"},"application/vnd.picsel":{source:"iana",extensions:["efif"]},"application/vnd.pmi.widget":{source:"iana",extensions:["wg"]},"application/vnd.poc.group-advertisement+xml":{source:"iana",compressible:!0},"application/vnd.pocketlearn":{source:"iana",extensions:["plf"]},"application/vnd.powerbuilder6":{source:"iana",extensions:["pbd"]},"application/vnd.powerbuilder6-s":{source:"iana"},"application/vnd.powerbuilder7":{source:"iana"},"application/vnd.powerbuilder7-s":{source:"iana"},"application/vnd.powerbuilder75":{source:"iana"},"application/vnd.powerbuilder75-s":{source:"iana"},"application/vnd.preminet":{source:"iana"},"application/vnd.previewsystems.box":{source:"iana",extensions:["box"]},"application/vnd.proteus.magazine":{source:"iana",extensions:["mgz"]},"application/vnd.psfs":{source:"iana"},"application/vnd.publishare-delta-tree":{source:"iana",extensions:["qps"]},"application/vnd.pvi.ptid1":{source:"iana",extensions:["ptid"]},"application/vnd.pwg-multiplexed":{source:"iana"},"application/vnd.pwg-xhtml-print+xml":{source:"iana",compressible:!0},"application/vnd.qualcomm.brew-app-res":{source:"iana"},"application/vnd.quarantainenet":{source:"iana"},"application/vnd.quark.quarkxpress":{source:"iana",extensions:["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{source:"iana"},"application/vnd.radisys.moml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conn+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-stream+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-base+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-detect+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-group+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-speech+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-transform+xml":{source:"iana",compressible:!0},"application/vnd.rainstor.data":{source:"iana"},"application/vnd.rapid":{source:"iana"},"application/vnd.rar":{source:"iana",extensions:["rar"]},"application/vnd.realvnc.bed":{source:"iana",extensions:["bed"]},"application/vnd.recordare.musicxml":{source:"iana",extensions:["mxl"]},"application/vnd.recordare.musicxml+xml":{source:"iana",compressible:!0,extensions:["musicxml"]},"application/vnd.renlearn.rlprint":{source:"iana"},"application/vnd.resilient.logic":{source:"iana"},"application/vnd.restful+json":{source:"iana",compressible:!0},"application/vnd.rig.cryptonote":{source:"iana",extensions:["cryptonote"]},"application/vnd.rim.cod":{source:"apache",extensions:["cod"]},"application/vnd.rn-realmedia":{source:"apache",extensions:["rm"]},"application/vnd.rn-realmedia-vbr":{source:"apache",extensions:["rmvb"]},"application/vnd.route66.link66+xml":{source:"iana",compressible:!0,extensions:["link66"]},"application/vnd.rs-274x":{source:"iana"},"application/vnd.ruckus.download":{source:"iana"},"application/vnd.s3sms":{source:"iana"},"application/vnd.sailingtracker.track":{source:"iana",extensions:["st"]},"application/vnd.sar":{source:"iana"},"application/vnd.sbm.cid":{source:"iana"},"application/vnd.sbm.mid2":{source:"iana"},"application/vnd.scribus":{source:"iana"},"application/vnd.sealed.3df":{source:"iana"},"application/vnd.sealed.csf":{source:"iana"},"application/vnd.sealed.doc":{source:"iana"},"application/vnd.sealed.eml":{source:"iana"},"application/vnd.sealed.mht":{source:"iana"},"application/vnd.sealed.net":{source:"iana"},"application/vnd.sealed.ppt":{source:"iana"},"application/vnd.sealed.tiff":{source:"iana"},"application/vnd.sealed.xls":{source:"iana"},"application/vnd.sealedmedia.softseal.html":{source:"iana"},"application/vnd.sealedmedia.softseal.pdf":{source:"iana"},"application/vnd.seemail":{source:"iana",extensions:["see"]},"application/vnd.seis+json":{source:"iana",compressible:!0},"application/vnd.sema":{source:"iana",extensions:["sema"]},"application/vnd.semd":{source:"iana",extensions:["semd"]},"application/vnd.semf":{source:"iana",extensions:["semf"]},"application/vnd.shade-save-file":{source:"iana"},"application/vnd.shana.informed.formdata":{source:"iana",extensions:["ifm"]},"application/vnd.shana.informed.formtemplate":{source:"iana",extensions:["itp"]},"application/vnd.shana.informed.interchange":{source:"iana",extensions:["iif"]},"application/vnd.shana.informed.package":{source:"iana",extensions:["ipk"]},"application/vnd.shootproof+json":{source:"iana",compressible:!0},"application/vnd.shopkick+json":{source:"iana",compressible:!0},"application/vnd.shp":{source:"iana"},"application/vnd.shx":{source:"iana"},"application/vnd.sigrok.session":{source:"iana"},"application/vnd.simtech-mindmapper":{source:"iana",extensions:["twd","twds"]},"application/vnd.siren+json":{source:"iana",compressible:!0},"application/vnd.smaf":{source:"iana",extensions:["mmf"]},"application/vnd.smart.notebook":{source:"iana"},"application/vnd.smart.teacher":{source:"iana",extensions:["teacher"]},"application/vnd.snesdev-page-table":{source:"iana"},"application/vnd.software602.filler.form+xml":{source:"iana",compressible:!0,extensions:["fo"]},"application/vnd.software602.filler.form-xml-zip":{source:"iana"},"application/vnd.solent.sdkm+xml":{source:"iana",compressible:!0,extensions:["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{source:"iana",extensions:["dxp"]},"application/vnd.spotfire.sfs":{source:"iana",extensions:["sfs"]},"application/vnd.sqlite3":{source:"iana"},"application/vnd.sss-cod":{source:"iana"},"application/vnd.sss-dtf":{source:"iana"},"application/vnd.sss-ntf":{source:"iana"},"application/vnd.stardivision.calc":{source:"apache",extensions:["sdc"]},"application/vnd.stardivision.draw":{source:"apache",extensions:["sda"]},"application/vnd.stardivision.impress":{source:"apache",extensions:["sdd"]},"application/vnd.stardivision.math":{source:"apache",extensions:["smf"]},"application/vnd.stardivision.writer":{source:"apache",extensions:["sdw","vor"]},"application/vnd.stardivision.writer-global":{source:"apache",extensions:["sgl"]},"application/vnd.stepmania.package":{source:"iana",extensions:["smzip"]},"application/vnd.stepmania.stepchart":{source:"iana",extensions:["sm"]},"application/vnd.street-stream":{source:"iana"},"application/vnd.sun.wadl+xml":{source:"iana",compressible:!0,extensions:["wadl"]},"application/vnd.sun.xml.calc":{source:"apache",extensions:["sxc"]},"application/vnd.sun.xml.calc.template":{source:"apache",extensions:["stc"]},"application/vnd.sun.xml.draw":{source:"apache",extensions:["sxd"]},"application/vnd.sun.xml.draw.template":{source:"apache",extensions:["std"]},"application/vnd.sun.xml.impress":{source:"apache",extensions:["sxi"]},"application/vnd.sun.xml.impress.template":{source:"apache",extensions:["sti"]},"application/vnd.sun.xml.math":{source:"apache",extensions:["sxm"]},"application/vnd.sun.xml.writer":{source:"apache",extensions:["sxw"]},"application/vnd.sun.xml.writer.global":{source:"apache",extensions:["sxg"]},"application/vnd.sun.xml.writer.template":{source:"apache",extensions:["stw"]},"application/vnd.sus-calendar":{source:"iana",extensions:["sus","susp"]},"application/vnd.svd":{source:"iana",extensions:["svd"]},"application/vnd.swiftview-ics":{source:"iana"},"application/vnd.sycle+xml":{source:"iana",compressible:!0},"application/vnd.syft+json":{source:"iana",compressible:!0},"application/vnd.symbian.install":{source:"apache",extensions:["sis","sisx"]},"application/vnd.syncml+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xsm"]},"application/vnd.syncml.dm+wbxml":{source:"iana",charset:"UTF-8",extensions:["bdm"]},"application/vnd.syncml.dm+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xdm"]},"application/vnd.syncml.dm.notification":{source:"iana"},"application/vnd.syncml.dmddf+wbxml":{source:"iana"},"application/vnd.syncml.dmddf+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{source:"iana"},"application/vnd.syncml.dmtnds+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.syncml.ds.notification":{source:"iana"},"application/vnd.tableschema+json":{source:"iana",compressible:!0},"application/vnd.tao.intent-module-archive":{source:"iana",extensions:["tao"]},"application/vnd.tcpdump.pcap":{source:"iana",extensions:["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{source:"iana",compressible:!0},"application/vnd.tmd.mediaflex.api+xml":{source:"iana",compressible:!0},"application/vnd.tml":{source:"iana"},"application/vnd.tmobile-livetv":{source:"iana",extensions:["tmo"]},"application/vnd.tri.onesource":{source:"iana"},"application/vnd.trid.tpt":{source:"iana",extensions:["tpt"]},"application/vnd.triscape.mxs":{source:"iana",extensions:["mxs"]},"application/vnd.trueapp":{source:"iana",extensions:["tra"]},"application/vnd.truedoc":{source:"iana"},"application/vnd.ubisoft.webplayer":{source:"iana"},"application/vnd.ufdl":{source:"iana",extensions:["ufd","ufdl"]},"application/vnd.uiq.theme":{source:"iana",extensions:["utz"]},"application/vnd.umajin":{source:"iana",extensions:["umj"]},"application/vnd.unity":{source:"iana",extensions:["unityweb"]},"application/vnd.uoml+xml":{source:"iana",compressible:!0,extensions:["uoml"]},"application/vnd.uplanet.alert":{source:"iana"},"application/vnd.uplanet.alert-wbxml":{source:"iana"},"application/vnd.uplanet.bearer-choice":{source:"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{source:"iana"},"application/vnd.uplanet.cacheop":{source:"iana"},"application/vnd.uplanet.cacheop-wbxml":{source:"iana"},"application/vnd.uplanet.channel":{source:"iana"},"application/vnd.uplanet.channel-wbxml":{source:"iana"},"application/vnd.uplanet.list":{source:"iana"},"application/vnd.uplanet.list-wbxml":{source:"iana"},"application/vnd.uplanet.listcmd":{source:"iana"},"application/vnd.uplanet.listcmd-wbxml":{source:"iana"},"application/vnd.uplanet.signal":{source:"iana"},"application/vnd.uri-map":{source:"iana"},"application/vnd.valve.source.material":{source:"iana"},"application/vnd.vcx":{source:"iana",extensions:["vcx"]},"application/vnd.vd-study":{source:"iana"},"application/vnd.vectorworks":{source:"iana"},"application/vnd.vel+json":{source:"iana",compressible:!0},"application/vnd.verimatrix.vcas":{source:"iana"},"application/vnd.veritone.aion+json":{source:"iana",compressible:!0},"application/vnd.veryant.thin":{source:"iana"},"application/vnd.ves.encrypted":{source:"iana"},"application/vnd.vidsoft.vidconference":{source:"iana"},"application/vnd.visio":{source:"iana",extensions:["vsd","vst","vss","vsw"]},"application/vnd.visionary":{source:"iana",extensions:["vis"]},"application/vnd.vividence.scriptfile":{source:"iana"},"application/vnd.vsf":{source:"iana",extensions:["vsf"]},"application/vnd.wap.sic":{source:"iana"},"application/vnd.wap.slc":{source:"iana"},"application/vnd.wap.wbxml":{source:"iana",charset:"UTF-8",extensions:["wbxml"]},"application/vnd.wap.wmlc":{source:"iana",extensions:["wmlc"]},"application/vnd.wap.wmlscriptc":{source:"iana",extensions:["wmlsc"]},"application/vnd.webturbo":{source:"iana",extensions:["wtb"]},"application/vnd.wfa.dpp":{source:"iana"},"application/vnd.wfa.p2p":{source:"iana"},"application/vnd.wfa.wsc":{source:"iana"},"application/vnd.windows.devicepairing":{source:"iana"},"application/vnd.wmc":{source:"iana"},"application/vnd.wmf.bootstrap":{source:"iana"},"application/vnd.wolfram.mathematica":{source:"iana"},"application/vnd.wolfram.mathematica.package":{source:"iana"},"application/vnd.wolfram.player":{source:"iana",extensions:["nbp"]},"application/vnd.wordperfect":{source:"iana",extensions:["wpd"]},"application/vnd.wqd":{source:"iana",extensions:["wqd"]},"application/vnd.wrq-hp3000-labelled":{source:"iana"},"application/vnd.wt.stf":{source:"iana",extensions:["stf"]},"application/vnd.wv.csp+wbxml":{source:"iana"},"application/vnd.wv.csp+xml":{source:"iana",compressible:!0},"application/vnd.wv.ssp+xml":{source:"iana",compressible:!0},"application/vnd.xacml+json":{source:"iana",compressible:!0},"application/vnd.xara":{source:"iana",extensions:["xar"]},"application/vnd.xfdl":{source:"iana",extensions:["xfdl"]},"application/vnd.xfdl.webform":{source:"iana"},"application/vnd.xmi+xml":{source:"iana",compressible:!0},"application/vnd.xmpie.cpkg":{source:"iana"},"application/vnd.xmpie.dpkg":{source:"iana"},"application/vnd.xmpie.plan":{source:"iana"},"application/vnd.xmpie.ppkg":{source:"iana"},"application/vnd.xmpie.xlim":{source:"iana"},"application/vnd.yamaha.hv-dic":{source:"iana",extensions:["hvd"]},"application/vnd.yamaha.hv-script":{source:"iana",extensions:["hvs"]},"application/vnd.yamaha.hv-voice":{source:"iana",extensions:["hvp"]},"application/vnd.yamaha.openscoreformat":{source:"iana",extensions:["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{source:"iana",compressible:!0,extensions:["osfpvg"]},"application/vnd.yamaha.remote-setup":{source:"iana"},"application/vnd.yamaha.smaf-audio":{source:"iana",extensions:["saf"]},"application/vnd.yamaha.smaf-phrase":{source:"iana",extensions:["spf"]},"application/vnd.yamaha.through-ngn":{source:"iana"},"application/vnd.yamaha.tunnel-udpencap":{source:"iana"},"application/vnd.yaoweme":{source:"iana"},"application/vnd.yellowriver-custom-menu":{source:"iana",extensions:["cmp"]},"application/vnd.youtube.yt":{source:"iana"},"application/vnd.zul":{source:"iana",extensions:["zir","zirz"]},"application/vnd.zzazz.deck+xml":{source:"iana",compressible:!0,extensions:["zaz"]},"application/voicexml+xml":{source:"iana",compressible:!0,extensions:["vxml"]},"application/voucher-cms+json":{source:"iana",compressible:!0},"application/vq-rtcpxr":{source:"iana"},"application/wasm":{source:"iana",compressible:!0,extensions:["wasm"]},"application/watcherinfo+xml":{source:"iana",compressible:!0,extensions:["wif"]},"application/webpush-options+json":{source:"iana",compressible:!0},"application/whoispp-query":{source:"iana"},"application/whoispp-response":{source:"iana"},"application/widget":{source:"iana",extensions:["wgt"]},"application/winhlp":{source:"apache",extensions:["hlp"]},"application/wita":{source:"iana"},"application/wordperfect5.1":{source:"iana"},"application/wsdl+xml":{source:"iana",compressible:!0,extensions:["wsdl"]},"application/wspolicy+xml":{source:"iana",compressible:!0,extensions:["wspolicy"]},"application/x-7z-compressed":{source:"apache",compressible:!1,extensions:["7z"]},"application/x-abiword":{source:"apache",extensions:["abw"]},"application/x-ace-compressed":{source:"apache",extensions:["ace"]},"application/x-amf":{source:"apache"},"application/x-apple-diskimage":{source:"apache",extensions:["dmg"]},"application/x-arj":{compressible:!1,extensions:["arj"]},"application/x-authorware-bin":{source:"apache",extensions:["aab","x32","u32","vox"]},"application/x-authorware-map":{source:"apache",extensions:["aam"]},"application/x-authorware-seg":{source:"apache",extensions:["aas"]},"application/x-bcpio":{source:"apache",extensions:["bcpio"]},"application/x-bdoc":{compressible:!1,extensions:["bdoc"]},"application/x-bittorrent":{source:"apache",extensions:["torrent"]},"application/x-blorb":{source:"apache",extensions:["blb","blorb"]},"application/x-bzip":{source:"apache",compressible:!1,extensions:["bz"]},"application/x-bzip2":{source:"apache",compressible:!1,extensions:["bz2","boz"]},"application/x-cbr":{source:"apache",extensions:["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{source:"apache",extensions:["vcd"]},"application/x-cfs-compressed":{source:"apache",extensions:["cfs"]},"application/x-chat":{source:"apache",extensions:["chat"]},"application/x-chess-pgn":{source:"apache",extensions:["pgn"]},"application/x-chrome-extension":{extensions:["crx"]},"application/x-cocoa":{source:"nginx",extensions:["cco"]},"application/x-compress":{source:"apache"},"application/x-conference":{source:"apache",extensions:["nsc"]},"application/x-cpio":{source:"apache",extensions:["cpio"]},"application/x-csh":{source:"apache",extensions:["csh"]},"application/x-deb":{compressible:!1},"application/x-debian-package":{source:"apache",extensions:["deb","udeb"]},"application/x-dgc-compressed":{source:"apache",extensions:["dgc"]},"application/x-director":{source:"apache",extensions:["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{source:"apache",extensions:["wad"]},"application/x-dtbncx+xml":{source:"apache",compressible:!0,extensions:["ncx"]},"application/x-dtbook+xml":{source:"apache",compressible:!0,extensions:["dtb"]},"application/x-dtbresource+xml":{source:"apache",compressible:!0,extensions:["res"]},"application/x-dvi":{source:"apache",compressible:!1,extensions:["dvi"]},"application/x-envoy":{source:"apache",extensions:["evy"]},"application/x-eva":{source:"apache",extensions:["eva"]},"application/x-font-bdf":{source:"apache",extensions:["bdf"]},"application/x-font-dos":{source:"apache"},"application/x-font-framemaker":{source:"apache"},"application/x-font-ghostscript":{source:"apache",extensions:["gsf"]},"application/x-font-libgrx":{source:"apache"},"application/x-font-linux-psf":{source:"apache",extensions:["psf"]},"application/x-font-pcf":{source:"apache",extensions:["pcf"]},"application/x-font-snf":{source:"apache",extensions:["snf"]},"application/x-font-speedo":{source:"apache"},"application/x-font-sunos-news":{source:"apache"},"application/x-font-type1":{source:"apache",extensions:["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{source:"apache"},"application/x-freearc":{source:"apache",extensions:["arc"]},"application/x-futuresplash":{source:"apache",extensions:["spl"]},"application/x-gca-compressed":{source:"apache",extensions:["gca"]},"application/x-glulx":{source:"apache",extensions:["ulx"]},"application/x-gnumeric":{source:"apache",extensions:["gnumeric"]},"application/x-gramps-xml":{source:"apache",extensions:["gramps"]},"application/x-gtar":{source:"apache",extensions:["gtar"]},"application/x-gzip":{source:"apache"},"application/x-hdf":{source:"apache",extensions:["hdf"]},"application/x-httpd-php":{compressible:!0,extensions:["php"]},"application/x-install-instructions":{source:"apache",extensions:["install"]},"application/x-iso9660-image":{source:"apache",extensions:["iso"]},"application/x-iwork-keynote-sffkey":{extensions:["key"]},"application/x-iwork-numbers-sffnumbers":{extensions:["numbers"]},"application/x-iwork-pages-sffpages":{extensions:["pages"]},"application/x-java-archive-diff":{source:"nginx",extensions:["jardiff"]},"application/x-java-jnlp-file":{source:"apache",compressible:!1,extensions:["jnlp"]},"application/x-javascript":{compressible:!0},"application/x-keepass2":{extensions:["kdbx"]},"application/x-latex":{source:"apache",compressible:!1,extensions:["latex"]},"application/x-lua-bytecode":{extensions:["luac"]},"application/x-lzh-compressed":{source:"apache",extensions:["lzh","lha"]},"application/x-makeself":{source:"nginx",extensions:["run"]},"application/x-mie":{source:"apache",extensions:["mie"]},"application/x-mobipocket-ebook":{source:"apache",extensions:["prc","mobi"]},"application/x-mpegurl":{compressible:!1},"application/x-ms-application":{source:"apache",extensions:["application"]},"application/x-ms-shortcut":{source:"apache",extensions:["lnk"]},"application/x-ms-wmd":{source:"apache",extensions:["wmd"]},"application/x-ms-wmz":{source:"apache",extensions:["wmz"]},"application/x-ms-xbap":{source:"apache",extensions:["xbap"]},"application/x-msaccess":{source:"apache",extensions:["mdb"]},"application/x-msbinder":{source:"apache",extensions:["obd"]},"application/x-mscardfile":{source:"apache",extensions:["crd"]},"application/x-msclip":{source:"apache",extensions:["clp"]},"application/x-msdos-program":{extensions:["exe"]},"application/x-msdownload":{source:"apache",extensions:["exe","dll","com","bat","msi"]},"application/x-msmediaview":{source:"apache",extensions:["mvb","m13","m14"]},"application/x-msmetafile":{source:"apache",extensions:["wmf","wmz","emf","emz"]},"application/x-msmoney":{source:"apache",extensions:["mny"]},"application/x-mspublisher":{source:"apache",extensions:["pub"]},"application/x-msschedule":{source:"apache",extensions:["scd"]},"application/x-msterminal":{source:"apache",extensions:["trm"]},"application/x-mswrite":{source:"apache",extensions:["wri"]},"application/x-netcdf":{source:"apache",extensions:["nc","cdf"]},"application/x-ns-proxy-autoconfig":{compressible:!0,extensions:["pac"]},"application/x-nzb":{source:"apache",extensions:["nzb"]},"application/x-perl":{source:"nginx",extensions:["pl","pm"]},"application/x-pilot":{source:"nginx",extensions:["prc","pdb"]},"application/x-pkcs12":{source:"apache",compressible:!1,extensions:["p12","pfx"]},"application/x-pkcs7-certificates":{source:"apache",extensions:["p7b","spc"]},"application/x-pkcs7-certreqresp":{source:"apache",extensions:["p7r"]},"application/x-pki-message":{source:"iana"},"application/x-rar-compressed":{source:"apache",compressible:!1,extensions:["rar"]},"application/x-redhat-package-manager":{source:"nginx",extensions:["rpm"]},"application/x-research-info-systems":{source:"apache",extensions:["ris"]},"application/x-sea":{source:"nginx",extensions:["sea"]},"application/x-sh":{source:"apache",compressible:!0,extensions:["sh"]},"application/x-shar":{source:"apache",extensions:["shar"]},"application/x-shockwave-flash":{source:"apache",compressible:!1,extensions:["swf"]},"application/x-silverlight-app":{source:"apache",extensions:["xap"]},"application/x-sql":{source:"apache",extensions:["sql"]},"application/x-stuffit":{source:"apache",compressible:!1,extensions:["sit"]},"application/x-stuffitx":{source:"apache",extensions:["sitx"]},"application/x-subrip":{source:"apache",extensions:["srt"]},"application/x-sv4cpio":{source:"apache",extensions:["sv4cpio"]},"application/x-sv4crc":{source:"apache",extensions:["sv4crc"]},"application/x-t3vm-image":{source:"apache",extensions:["t3"]},"application/x-tads":{source:"apache",extensions:["gam"]},"application/x-tar":{source:"apache",compressible:!0,extensions:["tar"]},"application/x-tcl":{source:"apache",extensions:["tcl","tk"]},"application/x-tex":{source:"apache",extensions:["tex"]},"application/x-tex-tfm":{source:"apache",extensions:["tfm"]},"application/x-texinfo":{source:"apache",extensions:["texinfo","texi"]},"application/x-tgif":{source:"apache",extensions:["obj"]},"application/x-ustar":{source:"apache",extensions:["ustar"]},"application/x-virtualbox-hdd":{compressible:!0,extensions:["hdd"]},"application/x-virtualbox-ova":{compressible:!0,extensions:["ova"]},"application/x-virtualbox-ovf":{compressible:!0,extensions:["ovf"]},"application/x-virtualbox-vbox":{compressible:!0,extensions:["vbox"]},"application/x-virtualbox-vbox-extpack":{compressible:!1,extensions:["vbox-extpack"]},"application/x-virtualbox-vdi":{compressible:!0,extensions:["vdi"]},"application/x-virtualbox-vhd":{compressible:!0,extensions:["vhd"]},"application/x-virtualbox-vmdk":{compressible:!0,extensions:["vmdk"]},"application/x-wais-source":{source:"apache",extensions:["src"]},"application/x-web-app-manifest+json":{compressible:!0,extensions:["webapp"]},"application/x-www-form-urlencoded":{source:"iana",compressible:!0},"application/x-x509-ca-cert":{source:"iana",extensions:["der","crt","pem"]},"application/x-x509-ca-ra-cert":{source:"iana"},"application/x-x509-next-ca-cert":{source:"iana"},"application/x-xfig":{source:"apache",extensions:["fig"]},"application/x-xliff+xml":{source:"apache",compressible:!0,extensions:["xlf"]},"application/x-xpinstall":{source:"apache",compressible:!1,extensions:["xpi"]},"application/x-xz":{source:"apache",extensions:["xz"]},"application/x-zmachine":{source:"apache",extensions:["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{source:"iana"},"application/xacml+xml":{source:"iana",compressible:!0},"application/xaml+xml":{source:"apache",compressible:!0,extensions:["xaml"]},"application/xcap-att+xml":{source:"iana",compressible:!0,extensions:["xav"]},"application/xcap-caps+xml":{source:"iana",compressible:!0,extensions:["xca"]},"application/xcap-diff+xml":{source:"iana",compressible:!0,extensions:["xdf"]},"application/xcap-el+xml":{source:"iana",compressible:!0,extensions:["xel"]},"application/xcap-error+xml":{source:"iana",compressible:!0},"application/xcap-ns+xml":{source:"iana",compressible:!0,extensions:["xns"]},"application/xcon-conference-info+xml":{source:"iana",compressible:!0},"application/xcon-conference-info-diff+xml":{source:"iana",compressible:!0},"application/xenc+xml":{source:"iana",compressible:!0,extensions:["xenc"]},"application/xhtml+xml":{source:"iana",compressible:!0,extensions:["xhtml","xht"]},"application/xhtml-voice+xml":{source:"apache",compressible:!0},"application/xliff+xml":{source:"iana",compressible:!0,extensions:["xlf"]},"application/xml":{source:"iana",compressible:!0,extensions:["xml","xsl","xsd","rng"]},"application/xml-dtd":{source:"iana",compressible:!0,extensions:["dtd"]},"application/xml-external-parsed-entity":{source:"iana"},"application/xml-patch+xml":{source:"iana",compressible:!0},"application/xmpp+xml":{source:"iana",compressible:!0},"application/xop+xml":{source:"iana",compressible:!0,extensions:["xop"]},"application/xproc+xml":{source:"apache",compressible:!0,extensions:["xpl"]},"application/xslt+xml":{source:"iana",compressible:!0,extensions:["xsl","xslt"]},"application/xspf+xml":{source:"apache",compressible:!0,extensions:["xspf"]},"application/xv+xml":{source:"iana",compressible:!0,extensions:["mxml","xhvml","xvml","xvm"]},"application/yang":{source:"iana",extensions:["yang"]},"application/yang-data+json":{source:"iana",compressible:!0},"application/yang-data+xml":{source:"iana",compressible:!0},"application/yang-patch+json":{source:"iana",compressible:!0},"application/yang-patch+xml":{source:"iana",compressible:!0},"application/yin+xml":{source:"iana",compressible:!0,extensions:["yin"]},"application/zip":{source:"iana",compressible:!1,extensions:["zip"]},"application/zlib":{source:"iana"},"application/zstd":{source:"iana"},"audio/1d-interleaved-parityfec":{source:"iana"},"audio/32kadpcm":{source:"iana"},"audio/3gpp":{source:"iana",compressible:!1,extensions:["3gpp"]},"audio/3gpp2":{source:"iana"},"audio/aac":{source:"iana"},"audio/ac3":{source:"iana"},"audio/adpcm":{source:"apache",extensions:["adp"]},"audio/amr":{source:"iana",extensions:["amr"]},"audio/amr-wb":{source:"iana"},"audio/amr-wb+":{source:"iana"},"audio/aptx":{source:"iana"},"audio/asc":{source:"iana"},"audio/atrac-advanced-lossless":{source:"iana"},"audio/atrac-x":{source:"iana"},"audio/atrac3":{source:"iana"},"audio/basic":{source:"iana",compressible:!1,extensions:["au","snd"]},"audio/bv16":{source:"iana"},"audio/bv32":{source:"iana"},"audio/clearmode":{source:"iana"},"audio/cn":{source:"iana"},"audio/dat12":{source:"iana"},"audio/dls":{source:"iana"},"audio/dsr-es201108":{source:"iana"},"audio/dsr-es202050":{source:"iana"},"audio/dsr-es202211":{source:"iana"},"audio/dsr-es202212":{source:"iana"},"audio/dv":{source:"iana"},"audio/dvi4":{source:"iana"},"audio/eac3":{source:"iana"},"audio/encaprtp":{source:"iana"},"audio/evrc":{source:"iana"},"audio/evrc-qcp":{source:"iana"},"audio/evrc0":{source:"iana"},"audio/evrc1":{source:"iana"},"audio/evrcb":{source:"iana"},"audio/evrcb0":{source:"iana"},"audio/evrcb1":{source:"iana"},"audio/evrcnw":{source:"iana"},"audio/evrcnw0":{source:"iana"},"audio/evrcnw1":{source:"iana"},"audio/evrcwb":{source:"iana"},"audio/evrcwb0":{source:"iana"},"audio/evrcwb1":{source:"iana"},"audio/evs":{source:"iana"},"audio/flexfec":{source:"iana"},"audio/fwdred":{source:"iana"},"audio/g711-0":{source:"iana"},"audio/g719":{source:"iana"},"audio/g722":{source:"iana"},"audio/g7221":{source:"iana"},"audio/g723":{source:"iana"},"audio/g726-16":{source:"iana"},"audio/g726-24":{source:"iana"},"audio/g726-32":{source:"iana"},"audio/g726-40":{source:"iana"},"audio/g728":{source:"iana"},"audio/g729":{source:"iana"},"audio/g7291":{source:"iana"},"audio/g729d":{source:"iana"},"audio/g729e":{source:"iana"},"audio/gsm":{source:"iana"},"audio/gsm-efr":{source:"iana"},"audio/gsm-hr-08":{source:"iana"},"audio/ilbc":{source:"iana"},"audio/ip-mr_v2.5":{source:"iana"},"audio/isac":{source:"apache"},"audio/l16":{source:"iana"},"audio/l20":{source:"iana"},"audio/l24":{source:"iana",compressible:!1},"audio/l8":{source:"iana"},"audio/lpc":{source:"iana"},"audio/melp":{source:"iana"},"audio/melp1200":{source:"iana"},"audio/melp2400":{source:"iana"},"audio/melp600":{source:"iana"},"audio/mhas":{source:"iana"},"audio/midi":{source:"apache",extensions:["mid","midi","kar","rmi"]},"audio/mobile-xmf":{source:"iana",extensions:["mxmf"]},"audio/mp3":{compressible:!1,extensions:["mp3"]},"audio/mp4":{source:"iana",compressible:!1,extensions:["m4a","mp4a"]},"audio/mp4a-latm":{source:"iana"},"audio/mpa":{source:"iana"},"audio/mpa-robust":{source:"iana"},"audio/mpeg":{source:"iana",compressible:!1,extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{source:"iana"},"audio/musepack":{source:"apache"},"audio/ogg":{source:"iana",compressible:!1,extensions:["oga","ogg","spx","opus"]},"audio/opus":{source:"iana"},"audio/parityfec":{source:"iana"},"audio/pcma":{source:"iana"},"audio/pcma-wb":{source:"iana"},"audio/pcmu":{source:"iana"},"audio/pcmu-wb":{source:"iana"},"audio/prs.sid":{source:"iana"},"audio/qcelp":{source:"iana"},"audio/raptorfec":{source:"iana"},"audio/red":{source:"iana"},"audio/rtp-enc-aescm128":{source:"iana"},"audio/rtp-midi":{source:"iana"},"audio/rtploopback":{source:"iana"},"audio/rtx":{source:"iana"},"audio/s3m":{source:"apache",extensions:["s3m"]},"audio/scip":{source:"iana"},"audio/silk":{source:"apache",extensions:["sil"]},"audio/smv":{source:"iana"},"audio/smv-qcp":{source:"iana"},"audio/smv0":{source:"iana"},"audio/sofa":{source:"iana"},"audio/sp-midi":{source:"iana"},"audio/speex":{source:"iana"},"audio/t140c":{source:"iana"},"audio/t38":{source:"iana"},"audio/telephone-event":{source:"iana"},"audio/tetra_acelp":{source:"iana"},"audio/tetra_acelp_bb":{source:"iana"},"audio/tone":{source:"iana"},"audio/tsvcis":{source:"iana"},"audio/uemclip":{source:"iana"},"audio/ulpfec":{source:"iana"},"audio/usac":{source:"iana"},"audio/vdvi":{source:"iana"},"audio/vmr-wb":{source:"iana"},"audio/vnd.3gpp.iufp":{source:"iana"},"audio/vnd.4sb":{source:"iana"},"audio/vnd.audiokoz":{source:"iana"},"audio/vnd.celp":{source:"iana"},"audio/vnd.cisco.nse":{source:"iana"},"audio/vnd.cmles.radio-events":{source:"iana"},"audio/vnd.cns.anp1":{source:"iana"},"audio/vnd.cns.inf1":{source:"iana"},"audio/vnd.dece.audio":{source:"iana",extensions:["uva","uvva"]},"audio/vnd.digital-winds":{source:"iana",extensions:["eol"]},"audio/vnd.dlna.adts":{source:"iana"},"audio/vnd.dolby.heaac.1":{source:"iana"},"audio/vnd.dolby.heaac.2":{source:"iana"},"audio/vnd.dolby.mlp":{source:"iana"},"audio/vnd.dolby.mps":{source:"iana"},"audio/vnd.dolby.pl2":{source:"iana"},"audio/vnd.dolby.pl2x":{source:"iana"},"audio/vnd.dolby.pl2z":{source:"iana"},"audio/vnd.dolby.pulse.1":{source:"iana"},"audio/vnd.dra":{source:"iana",extensions:["dra"]},"audio/vnd.dts":{source:"iana",extensions:["dts"]},"audio/vnd.dts.hd":{source:"iana",extensions:["dtshd"]},"audio/vnd.dts.uhd":{source:"iana"},"audio/vnd.dvb.file":{source:"iana"},"audio/vnd.everad.plj":{source:"iana"},"audio/vnd.hns.audio":{source:"iana"},"audio/vnd.lucent.voice":{source:"iana",extensions:["lvp"]},"audio/vnd.ms-playready.media.pya":{source:"iana",extensions:["pya"]},"audio/vnd.nokia.mobile-xmf":{source:"iana"},"audio/vnd.nortel.vbk":{source:"iana"},"audio/vnd.nuera.ecelp4800":{source:"iana",extensions:["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{source:"iana",extensions:["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{source:"iana",extensions:["ecelp9600"]},"audio/vnd.octel.sbc":{source:"iana"},"audio/vnd.presonus.multitrack":{source:"iana"},"audio/vnd.qcelp":{source:"iana"},"audio/vnd.rhetorex.32kadpcm":{source:"iana"},"audio/vnd.rip":{source:"iana",extensions:["rip"]},"audio/vnd.rn-realaudio":{compressible:!1},"audio/vnd.sealedmedia.softseal.mpeg":{source:"iana"},"audio/vnd.vmx.cvsd":{source:"iana"},"audio/vnd.wave":{compressible:!1},"audio/vorbis":{source:"iana",compressible:!1},"audio/vorbis-config":{source:"iana"},"audio/wav":{compressible:!1,extensions:["wav"]},"audio/wave":{compressible:!1,extensions:["wav"]},"audio/webm":{source:"apache",compressible:!1,extensions:["weba"]},"audio/x-aac":{source:"apache",compressible:!1,extensions:["aac"]},"audio/x-aiff":{source:"apache",extensions:["aif","aiff","aifc"]},"audio/x-caf":{source:"apache",compressible:!1,extensions:["caf"]},"audio/x-flac":{source:"apache",extensions:["flac"]},"audio/x-m4a":{source:"nginx",extensions:["m4a"]},"audio/x-matroska":{source:"apache",extensions:["mka"]},"audio/x-mpegurl":{source:"apache",extensions:["m3u"]},"audio/x-ms-wax":{source:"apache",extensions:["wax"]},"audio/x-ms-wma":{source:"apache",extensions:["wma"]},"audio/x-pn-realaudio":{source:"apache",extensions:["ram","ra"]},"audio/x-pn-realaudio-plugin":{source:"apache",extensions:["rmp"]},"audio/x-realaudio":{source:"nginx",extensions:["ra"]},"audio/x-tta":{source:"apache"},"audio/x-wav":{source:"apache",extensions:["wav"]},"audio/xm":{source:"apache",extensions:["xm"]},"chemical/x-cdx":{source:"apache",extensions:["cdx"]},"chemical/x-cif":{source:"apache",extensions:["cif"]},"chemical/x-cmdf":{source:"apache",extensions:["cmdf"]},"chemical/x-cml":{source:"apache",extensions:["cml"]},"chemical/x-csml":{source:"apache",extensions:["csml"]},"chemical/x-pdb":{source:"apache"},"chemical/x-xyz":{source:"apache",extensions:["xyz"]},"font/collection":{source:"iana",extensions:["ttc"]},"font/otf":{source:"iana",compressible:!0,extensions:["otf"]},"font/sfnt":{source:"iana"},"font/ttf":{source:"iana",compressible:!0,extensions:["ttf"]},"font/woff":{source:"iana",extensions:["woff"]},"font/woff2":{source:"iana",extensions:["woff2"]},"image/aces":{source:"iana",extensions:["exr"]},"image/apng":{compressible:!1,extensions:["apng"]},"image/avci":{source:"iana",extensions:["avci"]},"image/avcs":{source:"iana",extensions:["avcs"]},"image/avif":{source:"iana",compressible:!1,extensions:["avif"]},"image/bmp":{source:"iana",compressible:!0,extensions:["bmp"]},"image/cgm":{source:"iana",extensions:["cgm"]},"image/dicom-rle":{source:"iana",extensions:["drle"]},"image/emf":{source:"iana",extensions:["emf"]},"image/fits":{source:"iana",extensions:["fits"]},"image/g3fax":{source:"iana",extensions:["g3"]},"image/gif":{source:"iana",compressible:!1,extensions:["gif"]},"image/heic":{source:"iana",extensions:["heic"]},"image/heic-sequence":{source:"iana",extensions:["heics"]},"image/heif":{source:"iana",extensions:["heif"]},"image/heif-sequence":{source:"iana",extensions:["heifs"]},"image/hej2k":{source:"iana",extensions:["hej2"]},"image/hsj2":{source:"iana",extensions:["hsj2"]},"image/ief":{source:"iana",extensions:["ief"]},"image/jls":{source:"iana",extensions:["jls"]},"image/jp2":{source:"iana",compressible:!1,extensions:["jp2","jpg2"]},"image/jpeg":{source:"iana",compressible:!1,extensions:["jpeg","jpg","jpe"]},"image/jph":{source:"iana",extensions:["jph"]},"image/jphc":{source:"iana",extensions:["jhc"]},"image/jpm":{source:"iana",compressible:!1,extensions:["jpm"]},"image/jpx":{source:"iana",compressible:!1,extensions:["jpx","jpf"]},"image/jxr":{source:"iana",extensions:["jxr"]},"image/jxra":{source:"iana",extensions:["jxra"]},"image/jxrs":{source:"iana",extensions:["jxrs"]},"image/jxs":{source:"iana",extensions:["jxs"]},"image/jxsc":{source:"iana",extensions:["jxsc"]},"image/jxsi":{source:"iana",extensions:["jxsi"]},"image/jxss":{source:"iana",extensions:["jxss"]},"image/ktx":{source:"iana",extensions:["ktx"]},"image/ktx2":{source:"iana",extensions:["ktx2"]},"image/naplps":{source:"iana"},"image/pjpeg":{compressible:!1},"image/png":{source:"iana",compressible:!1,extensions:["png"]},"image/prs.btif":{source:"iana",extensions:["btif"]},"image/prs.pti":{source:"iana",extensions:["pti"]},"image/pwg-raster":{source:"iana"},"image/sgi":{source:"apache",extensions:["sgi"]},"image/svg+xml":{source:"iana",compressible:!0,extensions:["svg","svgz"]},"image/t38":{source:"iana",extensions:["t38"]},"image/tiff":{source:"iana",compressible:!1,extensions:["tif","tiff"]},"image/tiff-fx":{source:"iana",extensions:["tfx"]},"image/vnd.adobe.photoshop":{source:"iana",compressible:!0,extensions:["psd"]},"image/vnd.airzip.accelerator.azv":{source:"iana",extensions:["azv"]},"image/vnd.cns.inf2":{source:"iana"},"image/vnd.dece.graphic":{source:"iana",extensions:["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{source:"iana",extensions:["djvu","djv"]},"image/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"image/vnd.dwg":{source:"iana",extensions:["dwg"]},"image/vnd.dxf":{source:"iana",extensions:["dxf"]},"image/vnd.fastbidsheet":{source:"iana",extensions:["fbs"]},"image/vnd.fpx":{source:"iana",extensions:["fpx"]},"image/vnd.fst":{source:"iana",extensions:["fst"]},"image/vnd.fujixerox.edmics-mmr":{source:"iana",extensions:["mmr"]},"image/vnd.fujixerox.edmics-rlc":{source:"iana",extensions:["rlc"]},"image/vnd.globalgraphics.pgb":{source:"iana"},"image/vnd.microsoft.icon":{source:"iana",compressible:!0,extensions:["ico"]},"image/vnd.mix":{source:"iana"},"image/vnd.mozilla.apng":{source:"iana"},"image/vnd.ms-dds":{compressible:!0,extensions:["dds"]},"image/vnd.ms-modi":{source:"iana",extensions:["mdi"]},"image/vnd.ms-photo":{source:"apache",extensions:["wdp"]},"image/vnd.net-fpx":{source:"iana",extensions:["npx"]},"image/vnd.pco.b16":{source:"iana",extensions:["b16"]},"image/vnd.radiance":{source:"iana"},"image/vnd.sealed.png":{source:"iana"},"image/vnd.sealedmedia.softseal.gif":{source:"iana"},"image/vnd.sealedmedia.softseal.jpg":{source:"iana"},"image/vnd.svf":{source:"iana"},"image/vnd.tencent.tap":{source:"iana",extensions:["tap"]},"image/vnd.valve.source.texture":{source:"iana",extensions:["vtf"]},"image/vnd.wap.wbmp":{source:"iana",extensions:["wbmp"]},"image/vnd.xiff":{source:"iana",extensions:["xif"]},"image/vnd.zbrush.pcx":{source:"iana",extensions:["pcx"]},"image/webp":{source:"apache",extensions:["webp"]},"image/wmf":{source:"iana",extensions:["wmf"]},"image/x-3ds":{source:"apache",extensions:["3ds"]},"image/x-cmu-raster":{source:"apache",extensions:["ras"]},"image/x-cmx":{source:"apache",extensions:["cmx"]},"image/x-freehand":{source:"apache",extensions:["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{source:"apache",compressible:!0,extensions:["ico"]},"image/x-jng":{source:"nginx",extensions:["jng"]},"image/x-mrsid-image":{source:"apache",extensions:["sid"]},"image/x-ms-bmp":{source:"nginx",compressible:!0,extensions:["bmp"]},"image/x-pcx":{source:"apache",extensions:["pcx"]},"image/x-pict":{source:"apache",extensions:["pic","pct"]},"image/x-portable-anymap":{source:"apache",extensions:["pnm"]},"image/x-portable-bitmap":{source:"apache",extensions:["pbm"]},"image/x-portable-graymap":{source:"apache",extensions:["pgm"]},"image/x-portable-pixmap":{source:"apache",extensions:["ppm"]},"image/x-rgb":{source:"apache",extensions:["rgb"]},"image/x-tga":{source:"apache",extensions:["tga"]},"image/x-xbitmap":{source:"apache",extensions:["xbm"]},"image/x-xcf":{compressible:!1},"image/x-xpixmap":{source:"apache",extensions:["xpm"]},"image/x-xwindowdump":{source:"apache",extensions:["xwd"]},"message/cpim":{source:"iana"},"message/delivery-status":{source:"iana"},"message/disposition-notification":{source:"iana",extensions:["disposition-notification"]},"message/external-body":{source:"iana"},"message/feedback-report":{source:"iana"},"message/global":{source:"iana",extensions:["u8msg"]},"message/global-delivery-status":{source:"iana",extensions:["u8dsn"]},"message/global-disposition-notification":{source:"iana",extensions:["u8mdn"]},"message/global-headers":{source:"iana",extensions:["u8hdr"]},"message/http":{source:"iana",compressible:!1},"message/imdn+xml":{source:"iana",compressible:!0},"message/news":{source:"iana"},"message/partial":{source:"iana",compressible:!1},"message/rfc822":{source:"iana",compressible:!0,extensions:["eml","mime"]},"message/s-http":{source:"iana"},"message/sip":{source:"iana"},"message/sipfrag":{source:"iana"},"message/tracking-status":{source:"iana"},"message/vnd.si.simp":{source:"iana"},"message/vnd.wfa.wsc":{source:"iana",extensions:["wsc"]},"model/3mf":{source:"iana",extensions:["3mf"]},"model/e57":{source:"iana"},"model/gltf+json":{source:"iana",compressible:!0,extensions:["gltf"]},"model/gltf-binary":{source:"iana",compressible:!0,extensions:["glb"]},"model/iges":{source:"iana",compressible:!1,extensions:["igs","iges"]},"model/mesh":{source:"iana",compressible:!1,extensions:["msh","mesh","silo"]},"model/mtl":{source:"iana",extensions:["mtl"]},"model/obj":{source:"iana",extensions:["obj"]},"model/step":{source:"iana"},"model/step+xml":{source:"iana",compressible:!0,extensions:["stpx"]},"model/step+zip":{source:"iana",compressible:!1,extensions:["stpz"]},"model/step-xml+zip":{source:"iana",compressible:!1,extensions:["stpxz"]},"model/stl":{source:"iana",extensions:["stl"]},"model/vnd.collada+xml":{source:"iana",compressible:!0,extensions:["dae"]},"model/vnd.dwf":{source:"iana",extensions:["dwf"]},"model/vnd.flatland.3dml":{source:"iana"},"model/vnd.gdl":{source:"iana",extensions:["gdl"]},"model/vnd.gs-gdl":{source:"apache"},"model/vnd.gs.gdl":{source:"iana"},"model/vnd.gtw":{source:"iana",extensions:["gtw"]},"model/vnd.moml+xml":{source:"iana",compressible:!0},"model/vnd.mts":{source:"iana",extensions:["mts"]},"model/vnd.opengex":{source:"iana",extensions:["ogex"]},"model/vnd.parasolid.transmit.binary":{source:"iana",extensions:["x_b"]},"model/vnd.parasolid.transmit.text":{source:"iana",extensions:["x_t"]},"model/vnd.pytha.pyox":{source:"iana"},"model/vnd.rosette.annotated-data-model":{source:"iana"},"model/vnd.sap.vds":{source:"iana",extensions:["vds"]},"model/vnd.usdz+zip":{source:"iana",compressible:!1,extensions:["usdz"]},"model/vnd.valve.source.compiled-map":{source:"iana",extensions:["bsp"]},"model/vnd.vtu":{source:"iana",extensions:["vtu"]},"model/vrml":{source:"iana",compressible:!1,extensions:["wrl","vrml"]},"model/x3d+binary":{source:"apache",compressible:!1,extensions:["x3db","x3dbz"]},"model/x3d+fastinfoset":{source:"iana",extensions:["x3db"]},"model/x3d+vrml":{source:"apache",compressible:!1,extensions:["x3dv","x3dvz"]},"model/x3d+xml":{source:"iana",compressible:!0,extensions:["x3d","x3dz"]},"model/x3d-vrml":{source:"iana",extensions:["x3dv"]},"multipart/alternative":{source:"iana",compressible:!1},"multipart/appledouble":{source:"iana"},"multipart/byteranges":{source:"iana"},"multipart/digest":{source:"iana"},"multipart/encrypted":{source:"iana",compressible:!1},"multipart/form-data":{source:"iana",compressible:!1},"multipart/header-set":{source:"iana"},"multipart/mixed":{source:"iana"},"multipart/multilingual":{source:"iana"},"multipart/parallel":{source:"iana"},"multipart/related":{source:"iana",compressible:!1},"multipart/report":{source:"iana"},"multipart/signed":{source:"iana",compressible:!1},"multipart/vnd.bint.med-plus":{source:"iana"},"multipart/voice-message":{source:"iana"},"multipart/x-mixed-replace":{source:"iana"},"text/1d-interleaved-parityfec":{source:"iana"},"text/cache-manifest":{source:"iana",compressible:!0,extensions:["appcache","manifest"]},"text/calendar":{source:"iana",extensions:["ics","ifb"]},"text/calender":{compressible:!0},"text/cmd":{compressible:!0},"text/coffeescript":{extensions:["coffee","litcoffee"]},"text/cql":{source:"iana"},"text/cql-expression":{source:"iana"},"text/cql-identifier":{source:"iana"},"text/css":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["css"]},"text/csv":{source:"iana",compressible:!0,extensions:["csv"]},"text/csv-schema":{source:"iana"},"text/directory":{source:"iana"},"text/dns":{source:"iana"},"text/ecmascript":{source:"iana"},"text/encaprtp":{source:"iana"},"text/enriched":{source:"iana"},"text/fhirpath":{source:"iana"},"text/flexfec":{source:"iana"},"text/fwdred":{source:"iana"},"text/gff3":{source:"iana"},"text/grammar-ref-list":{source:"iana"},"text/html":{source:"iana",compressible:!0,extensions:["html","htm","shtml"]},"text/jade":{extensions:["jade"]},"text/javascript":{source:"iana",compressible:!0},"text/jcr-cnd":{source:"iana"},"text/jsx":{compressible:!0,extensions:["jsx"]},"text/less":{compressible:!0,extensions:["less"]},"text/markdown":{source:"iana",compressible:!0,extensions:["markdown","md"]},"text/mathml":{source:"nginx",extensions:["mml"]},"text/mdx":{compressible:!0,extensions:["mdx"]},"text/mizar":{source:"iana"},"text/n3":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["n3"]},"text/parameters":{source:"iana",charset:"UTF-8"},"text/parityfec":{source:"iana"},"text/plain":{source:"iana",compressible:!0,extensions:["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{source:"iana",charset:"UTF-8"},"text/prs.fallenstein.rst":{source:"iana"},"text/prs.lines.tag":{source:"iana",extensions:["dsc"]},"text/prs.prop.logic":{source:"iana"},"text/raptorfec":{source:"iana"},"text/red":{source:"iana"},"text/rfc822-headers":{source:"iana"},"text/richtext":{source:"iana",compressible:!0,extensions:["rtx"]},"text/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"text/rtp-enc-aescm128":{source:"iana"},"text/rtploopback":{source:"iana"},"text/rtx":{source:"iana"},"text/sgml":{source:"iana",extensions:["sgml","sgm"]},"text/shaclc":{source:"iana"},"text/shex":{source:"iana",extensions:["shex"]},"text/slim":{extensions:["slim","slm"]},"text/spdx":{source:"iana",extensions:["spdx"]},"text/strings":{source:"iana"},"text/stylus":{extensions:["stylus","styl"]},"text/t140":{source:"iana"},"text/tab-separated-values":{source:"iana",compressible:!0,extensions:["tsv"]},"text/troff":{source:"iana",extensions:["t","tr","roff","man","me","ms"]},"text/turtle":{source:"iana",charset:"UTF-8",extensions:["ttl"]},"text/ulpfec":{source:"iana"},"text/uri-list":{source:"iana",compressible:!0,extensions:["uri","uris","urls"]},"text/vcard":{source:"iana",compressible:!0,extensions:["vcard"]},"text/vnd.a":{source:"iana"},"text/vnd.abc":{source:"iana"},"text/vnd.ascii-art":{source:"iana"},"text/vnd.curl":{source:"iana",extensions:["curl"]},"text/vnd.curl.dcurl":{source:"apache",extensions:["dcurl"]},"text/vnd.curl.mcurl":{source:"apache",extensions:["mcurl"]},"text/vnd.curl.scurl":{source:"apache",extensions:["scurl"]},"text/vnd.debian.copyright":{source:"iana",charset:"UTF-8"},"text/vnd.dmclientscript":{source:"iana"},"text/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"text/vnd.esmertec.theme-descriptor":{source:"iana",charset:"UTF-8"},"text/vnd.familysearch.gedcom":{source:"iana",extensions:["ged"]},"text/vnd.ficlab.flt":{source:"iana"},"text/vnd.fly":{source:"iana",extensions:["fly"]},"text/vnd.fmi.flexstor":{source:"iana",extensions:["flx"]},"text/vnd.gml":{source:"iana"},"text/vnd.graphviz":{source:"iana",extensions:["gv"]},"text/vnd.hans":{source:"iana"},"text/vnd.hgl":{source:"iana"},"text/vnd.in3d.3dml":{source:"iana",extensions:["3dml"]},"text/vnd.in3d.spot":{source:"iana",extensions:["spot"]},"text/vnd.iptc.newsml":{source:"iana"},"text/vnd.iptc.nitf":{source:"iana"},"text/vnd.latex-z":{source:"iana"},"text/vnd.motorola.reflex":{source:"iana"},"text/vnd.ms-mediapackage":{source:"iana"},"text/vnd.net2phone.commcenter.command":{source:"iana"},"text/vnd.radisys.msml-basic-layout":{source:"iana"},"text/vnd.senx.warpscript":{source:"iana"},"text/vnd.si.uricatalogue":{source:"iana"},"text/vnd.sosi":{source:"iana"},"text/vnd.sun.j2me.app-descriptor":{source:"iana",charset:"UTF-8",extensions:["jad"]},"text/vnd.trolltech.linguist":{source:"iana",charset:"UTF-8"},"text/vnd.wap.si":{source:"iana"},"text/vnd.wap.sl":{source:"iana"},"text/vnd.wap.wml":{source:"iana",extensions:["wml"]},"text/vnd.wap.wmlscript":{source:"iana",extensions:["wmls"]},"text/vtt":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["vtt"]},"text/x-asm":{source:"apache",extensions:["s","asm"]},"text/x-c":{source:"apache",extensions:["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{source:"nginx",extensions:["htc"]},"text/x-fortran":{source:"apache",extensions:["f","for","f77","f90"]},"text/x-gwt-rpc":{compressible:!0},"text/x-handlebars-template":{extensions:["hbs"]},"text/x-java-source":{source:"apache",extensions:["java"]},"text/x-jquery-tmpl":{compressible:!0},"text/x-lua":{extensions:["lua"]},"text/x-markdown":{compressible:!0,extensions:["mkd"]},"text/x-nfo":{source:"apache",extensions:["nfo"]},"text/x-opml":{source:"apache",extensions:["opml"]},"text/x-org":{compressible:!0,extensions:["org"]},"text/x-pascal":{source:"apache",extensions:["p","pas"]},"text/x-processing":{compressible:!0,extensions:["pde"]},"text/x-sass":{extensions:["sass"]},"text/x-scss":{extensions:["scss"]},"text/x-setext":{source:"apache",extensions:["etx"]},"text/x-sfv":{source:"apache",extensions:["sfv"]},"text/x-suse-ymp":{compressible:!0,extensions:["ymp"]},"text/x-uuencode":{source:"apache",extensions:["uu"]},"text/x-vcalendar":{source:"apache",extensions:["vcs"]},"text/x-vcard":{source:"apache",extensions:["vcf"]},"text/xml":{source:"iana",compressible:!0,extensions:["xml"]},"text/xml-external-parsed-entity":{source:"iana"},"text/yaml":{compressible:!0,extensions:["yaml","yml"]},"video/1d-interleaved-parityfec":{source:"iana"},"video/3gpp":{source:"iana",extensions:["3gp","3gpp"]},"video/3gpp-tt":{source:"iana"},"video/3gpp2":{source:"iana",extensions:["3g2"]},"video/av1":{source:"iana"},"video/bmpeg":{source:"iana"},"video/bt656":{source:"iana"},"video/celb":{source:"iana"},"video/dv":{source:"iana"},"video/encaprtp":{source:"iana"},"video/ffv1":{source:"iana"},"video/flexfec":{source:"iana"},"video/h261":{source:"iana",extensions:["h261"]},"video/h263":{source:"iana",extensions:["h263"]},"video/h263-1998":{source:"iana"},"video/h263-2000":{source:"iana"},"video/h264":{source:"iana",extensions:["h264"]},"video/h264-rcdo":{source:"iana"},"video/h264-svc":{source:"iana"},"video/h265":{source:"iana"},"video/iso.segment":{source:"iana",extensions:["m4s"]},"video/jpeg":{source:"iana",extensions:["jpgv"]},"video/jpeg2000":{source:"iana"},"video/jpm":{source:"apache",extensions:["jpm","jpgm"]},"video/jxsv":{source:"iana"},"video/mj2":{source:"iana",extensions:["mj2","mjp2"]},"video/mp1s":{source:"iana"},"video/mp2p":{source:"iana"},"video/mp2t":{source:"iana",extensions:["ts"]},"video/mp4":{source:"iana",compressible:!1,extensions:["mp4","mp4v","mpg4"]},"video/mp4v-es":{source:"iana"},"video/mpeg":{source:"iana",compressible:!1,extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{source:"iana"},"video/mpv":{source:"iana"},"video/nv":{source:"iana"},"video/ogg":{source:"iana",compressible:!1,extensions:["ogv"]},"video/parityfec":{source:"iana"},"video/pointer":{source:"iana"},"video/quicktime":{source:"iana",compressible:!1,extensions:["qt","mov"]},"video/raptorfec":{source:"iana"},"video/raw":{source:"iana"},"video/rtp-enc-aescm128":{source:"iana"},"video/rtploopback":{source:"iana"},"video/rtx":{source:"iana"},"video/scip":{source:"iana"},"video/smpte291":{source:"iana"},"video/smpte292m":{source:"iana"},"video/ulpfec":{source:"iana"},"video/vc1":{source:"iana"},"video/vc2":{source:"iana"},"video/vnd.cctv":{source:"iana"},"video/vnd.dece.hd":{source:"iana",extensions:["uvh","uvvh"]},"video/vnd.dece.mobile":{source:"iana",extensions:["uvm","uvvm"]},"video/vnd.dece.mp4":{source:"iana"},"video/vnd.dece.pd":{source:"iana",extensions:["uvp","uvvp"]},"video/vnd.dece.sd":{source:"iana",extensions:["uvs","uvvs"]},"video/vnd.dece.video":{source:"iana",extensions:["uvv","uvvv"]},"video/vnd.directv.mpeg":{source:"iana"},"video/vnd.directv.mpeg-tts":{source:"iana"},"video/vnd.dlna.mpeg-tts":{source:"iana"},"video/vnd.dvb.file":{source:"iana",extensions:["dvb"]},"video/vnd.fvt":{source:"iana",extensions:["fvt"]},"video/vnd.hns.video":{source:"iana"},"video/vnd.iptvforum.1dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.1dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.2dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.2dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.ttsavc":{source:"iana"},"video/vnd.iptvforum.ttsmpeg2":{source:"iana"},"video/vnd.motorola.video":{source:"iana"},"video/vnd.motorola.videop":{source:"iana"},"video/vnd.mpegurl":{source:"iana",extensions:["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{source:"iana",extensions:["pyv"]},"video/vnd.nokia.interleaved-multimedia":{source:"iana"},"video/vnd.nokia.mp4vr":{source:"iana"},"video/vnd.nokia.videovoip":{source:"iana"},"video/vnd.objectvideo":{source:"iana"},"video/vnd.radgamettools.bink":{source:"iana"},"video/vnd.radgamettools.smacker":{source:"iana"},"video/vnd.sealed.mpeg1":{source:"iana"},"video/vnd.sealed.mpeg4":{source:"iana"},"video/vnd.sealed.swf":{source:"iana"},"video/vnd.sealedmedia.softseal.mov":{source:"iana"},"video/vnd.uvvu.mp4":{source:"iana",extensions:["uvu","uvvu"]},"video/vnd.vivo":{source:"iana",extensions:["viv"]},"video/vnd.youtube.yt":{source:"iana"},"video/vp8":{source:"iana"},"video/vp9":{source:"iana"},"video/webm":{source:"apache",compressible:!1,extensions:["webm"]},"video/x-f4v":{source:"apache",extensions:["f4v"]},"video/x-fli":{source:"apache",extensions:["fli"]},"video/x-flv":{source:"apache",compressible:!1,extensions:["flv"]},"video/x-m4v":{source:"apache",extensions:["m4v"]},"video/x-matroska":{source:"apache",compressible:!1,extensions:["mkv","mk3d","mks"]},"video/x-mng":{source:"apache",extensions:["mng"]},"video/x-ms-asf":{source:"apache",extensions:["asf","asx"]},"video/x-ms-vob":{source:"apache",extensions:["vob"]},"video/x-ms-wm":{source:"apache",extensions:["wm"]},"video/x-ms-wmv":{source:"apache",compressible:!1,extensions:["wmv"]},"video/x-ms-wmx":{source:"apache",extensions:["wmx"]},"video/x-ms-wvx":{source:"apache",extensions:["wvx"]},"video/x-msvideo":{source:"apache",extensions:["avi"]},"video/x-sgi-movie":{source:"apache",extensions:["movie"]},"video/x-smv":{source:"apache",extensions:["smv"]},"x-conference/x-cooltalk":{source:"apache",extensions:["ice"]},"x-shader/x-fragment":{compressible:!0},"x-shader/x-vertex":{compressible:!0}}});var Mz=$((nMe,Nz)=>{Nz.exports=Az()});var $T=$(yn=>{"use strict";var uv=Mz(),qre=require("path").extname,Dz=/^\s*([^;\s]*)(?:;|\s|$)/,Hre=/^text\//i;yn.charset=jz;yn.charsets={lookup:jz};yn.contentType=Zre;yn.extension=Bre;yn.extensions=Object.create(null);yn.lookup=Gre;yn.types=Object.create(null);Wre(yn.extensions,yn.types);function jz(t){if(!t||typeof t!="string")return!1;var e=Dz.exec(t),r=e&&uv[e[1].toLowerCase()];return r&&r.charset?r.charset:e&&Hre.test(e[1])?"UTF-8":!1}function Zre(t){if(!t||typeof t!="string")return!1;var e=t.indexOf("/")===-1?yn.lookup(t):t;if(!e)return!1;if(e.indexOf("charset")===-1){var r=yn.charset(e);r&&(e+="; charset="+r.toLowerCase())}return e}function Bre(t){if(!t||typeof t!="string")return!1;var e=Dz.exec(t),r=e&&yn.extensions[e[1].toLowerCase()];return!r||!r.length?!1:r[0]}function Gre(t){if(!t||typeof t!="string")return!1;var e=qre("x."+t).toLowerCase().substr(1);return e&&yn.types[e]||!1}function Wre(t,e){var r=["nginx","apache",void 0,"iana"];Object.keys(uv).forEach(function(i){var s=uv[i],o=s.extensions;if(!(!o||!o.length)){t[i]=o;for(var a=0;al||u===l&&e[c].substr(0,12)==="application/"))continue}e[c]=i}}})}});var uu=$((sMe,cu)=>{"use strict";var zz=Pz(),Vre=$T();cu.exports=Kre;cu.exports.is=Lz;cu.exports.hasBody=Uz;cu.exports.normalize=Fz;cu.exports.match=qz;function Lz(t,e){var r,n=e,i=Xre(t);if(!i)return!1;if(n&&!Array.isArray(n))for(n=new Array(arguments.length-1),r=0;r2){r=new Array(arguments.length-1);for(var n=0;n{"use strict";var Yre=eu(),Qre=hp(),ene=ma(),Io=Xn()("body-parser:json"),tne=$p(),Zz=uu();Gz.exports=ine;var rne=/^[\x20\x09\x0a\x0d]*([^\x20\x09\x0a\x0d])/,Hz="#",nne=/#+/g;function ine(t){var e=t||{},r=typeof e.limit!="number"?Yre.parse(e.limit||"100kb"):e.limit,n=e.inflate!==!1,i=e.reviver,s=e.strict!==!1,o=e.type||"application/json",a=e.verify||!1;if(a!==!1&&typeof a!="function")throw new TypeError("option verify must be function");var c=typeof o!="function"?cne(o):o;function u(l){if(l.length===0)return{};if(s){var d=one(l);if(d!=="{"&&d!=="[")throw Io("strict violation"),sne(l,d)}try{return Io("parse json"),JSON.parse(l,i)}catch(p){throw Bz(p,{message:p.message,stack:p.stack})}}return function(d,p,f){if(d._body){Io("body already parsed"),f();return}if(d.body=d.body||{},!Zz.hasBody(d)){Io("skip empty body"),f();return}if(Io("content-type %j",d.headers["content-type"]),!c(d)){Io("skip parsing"),f();return}var m=ane(d)||"utf-8";if(m.slice(0,4)!=="utf-"){Io("invalid charset"),f(ene(415,'unsupported charset "'+m.toUpperCase()+'"',{charset:m,type:"charset.unsupported"}));return}tne(d,p,f,u,Io,{encoding:m,inflate:n,limit:r,verify:a})}}function sne(t,e){var r=t.indexOf(e),n="";if(r!==-1){n=t.substring(0,r)+Hz;for(var i=r+1;i{"use strict";var une=eu(),Ip=Xn()("body-parser:raw"),lne=$p(),Vz=uu();Kz.exports=dne;function dne(t){var e=t||{},r=e.inflate!==!1,n=typeof e.limit!="number"?une.parse(e.limit||"100kb"):e.limit,i=e.type||"application/octet-stream",s=e.verify||!1;if(s!==!1&&typeof s!="function")throw new TypeError("option verify must be function");var o=typeof i!="function"?pne(i):i;function a(c){return c}return function(u,l,d){if(u._body){Ip("body already parsed"),d();return}if(u.body=u.body||{},!Vz.hasBody(u)){Ip("skip empty body"),d();return}if(Ip("content-type %j",u.headers["content-type"]),!o(u)){Ip("skip parsing"),d();return}lne(u,l,d,a,Ip,{encoding:null,inflate:r,limit:n,verify:s})}}function pne(t){return function(r){return!!Vz(r,t)}}});var Qz=$((cMe,Yz)=>{"use strict";var fne=eu(),mne=hp(),Rp=Xn()("body-parser:text"),hne=$p(),Xz=uu();Yz.exports=gne;function gne(t){var e=t||{},r=e.defaultCharset||"utf-8",n=e.inflate!==!1,i=typeof e.limit!="number"?fne.parse(e.limit||"100kb"):e.limit,s=e.type||"text/plain",o=e.verify||!1;if(o!==!1&&typeof o!="function")throw new TypeError("option verify must be function");var a=typeof s!="function"?yne(s):s;function c(u){return u}return function(l,d,p){if(l._body){Rp("body already parsed"),p();return}if(l.body=l.body||{},!Xz.hasBody(l)){Rp("skip empty body"),p();return}if(Rp("content-type %j",l.headers["content-type"]),!a(l)){Rp("skip parsing"),p();return}var f=vne(l)||r;hne(l,d,p,c,Rp,{encoding:f,inflate:n,limit:i,verify:o})}}function vne(t){try{return(mne.parse(t).parameters.charset||"").toLowerCase()}catch{return}}function yne(t){return function(r){return!!Xz(r,t)}}});var ba=$((uMe,e4)=>{"use strict";e4.exports=TypeError});var r4=$((lMe,t4)=>{t4.exports=require("util").inspect});var Np=$((dMe,x4)=>{var jT=typeof Map=="function"&&Map.prototype,IT=Object.getOwnPropertyDescriptor&&jT?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,dv=jT&&IT&&typeof IT.get=="function"?IT.get:null,n4=jT&&Map.prototype.forEach,zT=typeof Set=="function"&&Set.prototype,RT=Object.getOwnPropertyDescriptor&&zT?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,pv=zT&&RT&&typeof RT.get=="function"?RT.get:null,i4=zT&&Set.prototype.forEach,_ne=typeof WeakMap=="function"&&WeakMap.prototype,Cp=_ne?WeakMap.prototype.has:null,bne=typeof WeakSet=="function"&&WeakSet.prototype,Pp=bne?WeakSet.prototype.has:null,Sne=typeof WeakRef=="function"&&WeakRef.prototype,s4=Sne?WeakRef.prototype.deref:null,xne=Boolean.prototype.valueOf,wne=Object.prototype.toString,Ene=Function.prototype.toString,kne=String.prototype.match,LT=String.prototype.slice,Ro=String.prototype.replace,Tne=String.prototype.toUpperCase,o4=String.prototype.toLowerCase,h4=RegExp.prototype.test,a4=Array.prototype.concat,Qi=Array.prototype.join,$ne=Array.prototype.slice,c4=Math.floor,PT=typeof BigInt=="function"?BigInt.prototype.valueOf:null,OT=Object.getOwnPropertySymbols,AT=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,lu=typeof Symbol=="function"&&typeof Symbol.iterator=="object",Ap=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===lu||!0)?Symbol.toStringTag:null,g4=Object.prototype.propertyIsEnumerable,u4=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(t){return t.__proto__}:null);function l4(t,e){if(t===1/0||t===-1/0||t!==t||t&&t>-1e3&&t<1e3||h4.call(/e/,e))return e;var r=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof t=="number"){var n=t<0?-c4(-t):c4(t);if(n!==t){var i=String(n),s=LT.call(e,i.length+1);return Ro.call(i,r,"$&_")+"."+Ro.call(Ro.call(s,/([0-9]{3})/g,"$&_"),/_$/,"")}}return Ro.call(e,r,"$&_")}var NT=r4(),d4=NT.custom,p4=_4(d4)?d4:null,v4={__proto__:null,double:'"',single:"'"},Ine={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};x4.exports=function t(e,r,n,i){var s=r||{};if(js(s,"quoteStyle")&&!js(v4,s.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if(js(s,"maxStringLength")&&(typeof s.maxStringLength=="number"?s.maxStringLength<0&&s.maxStringLength!==1/0:s.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var o=js(s,"customInspect")?s.customInspect:!0;if(typeof o!="boolean"&&o!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(js(s,"indent")&&s.indent!==null&&s.indent!==" "&&!(parseInt(s.indent,10)===s.indent&&s.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(js(s,"numericSeparator")&&typeof s.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var a=s.numericSeparator;if(typeof e>"u")return"undefined";if(e===null)return"null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="string")return S4(e,s);if(typeof e=="number"){if(e===0)return 1/0/e>0?"0":"-0";var c=String(e);return a?l4(e,c):c}if(typeof e=="bigint"){var u=String(e)+"n";return a?l4(e,u):u}var l=typeof s.depth>"u"?5:s.depth;if(typeof n>"u"&&(n=0),n>=l&&l>0&&typeof e=="object")return MT(e)?"[Array]":"[Object]";var d=Gne(s,n);if(typeof i>"u")i=[];else if(b4(i,e)>=0)return"[Circular]";function p(G,j,ae){if(j&&(i=$ne.call(i),i.push(j)),ae){var Me={depth:s.depth};return js(s,"quoteStyle")&&(Me.quoteStyle=s.quoteStyle),t(G,Me,n+1,i)}return t(G,s,n+1,i)}if(typeof e=="function"&&!f4(e)){var f=jne(e),m=lv(e,p);return"[Function"+(f?": "+f:" (anonymous)")+"]"+(m.length>0?" { "+Qi.call(m,", ")+" }":"")}if(_4(e)){var h=lu?Ro.call(String(e),/^(Symbol\(.*\))_[^)]*$/,"$1"):AT.call(e);return typeof e=="object"&&!lu?Op(h):h}if(Hne(e)){for(var g="<"+o4.call(String(e.nodeName)),v=e.attributes||[],y=0;y",g}if(MT(e)){if(e.length===0)return"[]";var b=lv(e,p);return d&&!Bne(b)?"["+DT(b,d)+"]":"[ "+Qi.call(b,", ")+" ]"}if(Cne(e)){var S=lv(e,p);return!("cause"in Error.prototype)&&"cause"in e&&!g4.call(e,"cause")?"{ ["+String(e)+"] "+Qi.call(a4.call("[cause]: "+p(e.cause),S),", ")+" }":S.length===0?"["+String(e)+"]":"{ ["+String(e)+"] "+Qi.call(S,", ")+" }"}if(typeof e=="object"&&o){if(p4&&typeof e[p4]=="function"&&NT)return NT(e,{depth:l-n});if(o!=="symbol"&&typeof e.inspect=="function")return e.inspect()}if(zne(e)){var x=[];return n4&&n4.call(e,function(G,j){x.push(p(j,e,!0)+" => "+p(G,e))}),m4("Map",dv.call(e),x,d)}if(Fne(e)){var w=[];return i4&&i4.call(e,function(G){w.push(p(G,e))}),m4("Set",pv.call(e),w,d)}if(Lne(e))return CT("WeakMap");if(qne(e))return CT("WeakSet");if(Une(e))return CT("WeakRef");if(Ane(e))return Op(p(Number(e)));if(Mne(e))return Op(p(PT.call(e)));if(Nne(e))return Op(xne.call(e));if(Pne(e))return Op(p(String(e)));if(typeof window<"u"&&e===window)return"{ [object Window] }";if(typeof globalThis<"u"&&e===globalThis||typeof global<"u"&&e===global)return"{ [object globalThis] }";if(!One(e)&&!f4(e)){var E=lv(e,p),T=u4?u4(e)===Object.prototype:e instanceof Object||e.constructor===Object,I=e instanceof Object?"":"null prototype",P=!T&&Ap&&Object(e)===e&&Ap in e?LT.call(Oo(e),8,-1):I?"Object":"",N=T||typeof e.constructor!="function"?"":e.constructor.name?e.constructor.name+" ":"",L=N+(P||I?"["+Qi.call(a4.call([],P||[],I||[]),": ")+"] ":"");return E.length===0?L+"{}":d?L+"{"+DT(E,d)+"}":L+"{ "+Qi.call(E,", ")+" }"}return String(e)};function y4(t,e,r){var n=r.quoteStyle||e,i=v4[n];return i+t+i}function Rne(t){return Ro.call(String(t),/"/g,""")}function Sa(t){return!Ap||!(typeof t=="object"&&(Ap in t||typeof t[Ap]<"u"))}function MT(t){return Oo(t)==="[object Array]"&&Sa(t)}function One(t){return Oo(t)==="[object Date]"&&Sa(t)}function f4(t){return Oo(t)==="[object RegExp]"&&Sa(t)}function Cne(t){return Oo(t)==="[object Error]"&&Sa(t)}function Pne(t){return Oo(t)==="[object String]"&&Sa(t)}function Ane(t){return Oo(t)==="[object Number]"&&Sa(t)}function Nne(t){return Oo(t)==="[object Boolean]"&&Sa(t)}function _4(t){if(lu)return t&&typeof t=="object"&&t instanceof Symbol;if(typeof t=="symbol")return!0;if(!t||typeof t!="object"||!AT)return!1;try{return AT.call(t),!0}catch{}return!1}function Mne(t){if(!t||typeof t!="object"||!PT)return!1;try{return PT.call(t),!0}catch{}return!1}var Dne=Object.prototype.hasOwnProperty||function(t){return t in this};function js(t,e){return Dne.call(t,e)}function Oo(t){return wne.call(t)}function jne(t){if(t.name)return t.name;var e=kne.call(Ene.call(t),/^function\s*([\w$]+)/);return e?e[1]:null}function b4(t,e){if(t.indexOf)return t.indexOf(e);for(var r=0,n=t.length;re.maxStringLength){var r=t.length-e.maxStringLength,n="... "+r+" more character"+(r>1?"s":"");return S4(LT.call(t,0,e.maxStringLength),e)+n}var i=Ine[e.quoteStyle||"single"];i.lastIndex=0;var s=Ro.call(Ro.call(t,i,"\\$1"),/[\x00-\x1f]/g,Zne);return y4(s,"single",e)}function Zne(t){var e=t.charCodeAt(0),r={8:"b",9:"t",10:"n",12:"f",13:"r"}[e];return r?"\\"+r:"\\x"+(e<16?"0":"")+Tne.call(e.toString(16))}function Op(t){return"Object("+t+")"}function CT(t){return t+" { ? }"}function m4(t,e,r,n){var i=n?DT(r,n):Qi.call(r,", ");return t+" ("+e+") {"+i+"}"}function Bne(t){for(var e=0;e=0)return!1;return!0}function Gne(t,e){var r;if(t.indent===" ")r=" ";else if(typeof t.indent=="number"&&t.indent>0)r=Qi.call(Array(t.indent+1)," ");else return null;return{base:r,prev:Qi.call(Array(e+1),r)}}function DT(t,e){if(t.length===0)return"";var r=` +`+e.prev+e.base;return r+Qi.call(t,","+r)+` +`+e.prev}function lv(t,e){var r=MT(t),n=[];if(r){n.length=t.length;for(var i=0;i{"use strict";var Wne=Np(),Vne=ba(),fv=function(t,e,r){for(var n=t,i;(i=n.next)!=null;n=i)if(i.key===e)return n.next=i.next,r||(i.next=t.next,t.next=i),i},Kne=function(t,e){if(t){var r=fv(t,e);return r&&r.value}},Jne=function(t,e,r){var n=fv(t,e);n?n.value=r:t.next={key:e,next:t.next,value:r}},Xne=function(t,e){return t?!!fv(t,e):!1},Yne=function(t,e){if(t)return fv(t,e,!0)};w4.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new Vne("Side channel does not contain "+Wne(n))},delete:function(n){var i=e&&e.next,s=Yne(e,n);return s&&i&&i===s&&(e=void 0),!!s},get:function(n){return Kne(e,n)},has:function(n){return Xne(e,n)},set:function(n,i){e||(e={next:void 0}),Jne(e,n,i)}};return r}});var UT=$((fMe,k4)=>{"use strict";k4.exports=Object});var $4=$((mMe,T4)=>{"use strict";T4.exports=Error});var R4=$((hMe,I4)=>{"use strict";I4.exports=EvalError});var C4=$((gMe,O4)=>{"use strict";O4.exports=RangeError});var A4=$((vMe,P4)=>{"use strict";P4.exports=ReferenceError});var M4=$((yMe,N4)=>{"use strict";N4.exports=SyntaxError});var j4=$((_Me,D4)=>{"use strict";D4.exports=URIError});var L4=$((bMe,z4)=>{"use strict";z4.exports=Math.abs});var F4=$((SMe,U4)=>{"use strict";U4.exports=Math.floor});var H4=$((xMe,q4)=>{"use strict";q4.exports=Math.max});var B4=$((wMe,Z4)=>{"use strict";Z4.exports=Math.min});var W4=$((EMe,G4)=>{"use strict";G4.exports=Math.pow});var K4=$((kMe,V4)=>{"use strict";V4.exports=Math.round});var X4=$((TMe,J4)=>{"use strict";J4.exports=Number.isNaN||function(e){return e!==e}});var Q4=$(($Me,Y4)=>{"use strict";var Qne=X4();Y4.exports=function(e){return Qne(e)||e===0?e:e<0?-1:1}});var tL=$((IMe,eL)=>{"use strict";eL.exports=Object.getOwnPropertyDescriptor});var FT=$((RMe,rL)=>{"use strict";var mv=tL();if(mv)try{mv([],"length")}catch{mv=null}rL.exports=mv});var iL=$((OMe,nL)=>{"use strict";var hv=Object.defineProperty||!1;if(hv)try{hv({},"a",{value:1})}catch{hv=!1}nL.exports=hv});var oL=$((CMe,sL)=>{"use strict";sL.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var e={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var i=42;e[r]=i;for(var s in e)return!1;if(typeof Object.keys=="function"&&Object.keys(e).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(e).length!==0)return!1;var o=Object.getOwnPropertySymbols(e);if(o.length!==1||o[0]!==r||!Object.prototype.propertyIsEnumerable.call(e,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var a=Object.getOwnPropertyDescriptor(e,r);if(a.value!==i||a.enumerable!==!0)return!1}return!0}});var uL=$((PMe,cL)=>{"use strict";var aL=typeof Symbol<"u"&&Symbol,eie=oL();cL.exports=function(){return typeof aL!="function"||typeof Symbol!="function"||typeof aL("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:eie()}});var qT=$((AMe,lL)=>{"use strict";lL.exports=typeof Reflect<"u"&&Reflect.getPrototypeOf||null});var HT=$((NMe,dL)=>{"use strict";var tie=UT();dL.exports=tie.getPrototypeOf||null});var mL=$((MMe,fL)=>{"use strict";var rie="Function.prototype.bind called on incompatible ",nie=Object.prototype.toString,iie=Math.max,sie="[object Function]",pL=function(e,r){for(var n=[],i=0;i{"use strict";var cie=mL();hL.exports=Function.prototype.bind||cie});var gv=$((jMe,gL)=>{"use strict";gL.exports=Function.prototype.call});var ZT=$((zMe,vL)=>{"use strict";vL.exports=Function.prototype.apply});var _L=$((LMe,yL)=>{"use strict";yL.exports=typeof Reflect<"u"&&Reflect&&Reflect.apply});var SL=$((UMe,bL)=>{"use strict";var uie=Mp(),lie=ZT(),die=gv(),pie=_L();bL.exports=pie||uie.call(die,lie)});var BT=$((FMe,xL)=>{"use strict";var fie=Mp(),mie=ba(),hie=gv(),gie=SL();xL.exports=function(e){if(e.length<1||typeof e[0]!="function")throw new mie("a function is required");return gie(fie,hie,e)}});var IL=$((qMe,$L)=>{"use strict";var vie=BT(),wL=FT(),kL;try{kL=[].__proto__===Array.prototype}catch(t){if(!t||typeof t!="object"||!("code"in t)||t.code!=="ERR_PROTO_ACCESS")throw t}var GT=!!kL&&wL&&wL(Object.prototype,"__proto__"),TL=Object,EL=TL.getPrototypeOf;$L.exports=GT&&typeof GT.get=="function"?vie([GT.get]):typeof EL=="function"?function(e){return EL(e==null?e:TL(e))}:!1});var AL=$((HMe,PL)=>{"use strict";var RL=qT(),OL=HT(),CL=IL();PL.exports=RL?function(e){return RL(e)}:OL?function(e){if(!e||typeof e!="object"&&typeof e!="function")throw new TypeError("getProto: not an object");return OL(e)}:CL?function(e){return CL(e)}:null});var ML=$((ZMe,NL)=>{"use strict";var yie=Function.prototype.call,_ie=Object.prototype.hasOwnProperty,bie=Mp();NL.exports=bie.call(yie,_ie)});var _v=$((BMe,FL)=>{"use strict";var Je,Sie=UT(),xie=$4(),wie=R4(),Eie=C4(),kie=A4(),mu=M4(),fu=ba(),Tie=j4(),$ie=L4(),Iie=F4(),Rie=H4(),Oie=B4(),Cie=W4(),Pie=K4(),Aie=Q4(),LL=Function,WT=function(t){try{return LL('"use strict"; return ('+t+").constructor;")()}catch{}},Dp=FT(),Nie=iL(),VT=function(){throw new fu},Mie=Dp?(function(){try{return arguments.callee,VT}catch{try{return Dp(arguments,"callee").get}catch{return VT}}})():VT,du=uL()(),hr=AL(),Die=HT(),jie=qT(),UL=ZT(),jp=gv(),pu={},zie=typeof Uint8Array>"u"||!hr?Je:hr(Uint8Array),xa={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?Je:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?Je:ArrayBuffer,"%ArrayIteratorPrototype%":du&&hr?hr([][Symbol.iterator]()):Je,"%AsyncFromSyncIteratorPrototype%":Je,"%AsyncFunction%":pu,"%AsyncGenerator%":pu,"%AsyncGeneratorFunction%":pu,"%AsyncIteratorPrototype%":pu,"%Atomics%":typeof Atomics>"u"?Je:Atomics,"%BigInt%":typeof BigInt>"u"?Je:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?Je:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?Je:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?Je:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":xie,"%eval%":eval,"%EvalError%":wie,"%Float16Array%":typeof Float16Array>"u"?Je:Float16Array,"%Float32Array%":typeof Float32Array>"u"?Je:Float32Array,"%Float64Array%":typeof Float64Array>"u"?Je:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?Je:FinalizationRegistry,"%Function%":LL,"%GeneratorFunction%":pu,"%Int8Array%":typeof Int8Array>"u"?Je:Int8Array,"%Int16Array%":typeof Int16Array>"u"?Je:Int16Array,"%Int32Array%":typeof Int32Array>"u"?Je:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":du&&hr?hr(hr([][Symbol.iterator]())):Je,"%JSON%":typeof JSON=="object"?JSON:Je,"%Map%":typeof Map>"u"?Je:Map,"%MapIteratorPrototype%":typeof Map>"u"||!du||!hr?Je:hr(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Sie,"%Object.getOwnPropertyDescriptor%":Dp,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?Je:Promise,"%Proxy%":typeof Proxy>"u"?Je:Proxy,"%RangeError%":Eie,"%ReferenceError%":kie,"%Reflect%":typeof Reflect>"u"?Je:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?Je:Set,"%SetIteratorPrototype%":typeof Set>"u"||!du||!hr?Je:hr(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?Je:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":du&&hr?hr(""[Symbol.iterator]()):Je,"%Symbol%":du?Symbol:Je,"%SyntaxError%":mu,"%ThrowTypeError%":Mie,"%TypedArray%":zie,"%TypeError%":fu,"%Uint8Array%":typeof Uint8Array>"u"?Je:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?Je:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?Je:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?Je:Uint32Array,"%URIError%":Tie,"%WeakMap%":typeof WeakMap>"u"?Je:WeakMap,"%WeakRef%":typeof WeakRef>"u"?Je:WeakRef,"%WeakSet%":typeof WeakSet>"u"?Je:WeakSet,"%Function.prototype.call%":jp,"%Function.prototype.apply%":UL,"%Object.defineProperty%":Nie,"%Object.getPrototypeOf%":Die,"%Math.abs%":$ie,"%Math.floor%":Iie,"%Math.max%":Rie,"%Math.min%":Oie,"%Math.pow%":Cie,"%Math.round%":Pie,"%Math.sign%":Aie,"%Reflect.getPrototypeOf%":jie};if(hr)try{null.error}catch(t){DL=hr(hr(t)),xa["%Error.prototype%"]=DL}var DL,Lie=function t(e){var r;if(e==="%AsyncFunction%")r=WT("async function () {}");else if(e==="%GeneratorFunction%")r=WT("function* () {}");else if(e==="%AsyncGeneratorFunction%")r=WT("async function* () {}");else if(e==="%AsyncGenerator%"){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(e==="%AsyncIteratorPrototype%"){var i=t("%AsyncGenerator%");i&&hr&&(r=hr(i.prototype))}return xa[e]=r,r},jL={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},zp=Mp(),vv=ML(),Uie=zp.call(jp,Array.prototype.concat),Fie=zp.call(UL,Array.prototype.splice),zL=zp.call(jp,String.prototype.replace),yv=zp.call(jp,String.prototype.slice),qie=zp.call(jp,RegExp.prototype.exec),Hie=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,Zie=/\\(\\)?/g,Bie=function(e){var r=yv(e,0,1),n=yv(e,-1);if(r==="%"&&n!=="%")throw new mu("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new mu("invalid intrinsic syntax, expected opening `%`");var i=[];return zL(e,Hie,function(s,o,a,c){i[i.length]=a?zL(c,Zie,"$1"):o||s}),i},Gie=function(e,r){var n=e,i;if(vv(jL,n)&&(i=jL[n],n="%"+i[0]+"%"),vv(xa,n)){var s=xa[n];if(s===pu&&(s=Lie(n)),typeof s>"u"&&!r)throw new fu("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:i,name:n,value:s}}throw new mu("intrinsic "+e+" does not exist!")};FL.exports=function(e,r){if(typeof e!="string"||e.length===0)throw new fu("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new fu('"allowMissing" argument must be a boolean');if(qie(/^%?[^%]*%?$/,e)===null)throw new mu("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=Bie(e),i=n.length>0?n[0]:"",s=Gie("%"+i+"%",r),o=s.name,a=s.value,c=!1,u=s.alias;u&&(i=u[0],Fie(n,Uie([0,1],u)));for(var l=1,d=!0;l=n.length){var h=Dp(a,p);d=!!h,d&&"get"in h&&!("originalValue"in h.get)?a=h.get:a=a[p]}else d=vv(a,p),a=a[p];d&&!c&&(xa[o]=a)}}return a}});var KT=$((GMe,ZL)=>{"use strict";var qL=_v(),HL=BT(),Wie=HL([qL("%String.prototype.indexOf%")]);ZL.exports=function(e,r){var n=qL(e,!!r);return typeof n=="function"&&Wie(e,".prototype.")>-1?HL([n]):n}});var JT=$((WMe,GL)=>{"use strict";var Vie=_v(),Lp=KT(),Kie=Np(),Jie=ba(),BL=Vie("%Map%",!0),Xie=Lp("Map.prototype.get",!0),Yie=Lp("Map.prototype.set",!0),Qie=Lp("Map.prototype.has",!0),ese=Lp("Map.prototype.delete",!0),tse=Lp("Map.prototype.size",!0);GL.exports=!!BL&&function(){var e,r={assert:function(n){if(!r.has(n))throw new Jie("Side channel does not contain "+Kie(n))},delete:function(n){if(e){var i=ese(e,n);return tse(e)===0&&(e=void 0),i}return!1},get:function(n){if(e)return Xie(e,n)},has:function(n){return e?Qie(e,n):!1},set:function(n,i){e||(e=new BL),Yie(e,n,i)}};return r}});var VL=$((VMe,WL)=>{"use strict";var rse=_v(),Sv=KT(),nse=Np(),bv=JT(),ise=ba(),hu=rse("%WeakMap%",!0),sse=Sv("WeakMap.prototype.get",!0),ose=Sv("WeakMap.prototype.set",!0),ase=Sv("WeakMap.prototype.has",!0),cse=Sv("WeakMap.prototype.delete",!0);WL.exports=hu?function(){var e,r,n={assert:function(i){if(!n.has(i))throw new ise("Side channel does not contain "+nse(i))},delete:function(i){if(hu&&i&&(typeof i=="object"||typeof i=="function")){if(e)return cse(e,i)}else if(bv&&r)return r.delete(i);return!1},get:function(i){return hu&&i&&(typeof i=="object"||typeof i=="function")&&e?sse(e,i):r&&r.get(i)},has:function(i){return hu&&i&&(typeof i=="object"||typeof i=="function")&&e?ase(e,i):!!r&&r.has(i)},set:function(i,s){hu&&i&&(typeof i=="object"||typeof i=="function")?(e||(e=new hu),ose(e,i,s)):bv&&(r||(r=bv()),r.set(i,s))}};return n}:bv});var XT=$((KMe,KL)=>{"use strict";var use=ba(),lse=Np(),dse=E4(),pse=JT(),fse=VL(),mse=fse||pse||dse;KL.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new use("Side channel does not contain "+lse(n))},delete:function(n){return!!e&&e.delete(n)},get:function(n){return e&&e.get(n)},has:function(n){return!!e&&e.has(n)},set:function(n,i){e||(e=mse()),e.set(n,i)}};return r}});var xv=$((JMe,JL)=>{"use strict";var hse=String.prototype.replace,gse=/%20/g,YT={RFC1738:"RFC1738",RFC3986:"RFC3986"};JL.exports={default:YT.RFC3986,formatters:{RFC1738:function(t){return hse.call(t,gse,"+")},RFC3986:function(t){return String(t)}},RFC1738:YT.RFC1738,RFC3986:YT.RFC3986}});var r$=$((XMe,XL)=>{"use strict";var vse=xv(),yse=XT(),QT=Object.prototype.hasOwnProperty,wa=Array.isArray,wv=yse(),gu=function(e,r){return wv.set(e,r),e},Ea=function(e){return wv.has(e)},Up=function(e){return wv.get(e)},t$=function(e,r){wv.set(e,r)},es=(function(){for(var t=[],e=0;e<256;++e)t[t.length]="%"+((e<16?"0":"")+e.toString(16)).toUpperCase();return t})(),_se=function(e){for(;e.length>1;){var r=e.pop(),n=r.obj[r.prop];if(wa(n)){for(var i=[],s=0;sn.arrayLimit)return gu(Fp(e.concat(r),n),i);e[i]=r}else if(e&&typeof e=="object")if(Ea(e)){var s=Up(e)+1;e[s]=r,t$(e,s)}else(n&&(n.plainObjects||n.allowPrototypes)||!QT.call(Object.prototype,r))&&(e[r]=!0);else return[e,r];return e}if(!e||typeof e!="object"){if(Ea(r)){for(var o=Object.keys(r),a=n&&n.plainObjects?{__proto__:null,0:e}:{0:e},c=0;cn.arrayLimit?gu(Fp(l,n),l.length-1):l}var d=e;return wa(e)&&!wa(r)&&(d=Fp(e,n)),wa(e)&&wa(r)?(r.forEach(function(p,f){if(QT.call(e,f)){var m=e[f];m&&typeof m=="object"&&p&&typeof p=="object"?e[f]=t(m,p,n):e[e.length]=p}else e[f]=p}),e):Object.keys(r).reduce(function(p,f){var m=r[f];if(QT.call(p,f)?p[f]=t(p[f],m,n):p[f]=m,Ea(r)&&!Ea(p)&&gu(p,Up(r)),Ea(p)){var h=parseInt(f,10);String(h)===f&&h>=0&&h>Up(p)&&t$(p,h)}return p},d)},Sse=function(e,r){return Object.keys(r).reduce(function(n,i){return n[i]=r[i],n},e)},xse=function(t,e,r){var n=t.replace(/\+/g," ");if(r==="iso-8859-1")return n.replace(/%[0-9a-f]{2}/gi,unescape);try{return decodeURIComponent(n)}catch{return n}},e$=1024,wse=function(e,r,n,i,s){if(e.length===0)return e;var o=e;if(typeof e=="symbol"?o=Symbol.prototype.toString.call(e):typeof e!="string"&&(o=String(e)),n==="iso-8859-1")return escape(o).replace(/%u[0-9a-f]{4}/gi,function(f){return"%26%23"+parseInt(f.slice(2),16)+"%3B"});for(var a="",c=0;c=e$?o.slice(c,c+e$):o,l=[],d=0;d=48&&p<=57||p>=65&&p<=90||p>=97&&p<=122||s===vse.RFC1738&&(p===40||p===41)){l[l.length]=u.charAt(d);continue}if(p<128){l[l.length]=es[p];continue}if(p<2048){l[l.length]=es[192|p>>6]+es[128|p&63];continue}if(p<55296||p>=57344){l[l.length]=es[224|p>>12]+es[128|p>>6&63]+es[128|p&63];continue}d+=1,p=65536+((p&1023)<<10|u.charCodeAt(d)&1023),l[l.length]=es[240|p>>18]+es[128|p>>12&63]+es[128|p>>6&63]+es[128|p&63]}a+=l.join("")}return a},Ese=function(e){for(var r=[{obj:{o:e},prop:"o"}],n=[],i=0;in?gu(Fp(o,{plainObjects:i}),o.length-1):o},Ise=function(e,r){if(wa(e)){for(var n=[],i=0;i{"use strict";var QL=XT(),Ev=r$(),qp=xv(),Rse=Object.prototype.hasOwnProperty,eU={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,r){return e+"["+r+"]"},repeat:function(e){return e}},ts=Array.isArray,Ose=Array.prototype.push,tU=function(t,e){Ose.apply(t,ts(e)?e:[e])},Cse=Date.prototype.toISOString,YL=qp.default,or={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,commaRoundTrip:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:Ev.encode,encodeValuesOnly:!1,filter:void 0,format:YL,formatter:qp.formatters[YL],indices:!1,serializeDate:function(e){return Cse.call(e)},skipNulls:!1,strictNullHandling:!1},Pse=function(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="symbol"||typeof e=="bigint"},n$={},Ase=function t(e,r,n,i,s,o,a,c,u,l,d,p,f,m,h,g,v,y){for(var b=e,S=y,x=0,w=!1;(S=S.get(n$))!==void 0&&!w;){var E=S.get(e);if(x+=1,typeof E<"u"){if(E===x)throw new RangeError("Cyclic object value");w=!0}typeof S.get(n$)>"u"&&(x=0)}if(typeof l=="function"?b=l(r,b):b instanceof Date?b=f(b):n==="comma"&&ts(b)&&(b=Ev.maybeMap(b,function(K){return K instanceof Date?f(K):K})),b===null){if(o)return u&&!g?u(r,or.encoder,v,"key",m):r;b=""}if(Pse(b)||Ev.isBuffer(b)){if(u){var T=g?r:u(r,or.encoder,v,"key",m);return[h(T)+"="+h(u(b,or.encoder,v,"value",m))]}return[h(r)+"="+h(String(b))]}var I=[];if(typeof b>"u")return I;var P;if(n==="comma"&&ts(b))g&&u&&(b=Ev.maybeMap(b,u)),P=[{value:b.length>0?b.join(",")||null:void 0}];else if(ts(l))P=l;else{var N=Object.keys(b);P=d?N.sort(d):N}var L=c?String(r).replace(/\./g,"%2E"):String(r),G=i&&ts(b)&&b.length===1?L+"[]":L;if(s&&ts(b)&&b.length===0)return G+"[]";for(var j=0;j"u"?e.encodeDotInKeys===!0?!0:or.allowDots:!!e.allowDots;return{addQueryPrefix:typeof e.addQueryPrefix=="boolean"?e.addQueryPrefix:or.addQueryPrefix,allowDots:a,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:or.allowEmptyArrays,arrayFormat:o,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:or.charsetSentinel,commaRoundTrip:!!e.commaRoundTrip,delimiter:typeof e.delimiter>"u"?or.delimiter:e.delimiter,encode:typeof e.encode=="boolean"?e.encode:or.encode,encodeDotInKeys:typeof e.encodeDotInKeys=="boolean"?e.encodeDotInKeys:or.encodeDotInKeys,encoder:typeof e.encoder=="function"?e.encoder:or.encoder,encodeValuesOnly:typeof e.encodeValuesOnly=="boolean"?e.encodeValuesOnly:or.encodeValuesOnly,filter:s,format:n,formatter:i,serializeDate:typeof e.serializeDate=="function"?e.serializeDate:or.serializeDate,skipNulls:typeof e.skipNulls=="boolean"?e.skipNulls:or.skipNulls,sort:typeof e.sort=="function"?e.sort:null,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:or.strictNullHandling}};rU.exports=function(t,e){var r=t,n=Nse(e),i,s;typeof n.filter=="function"?(s=n.filter,r=s("",r)):ts(n.filter)&&(s=n.filter,i=s);var o=[];if(typeof r!="object"||r===null)return"";var a=eU[n.arrayFormat],c=a==="comma"&&n.commaRoundTrip;i||(i=Object.keys(r)),n.sort&&i.sort(n.sort);for(var u=QL(),l=0;l0?m+f:""}});var oU=$((QMe,sU)=>{"use strict";var rs=r$(),kv=Object.prototype.hasOwnProperty,i$=Array.isArray,Kt={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:rs.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},Mse=function(t){return t.replace(/&#(\d+);/g,function(e,r){return String.fromCharCode(parseInt(r,10))})},iU=function(t,e,r){if(t&&typeof t=="string"&&e.comma&&t.indexOf(",")>-1)return t.split(",");if(e.throwOnLimitExceeded&&r>=e.arrayLimit)throw new RangeError("Array limit exceeded. Only "+e.arrayLimit+" element"+(e.arrayLimit===1?"":"s")+" allowed in an array.");return t},Dse="utf8=%26%2310003%3B",jse="utf8=%E2%9C%93",zse=function(e,r){var n={__proto__:null},i=r.ignoreQueryPrefix?e.replace(/^\?/,""):e;i=i.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var s=r.parameterLimit===1/0?void 0:r.parameterLimit,o=i.split(r.delimiter,r.throwOnLimitExceeded?s+1:s);if(r.throwOnLimitExceeded&&o.length>s)throw new RangeError("Parameter limit exceeded. Only "+s+" parameter"+(s===1?"":"s")+" allowed.");var a=-1,c,u=r.charset;if(r.charsetSentinel)for(c=0;c-1&&(m=i$(m)?[m]:m),r.comma&&i$(m)&&m.length>r.arrayLimit){if(r.throwOnLimitExceeded)throw new RangeError("Array limit exceeded. Only "+r.arrayLimit+" element"+(r.arrayLimit===1?"":"s")+" allowed in an array.");m=rs.combine([],m,r.arrayLimit,r.plainObjects)}if(f!==null){var h=kv.call(n,f);h&&r.duplicates==="combine"?n[f]=rs.combine(n[f],m,r.arrayLimit,r.plainObjects):(!h||r.duplicates==="last")&&(n[f]=m)}}return n},Lse=function(t,e,r,n){var i=0;if(t.length>0&&t[t.length-1]==="[]"){var s=t.slice(0,-1).join("");i=Array.isArray(e)&&e[s]?e[s].length:0}for(var o=n?e:iU(e,r,i),a=t.length-1;a>=0;--a){var c,u=t[a];if(u==="[]"&&r.parseArrays)rs.isOverflow(o)?c=o:c=r.allowEmptyArrays&&(o===""||r.strictNullHandling&&o===null)?[]:rs.combine([],o,r.arrayLimit,r.plainObjects);else{c=r.plainObjects?{__proto__:null}:{};var l=u.charAt(0)==="["&&u.charAt(u.length-1)==="]"?u.slice(1,-1):u,d=r.decodeDotInKeys?l.replace(/%2E/g,"."):l,p=parseInt(d,10),f=!isNaN(p)&&u!==d&&String(p)===d&&p>=0&&r.parseArrays;if(!r.parseArrays&&d==="")c={0:o};else if(f&&p"u"?Kt.charset:e.charset,n=typeof e.duplicates>"u"?Kt.duplicates:e.duplicates;if(n!=="combine"&&n!=="first"&&n!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");var i=typeof e.allowDots>"u"?e.decodeDotInKeys===!0?!0:Kt.allowDots:!!e.allowDots;return{allowDots:i,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:Kt.allowEmptyArrays,allowPrototypes:typeof e.allowPrototypes=="boolean"?e.allowPrototypes:Kt.allowPrototypes,allowSparse:typeof e.allowSparse=="boolean"?e.allowSparse:Kt.allowSparse,arrayLimit:typeof e.arrayLimit=="number"?e.arrayLimit:Kt.arrayLimit,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:Kt.charsetSentinel,comma:typeof e.comma=="boolean"?e.comma:Kt.comma,decodeDotInKeys:typeof e.decodeDotInKeys=="boolean"?e.decodeDotInKeys:Kt.decodeDotInKeys,decoder:typeof e.decoder=="function"?e.decoder:Kt.decoder,delimiter:typeof e.delimiter=="string"||rs.isRegExp(e.delimiter)?e.delimiter:Kt.delimiter,depth:typeof e.depth=="number"||e.depth===!1?+e.depth:Kt.depth,duplicates:n,ignoreQueryPrefix:e.ignoreQueryPrefix===!0,interpretNumericEntities:typeof e.interpretNumericEntities=="boolean"?e.interpretNumericEntities:Kt.interpretNumericEntities,parameterLimit:typeof e.parameterLimit=="number"?e.parameterLimit:Kt.parameterLimit,parseArrays:e.parseArrays!==!1,plainObjects:typeof e.plainObjects=="boolean"?e.plainObjects:Kt.plainObjects,strictDepth:typeof e.strictDepth=="boolean"?!!e.strictDepth:Kt.strictDepth,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:Kt.strictNullHandling,throwOnLimitExceeded:typeof e.throwOnLimitExceeded=="boolean"?e.throwOnLimitExceeded:!1}};sU.exports=function(t,e){var r=qse(e);if(t===""||t===null||typeof t>"u")return r.plainObjects?{__proto__:null}:{};for(var n=typeof t=="string"?zse(t,r):t,i=r.plainObjects?{__proto__:null}:{},s=Object.keys(n),o=0;o{"use strict";var Hse=nU(),Zse=oU(),Bse=xv();aU.exports={formats:Bse,parse:Zse,stringify:Hse}});var fU=$((tDe,pU)=>{"use strict";var Gse=eu(),Wse=hp(),$v=ma(),_i=Xn()("body-parser:urlencoded"),Vse=Ji()("body-parser"),Kse=$p(),uU=uu();pU.exports=Jse;var cU=Object.create(null);function Jse(t){var e=t||{};e.extended===void 0&&Vse("undefined extended: provide extended option");var r=e.extended!==!1,n=e.inflate!==!1,i=typeof e.limit!="number"?Gse.parse(e.limit||"100kb"):e.limit,s=e.type||"application/x-www-form-urlencoded",o=e.verify||!1;if(o!==!1&&typeof o!="function")throw new TypeError("option verify must be function");var a=r?Xse(e):Qse(e),c=typeof s!="function"?eoe(s):s;function u(l){return l.length?a(l):{}}return function(d,p,f){if(d._body){_i("body already parsed"),f();return}if(d.body=d.body||{},!uU.hasBody(d)){_i("skip empty body"),f();return}if(_i("content-type %j",d.headers["content-type"]),!c(d)){_i("skip parsing"),f();return}var m=Yse(d)||"utf-8";if(m!=="utf-8"){_i("invalid charset"),f($v(415,'unsupported charset "'+m.toUpperCase()+'"',{charset:m,type:"charset.unsupported"}));return}Kse(d,p,f,u,_i,{debug:_i,encoding:m,inflate:n,limit:i,verify:o})}}function Xse(t){var e=t.parameterLimit!==void 0?t.parameterLimit:1e3,r=t.depth!==void 0?t.depth:32,n=dU("qs");if(isNaN(e)||e<1)throw new TypeError("option parameterLimit must be a positive number");if(isNaN(r)||r<0)throw new TypeError("option depth must be a zero or a positive number");return isFinite(e)&&(e=e|0),function(s){var o=lU(s,e);if(o===void 0)throw _i("too many parameters"),$v(413,"too many parameters",{type:"parameters.too.many"});var a=Math.max(100,o);_i("parse extended urlencoding");try{return n(s,{allowPrototypes:!0,arrayLimit:a,depth:r,strictDepth:!0,parameterLimit:e})}catch(c){throw c instanceof RangeError?$v(400,"The input exceeded the depth",{type:"querystring.parse.rangeError"}):c}}}function Yse(t){try{return(Wse.parse(t).parameters.charset||"").toLowerCase()}catch{return}}function lU(t,e){for(var r=0,n=0;(n=t.indexOf("&",n))!==-1;)if(r++,n++,r===e)return;return r}function dU(t){var e=cU[t];if(e!==void 0)return e.parse;switch(t){case"qs":e=Tv();break;case"querystring":e=require("querystring");break}return cU[t]=e,e.parse}function Qse(t){var e=t.parameterLimit!==void 0?t.parameterLimit:1e3,r=dU("querystring");if(isNaN(e)||e<1)throw new TypeError("option parameterLimit must be a positive number");return isFinite(e)&&(e=e|0),function(i){var s=lU(i,e);if(s===void 0)throw _i("too many parameters"),$v(413,"too many parameters",{type:"parameters.too.many"});return _i("parse urlencoding"),r(i,void 0,void 0,{maxKeys:e})}}function eoe(t){return function(r){return!!uU(r,t)}}});var gU=$((Co,hU)=>{"use strict";var toe=Ji()("body-parser"),mU=Object.create(null);Co=hU.exports=toe.function(roe,"bodyParser: use individual json/urlencoded middlewares");Object.defineProperty(Co,"json",{configurable:!0,enumerable:!0,get:Iv("json")});Object.defineProperty(Co,"raw",{configurable:!0,enumerable:!0,get:Iv("raw")});Object.defineProperty(Co,"text",{configurable:!0,enumerable:!0,get:Iv("text")});Object.defineProperty(Co,"urlencoded",{configurable:!0,enumerable:!0,get:Iv("urlencoded")});function roe(t){var e=Object.create(t||null,{type:{configurable:!0,enumerable:!0,value:void 0,writable:!0}}),r=Co.urlencoded(e),n=Co.json(e);return function(s,o,a){n(s,o,function(c){if(c)return a(c);r(s,o,a)})}}function Iv(t){return function(){return noe(t)}}function noe(t){var e=mU[t];if(e!==void 0)return e;switch(t){case"json":e=Wz();break;case"raw":e=Jz();break;case"text":e=Qz();break;case"urlencoded":e=fU();break}return mU[t]=e}});var yU=$((rDe,vU)=>{"use strict";vU.exports=soe;var ioe=Object.prototype.hasOwnProperty;function soe(t,e,r){if(!t)throw new TypeError("argument dest is required");if(!e)throw new TypeError("argument src is required");return r===void 0&&(r=!0),Object.getOwnPropertyNames(e).forEach(function(i){if(!(!r&&ioe.call(t,i))){var s=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,s)}}),t}});var Hp=$((nDe,_U)=>{"use strict";_U.exports=uoe;var ooe=/(?:[^\x21\x23-\x3B\x3D\x3F-\x5F\x61-\x7A\x7C\x7E]|%(?:[^0-9A-Fa-f]|[0-9A-Fa-f][^0-9A-Fa-f]|$))+/g,aoe=/(^|[^\uD800-\uDBFF])[\uDC00-\uDFFF]|[\uD800-\uDBFF]([^\uDC00-\uDFFF]|$)/g,coe="$1\uFFFD$2";function uoe(t){return String(t).replace(aoe,coe).replace(ooe,encodeURI)}});var Zp=$((iDe,bU)=>{"use strict";var loe=/["'&<>]/;bU.exports=doe;function doe(t){var e=""+t,r=loe.exec(e);if(!r)return e;var n,i="",s=0,o=0;for(s=r.index;s{"use strict";var xU=require("url"),SU=xU.parse,Rv=xU.Url;s$.exports=wU;s$.exports.original=poe;function wU(t){var e=t.url;if(e!==void 0){var r=t._parsedUrl;return kU(e,r)?r:(r=EU(e),r._raw=e,t._parsedUrl=r)}}function poe(t){var e=t.originalUrl;if(typeof e!="string")return wU(t);var r=t._parsedOriginalUrl;return kU(e,r)?r:(r=EU(e),r._raw=e,t._parsedOriginalUrl=r)}function EU(t){if(typeof t!="string"||t.charCodeAt(0)!==47)return SU(t);for(var e=t,r=null,n=null,i=1;i{"use strict";var o$=Xn()("finalhandler"),foe=Hp(),moe=Zp(),$U=Tp(),hoe=vu(),IU=vp(),goe=cv(),voe=/\x20{2}/g,yoe=/\n/g,_oe=typeof setImmediate=="function"?setImmediate:function(t){process.nextTick(t.bind.apply(t,arguments))},boe=$U.isFinished;function Soe(t){var e=moe(t).replace(yoe,"
").replace(voe,"  ");return` + + + +Error + + +
`+e+`
+ + +`}RU.exports=xoe;function xoe(t,e,r){var n=r||{},i=n.env||process.env.NODE_ENV||"development",s=n.onerror;return function(o){var a,c,u;if(!o&&TU(e)){o$("cannot 404 after headers sent");return}if(o?(u=koe(o),u===void 0?u=$oe(e):a=woe(o),c=Eoe(o,u,i)):(u=404,c="Cannot "+t.method+" "+foe(Toe(t))),o$("default %s",u),o&&s&&_oe(s,o,t,e),TU(e)){o$("cannot %d after headers sent",u),t.socket&&t.socket.destroy();return}Ioe(t,e,u,a,c)}}function woe(t){if(!(!t.headers||typeof t.headers!="object")){for(var e=Object.create(null),r=Object.keys(t.headers),n=0;n=400&&t.status<600)return t.status;if(typeof t.statusCode=="number"&&t.statusCode>=400&&t.statusCode<600)return t.statusCode}function Toe(t){try{return hoe.original(t).pathname}catch{return"resource"}}function $oe(t){var e=t.statusCode;return(typeof e!="number"||e<400||e>599)&&(e=500),e}function TU(t){return typeof t.headersSent!="boolean"?!!t._header:t.headersSent}function Ioe(t,e,r,n,i){function s(){var o=Soe(i);if(e.statusCode=r,t.httpVersionMajor<2&&(e.statusMessage=IU.message[r]),e.removeHeader("Content-Encoding"),e.removeHeader("Content-Language"),e.removeHeader("Content-Range"),Roe(e,n),e.setHeader("Content-Security-Policy","default-src 'none'"),e.setHeader("X-Content-Type-Options","nosniff"),e.setHeader("Content-Type","text/html; charset=utf-8"),e.setHeader("Content-Length",Buffer.byteLength(o,"utf8")),t.method==="HEAD"){e.end();return}e.end(o,"utf8")}if(boe(t)){s();return}goe(t),$U(t,s),t.resume()}function Roe(t,e){if(e)for(var r=Object.keys(e),n=0;n{"use strict";AU.exports=Ooe;function CU(t,e,r){for(var n=0;n0&&Array.isArray(i)?CU(i,e,r-1):e.push(i)}return e}function PU(t,e){for(var r=0;r{DU.exports=MU;var NU=/\\.|\((?:\?<(.*?)>)?(?!\?)/g;function MU(t,e,r){r=r||{},e=e||[];var n=r.strict,i=r.end!==!1,s=r.sensitive?"":"i",o=r.lookahead!==!1,a=0,c=e.length,u=0,l=0,d=0,p="",f;if(t instanceof RegExp){for(;f=NU.exec(t.source);)f[0][0]!=="\\"&&e.push({name:f[1]||l++,optional:!1,offset:f.index});return t}if(Array.isArray(t))return t=t.map(function(m){return MU(m,e,r).source}),new RegExp(t.join("|"),s);if(typeof t!="string")throw new TypeError("path must be a string, array of strings, or regular expression");for(t=t.replace(/\\.|(\/)?(\.)?:(\w+)(\(.*?\))?(\*)?(\?)?|[.*]|\/\(/g,function(m,h,g,v,y,b,S,x){if(m[0]==="\\")return p+=m,d+=2,m;if(m===".")return p+="\\.",a+=1,d+=1,"\\.";if(h||g?p="":p+=t.slice(d,x),d=x+m.length,m==="*")return a+=3,"(.*)";if(m==="/(")return p+="/",a+=2,"/(?:";h=h||"",g=g?"\\.":"",S=S||"",y=y?y.replace(/\\.|\*/,function(E){return E==="*"?"(.*)":E}):p?"((?:(?!/|"+p+").)+?)":"([^/"+g+"]+?)",e.push({name:v,optional:!!S,offset:x+a});var w="(?:"+g+h+y+(b?"((?:[/"+g+"].+?)?)":"")+")"+S;return a+=w.length-m.length,w});f=NU.exec(t);)f[0][0]!=="\\"&&((c+u===e.length||e[c+u].offset>f.index)&&e.splice(c+u,0,{name:l++,optional:!1,offset:f.index}),u++);return t+=n?"":t[t.length-1]==="/"?"?":"/?",i?t+="$":t[t.length-1]!=="/"&&(t+=o?"(?=/|$)":"(?:/|$)"),new RegExp("^"+t,s)}});var a$=$((uDe,LU)=>{"use strict";var Coe=jU(),Poe=Xn()("express:router:layer"),Aoe=Object.prototype.hasOwnProperty;LU.exports=yu;function yu(t,e,r){if(!(this instanceof yu))return new yu(t,e,r);Poe("new %o",t);var n=e||{};this.handle=r,this.name=r.name||"",this.params=void 0,this.path=void 0,this.regexp=Coe(t,this.keys=[],n),this.regexp.fast_star=t==="*",this.regexp.fast_slash=t==="/"&&n.end===!1}yu.prototype.handle_error=function(e,r,n,i){var s=this.handle;if(s.length!==4)return i(e);try{s(e,r,n,i)}catch(o){i(o)}};yu.prototype.handle_request=function(e,r,n){var i=this.handle;if(i.length>3)return n();try{i(e,r,n)}catch(s){n(s)}};yu.prototype.match=function(e){var r;if(e!=null){if(this.regexp.fast_slash)return this.params={},this.path="",!0;if(this.regexp.fast_star)return this.params={0:zU(e)},this.path=e,!0;r=this.regexp.exec(e)}if(!r)return this.params=void 0,this.path=void 0,!1;this.params={},this.path=r[0];for(var n=this.keys,i=this.params,s=1;s{"use strict";var UU=require("http");FU.exports=Noe()||Moe();function Noe(){return UU.METHODS&&UU.METHODS.map(function(e){return e.toLowerCase()})}function Moe(){return["get","post","put","head","delete","options","trace","copy","lock","mkcol","move","purge","propfind","proppatch","unlock","report","mkactivity","checkout","merge","m-search","notify","subscribe","unsubscribe","patch","search","connect"]}});var c$=$((dDe,WU)=>{"use strict";var qU=Xn()("express:router:route"),HU=Bp(),ZU=a$(),Doe=Ov(),BU=Array.prototype.slice,GU=Object.prototype.toString;WU.exports=_u;function _u(t){this.path=t,this.stack=[],qU("new %o",t),this.methods={}}_u.prototype._handles_method=function(e){if(this.methods._all)return!0;var r=typeof e=="string"?e.toLowerCase():e;return r==="head"&&!this.methods.head&&(r="get"),!!this.methods[r]};_u.prototype._options=function(){var e=Object.keys(this.methods);this.methods.get&&!this.methods.head&&e.push("head");for(var r=0;r100)return setImmediate(c,u);var l=s[i++];if(!l)return n(u);l.method&&l.method!==a?c(u):u?l.handle_error(u,e,r,c):l.handle_request(e,r,c),o=0}};_u.prototype.all=function(){for(var e=HU(BU.call(arguments)),r=0;r{VU=KU.exports=function(t,e){if(t&&e)for(var r in e)t[r]=e[r];return t}});var l$=$((pDe,QU)=>{"use strict";var joe=c$(),XU=a$(),zoe=Ov(),u$=Gp(),Cv=Xn()("express:router"),JU=Ji()("express"),Loe=Bp(),Uoe=vu(),Foe=gp(),qoe=/^\[object (\S+)\]$/,YU=Array.prototype.slice,Hoe=Object.prototype.toString,ka=QU.exports=function(t){var e=t||{};function r(n,i,s){r.handle(n,i,s)}return Foe(r,ka),r.params={},r._params=[],r.caseSensitive=e.caseSensitive,r.mergeParams=e.mergeParams,r.strict=e.strict,r.stack=[],r};ka.param=function(e,r){if(typeof e=="function"){JU("router.param(fn): Refactor to use path params"),this._params.push(e);return}var n=this._params,i=n.length,s;e[0]===":"&&(JU("router.param("+JSON.stringify(e)+", fn): Use router.param("+JSON.stringify(e.slice(1))+", fn) instead"),e=e.slice(1));for(var o=0;o=p.length){setImmediate(h,b);return}if(++u>100)return setImmediate(g,y);var S=Boe(e);if(S==null)return h(b);for(var x,w,E;w!==!0&&s=a.length)return s();if(l=0,d=a[c++],u=d.name,p=n.params[u],f=o[u],m=r[u],p===void 0||!f)return h();if(m&&(m.match===p||m.error&&m.error!=="route"))return n.params[u]=m.value,h(m.error);r[u]=m={error:null,match:p,value:p},g()}function g(v){var y=f[l++];if(m.value=n.params[d.name],v){m.error=v,h(v);return}if(!y)return h();try{y(n,i,g,p,d.name)}catch(b){g(b)}}h()};ka.use=function(e){var r=0,n="/";if(typeof e!="function"){for(var i=e;Array.isArray(i)&&i.length!==0;)i=i[0];typeof i!="function"&&(r=1,n=e)}var s=Loe(YU.call(arguments,r));if(s.length===0)throw new TypeError("Router.use() requires a middleware function");for(var o=0;o");var a=new XU(n,{sensitive:this.caseSensitive,strict:!1,end:!1},e);a.route=void 0,this.stack.push(a)}return this};ka.route=function(e){var r=new joe(e),n=new XU(e,{sensitive:this.caseSensitive,strict:this.strict,end:!0},r.dispatch.bind(r));return n.route=r,this.stack.push(n),r};zoe.concat("all").forEach(function(t){ka[t]=function(e){var r=this.route(e);return r[t].apply(r,YU.call(arguments,1)),this}});function Zoe(t,e){for(var r=0;r=0;n--)t[n+i]=t[n],n{"use strict";var e2=gp();t2.init=function(t){return function(r,n,i){t.enabled("x-powered-by")&&n.setHeader("X-Powered-By","Express"),r.res=n,n.req=r,r.next=i,e2(r,t.request),e2(n,t.response),n.locals=n.locals||Object.create(null),i()}}});var d$=$((mDe,n2)=>{"use strict";var Qoe=Gp(),eae=vu(),tae=Tv();n2.exports=function(e){var r=Qoe({},e),n=tae.parse;return typeof e=="function"&&(n=e,r=void 0),r!==void 0&&r.allowPrototypes===void 0&&(r.allowPrototypes=!0),function(s,o,a){if(!s.query){var c=eae(s).query;s.query=n(c,r)}a()}}});var c2=$((hDe,a2)=>{"use strict";var Pv=Xn()("express:view"),Wp=require("path"),rae=require("fs"),nae=Wp.dirname,o2=Wp.basename,iae=Wp.extname,i2=Wp.join,sae=Wp.resolve;a2.exports=Av;function Av(t,e){var r=e||{};if(this.defaultEngine=r.defaultEngine,this.ext=iae(t),this.name=t,this.root=r.root,!this.ext&&!this.defaultEngine)throw new Error("No default engine was specified and no extension was provided.");var n=t;if(this.ext||(this.ext=this.defaultEngine[0]!=="."?"."+this.defaultEngine:this.defaultEngine,n+=this.ext),!r.engines[this.ext]){var i=this.ext.slice(1);Pv('require "%s"',i);var s=require(i).__express;if(typeof s!="function")throw new Error('Module "'+i+'" does not provide a view engine.');r.engines[this.ext]=s}this.engine=r.engines[this.ext],this.path=this.lookup(n)}Av.prototype.lookup=function(e){var r,n=[].concat(this.root);Pv('lookup "%s"',e);for(var i=0;i{var Nv=require("buffer"),ns=Nv.Buffer;function u2(t,e){for(var r in t)e[r]=t[r]}ns.from&&ns.alloc&&ns.allocUnsafe&&ns.allocUnsafeSlow?l2.exports=Nv:(u2(Nv,p$),p$.Buffer=Ta);function Ta(t,e,r){return ns(t,e,r)}Ta.prototype=Object.create(ns.prototype);u2(ns,Ta);Ta.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return ns(t,e,r)};Ta.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var n=ns(t);return e!==void 0?typeof r=="string"?n.fill(e,r):n.fill(e):n.fill(0),n};Ta.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return ns(t)};Ta.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return Nv.SlowBuffer(t)}});var m$=$((gDe,f$)=>{"use strict";f$.exports=gae;f$.exports.parse=bae;var d2=require("path").basename,oae=Mv().Buffer,aae=/[\x00-\x20"'()*,/:;<=>?@[\\\]{}\x7f]/g,cae=/%[0-9A-Fa-f]{2}/,uae=/%([0-9A-Fa-f]{2})/g,f2=/[^\x20-\x7e\xa0-\xff]/g,lae=/\\([\u0000-\u007f])/g,dae=/([\\"])/g,p2=/;[\x09\x20]*([!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*=[\x09\x20]*("(?:[\x20!\x23-\x5b\x5d-\x7e\x80-\xff]|\\[\x20-\x7e])*"|[!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*/g,pae=/^[\x20-\x7e\x80-\xff]+$/,fae=/^[!#$%&'*+.0-9A-Z^_`a-z|~-]+$/,mae=/^([A-Za-z0-9!#$%&+\-^_`{}~]+)'(?:[A-Za-z]{2,3}(?:-[A-Za-z]{3}){0,3}|[A-Za-z]{4,8}|)'((?:%[0-9A-Fa-f]{2}|[A-Za-z0-9!#$&+.^_`|~-])+)$/,hae=/^([!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*(?:$|;)/;function gae(t,e){var r=e||{},n=r.type||"attachment",i=vae(t,r.fallback);return yae(new h2(n,i))}function vae(t,e){if(t!==void 0){var r={};if(typeof t!="string")throw new TypeError("filename must be a string");if(e===void 0&&(e=!0),typeof e!="string"&&typeof e!="boolean")throw new TypeError("fallback must be a string or boolean");if(typeof e=="string"&&f2.test(e))throw new TypeError("fallback must be ISO-8859-1 string");var n=d2(t),i=pae.test(n),s=typeof e!="string"?e&&m2(n):d2(e),o=typeof s=="string"&&s!==n;return(o||!i||cae.test(n))&&(r["filename*"]=n),(i||o)&&(r.filename=o?s:n),r}}function yae(t){var e=t.parameters,r=t.type;if(!r||typeof r!="string"||!fae.test(r))throw new TypeError("invalid type");var n=String(r).toLowerCase();if(e&&typeof e=="object")for(var i,s=Object.keys(e).sort(),o=0;o{"use strict";y2.exports=$ae;var kae=require("crypto"),g2=require("fs").Stats,v2=Object.prototype.toString;function Tae(t){if(t.length===0)return'"0-2jmj7l5rSw0yVb/vlWAYkK/YBwk"';var e=kae.createHash("sha1").update(t,"utf8").digest("base64").substring(0,27),r=typeof t=="string"?Buffer.byteLength(t,"utf8"):t.length;return'"'+r.toString(16)+"-"+e+'"'}function $ae(t,e){if(t==null)throw new TypeError("argument entity is required");var r=Iae(t),n=e&&typeof e.weak=="boolean"?e.weak:r;if(!r&&typeof t!="string"&&!Buffer.isBuffer(t))throw new TypeError("argument entity must be string, Buffer, or fs.Stats");var i=r?Rae(t):Tae(t);return n?"W/"+i:i}function Iae(t){return typeof g2=="function"&&t instanceof g2?!0:t&&typeof t=="object"&&"ctime"in t&&v2.call(t.ctime)==="[object Date]"&&"mtime"in t&&v2.call(t.mtime)==="[object Date]"&&"ino"in t&&typeof t.ino=="number"&&"size"in t&&typeof t.size=="number"}function Rae(t){var e=t.mtime.getTime().toString(16),r=t.size.toString(16);return'"'+r+"-"+e+'"'}});var g$=$((yDe,b2)=>{"use strict";var Oae=/(?:^|,)\s*?no-cache\s*?(?:,|$)/;b2.exports=Cae;function Cae(t,e){var r=t["if-modified-since"],n=t["if-none-match"];if(!r&&!n)return!1;var i=t["cache-control"];if(i&&Oae.test(i))return!1;if(n&&n!=="*"){var s=e.etag;if(!s)return!1;for(var o=!0,a=Pae(n),c=0;c{Aae.exports={"application/andrew-inset":["ez"],"application/applixware":["aw"],"application/atom+xml":["atom"],"application/atomcat+xml":["atomcat"],"application/atomsvc+xml":["atomsvc"],"application/bdoc":["bdoc"],"application/ccxml+xml":["ccxml"],"application/cdmi-capability":["cdmia"],"application/cdmi-container":["cdmic"],"application/cdmi-domain":["cdmid"],"application/cdmi-object":["cdmio"],"application/cdmi-queue":["cdmiq"],"application/cu-seeme":["cu"],"application/dash+xml":["mpd"],"application/davmount+xml":["davmount"],"application/docbook+xml":["dbk"],"application/dssc+der":["dssc"],"application/dssc+xml":["xdssc"],"application/ecmascript":["ecma"],"application/emma+xml":["emma"],"application/epub+zip":["epub"],"application/exi":["exi"],"application/font-tdpfr":["pfr"],"application/font-woff":[],"application/font-woff2":[],"application/geo+json":["geojson"],"application/gml+xml":["gml"],"application/gpx+xml":["gpx"],"application/gxf":["gxf"],"application/gzip":["gz"],"application/hyperstudio":["stk"],"application/inkml+xml":["ink","inkml"],"application/ipfix":["ipfix"],"application/java-archive":["jar","war","ear"],"application/java-serialized-object":["ser"],"application/java-vm":["class"],"application/javascript":["js","mjs"],"application/json":["json","map"],"application/json5":["json5"],"application/jsonml+json":["jsonml"],"application/ld+json":["jsonld"],"application/lost+xml":["lostxml"],"application/mac-binhex40":["hqx"],"application/mac-compactpro":["cpt"],"application/mads+xml":["mads"],"application/manifest+json":["webmanifest"],"application/marc":["mrc"],"application/marcxml+xml":["mrcx"],"application/mathematica":["ma","nb","mb"],"application/mathml+xml":["mathml"],"application/mbox":["mbox"],"application/mediaservercontrol+xml":["mscml"],"application/metalink+xml":["metalink"],"application/metalink4+xml":["meta4"],"application/mets+xml":["mets"],"application/mods+xml":["mods"],"application/mp21":["m21","mp21"],"application/mp4":["mp4s","m4p"],"application/msword":["doc","dot"],"application/mxf":["mxf"],"application/octet-stream":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"],"application/oda":["oda"],"application/oebps-package+xml":["opf"],"application/ogg":["ogx"],"application/omdoc+xml":["omdoc"],"application/onenote":["onetoc","onetoc2","onetmp","onepkg"],"application/oxps":["oxps"],"application/patch-ops-error+xml":["xer"],"application/pdf":["pdf"],"application/pgp-encrypted":["pgp"],"application/pgp-signature":["asc","sig"],"application/pics-rules":["prf"],"application/pkcs10":["p10"],"application/pkcs7-mime":["p7m","p7c"],"application/pkcs7-signature":["p7s"],"application/pkcs8":["p8"],"application/pkix-attr-cert":["ac"],"application/pkix-cert":["cer"],"application/pkix-crl":["crl"],"application/pkix-pkipath":["pkipath"],"application/pkixcmp":["pki"],"application/pls+xml":["pls"],"application/postscript":["ai","eps","ps"],"application/prs.cww":["cww"],"application/pskc+xml":["pskcxml"],"application/raml+yaml":["raml"],"application/rdf+xml":["rdf"],"application/reginfo+xml":["rif"],"application/relax-ng-compact-syntax":["rnc"],"application/resource-lists+xml":["rl"],"application/resource-lists-diff+xml":["rld"],"application/rls-services+xml":["rs"],"application/rpki-ghostbusters":["gbr"],"application/rpki-manifest":["mft"],"application/rpki-roa":["roa"],"application/rsd+xml":["rsd"],"application/rss+xml":["rss"],"application/rtf":["rtf"],"application/sbml+xml":["sbml"],"application/scvp-cv-request":["scq"],"application/scvp-cv-response":["scs"],"application/scvp-vp-request":["spq"],"application/scvp-vp-response":["spp"],"application/sdp":["sdp"],"application/set-payment-initiation":["setpay"],"application/set-registration-initiation":["setreg"],"application/shf+xml":["shf"],"application/smil+xml":["smi","smil"],"application/sparql-query":["rq"],"application/sparql-results+xml":["srx"],"application/srgs":["gram"],"application/srgs+xml":["grxml"],"application/sru+xml":["sru"],"application/ssdl+xml":["ssdl"],"application/ssml+xml":["ssml"],"application/tei+xml":["tei","teicorpus"],"application/thraud+xml":["tfi"],"application/timestamped-data":["tsd"],"application/vnd.3gpp.pic-bw-large":["plb"],"application/vnd.3gpp.pic-bw-small":["psb"],"application/vnd.3gpp.pic-bw-var":["pvb"],"application/vnd.3gpp2.tcap":["tcap"],"application/vnd.3m.post-it-notes":["pwn"],"application/vnd.accpac.simply.aso":["aso"],"application/vnd.accpac.simply.imp":["imp"],"application/vnd.acucobol":["acu"],"application/vnd.acucorp":["atc","acutc"],"application/vnd.adobe.air-application-installer-package+zip":["air"],"application/vnd.adobe.formscentral.fcdt":["fcdt"],"application/vnd.adobe.fxp":["fxp","fxpl"],"application/vnd.adobe.xdp+xml":["xdp"],"application/vnd.adobe.xfdf":["xfdf"],"application/vnd.ahead.space":["ahead"],"application/vnd.airzip.filesecure.azf":["azf"],"application/vnd.airzip.filesecure.azs":["azs"],"application/vnd.amazon.ebook":["azw"],"application/vnd.americandynamics.acc":["acc"],"application/vnd.amiga.ami":["ami"],"application/vnd.android.package-archive":["apk"],"application/vnd.anser-web-certificate-issue-initiation":["cii"],"application/vnd.anser-web-funds-transfer-initiation":["fti"],"application/vnd.antix.game-component":["atx"],"application/vnd.apple.installer+xml":["mpkg"],"application/vnd.apple.mpegurl":["m3u8"],"application/vnd.apple.pkpass":["pkpass"],"application/vnd.aristanetworks.swi":["swi"],"application/vnd.astraea-software.iota":["iota"],"application/vnd.audiograph":["aep"],"application/vnd.blueice.multipass":["mpm"],"application/vnd.bmi":["bmi"],"application/vnd.businessobjects":["rep"],"application/vnd.chemdraw+xml":["cdxml"],"application/vnd.chipnuts.karaoke-mmd":["mmd"],"application/vnd.cinderella":["cdy"],"application/vnd.claymore":["cla"],"application/vnd.cloanto.rp9":["rp9"],"application/vnd.clonk.c4group":["c4g","c4d","c4f","c4p","c4u"],"application/vnd.cluetrust.cartomobile-config":["c11amc"],"application/vnd.cluetrust.cartomobile-config-pkg":["c11amz"],"application/vnd.commonspace":["csp"],"application/vnd.contact.cmsg":["cdbcmsg"],"application/vnd.cosmocaller":["cmc"],"application/vnd.crick.clicker":["clkx"],"application/vnd.crick.clicker.keyboard":["clkk"],"application/vnd.crick.clicker.palette":["clkp"],"application/vnd.crick.clicker.template":["clkt"],"application/vnd.crick.clicker.wordbank":["clkw"],"application/vnd.criticaltools.wbs+xml":["wbs"],"application/vnd.ctc-posml":["pml"],"application/vnd.cups-ppd":["ppd"],"application/vnd.curl.car":["car"],"application/vnd.curl.pcurl":["pcurl"],"application/vnd.dart":["dart"],"application/vnd.data-vision.rdz":["rdz"],"application/vnd.dece.data":["uvf","uvvf","uvd","uvvd"],"application/vnd.dece.ttml+xml":["uvt","uvvt"],"application/vnd.dece.unspecified":["uvx","uvvx"],"application/vnd.dece.zip":["uvz","uvvz"],"application/vnd.denovo.fcselayout-link":["fe_launch"],"application/vnd.dna":["dna"],"application/vnd.dolby.mlp":["mlp"],"application/vnd.dpgraph":["dpg"],"application/vnd.dreamfactory":["dfac"],"application/vnd.ds-keypoint":["kpxx"],"application/vnd.dvb.ait":["ait"],"application/vnd.dvb.service":["svc"],"application/vnd.dynageo":["geo"],"application/vnd.ecowin.chart":["mag"],"application/vnd.enliven":["nml"],"application/vnd.epson.esf":["esf"],"application/vnd.epson.msf":["msf"],"application/vnd.epson.quickanime":["qam"],"application/vnd.epson.salt":["slt"],"application/vnd.epson.ssf":["ssf"],"application/vnd.eszigno3+xml":["es3","et3"],"application/vnd.ezpix-album":["ez2"],"application/vnd.ezpix-package":["ez3"],"application/vnd.fdf":["fdf"],"application/vnd.fdsn.mseed":["mseed"],"application/vnd.fdsn.seed":["seed","dataless"],"application/vnd.flographit":["gph"],"application/vnd.fluxtime.clip":["ftc"],"application/vnd.framemaker":["fm","frame","maker","book"],"application/vnd.frogans.fnc":["fnc"],"application/vnd.frogans.ltf":["ltf"],"application/vnd.fsc.weblaunch":["fsc"],"application/vnd.fujitsu.oasys":["oas"],"application/vnd.fujitsu.oasys2":["oa2"],"application/vnd.fujitsu.oasys3":["oa3"],"application/vnd.fujitsu.oasysgp":["fg5"],"application/vnd.fujitsu.oasysprs":["bh2"],"application/vnd.fujixerox.ddd":["ddd"],"application/vnd.fujixerox.docuworks":["xdw"],"application/vnd.fujixerox.docuworks.binder":["xbd"],"application/vnd.fuzzysheet":["fzs"],"application/vnd.genomatix.tuxedo":["txd"],"application/vnd.geogebra.file":["ggb"],"application/vnd.geogebra.tool":["ggt"],"application/vnd.geometry-explorer":["gex","gre"],"application/vnd.geonext":["gxt"],"application/vnd.geoplan":["g2w"],"application/vnd.geospace":["g3w"],"application/vnd.gmx":["gmx"],"application/vnd.google-apps.document":["gdoc"],"application/vnd.google-apps.presentation":["gslides"],"application/vnd.google-apps.spreadsheet":["gsheet"],"application/vnd.google-earth.kml+xml":["kml"],"application/vnd.google-earth.kmz":["kmz"],"application/vnd.grafeq":["gqf","gqs"],"application/vnd.groove-account":["gac"],"application/vnd.groove-help":["ghf"],"application/vnd.groove-identity-message":["gim"],"application/vnd.groove-injector":["grv"],"application/vnd.groove-tool-message":["gtm"],"application/vnd.groove-tool-template":["tpl"],"application/vnd.groove-vcard":["vcg"],"application/vnd.hal+xml":["hal"],"application/vnd.handheld-entertainment+xml":["zmm"],"application/vnd.hbci":["hbci"],"application/vnd.hhe.lesson-player":["les"],"application/vnd.hp-hpgl":["hpgl"],"application/vnd.hp-hpid":["hpid"],"application/vnd.hp-hps":["hps"],"application/vnd.hp-jlyt":["jlt"],"application/vnd.hp-pcl":["pcl"],"application/vnd.hp-pclxl":["pclxl"],"application/vnd.hydrostatix.sof-data":["sfd-hdstx"],"application/vnd.ibm.minipay":["mpy"],"application/vnd.ibm.modcap":["afp","listafp","list3820"],"application/vnd.ibm.rights-management":["irm"],"application/vnd.ibm.secure-container":["sc"],"application/vnd.iccprofile":["icc","icm"],"application/vnd.igloader":["igl"],"application/vnd.immervision-ivp":["ivp"],"application/vnd.immervision-ivu":["ivu"],"application/vnd.insors.igm":["igm"],"application/vnd.intercon.formnet":["xpw","xpx"],"application/vnd.intergeo":["i2g"],"application/vnd.intu.qbo":["qbo"],"application/vnd.intu.qfx":["qfx"],"application/vnd.ipunplugged.rcprofile":["rcprofile"],"application/vnd.irepository.package+xml":["irp"],"application/vnd.is-xpr":["xpr"],"application/vnd.isac.fcs":["fcs"],"application/vnd.jam":["jam"],"application/vnd.jcp.javame.midlet-rms":["rms"],"application/vnd.jisp":["jisp"],"application/vnd.joost.joda-archive":["joda"],"application/vnd.kahootz":["ktz","ktr"],"application/vnd.kde.karbon":["karbon"],"application/vnd.kde.kchart":["chrt"],"application/vnd.kde.kformula":["kfo"],"application/vnd.kde.kivio":["flw"],"application/vnd.kde.kontour":["kon"],"application/vnd.kde.kpresenter":["kpr","kpt"],"application/vnd.kde.kspread":["ksp"],"application/vnd.kde.kword":["kwd","kwt"],"application/vnd.kenameaapp":["htke"],"application/vnd.kidspiration":["kia"],"application/vnd.kinar":["kne","knp"],"application/vnd.koan":["skp","skd","skt","skm"],"application/vnd.kodak-descriptor":["sse"],"application/vnd.las.las+xml":["lasxml"],"application/vnd.llamagraphics.life-balance.desktop":["lbd"],"application/vnd.llamagraphics.life-balance.exchange+xml":["lbe"],"application/vnd.lotus-1-2-3":["123"],"application/vnd.lotus-approach":["apr"],"application/vnd.lotus-freelance":["pre"],"application/vnd.lotus-notes":["nsf"],"application/vnd.lotus-organizer":["org"],"application/vnd.lotus-screencam":["scm"],"application/vnd.lotus-wordpro":["lwp"],"application/vnd.macports.portpkg":["portpkg"],"application/vnd.mcd":["mcd"],"application/vnd.medcalcdata":["mc1"],"application/vnd.mediastation.cdkey":["cdkey"],"application/vnd.mfer":["mwf"],"application/vnd.mfmp":["mfm"],"application/vnd.micrografx.flo":["flo"],"application/vnd.micrografx.igx":["igx"],"application/vnd.mif":["mif"],"application/vnd.mobius.daf":["daf"],"application/vnd.mobius.dis":["dis"],"application/vnd.mobius.mbk":["mbk"],"application/vnd.mobius.mqy":["mqy"],"application/vnd.mobius.msl":["msl"],"application/vnd.mobius.plc":["plc"],"application/vnd.mobius.txf":["txf"],"application/vnd.mophun.application":["mpn"],"application/vnd.mophun.certificate":["mpc"],"application/vnd.mozilla.xul+xml":["xul"],"application/vnd.ms-artgalry":["cil"],"application/vnd.ms-cab-compressed":["cab"],"application/vnd.ms-excel":["xls","xlm","xla","xlc","xlt","xlw"],"application/vnd.ms-excel.addin.macroenabled.12":["xlam"],"application/vnd.ms-excel.sheet.binary.macroenabled.12":["xlsb"],"application/vnd.ms-excel.sheet.macroenabled.12":["xlsm"],"application/vnd.ms-excel.template.macroenabled.12":["xltm"],"application/vnd.ms-fontobject":["eot"],"application/vnd.ms-htmlhelp":["chm"],"application/vnd.ms-ims":["ims"],"application/vnd.ms-lrm":["lrm"],"application/vnd.ms-officetheme":["thmx"],"application/vnd.ms-outlook":["msg"],"application/vnd.ms-pki.seccat":["cat"],"application/vnd.ms-pki.stl":["stl"],"application/vnd.ms-powerpoint":["ppt","pps","pot"],"application/vnd.ms-powerpoint.addin.macroenabled.12":["ppam"],"application/vnd.ms-powerpoint.presentation.macroenabled.12":["pptm"],"application/vnd.ms-powerpoint.slide.macroenabled.12":["sldm"],"application/vnd.ms-powerpoint.slideshow.macroenabled.12":["ppsm"],"application/vnd.ms-powerpoint.template.macroenabled.12":["potm"],"application/vnd.ms-project":["mpp","mpt"],"application/vnd.ms-word.document.macroenabled.12":["docm"],"application/vnd.ms-word.template.macroenabled.12":["dotm"],"application/vnd.ms-works":["wps","wks","wcm","wdb"],"application/vnd.ms-wpl":["wpl"],"application/vnd.ms-xpsdocument":["xps"],"application/vnd.mseq":["mseq"],"application/vnd.musician":["mus"],"application/vnd.muvee.style":["msty"],"application/vnd.mynfc":["taglet"],"application/vnd.neurolanguage.nlu":["nlu"],"application/vnd.nitf":["ntf","nitf"],"application/vnd.noblenet-directory":["nnd"],"application/vnd.noblenet-sealer":["nns"],"application/vnd.noblenet-web":["nnw"],"application/vnd.nokia.n-gage.data":["ngdat"],"application/vnd.nokia.n-gage.symbian.install":["n-gage"],"application/vnd.nokia.radio-preset":["rpst"],"application/vnd.nokia.radio-presets":["rpss"],"application/vnd.novadigm.edm":["edm"],"application/vnd.novadigm.edx":["edx"],"application/vnd.novadigm.ext":["ext"],"application/vnd.oasis.opendocument.chart":["odc"],"application/vnd.oasis.opendocument.chart-template":["otc"],"application/vnd.oasis.opendocument.database":["odb"],"application/vnd.oasis.opendocument.formula":["odf"],"application/vnd.oasis.opendocument.formula-template":["odft"],"application/vnd.oasis.opendocument.graphics":["odg"],"application/vnd.oasis.opendocument.graphics-template":["otg"],"application/vnd.oasis.opendocument.image":["odi"],"application/vnd.oasis.opendocument.image-template":["oti"],"application/vnd.oasis.opendocument.presentation":["odp"],"application/vnd.oasis.opendocument.presentation-template":["otp"],"application/vnd.oasis.opendocument.spreadsheet":["ods"],"application/vnd.oasis.opendocument.spreadsheet-template":["ots"],"application/vnd.oasis.opendocument.text":["odt"],"application/vnd.oasis.opendocument.text-master":["odm"],"application/vnd.oasis.opendocument.text-template":["ott"],"application/vnd.oasis.opendocument.text-web":["oth"],"application/vnd.olpc-sugar":["xo"],"application/vnd.oma.dd2+xml":["dd2"],"application/vnd.openofficeorg.extension":["oxt"],"application/vnd.openxmlformats-officedocument.presentationml.presentation":["pptx"],"application/vnd.openxmlformats-officedocument.presentationml.slide":["sldx"],"application/vnd.openxmlformats-officedocument.presentationml.slideshow":["ppsx"],"application/vnd.openxmlformats-officedocument.presentationml.template":["potx"],"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":["xlsx"],"application/vnd.openxmlformats-officedocument.spreadsheetml.template":["xltx"],"application/vnd.openxmlformats-officedocument.wordprocessingml.document":["docx"],"application/vnd.openxmlformats-officedocument.wordprocessingml.template":["dotx"],"application/vnd.osgeo.mapguide.package":["mgp"],"application/vnd.osgi.dp":["dp"],"application/vnd.osgi.subsystem":["esa"],"application/vnd.palm":["pdb","pqa","oprc"],"application/vnd.pawaafile":["paw"],"application/vnd.pg.format":["str"],"application/vnd.pg.osasli":["ei6"],"application/vnd.picsel":["efif"],"application/vnd.pmi.widget":["wg"],"application/vnd.pocketlearn":["plf"],"application/vnd.powerbuilder6":["pbd"],"application/vnd.previewsystems.box":["box"],"application/vnd.proteus.magazine":["mgz"],"application/vnd.publishare-delta-tree":["qps"],"application/vnd.pvi.ptid1":["ptid"],"application/vnd.quark.quarkxpress":["qxd","qxt","qwd","qwt","qxl","qxb"],"application/vnd.realvnc.bed":["bed"],"application/vnd.recordare.musicxml":["mxl"],"application/vnd.recordare.musicxml+xml":["musicxml"],"application/vnd.rig.cryptonote":["cryptonote"],"application/vnd.rim.cod":["cod"],"application/vnd.rn-realmedia":["rm"],"application/vnd.rn-realmedia-vbr":["rmvb"],"application/vnd.route66.link66+xml":["link66"],"application/vnd.sailingtracker.track":["st"],"application/vnd.seemail":["see"],"application/vnd.sema":["sema"],"application/vnd.semd":["semd"],"application/vnd.semf":["semf"],"application/vnd.shana.informed.formdata":["ifm"],"application/vnd.shana.informed.formtemplate":["itp"],"application/vnd.shana.informed.interchange":["iif"],"application/vnd.shana.informed.package":["ipk"],"application/vnd.simtech-mindmapper":["twd","twds"],"application/vnd.smaf":["mmf"],"application/vnd.smart.teacher":["teacher"],"application/vnd.solent.sdkm+xml":["sdkm","sdkd"],"application/vnd.spotfire.dxp":["dxp"],"application/vnd.spotfire.sfs":["sfs"],"application/vnd.stardivision.calc":["sdc"],"application/vnd.stardivision.draw":["sda"],"application/vnd.stardivision.impress":["sdd"],"application/vnd.stardivision.math":["smf"],"application/vnd.stardivision.writer":["sdw","vor"],"application/vnd.stardivision.writer-global":["sgl"],"application/vnd.stepmania.package":["smzip"],"application/vnd.stepmania.stepchart":["sm"],"application/vnd.sun.wadl+xml":["wadl"],"application/vnd.sun.xml.calc":["sxc"],"application/vnd.sun.xml.calc.template":["stc"],"application/vnd.sun.xml.draw":["sxd"],"application/vnd.sun.xml.draw.template":["std"],"application/vnd.sun.xml.impress":["sxi"],"application/vnd.sun.xml.impress.template":["sti"],"application/vnd.sun.xml.math":["sxm"],"application/vnd.sun.xml.writer":["sxw"],"application/vnd.sun.xml.writer.global":["sxg"],"application/vnd.sun.xml.writer.template":["stw"],"application/vnd.sus-calendar":["sus","susp"],"application/vnd.svd":["svd"],"application/vnd.symbian.install":["sis","sisx"],"application/vnd.syncml+xml":["xsm"],"application/vnd.syncml.dm+wbxml":["bdm"],"application/vnd.syncml.dm+xml":["xdm"],"application/vnd.tao.intent-module-archive":["tao"],"application/vnd.tcpdump.pcap":["pcap","cap","dmp"],"application/vnd.tmobile-livetv":["tmo"],"application/vnd.trid.tpt":["tpt"],"application/vnd.triscape.mxs":["mxs"],"application/vnd.trueapp":["tra"],"application/vnd.ufdl":["ufd","ufdl"],"application/vnd.uiq.theme":["utz"],"application/vnd.umajin":["umj"],"application/vnd.unity":["unityweb"],"application/vnd.uoml+xml":["uoml"],"application/vnd.vcx":["vcx"],"application/vnd.visio":["vsd","vst","vss","vsw"],"application/vnd.visionary":["vis"],"application/vnd.vsf":["vsf"],"application/vnd.wap.wbxml":["wbxml"],"application/vnd.wap.wmlc":["wmlc"],"application/vnd.wap.wmlscriptc":["wmlsc"],"application/vnd.webturbo":["wtb"],"application/vnd.wolfram.player":["nbp"],"application/vnd.wordperfect":["wpd"],"application/vnd.wqd":["wqd"],"application/vnd.wt.stf":["stf"],"application/vnd.xara":["xar"],"application/vnd.xfdl":["xfdl"],"application/vnd.yamaha.hv-dic":["hvd"],"application/vnd.yamaha.hv-script":["hvs"],"application/vnd.yamaha.hv-voice":["hvp"],"application/vnd.yamaha.openscoreformat":["osf"],"application/vnd.yamaha.openscoreformat.osfpvg+xml":["osfpvg"],"application/vnd.yamaha.smaf-audio":["saf"],"application/vnd.yamaha.smaf-phrase":["spf"],"application/vnd.yellowriver-custom-menu":["cmp"],"application/vnd.zul":["zir","zirz"],"application/vnd.zzazz.deck+xml":["zaz"],"application/voicexml+xml":["vxml"],"application/wasm":["wasm"],"application/widget":["wgt"],"application/winhlp":["hlp"],"application/wsdl+xml":["wsdl"],"application/wspolicy+xml":["wspolicy"],"application/x-7z-compressed":["7z"],"application/x-abiword":["abw"],"application/x-ace-compressed":["ace"],"application/x-apple-diskimage":[],"application/x-arj":["arj"],"application/x-authorware-bin":["aab","x32","u32","vox"],"application/x-authorware-map":["aam"],"application/x-authorware-seg":["aas"],"application/x-bcpio":["bcpio"],"application/x-bdoc":[],"application/x-bittorrent":["torrent"],"application/x-blorb":["blb","blorb"],"application/x-bzip":["bz"],"application/x-bzip2":["bz2","boz"],"application/x-cbr":["cbr","cba","cbt","cbz","cb7"],"application/x-cdlink":["vcd"],"application/x-cfs-compressed":["cfs"],"application/x-chat":["chat"],"application/x-chess-pgn":["pgn"],"application/x-chrome-extension":["crx"],"application/x-cocoa":["cco"],"application/x-conference":["nsc"],"application/x-cpio":["cpio"],"application/x-csh":["csh"],"application/x-debian-package":["udeb"],"application/x-dgc-compressed":["dgc"],"application/x-director":["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"],"application/x-doom":["wad"],"application/x-dtbncx+xml":["ncx"],"application/x-dtbook+xml":["dtb"],"application/x-dtbresource+xml":["res"],"application/x-dvi":["dvi"],"application/x-envoy":["evy"],"application/x-eva":["eva"],"application/x-font-bdf":["bdf"],"application/x-font-ghostscript":["gsf"],"application/x-font-linux-psf":["psf"],"application/x-font-pcf":["pcf"],"application/x-font-snf":["snf"],"application/x-font-type1":["pfa","pfb","pfm","afm"],"application/x-freearc":["arc"],"application/x-futuresplash":["spl"],"application/x-gca-compressed":["gca"],"application/x-glulx":["ulx"],"application/x-gnumeric":["gnumeric"],"application/x-gramps-xml":["gramps"],"application/x-gtar":["gtar"],"application/x-hdf":["hdf"],"application/x-httpd-php":["php"],"application/x-install-instructions":["install"],"application/x-iso9660-image":[],"application/x-java-archive-diff":["jardiff"],"application/x-java-jnlp-file":["jnlp"],"application/x-latex":["latex"],"application/x-lua-bytecode":["luac"],"application/x-lzh-compressed":["lzh","lha"],"application/x-makeself":["run"],"application/x-mie":["mie"],"application/x-mobipocket-ebook":["prc","mobi"],"application/x-ms-application":["application"],"application/x-ms-shortcut":["lnk"],"application/x-ms-wmd":["wmd"],"application/x-ms-wmz":["wmz"],"application/x-ms-xbap":["xbap"],"application/x-msaccess":["mdb"],"application/x-msbinder":["obd"],"application/x-mscardfile":["crd"],"application/x-msclip":["clp"],"application/x-msdos-program":[],"application/x-msdownload":["com","bat"],"application/x-msmediaview":["mvb","m13","m14"],"application/x-msmetafile":["wmf","emf","emz"],"application/x-msmoney":["mny"],"application/x-mspublisher":["pub"],"application/x-msschedule":["scd"],"application/x-msterminal":["trm"],"application/x-mswrite":["wri"],"application/x-netcdf":["nc","cdf"],"application/x-ns-proxy-autoconfig":["pac"],"application/x-nzb":["nzb"],"application/x-perl":["pl","pm"],"application/x-pilot":[],"application/x-pkcs12":["p12","pfx"],"application/x-pkcs7-certificates":["p7b","spc"],"application/x-pkcs7-certreqresp":["p7r"],"application/x-rar-compressed":["rar"],"application/x-redhat-package-manager":["rpm"],"application/x-research-info-systems":["ris"],"application/x-sea":["sea"],"application/x-sh":["sh"],"application/x-shar":["shar"],"application/x-shockwave-flash":["swf"],"application/x-silverlight-app":["xap"],"application/x-sql":["sql"],"application/x-stuffit":["sit"],"application/x-stuffitx":["sitx"],"application/x-subrip":["srt"],"application/x-sv4cpio":["sv4cpio"],"application/x-sv4crc":["sv4crc"],"application/x-t3vm-image":["t3"],"application/x-tads":["gam"],"application/x-tar":["tar"],"application/x-tcl":["tcl","tk"],"application/x-tex":["tex"],"application/x-tex-tfm":["tfm"],"application/x-texinfo":["texinfo","texi"],"application/x-tgif":["obj"],"application/x-ustar":["ustar"],"application/x-virtualbox-hdd":["hdd"],"application/x-virtualbox-ova":["ova"],"application/x-virtualbox-ovf":["ovf"],"application/x-virtualbox-vbox":["vbox"],"application/x-virtualbox-vbox-extpack":["vbox-extpack"],"application/x-virtualbox-vdi":["vdi"],"application/x-virtualbox-vhd":["vhd"],"application/x-virtualbox-vmdk":["vmdk"],"application/x-wais-source":["src"],"application/x-web-app-manifest+json":["webapp"],"application/x-x509-ca-cert":["der","crt","pem"],"application/x-xfig":["fig"],"application/x-xliff+xml":["xlf"],"application/x-xpinstall":["xpi"],"application/x-xz":["xz"],"application/x-zmachine":["z1","z2","z3","z4","z5","z6","z7","z8"],"application/xaml+xml":["xaml"],"application/xcap-diff+xml":["xdf"],"application/xenc+xml":["xenc"],"application/xhtml+xml":["xhtml","xht"],"application/xml":["xml","xsl","xsd","rng"],"application/xml-dtd":["dtd"],"application/xop+xml":["xop"],"application/xproc+xml":["xpl"],"application/xslt+xml":["xslt"],"application/xspf+xml":["xspf"],"application/xv+xml":["mxml","xhvml","xvml","xvm"],"application/yang":["yang"],"application/yin+xml":["yin"],"application/zip":["zip"],"audio/3gpp":[],"audio/adpcm":["adp"],"audio/basic":["au","snd"],"audio/midi":["mid","midi","kar","rmi"],"audio/mp3":[],"audio/mp4":["m4a","mp4a"],"audio/mpeg":["mpga","mp2","mp2a","mp3","m2a","m3a"],"audio/ogg":["oga","ogg","spx"],"audio/s3m":["s3m"],"audio/silk":["sil"],"audio/vnd.dece.audio":["uva","uvva"],"audio/vnd.digital-winds":["eol"],"audio/vnd.dra":["dra"],"audio/vnd.dts":["dts"],"audio/vnd.dts.hd":["dtshd"],"audio/vnd.lucent.voice":["lvp"],"audio/vnd.ms-playready.media.pya":["pya"],"audio/vnd.nuera.ecelp4800":["ecelp4800"],"audio/vnd.nuera.ecelp7470":["ecelp7470"],"audio/vnd.nuera.ecelp9600":["ecelp9600"],"audio/vnd.rip":["rip"],"audio/wav":["wav"],"audio/wave":[],"audio/webm":["weba"],"audio/x-aac":["aac"],"audio/x-aiff":["aif","aiff","aifc"],"audio/x-caf":["caf"],"audio/x-flac":["flac"],"audio/x-m4a":[],"audio/x-matroska":["mka"],"audio/x-mpegurl":["m3u"],"audio/x-ms-wax":["wax"],"audio/x-ms-wma":["wma"],"audio/x-pn-realaudio":["ram","ra"],"audio/x-pn-realaudio-plugin":["rmp"],"audio/x-realaudio":[],"audio/x-wav":[],"audio/xm":["xm"],"chemical/x-cdx":["cdx"],"chemical/x-cif":["cif"],"chemical/x-cmdf":["cmdf"],"chemical/x-cml":["cml"],"chemical/x-csml":["csml"],"chemical/x-xyz":["xyz"],"font/collection":["ttc"],"font/otf":["otf"],"font/ttf":["ttf"],"font/woff":["woff"],"font/woff2":["woff2"],"image/apng":["apng"],"image/bmp":["bmp"],"image/cgm":["cgm"],"image/g3fax":["g3"],"image/gif":["gif"],"image/ief":["ief"],"image/jp2":["jp2","jpg2"],"image/jpeg":["jpeg","jpg","jpe"],"image/jpm":["jpm"],"image/jpx":["jpx","jpf"],"image/ktx":["ktx"],"image/png":["png"],"image/prs.btif":["btif"],"image/sgi":["sgi"],"image/svg+xml":["svg","svgz"],"image/tiff":["tiff","tif"],"image/vnd.adobe.photoshop":["psd"],"image/vnd.dece.graphic":["uvi","uvvi","uvg","uvvg"],"image/vnd.djvu":["djvu","djv"],"image/vnd.dvb.subtitle":[],"image/vnd.dwg":["dwg"],"image/vnd.dxf":["dxf"],"image/vnd.fastbidsheet":["fbs"],"image/vnd.fpx":["fpx"],"image/vnd.fst":["fst"],"image/vnd.fujixerox.edmics-mmr":["mmr"],"image/vnd.fujixerox.edmics-rlc":["rlc"],"image/vnd.ms-modi":["mdi"],"image/vnd.ms-photo":["wdp"],"image/vnd.net-fpx":["npx"],"image/vnd.wap.wbmp":["wbmp"],"image/vnd.xiff":["xif"],"image/webp":["webp"],"image/x-3ds":["3ds"],"image/x-cmu-raster":["ras"],"image/x-cmx":["cmx"],"image/x-freehand":["fh","fhc","fh4","fh5","fh7"],"image/x-icon":["ico"],"image/x-jng":["jng"],"image/x-mrsid-image":["sid"],"image/x-ms-bmp":[],"image/x-pcx":["pcx"],"image/x-pict":["pic","pct"],"image/x-portable-anymap":["pnm"],"image/x-portable-bitmap":["pbm"],"image/x-portable-graymap":["pgm"],"image/x-portable-pixmap":["ppm"],"image/x-rgb":["rgb"],"image/x-tga":["tga"],"image/x-xbitmap":["xbm"],"image/x-xpixmap":["xpm"],"image/x-xwindowdump":["xwd"],"message/rfc822":["eml","mime"],"model/gltf+json":["gltf"],"model/gltf-binary":["glb"],"model/iges":["igs","iges"],"model/mesh":["msh","mesh","silo"],"model/vnd.collada+xml":["dae"],"model/vnd.dwf":["dwf"],"model/vnd.gdl":["gdl"],"model/vnd.gtw":["gtw"],"model/vnd.mts":["mts"],"model/vnd.vtu":["vtu"],"model/vrml":["wrl","vrml"],"model/x3d+binary":["x3db","x3dbz"],"model/x3d+vrml":["x3dv","x3dvz"],"model/x3d+xml":["x3d","x3dz"],"text/cache-manifest":["appcache","manifest"],"text/calendar":["ics","ifb"],"text/coffeescript":["coffee","litcoffee"],"text/css":["css"],"text/csv":["csv"],"text/hjson":["hjson"],"text/html":["html","htm","shtml"],"text/jade":["jade"],"text/jsx":["jsx"],"text/less":["less"],"text/markdown":["markdown","md"],"text/mathml":["mml"],"text/n3":["n3"],"text/plain":["txt","text","conf","def","list","log","in","ini"],"text/prs.lines.tag":["dsc"],"text/richtext":["rtx"],"text/rtf":[],"text/sgml":["sgml","sgm"],"text/slim":["slim","slm"],"text/stylus":["stylus","styl"],"text/tab-separated-values":["tsv"],"text/troff":["t","tr","roff","man","me","ms"],"text/turtle":["ttl"],"text/uri-list":["uri","uris","urls"],"text/vcard":["vcard"],"text/vnd.curl":["curl"],"text/vnd.curl.dcurl":["dcurl"],"text/vnd.curl.mcurl":["mcurl"],"text/vnd.curl.scurl":["scurl"],"text/vnd.dvb.subtitle":["sub"],"text/vnd.fly":["fly"],"text/vnd.fmi.flexstor":["flx"],"text/vnd.graphviz":["gv"],"text/vnd.in3d.3dml":["3dml"],"text/vnd.in3d.spot":["spot"],"text/vnd.sun.j2me.app-descriptor":["jad"],"text/vnd.wap.wml":["wml"],"text/vnd.wap.wmlscript":["wmls"],"text/vtt":["vtt"],"text/x-asm":["s","asm"],"text/x-c":["c","cc","cxx","cpp","h","hh","dic"],"text/x-component":["htc"],"text/x-fortran":["f","for","f77","f90"],"text/x-handlebars-template":["hbs"],"text/x-java-source":["java"],"text/x-lua":["lua"],"text/x-markdown":["mkd"],"text/x-nfo":["nfo"],"text/x-opml":["opml"],"text/x-org":[],"text/x-pascal":["p","pas"],"text/x-processing":["pde"],"text/x-sass":["sass"],"text/x-scss":["scss"],"text/x-setext":["etx"],"text/x-sfv":["sfv"],"text/x-suse-ymp":["ymp"],"text/x-uuencode":["uu"],"text/x-vcalendar":["vcs"],"text/x-vcard":["vcf"],"text/xml":[],"text/yaml":["yaml","yml"],"video/3gpp":["3gp","3gpp"],"video/3gpp2":["3g2"],"video/h261":["h261"],"video/h263":["h263"],"video/h264":["h264"],"video/jpeg":["jpgv"],"video/jpm":["jpgm"],"video/mj2":["mj2","mjp2"],"video/mp2t":["ts"],"video/mp4":["mp4","mp4v","mpg4"],"video/mpeg":["mpeg","mpg","mpe","m1v","m2v"],"video/ogg":["ogv"],"video/quicktime":["qt","mov"],"video/vnd.dece.hd":["uvh","uvvh"],"video/vnd.dece.mobile":["uvm","uvvm"],"video/vnd.dece.pd":["uvp","uvvp"],"video/vnd.dece.sd":["uvs","uvvs"],"video/vnd.dece.video":["uvv","uvvv"],"video/vnd.dvb.file":["dvb"],"video/vnd.fvt":["fvt"],"video/vnd.mpegurl":["mxu","m4u"],"video/vnd.ms-playready.media.pyv":["pyv"],"video/vnd.uvvu.mp4":["uvu","uvvu"],"video/vnd.vivo":["viv"],"video/webm":["webm"],"video/x-f4v":["f4v"],"video/x-fli":["fli"],"video/x-flv":["flv"],"video/x-m4v":["m4v"],"video/x-matroska":["mkv","mk3d","mks"],"video/x-mng":["mng"],"video/x-ms-asf":["asf","asx"],"video/x-ms-vob":["vob"],"video/x-ms-wm":["wm"],"video/x-ms-wmv":["wmv"],"video/x-ms-wmx":["wmx"],"video/x-ms-wvx":["wvx"],"video/x-msvideo":["avi"],"video/x-sgi-movie":["movie"],"video/x-smv":["smv"],"x-conference/x-cooltalk":["ice"]}});var w2=$((SDe,x2)=>{var bDe=require("path"),Nae=require("fs");function Su(){this.types=Object.create(null),this.extensions=Object.create(null)}Su.prototype.define=function(t){for(var e in t){for(var r=t[e],n=0;n{var xu=1e3,wu=xu*60,Eu=wu*60,$a=Eu*24,Mae=$a*7,Dae=$a*365.25;E2.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return jae(t);if(r==="number"&&isFinite(t))return e.long?Lae(t):zae(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function jae(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*Dae;case"weeks":case"week":case"w":return r*Mae;case"days":case"day":case"d":return r*$a;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Eu;case"minutes":case"minute":case"mins":case"min":case"m":return r*wu;case"seconds":case"second":case"secs":case"sec":case"s":return r*xu;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function zae(t){var e=Math.abs(t);return e>=$a?Math.round(t/$a)+"d":e>=Eu?Math.round(t/Eu)+"h":e>=wu?Math.round(t/wu)+"m":e>=xu?Math.round(t/xu)+"s":t+"ms"}function Lae(t){var e=Math.abs(t);return e>=$a?Dv(t,e,$a,"day"):e>=Eu?Dv(t,e,Eu,"hour"):e>=wu?Dv(t,e,wu,"minute"):e>=xu?Dv(t,e,xu,"second"):t+" ms"}function Dv(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}});var v$=$((wDe,T2)=>{"use strict";T2.exports=Uae;function Uae(t,e,r){if(typeof e!="string")throw new TypeError("argument str must be a string");var n=e.indexOf("=");if(n===-1)return-2;var i=e.slice(n+1).split(","),s=[];s.type=e.slice(0,n);for(var o=0;ot-1&&(u=t-1),!(isNaN(c)||isNaN(u)||c>u||c<0)&&s.push({start:c,end:u})}return s.length<1?-1:r&&r.combine?Fae(s):s}function Fae(t){for(var e=t.map(qae).sort(Bae),r=0,n=1;ns.end+1?e[++r]=i:i.end>s.end&&(s.end=i.end,s.index=Math.min(s.index,i.index))}e.length=r+1;var o=e.sort(Zae).map(Hae);return o.type=t.type,o}function qae(t,e){return{start:t.start,end:t.end,index:e}}function Hae(t){return{start:t.start,end:t.end}}function Zae(t,e){return t.index-e.index}function Bae(t,e){return t.start-e.start}});var Uv=$((EDe,w$)=>{"use strict";var y$=ma(),Zt=Xn()("send"),Ia=Ji()("send"),Gae=Kk(),Wae=Hp(),R2=Zp(),Vae=h$(),Kae=g$(),zv=require("fs"),b$=w2(),O2=k2(),Jae=Tp(),Xae=v$(),Vp=require("path"),Yae=vp(),C2=require("stream"),Qae=require("util"),ece=Vp.extname,P2=Vp.join,_$=Vp.normalize,x$=Vp.resolve,jv=Vp.sep,tce=/^ *bytes=/,A2=3600*24*365*1e3,$2=/(?:^|[\\/])\.\.(?:[\\/]|$)/;w$.exports=rce;w$.exports.mime=b$;function rce(t,e,r){return new ft(t,e,r)}function ft(t,e,r){C2.call(this);var n=r||{};if(this.options=n,this.path=e,this.req=t,this._acceptRanges=n.acceptRanges!==void 0?!!n.acceptRanges:!0,this._cacheControl=n.cacheControl!==void 0?!!n.cacheControl:!0,this._etag=n.etag!==void 0?!!n.etag:!0,this._dotfiles=n.dotfiles!==void 0?n.dotfiles:"ignore",this._dotfiles!=="ignore"&&this._dotfiles!=="allow"&&this._dotfiles!=="deny")throw new TypeError('dotfiles option must be "allow", "deny", or "ignore"');this._hidden=!!n.hidden,n.hidden!==void 0&&Ia("hidden: use dotfiles: '"+(this._hidden?"allow":"ignore")+"' instead"),n.dotfiles===void 0&&(this._dotfiles=void 0),this._extensions=n.extensions!==void 0?S$(n.extensions,"extensions option"):[],this._immutable=n.immutable!==void 0?!!n.immutable:!1,this._index=n.index!==void 0?S$(n.index,"index option"):["index.html"],this._lastModified=n.lastModified!==void 0?!!n.lastModified:!0,this._maxage=n.maxAge||n.maxage,this._maxage=typeof this._maxage=="string"?O2(this._maxage):Number(this._maxage),this._maxage=isNaN(this._maxage)?0:Math.min(Math.max(0,this._maxage),A2),this._root=n.root?x$(n.root):null,!this._root&&n.from&&this.from(n.from)}Qae.inherits(ft,C2);ft.prototype.etag=Ia.function(function(e){return this._etag=!!e,Zt("etag %s",this._etag),this},"send.etag: pass etag as option");ft.prototype.hidden=Ia.function(function(e){return this._hidden=!!e,this._dotfiles=void 0,Zt("hidden %s",this._hidden),this},"send.hidden: use dotfiles option");ft.prototype.index=Ia.function(function(e){var r=e?S$(e,"paths argument"):[];return Zt("index %o",e),this._index=r,this},"send.index: pass index as option");ft.prototype.root=function(e){return this._root=x$(String(e)),Zt("root %s",this._root),this};ft.prototype.from=Ia.function(ft.prototype.root,"send.from: pass root as option");ft.prototype.root=Ia.function(ft.prototype.root,"send.root: pass root as option");ft.prototype.maxage=Ia.function(function(e){return this._maxage=typeof e=="string"?O2(e):Number(e),this._maxage=isNaN(this._maxage)?0:Math.min(Math.max(0,this._maxage),A2),Zt("max-age %d",this._maxage),this},"send.maxage: pass maxAge as option");ft.prototype.error=function(e,r){if(M2(this,"error"))return this.emit("error",oce(e,r));var n=this.res,i=Yae.message[e]||String(e),s=N2("Error",R2(i));nce(n),r&&r.headers&&dce(n,r.headers),n.statusCode=e,n.setHeader("Content-Type","text/html; charset=UTF-8"),n.setHeader("Content-Length",Buffer.byteLength(s)),n.setHeader("Content-Security-Policy","default-src 'none'"),n.setHeader("X-Content-Type-Options","nosniff"),n.end(s)};ft.prototype.hasTrailingSlash=function(){return this.path[this.path.length-1]==="/"};ft.prototype.isConditionalGET=function(){return this.req.headers["if-match"]||this.req.headers["if-unmodified-since"]||this.req.headers["if-none-match"]||this.req.headers["if-modified-since"]};ft.prototype.isPreconditionFailure=function(){var e=this.req,r=this.res,n=e.headers["if-match"];if(n){var i=r.getHeader("ETag");return!i||n!=="*"&&lce(n).every(function(a){return a!==i&&a!=="W/"+i&&"W/"+a!==i})}var s=Lv(e.headers["if-unmodified-since"]);if(!isNaN(s)){var o=Lv(r.getHeader("Last-Modified"));return isNaN(o)||o>s}return!1};ft.prototype.removeContentHeaderFields=function(){var e=this.res;e.removeHeader("Content-Encoding"),e.removeHeader("Content-Language"),e.removeHeader("Content-Length"),e.removeHeader("Content-Range"),e.removeHeader("Content-Type")};ft.prototype.notModified=function(){var e=this.res;Zt("not modified"),this.removeContentHeaderFields(),e.statusCode=304,e.end()};ft.prototype.headersAlreadySent=function(){var e=new Error("Can't set headers after they are sent.");Zt("headers already sent"),this.error(500,e)};ft.prototype.isCachable=function(){var e=this.res.statusCode;return e>=200&&e<300||e===304};ft.prototype.onStatError=function(e){switch(e.code){case"ENAMETOOLONG":case"ENOENT":case"ENOTDIR":this.error(404,e);break;default:this.error(500,e);break}};ft.prototype.isFresh=function(){return Kae(this.req.headers,{etag:this.res.getHeader("ETag"),"last-modified":this.res.getHeader("Last-Modified")})};ft.prototype.isRangeFresh=function(){var e=this.req.headers["if-range"];if(!e)return!0;if(e.indexOf('"')!==-1){var r=this.res.getHeader("ETag");return!!(r&&e.indexOf(r)!==-1)}var n=this.res.getHeader("Last-Modified");return Lv(n)<=Lv(e)};ft.prototype.redirect=function(e){var r=this.res;if(M2(this,"directory")){this.emit("directory",r,e);return}if(this.hasTrailingSlash()){this.error(403);return}var n=Wae(ice(this.path+"/")),i=N2("Redirecting","Redirecting to "+R2(n));r.statusCode=301,r.setHeader("Content-Type","text/html; charset=UTF-8"),r.setHeader("Content-Length",Buffer.byteLength(i)),r.setHeader("Content-Security-Policy","default-src 'none'"),r.setHeader("X-Content-Type-Options","nosniff"),r.setHeader("Location",n),r.end(i)};ft.prototype.pipe=function(e){var r=this._root;this.res=e;var n=ace(this.path);if(n===-1)return this.error(400),e;if(~n.indexOf("\0"))return this.error(400),e;var i;if(r!==null){if(n&&(n=_$("."+jv+n)),$2.test(n))return Zt('malicious path "%s"',n),this.error(403),e;i=n.split(jv),n=_$(P2(r,n))}else{if($2.test(n))return Zt('malicious path "%s"',n),this.error(403),e;i=_$(n).split(jv),n=x$(n)}if(sce(i)){var s=this._dotfiles;switch(s===void 0&&(s=i[i.length-1][0]==="."?this._hidden?"allow":"ignore":"allow"),Zt('%s dotfile "%s"',s,n),s){case"allow":break;case"deny":return this.error(403),e;default:return this.error(404),e}}return this._index.length&&this.hasTrailingSlash()?(this.sendIndex(n),e):(this.sendFile(n),e)};ft.prototype.send=function(e,r){var n=r.size,i=this.options,s={},o=this.res,a=this.req,c=a.headers.range,u=i.start||0;if(uce(o)){this.headersAlreadySent();return}if(Zt('pipe "%s"',e),this.setHeader(e,r),this.type(e),this.isConditionalGET()){if(this.isPreconditionFailure()){this.error(412);return}if(this.isCachable()&&this.isFresh()){this.notModified();return}}if(n=Math.max(0,n-u),i.end!==void 0){var l=i.end-u+1;n>l&&(n=l)}if(this._acceptRanges&&tce.test(c)){if(c=Xae(n,c,{combine:!0}),this.isRangeFresh()||(Zt("range stale"),c=-2),c===-1)return Zt("range unsatisfiable"),o.setHeader("Content-Range",I2("bytes",n)),this.error(416,{headers:{"Content-Range":o.getHeader("Content-Range")}});c!==-2&&c.length===1&&(Zt("range %j",c),o.statusCode=206,o.setHeader("Content-Range",I2("bytes",n,c[0])),u+=c[0].start,n=c[0].end-c[0].start+1)}for(var d in i)s[d]=i[d];if(s.start=u,s.end=Math.max(u,u+n-1),o.setHeader("Content-Length",n),a.method==="HEAD"){o.end();return}this.stream(e,s)};ft.prototype.sendFile=function(e){var r=0,n=this;Zt('stat "%s"',e),zv.stat(e,function(o,a){if(o&&o.code==="ENOENT"&&!ece(e)&&e[e.length-1]!==jv)return i(o);if(o)return n.onStatError(o);if(a.isDirectory())return n.redirect(e);n.emit("file",e,a),n.send(e,a)});function i(s){if(n._extensions.length<=r)return s?n.onStatError(s):n.error(404);var o=e+"."+n._extensions[r++];Zt('stat "%s"',o),zv.stat(o,function(a,c){if(a)return i(a);if(c.isDirectory())return i();n.emit("file",o,c),n.send(o,c)})}};ft.prototype.sendIndex=function(e){var r=-1,n=this;function i(s){if(++r>=n._index.length)return s?n.onStatError(s):n.error(404);var o=P2(e,n._index[r]);Zt('stat "%s"',o),zv.stat(o,function(a,c){if(a)return i(a);if(c.isDirectory())return i();n.emit("file",o,c),n.send(o,c)})}i()};ft.prototype.stream=function(e,r){var n=this,i=this.res,s=zv.createReadStream(e,r);this.emit("stream",s),s.pipe(i);function o(){Gae(s,!0)}Jae(i,o),s.on("error",function(c){o(),n.onStatError(c)}),s.on("end",function(){n.emit("end")})};ft.prototype.type=function(e){var r=this.res;if(!r.getHeader("Content-Type")){var n=b$.lookup(e);if(!n){Zt("no content-type");return}var i=b$.charsets.lookup(n);Zt("content-type %s",n),r.setHeader("Content-Type",n+(i?"; charset="+i:""))}};ft.prototype.setHeader=function(e,r){var n=this.res;if(this.emit("headers",n,e,r),this._acceptRanges&&!n.getHeader("Accept-Ranges")&&(Zt("accept ranges"),n.setHeader("Accept-Ranges","bytes")),this._cacheControl&&!n.getHeader("Cache-Control")){var i="public, max-age="+Math.floor(this._maxage/1e3);this._immutable&&(i+=", immutable"),Zt("cache-control %s",i),n.setHeader("Cache-Control",i)}if(this._lastModified&&!n.getHeader("Last-Modified")){var s=r.mtime.toUTCString();Zt("modified %s",s),n.setHeader("Last-Modified",s)}if(this._etag&&!n.getHeader("ETag")){var o=Vae(r);Zt("etag %s",o),n.setHeader("ETag",o)}};function nce(t){for(var e=cce(t),r=0;r1?"/"+t.substr(e):t}function sce(t){for(var e=0;e1&&r[0]===".")return!0}return!1}function I2(t,e,r){return t+" "+(r?r.start+"-"+r.end:"*")+"/"+e}function N2(t,e){return` + + + +`+t+` + + +
`+e+`
+ + +`}function oce(t,e){return e?e instanceof Error?y$(t,e,{expose:!1}):y$(t,e):y$(t)}function ace(t){try{return decodeURIComponent(t)}catch{return-1}}function cce(t){return typeof t.getHeaderNames!="function"?Object.keys(t._headers||{}):t.getHeaderNames()}function M2(t,e){var r=typeof t.listenerCount!="function"?t.listeners(e).length:t.listenerCount(e);return r>0}function uce(t){return typeof t.headersSent!="boolean"?!!t._header:t.headersSent}function S$(t,e){for(var r=[].concat(t||[]),n=0;n{"use strict";D2.exports=pce;function pce(t){if(!t)throw new TypeError("argument req is required");var e=mce(t.headers["x-forwarded-for"]||""),r=fce(t),n=[r].concat(e);return n}function fce(t){return t.socket?t.socket.remoteAddress:t.connection.remoteAddress}function mce(t){for(var e=t.length,r=[],n=t.length,i=t.length-1;i>=0;i--)switch(t.charCodeAt(i)){case 32:n===e&&(n=e=i);break;case 44:n!==e&&r.push(t.substring(n,e)),n=e=i;break;default:n=i;break}return n!==e&&r.push(t.substring(n,e)),r}});var L2=$((z2,Kp)=>{(function(){var t,e,r,n,i,s,o,a,c;e={},a=this,typeof Kp<"u"&&Kp!==null&&Kp.exports?Kp.exports=e:a.ipaddr=e,o=function(u,l,d,p){var f,m;if(u.length!==l.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");for(f=0;p>0;){if(m=d-p,m<0&&(m=0),u[f]>>m!==l[f]>>m)return!1;p-=d,f+=1}return!0},e.subnetMatch=function(u,l,d){var p,f,m,h,g;d==null&&(d="unicast");for(m in l)for(h=l[m],h[0]&&!(h[0]instanceof Array)&&(h=[h]),p=0,f=h.length;p=0;d=p+=-1)if(f=this.octets[d],f in g){if(h=g[f],m&&h!==0)return null;h!==8&&(m=!0),l+=h}else return null;return 32-l},u})(),r="(0?\\d+|0x[a-f0-9]+)",n={fourOctet:new RegExp("^"+r+"\\."+r+"\\."+r+"\\."+r+"$","i"),longValue:new RegExp("^"+r+"$","i")},e.IPv4.parser=function(u){var l,d,p,f,m;if(d=function(h){return h[0]==="0"&&h[1]!=="x"?parseInt(h,8):parseInt(h)},l=u.match(n.fourOctet))return(function(){var h,g,v,y;for(v=l.slice(1,6),y=[],h=0,g=v.length;h4294967295||m<0)throw new Error("ipaddr: address outside defined range");return(function(){var h,g;for(g=[],f=h=0;h<=24;f=h+=8)g.push(m>>f&255);return g})().reverse()}else return null},e.IPv6=(function(){function u(l,d){var p,f,m,h,g,v;if(l.length===16)for(this.parts=[],p=f=0;f<=14;p=f+=2)this.parts.push(l[p]<<8|l[p+1]);else if(l.length===8)this.parts=l;else throw new Error("ipaddr: ipv6 part count should be 8 or 16");for(v=this.parts,m=0,h=v.length;md&&(l=p.index,d=p[0].length);return d<0?m:m.substring(0,l)+"::"+m.substring(l+d)},u.prototype.toByteArray=function(){var l,d,p,f,m;for(l=[],m=this.parts,d=0,p=m.length;d>8),l.push(f&255);return l},u.prototype.toNormalizedString=function(){var l,d,p;return l=(function(){var f,m,h,g;for(h=this.parts,g=[],f=0,m=h.length;f>8,l&255,d>>8,d&255])},u.prototype.prefixLengthFromSubnetMask=function(){var l,d,p,f,m,h,g;for(g={0:16,32768:15,49152:14,57344:13,61440:12,63488:11,64512:10,65024:9,65280:8,65408:7,65472:6,65504:5,65520:4,65528:3,65532:2,65534:1,65535:0},l=0,m=!1,d=p=7;p>=0;d=p+=-1)if(f=this.parts[d],f in g){if(h=g[f],m&&h!==0)return null;h!==16&&(m=!0),l+=h}else return null;return 128-l},u})(),i="(?:[0-9a-f]+::?)+",c="%[0-9a-z]{1,}",s={zoneIndex:new RegExp(c,"i"),native:new RegExp("^(::)?("+i+")?([0-9a-f]+)?(::)?("+c+")?$","i"),transitional:new RegExp("^((?:"+i+")|(?:::)(?:"+i+")?)"+(r+"\\."+r+"\\."+r+"\\."+r)+("("+c+")?$"),"i")},t=function(u,l){var d,p,f,m,h,g;if(u.indexOf("::")!==u.lastIndexOf("::"))return null;for(g=(u.match(s.zoneIndex)||[])[0],g&&(g=g.substring(1),u=u.replace(/%.+$/,"")),d=0,p=-1;(p=u.indexOf(":",p+1))>=0;)d++;if(u.substr(0,2)==="::"&&d--,u.substr(-2,2)==="::"&&d--,d>l)return null;for(h=l-d,m=":";h--;)m+="0:";return u=u.replace("::",m),u[0]===":"&&(u=u.slice(1)),u[u.length-1]===":"&&(u=u.slice(0,-1)),l=(function(){var v,y,b,S;for(b=u.split(":"),S=[],v=0,y=b.length;v=0&&l<=32))return p=[this.parse(d[1]),l],Object.defineProperty(p,"toString",{value:function(){return this.join("/")}}),p;throw new Error("ipaddr: string is not formatted like an IPv4 CIDR range")},e.IPv4.subnetMaskFromPrefixLength=function(u){var l,d,p;if(u=parseInt(u),u<0||u>32)throw new Error("ipaddr: invalid IPv4 prefix length");for(p=[0,0,0,0],d=0,l=Math.floor(u/8);d=0&&l<=128))return p=[this.parse(d[1]),l],Object.defineProperty(p,"toString",{value:function(){return this.join("/")}}),p;throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range")},e.isValid=function(u){return e.IPv6.isValid(u)||e.IPv4.isValid(u)},e.parse=function(u){if(e.IPv6.isValid(u))return e.IPv6.parse(u);if(e.IPv4.isValid(u))return e.IPv4.parse(u);throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format")},e.parseCIDR=function(u){var l;try{return e.IPv6.parseCIDR(u)}catch(d){l=d;try{return e.IPv4.parseCIDR(u)}catch(p){throw l=p,new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format")}}},e.fromByteArray=function(u){var l;if(l=u.length,l===4)return new e.IPv4(u);if(l===16)return new e.IPv6(u);throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address")},e.process=function(u){var l;return l=this.parse(u),l.kind()==="ipv6"&&l.isIPv4MappedAddress()?l.toIPv4Address():l}}).call(z2)});var E$=$((TDe,Hv)=>{"use strict";Hv.exports=Sce;Hv.exports.all=q2;Hv.exports.compile=H2;var hce=j2(),F2=L2(),gce=/^[0-9]+$/,Fv=F2.isValid,qv=F2.parse,U2={linklocal:["169.254.0.0/16","fe80::/10"],loopback:["127.0.0.1/8","::1/128"],uniquelocal:["10.0.0.0/8","172.16.0.0/12","192.168.0.0/16","fc00::/7"]};function q2(t,e){var r=hce(t);if(!e)return r;typeof e!="function"&&(e=H2(e));for(var n=0;ni)throw new TypeError("invalid range on address: "+t);return[n,s]}function bce(t){var e=qv(t),r=e.kind();return r==="ipv4"?e.prefixLengthFromSubnetMask():null}function Sce(t,e){if(!t)throw new TypeError("req argument is required");if(!e)throw new TypeError("trust argument is required");var r=q2(t,e),n=r[r.length-1];return n}function xce(){return!1}function wce(t){return function(r){if(!Fv(r))return!1;for(var n=qv(r),i,s=n.kind(),o=0;o{"use strict";var Z2=Mv().Buffer,kce=m$(),B2=hp(),G2=Ji()("express"),Tce=Bp(),$ce=Uv().mime,Ice=h$(),Rce=E$(),Oce=Tv(),Cce=require("querystring");nn.etag=W2({weak:!1});nn.wetag=W2({weak:!0});nn.isAbsolute=function(t){if(t[0]==="/"||t[1]===":"&&(t[2]==="\\"||t[2]==="/")||t.substring(0,2)==="\\\\")return!0};nn.flatten=G2.function(Tce,"utils.flatten: use array-flatten npm module instead");nn.normalizeType=function(t){return~t.indexOf("/")?Pce(t):{value:$ce.lookup(t),params:{}}};nn.normalizeTypes=function(t){for(var e=[],r=0;r{"use strict";var Mce=OU(),Dce=l$(),T$=Ov(),jce=r2(),zce=d$(),Zv=Xn()("express:application"),Lce=c2(),Uce=require("http"),Fce=Po().compileETag,qce=Po().compileQueryParser,Hce=Po().compileTrust,Zce=Ji()("express"),Bce=Bp(),k$=Gp(),Gce=require("path").resolve,ku=gp(),Wce=Object.prototype.hasOwnProperty,I$=Array.prototype.slice,rr=V2=K2.exports={},$$="@@symbol:trust_proxy_default";rr.init=function(){this.cache={},this.engines={},this.settings={},this.defaultConfiguration()};rr.defaultConfiguration=function(){var e=process.env.NODE_ENV||"development";this.enable("x-powered-by"),this.set("etag","weak"),this.set("env",e),this.set("query parser","extended"),this.set("subdomain offset",2),this.set("trust proxy",!1),Object.defineProperty(this.settings,$$,{configurable:!0,value:!0}),Zv("booting in %s mode",e),this.on("mount",function(n){this.settings[$$]===!0&&typeof n.settings["trust proxy fn"]=="function"&&(delete this.settings["trust proxy"],delete this.settings["trust proxy fn"]),ku(this.request,n.request),ku(this.response,n.response),ku(this.engines,n.engines),ku(this.settings,n.settings)}),this.locals=Object.create(null),this.mountpath="/",this.locals.settings=this.settings,this.set("view",Lce),this.set("views",Gce("views")),this.set("jsonp callback name","callback"),e==="production"&&this.enable("view cache"),Object.defineProperty(this,"router",{get:function(){throw new Error(`'app.router' is deprecated! +Please see the 3.x to 4.x migration guide for details on how to update your app.`)}})};rr.lazyrouter=function(){this._router||(this._router=new Dce({caseSensitive:this.enabled("case sensitive routing"),strict:this.enabled("strict routing")}),this._router.use(zce(this.get("query parser fn"))),this._router.use(jce.init(this)))};rr.handle=function(e,r,n){var i=this._router,s=n||Mce(e,r,{env:this.get("env"),onerror:Vce.bind(this)});if(!i){Zv("no routes defined on app"),s();return}i.handle(e,r,s)};rr.use=function(e){var r=0,n="/";if(typeof e!="function"){for(var i=e;Array.isArray(i)&&i.length!==0;)i=i[0];typeof i!="function"&&(r=1,n=e)}var s=Bce(I$.call(arguments,r));if(s.length===0)throw new TypeError("app.use() requires a middleware function");this.lazyrouter();var o=this._router;return s.forEach(function(a){if(!a||!a.handle||!a.set)return o.use(n,a);Zv(".use app under %s",n),a.mountpath=n,a.parent=this,o.use(n,function(u,l,d){var p=u.app;a.handle(u,l,function(f){ku(u,p.request),ku(l,p.response),d(f)})}),a.emit("mount",this)},this),this};rr.route=function(e){return this.lazyrouter(),this._router.route(e)};rr.engine=function(e,r){if(typeof r!="function")throw new Error("callback function required");var n=e[0]!=="."?"."+e:e;return this.engines[n]=r,this};rr.param=function(e,r){if(this.lazyrouter(),Array.isArray(e)){for(var n=0;n1?'directories "'+u.root.slice(0,-1).join('", "')+'" or "'+u.root[u.root.length-1]+'"':'directory "'+u.root+'"',p=new Error('Failed to lookup view "'+e+'" in views '+d);return p.view=u,s(p)}c.cache&&(i[e]=u)}Kce(u,c,s)};rr.listen=function(){var e=Uce.createServer(this);return e.listen.apply(e,arguments)};function Vce(t){this.get("env")!=="test"&&console.error(t.stack||t.toString())}function Kce(t,e,r){try{t.render(e,r)}catch(n){r(n)}}});var e6=$((IDe,R$)=>{"use strict";R$.exports=Q2;R$.exports.preferredCharsets=Q2;var Jce=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function Xce(t){for(var e=t.split(","),r=0,n=0;r0}});var s6=$((RDe,O$)=>{"use strict";O$.exports=i6;O$.exports.preferredEncodings=i6;var rue=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function nue(t){for(var e=t.split(","),r=!1,n=1,i=0,s=0;i0}});var l6=$((ODe,C$)=>{"use strict";C$.exports=u6;C$.exports.preferredLanguages=u6;var aue=/^\s*([^\s\-;]+)(?:-([^\s;]+))?\s*(?:;(.*))?$/;function cue(t){for(var e=t.split(","),r=0,n=0;r0}});var g6=$((CDe,P$)=>{"use strict";P$.exports=m6;P$.exports.preferredMediaTypes=m6;var pue=/^\s*([^\s\/;]+)\/([^;\s]+)\s*(?:;(.*))?$/;function fue(t){for(var e=yue(t),r=0,n=0;r0)if(s.every(function(o){return e.params[o]=="*"||(e.params[o]||"").toLowerCase()==(n.params[o]||"").toLowerCase()}))i|=1;else return null;return{i:r,o:e.i,q:e.q,s:i}}function m6(t,e){var r=fue(t===void 0?"*/*":t||"");if(!e)return r.filter(p6).sort(d6).map(gue);var n=e.map(function(s,o){return mue(s,r,o)});return n.filter(p6).sort(d6).map(function(s){return e[n.indexOf(s)]})}function d6(t,e){return e.q-t.q||e.s-t.s||t.o-e.o||t.i-e.i||0}function gue(t){return t.type+"/"+t.subtype}function p6(t){return t.q>0}function h6(t){for(var e=0,r=0;(r=t.indexOf('"',r))!==-1;)e++,r++;return e}function vue(t){var e=t.indexOf("="),r,n;return e===-1?r=t:(r=t.substr(0,e),n=t.substr(e+1)),[r,n]}function yue(t){for(var e=t.split(","),r=1,n=0;r{"use strict";var bue=e6(),Sue=s6(),xue=l6(),wue=g6();A$.exports=_t;A$.exports.Negotiator=_t;function _t(t){if(!(this instanceof _t))return new _t(t);this.request=t}_t.prototype.charset=function(e){var r=this.charsets(e);return r&&r[0]};_t.prototype.charsets=function(e){return bue(this.request.headers["accept-charset"],e)};_t.prototype.encoding=function(e){var r=this.encodings(e);return r&&r[0]};_t.prototype.encodings=function(e){return Sue(this.request.headers["accept-encoding"],e)};_t.prototype.language=function(e){var r=this.languages(e);return r&&r[0]};_t.prototype.languages=function(e){return xue(this.request.headers["accept-language"],e)};_t.prototype.mediaType=function(e){var r=this.mediaTypes(e);return r&&r[0]};_t.prototype.mediaTypes=function(e){return wue(this.request.headers.accept,e)};_t.prototype.preferredCharset=_t.prototype.charset;_t.prototype.preferredCharsets=_t.prototype.charsets;_t.prototype.preferredEncoding=_t.prototype.encoding;_t.prototype.preferredEncodings=_t.prototype.encodings;_t.prototype.preferredLanguage=_t.prototype.language;_t.prototype.preferredLanguages=_t.prototype.languages;_t.prototype.preferredMediaType=_t.prototype.mediaType;_t.prototype.preferredMediaTypes=_t.prototype.mediaTypes});var _6=$((ADe,y6)=>{"use strict";var Eue=v6(),kue=$T();y6.exports=Nn;function Nn(t){if(!(this instanceof Nn))return new Nn(t);this.headers=t.headers,this.negotiator=new Eue(t)}Nn.prototype.type=Nn.prototype.types=function(t){var e=t;if(e&&!Array.isArray(e)){e=new Array(arguments.length);for(var r=0;r{"use strict";var Bv=_6(),Jp=Ji()("express"),Iue=require("net").isIP,Rue=uu(),Oue=require("http"),Cue=g$(),Pue=v$(),Aue=vu(),b6=E$(),Et=Object.create(Oue.IncomingMessage.prototype);S6.exports=Et;Et.get=Et.header=function(e){if(!e)throw new TypeError("name argument is required to req.get");if(typeof e!="string")throw new TypeError("name must be a string to req.get");var r=e.toLowerCase();switch(r){case"referer":case"referrer":return this.headers.referrer||this.headers.referer;default:return this.headers[r]}};Et.accepts=function(){var t=Bv(this);return t.types.apply(t,arguments)};Et.acceptsEncodings=function(){var t=Bv(this);return t.encodings.apply(t,arguments)};Et.acceptsEncoding=Jp.function(Et.acceptsEncodings,"req.acceptsEncoding: Use acceptsEncodings instead");Et.acceptsCharsets=function(){var t=Bv(this);return t.charsets.apply(t,arguments)};Et.acceptsCharset=Jp.function(Et.acceptsCharsets,"req.acceptsCharset: Use acceptsCharsets instead");Et.acceptsLanguages=function(){var t=Bv(this);return t.languages.apply(t,arguments)};Et.acceptsLanguage=Jp.function(Et.acceptsLanguages,"req.acceptsLanguage: Use acceptsLanguages instead");Et.range=function(e,r){var n=this.get("Range");if(n)return Pue(e,n,r)};Et.param=function(e,r){var n=this.params||{},i=this.body||{},s=this.query||{},o=arguments.length===1?"name":"name, default";return Jp("req.param("+o+"): Use req.params, req.body, or req.query instead"),n[e]!=null&&n.hasOwnProperty(e)?n[e]:i[e]!=null?i[e]:s[e]!=null?s[e]:r};Et.is=function(e){var r=e;if(!Array.isArray(e)){r=new Array(arguments.length);for(var n=0;n=200&&r<300||r===304?Cue(this.headers,{etag:e.get("ETag"),"last-modified":e.get("Last-Modified")}):!1});bi(Et,"stale",function(){return!this.fresh});bi(Et,"xhr",function(){var e=this.get("X-Requested-With")||"";return e.toLowerCase()==="xmlhttprequest"});function bi(t,e,r){Object.defineProperty(t,e,{configurable:!0,enumerable:!0,get:r})}});var k6=$(Gv=>{var E6=require("crypto");Gv.sign=function(t,e){if(typeof t!="string")throw new TypeError("Cookie value must be provided as a string.");if(e==null)throw new TypeError("Secret key must be provided.");return t+"."+E6.createHmac("sha256",e).update(t).digest("base64").replace(/\=+$/,"")};Gv.unsign=function(t,e){if(typeof t!="string")throw new TypeError("Signed cookie string must be provided.");if(e==null)throw new TypeError("Secret key must be provided.");var r=t.slice(0,t.lastIndexOf(".")),n=Gv.sign(r,e);return w6(n)==w6(t)?r:!1};function w6(t){return E6.createHash("sha1").update(t).digest("hex")}});var I6=$(N$=>{"use strict";N$.parse=Uue;N$.serialize=Fue;var Nue=Object.prototype.toString,Mue=Object.prototype.hasOwnProperty,Due=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,jue=/^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/,zue=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,Lue=/^[\u0020-\u003A\u003D-\u007E]*$/;function Uue(t,e){if(typeof t!="string")throw new TypeError("argument str must be a string");var r={},n=t.length;if(n<2)return r;var i=e&&e.decode||que,s=0,o=0,a=0;do{if(o=t.indexOf("=",s),o===-1)break;if(a=t.indexOf(";",s),a===-1)a=n;else if(o>a){s=t.lastIndexOf(";",o-1)+1;continue}var c=T6(t,s,o),u=$6(t,o,c),l=t.slice(c,u);if(!Mue.call(r,l)){var d=T6(t,o+1,a),p=$6(t,a,d);t.charCodeAt(d)===34&&t.charCodeAt(p-1)===34&&(d++,p--);var f=t.slice(d,p);r[l]=Zue(f,i)}s=a+1}while(sr;){var n=t.charCodeAt(--e);if(n!==32&&n!==9)return e+1}return r}function Fue(t,e,r){var n=r&&r.encode||encodeURIComponent;if(typeof n!="function")throw new TypeError("option encode is invalid");if(!Due.test(t))throw new TypeError("argument name is invalid");var i=n(e);if(!jue.test(i))throw new TypeError("argument val is invalid");var s=t+"="+i;if(!r)return s;if(r.maxAge!=null){var o=Math.floor(r.maxAge);if(!isFinite(o))throw new TypeError("option maxAge is invalid");s+="; Max-Age="+o}if(r.domain){if(!zue.test(r.domain))throw new TypeError("option domain is invalid");s+="; Domain="+r.domain}if(r.path){if(!Lue.test(r.path))throw new TypeError("option path is invalid");s+="; Path="+r.path}if(r.expires){var a=r.expires;if(!Hue(a)||isNaN(a.valueOf()))throw new TypeError("option expires is invalid");s+="; Expires="+a.toUTCString()}if(r.httpOnly&&(s+="; HttpOnly"),r.secure&&(s+="; Secure"),r.partitioned&&(s+="; Partitioned"),r.priority){var c=typeof r.priority=="string"?r.priority.toLowerCase():r.priority;switch(c){case"low":s+="; Priority=Low";break;case"medium":s+="; Priority=Medium";break;case"high":s+="; Priority=High";break;default:throw new TypeError("option priority is invalid")}}if(r.sameSite){var u=typeof r.sameSite=="string"?r.sameSite.toLowerCase():r.sameSite;switch(u){case!0:s+="; SameSite=Strict";break;case"lax":s+="; SameSite=Lax";break;case"strict":s+="; SameSite=Strict";break;case"none":s+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return s}function que(t){return t.indexOf("%")!==-1?decodeURIComponent(t):t}function Hue(t){return Nue.call(t)==="[object Date]"}function Zue(t,e){try{return e(t)}catch{return t}}});var D$=$((jDe,M$)=>{"use strict";M$.exports=Gue;M$.exports.append=O6;var Bue=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;function O6(t,e){if(typeof t!="string")throw new TypeError("header argument is required");if(!e)throw new TypeError("field argument is required");for(var r=Array.isArray(e)?e:R6(String(e)),n=0;n{"use strict";var Xp=Mv().Buffer,C6=m$(),Wue=ma(),_n=Ji()("express"),Vue=Hp(),Kue=Zp(),Jue=require("http"),Xue=Po().isAbsolute,Yue=Tp(),P6=require("path"),Wv=vp(),A6=Gp(),Que=k6().sign,ele=Po().normalizeType,tle=Po().normalizeTypes,rle=Po().setCharset,nle=I6(),j$=Uv(),ile=P6.extname,N6=j$.mime,sle=P6.resolve,ole=D$(),Ot=Object.create(Jue.ServerResponse.prototype);j6.exports=Ot;var ale=/;\s*charset\s*=/;Ot.status=function(e){return(typeof e=="string"||Math.floor(e)!==e)&&e>99&&e<1e3&&_n("res.status("+JSON.stringify(e)+"): use res.status("+Math.floor(e)+") instead"),this.statusCode=e,this};Ot.links=function(t){var e=this.get("Link")||"";return e&&(e+=", "),this.set("Link",e+Object.keys(t).map(function(r){return"<"+t[r]+'>; rel="'+r+'"'}).join(", "))};Ot.send=function(e){var r=e,n,i=this.req,s,o=this.app;switch(arguments.length===2&&(typeof arguments[0]!="number"&&typeof arguments[1]=="number"?(_n("res.send(body, status): Use res.status(status).send(body) instead"),this.statusCode=arguments[1]):(_n("res.send(status, body): Use res.status(status).send(body) instead"),this.statusCode=arguments[0],r=arguments[1])),typeof r=="number"&&arguments.length===1&&(this.get("Content-Type")||this.type("txt"),_n("res.send(status): Use res.sendStatus(status) instead"),this.statusCode=r,r=Wv.message[r]),typeof r){case"string":this.get("Content-Type")||this.type("html");break;case"boolean":case"number":case"object":if(r===null)r="";else if(Xp.isBuffer(r))this.get("Content-Type")||this.type("bin");else return this.json(r);break}typeof r=="string"&&(n="utf8",s=this.get("Content-Type"),typeof s=="string"&&this.set("Content-Type",rle(s,"utf-8")));var a=o.get("etag fn"),c=!this.get("ETag")&&typeof a=="function",u;r!==void 0&&(Xp.isBuffer(r)?u=r.length:!c&&r.length<1e3?u=Xp.byteLength(r,n):(r=Xp.from(r,n),n=void 0,u=r.length),this.set("Content-Length",u));var l;return c&&u!==void 0&&(l=a(r,n))&&this.set("ETag",l),i.fresh&&(this.statusCode=304),(this.statusCode===204||this.statusCode===304)&&(this.removeHeader("Content-Type"),this.removeHeader("Content-Length"),this.removeHeader("Transfer-Encoding"),r=""),this.statusCode===205&&(this.set("Content-Length","0"),this.removeHeader("Transfer-Encoding"),r=""),i.method==="HEAD"?this.end():this.end(r,n),this};Ot.json=function(e){var r=e;arguments.length===2&&(typeof arguments[1]=="number"?(_n("res.json(obj, status): Use res.status(status).json(obj) instead"),this.statusCode=arguments[1]):(_n("res.json(status, obj): Use res.status(status).json(obj) instead"),this.statusCode=arguments[0],r=arguments[1]));var n=this.app,i=n.get("json escape"),s=n.get("json replacer"),o=n.get("json spaces"),a=D6(r,s,o,i);return this.get("Content-Type")||this.set("Content-Type","application/json"),this.send(a)};Ot.jsonp=function(e){var r=e;arguments.length===2&&(typeof arguments[1]=="number"?(_n("res.jsonp(obj, status): Use res.status(status).jsonp(obj) instead"),this.statusCode=arguments[1]):(_n("res.jsonp(status, obj): Use res.status(status).jsonp(obj) instead"),this.statusCode=arguments[0],r=arguments[1]));var n=this.app,i=n.get("json escape"),s=n.get("json replacer"),o=n.get("json spaces"),a=D6(r,s,o,i),c=this.req.query[n.get("jsonp callback name")];return this.get("Content-Type")||(this.set("X-Content-Type-Options","nosniff"),this.set("Content-Type","application/json")),Array.isArray(c)&&(c=c[0]),typeof c=="string"&&c.length!==0&&(this.set("X-Content-Type-Options","nosniff"),this.set("Content-Type","text/javascript"),c=c.replace(/[^\[\]\w$.]/g,""),a===void 0?a="":typeof a=="string"&&(a=a.replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")),a="/**/ typeof "+c+" === 'function' && "+c+"("+a+");"),this.send(a)};Ot.sendStatus=function(e){var r=Wv.message[e]||String(e);return this.statusCode=e,this.type("txt"),this.send(r)};Ot.sendFile=function(e,r,n){var i=n,s=this.req,o=this,a=s.next,c=r||{};if(!e)throw new TypeError("path argument is required to res.sendFile");if(typeof e!="string")throw new TypeError("path must be a string to res.sendFile");if(typeof r=="function"&&(i=r,c={}),!c.root&&!Xue(e))throw new TypeError("path must be absolute or specify root to res.sendFile");var u=encodeURI(e),l=j$(s,u,c);M6(o,l,c,function(d){if(i)return i(d);if(d&&d.code==="EISDIR")return a();d&&d.code!=="ECONNABORTED"&&d.syscall!=="write"&&a(d)})};Ot.sendfile=function(t,e,r){var n=r,i=this.req,s=this,o=i.next,a=e||{};typeof e=="function"&&(n=e,a={});var c=j$(i,t,a);M6(s,c,a,function(u){if(n)return n(u);if(u&&u.code==="EISDIR")return o();u&&u.code!=="ECONNABORTED"&&u.syscall!=="write"&&o(u)})};Ot.sendfile=_n.function(Ot.sendfile,"res.sendfile: Use res.sendFile instead");Ot.download=function(e,r,n,i){var s=i,o=r,a=n||null;typeof r=="function"?(s=r,o=null,a=null):typeof n=="function"&&(s=n,a=null),typeof r=="object"&&(typeof n=="function"||n===void 0)&&(o=null,a=r);var c={"Content-Disposition":C6(o||e)};if(a&&a.headers)for(var u=Object.keys(a.headers),l=0;l0?e.accepts(n):!1;return this.vary("Accept"),i?(this.set("Content-Type",ele(i).value),t[i](e,this,r)):t.default?t.default(e,this,r):r(Wue(406,{types:tle(n).map(function(s){return s.value})})),this};Ot.attachment=function(e){return e&&this.type(ile(e)),this.set("Content-Disposition",C6(e)),this};Ot.append=function(e,r){var n=this.get(e),i=r;return n&&(i=Array.isArray(n)?n.concat(r):Array.isArray(r)?[n].concat(r):[n,r]),this.set(e,i)};Ot.set=Ot.header=function(e,r){if(arguments.length===2){var n=Array.isArray(r)?r.map(String):String(r);if(e.toLowerCase()==="content-type"){if(Array.isArray(n))throw new TypeError("Content-Type cannot be set to an Array");if(!ale.test(n)){var i=N6.charsets.lookup(n.split(";")[0]);i&&(n+="; charset="+i.toLowerCase())}}this.setHeader(e,n)}else for(var s in e)this.set(s,e[s]);return this};Ot.get=function(t){return this.getHeader(t)};Ot.clearCookie=function(e,r){r&&(r.maxAge&&_n('res.clearCookie: Passing "options.maxAge" is deprecated. In v5.0.0 of Express, this option will be ignored, as res.clearCookie will automatically set cookies to expire immediately. Please update your code to omit this option.'),r.expires&&_n('res.clearCookie: Passing "options.expires" is deprecated. In v5.0.0 of Express, this option will be ignored, as res.clearCookie will automatically set cookies to expire immediately. Please update your code to omit this option.'));var n=A6({expires:new Date(1),path:"/"},r);return this.cookie(e,"",n)};Ot.cookie=function(t,e,r){var n=A6({},r),i=this.req.secret,s=n.signed;if(s&&!i)throw new Error('cookieParser("secret") required for signed cookies');var o=typeof e=="object"?"j:"+JSON.stringify(e):String(e);if(s&&(o="s:"+Que(o,i)),n.maxAge!=null){var a=n.maxAge-0;isNaN(a)||(n.expires=new Date(Date.now()+a),n.maxAge=Math.floor(a/1e3))}return n.path==null&&(n.path="/"),this.append("Set-Cookie",nle.serialize(t,String(o),n)),this};Ot.location=function(e){var r;return e==="back"?(_n('res.location("back"): use res.location(req.get("Referrer") || "/") and refer to https://dub.sh/security-redirect for best practices'),r=this.req.get("Referrer")||"/"):r=String(e),this.set("Location",Vue(r))};Ot.redirect=function(e){var r=e,n,i=302;arguments.length===2&&(typeof arguments[0]=="number"?(i=arguments[0],r=arguments[1]):(_n("res.redirect(url, status): Use res.redirect(status, url) instead"),i=arguments[1])),r=this.location(r).get("Location"),this.format({text:function(){n=Wv.message[i]+". Redirecting to "+r},html:function(){var s=Kue(r);n="

"+Wv.message[i]+". Redirecting to "+s+"

"},default:function(){n=""}}),this.statusCode=i,this.set("Content-Length",Xp.byteLength(n)),this.req.method==="HEAD"?this.end():this.end(n)};Ot.vary=function(t){return!t||Array.isArray(t)&&!t.length?(_n("res.vary(): Provide a field name"),this):(ole(this,t),this)};Ot.render=function(e,r,n){var i=this.req.app,s=n,o=r||{},a=this.req,c=this;typeof r=="function"&&(s=r,o={}),o._locals=c.locals,s=s||function(u,l){if(u)return a.next(u);c.send(l)},i.render(e,o,s)};function M6(t,e,r,n){var i=!1,s;function o(){if(!i){i=!0;var f=new Error("Request aborted");f.code="ECONNABORTED",n(f)}}function a(){if(!i){i=!0;var f=new Error("EISDIR, read");f.code="EISDIR",n(f)}}function c(f){i||(i=!0,n(f))}function u(){i||(i=!0,n())}function l(){s=!1}function d(f){if(f&&f.code==="ECONNRESET")return o();if(f)return c(f);i||setImmediate(function(){if(s!==!1&&!i){o();return}i||(i=!0,n())})}function p(){s=!0}e.on("directory",a),e.on("end",u),e.on("error",c),e.on("file",l),e.on("stream",p),Yue(t,d),r.headers&&e.on("headers",function(m){for(var h=r.headers,g=Object.keys(h),v=0;v&]/g,function(s){switch(s.charCodeAt(0)){case 60:return"\\u003c";case 62:return"\\u003e";case 38:return"\\u0026";default:return s}})),i}});var U6=$((LDe,L$)=>{"use strict";var cle=Hp(),ule=Zp(),z$=vu(),lle=require("path").resolve,L6=Uv(),dle=require("url");L$.exports=ple;L$.exports.mime=L6.mime;function ple(t,e){if(!t)throw new TypeError("root path required");if(typeof t!="string")throw new TypeError("root path must be a string");var r=Object.create(e||null),n=r.fallthrough!==!1,i=r.redirect!==!1,s=r.setHeaders;if(s&&typeof s!="function")throw new TypeError("option setHeaders must be function");r.maxage=r.maxage||r.maxAge||0,r.root=lle(t);var o=i?gle():hle();return function(c,u,l){if(c.method!=="GET"&&c.method!=="HEAD"){if(n)return l();u.statusCode=405,u.setHeader("Allow","GET, HEAD"),u.setHeader("Content-Length","0"),u.end();return}var d=!n,p=z$.original(c),f=z$(c).pathname;f==="/"&&p.pathname.substr(-1)!=="/"&&(f="");var m=L6(c,f,r);m.on("directory",o),s&&m.on("headers",s),n&&m.on("file",function(){d=!0}),m.on("error",function(g){if(d||!(g.statusCode<500)){l(g);return}l()}),m.pipe(u)}}function fle(t){for(var e=0;e1?"/"+t.substr(e):t}function mle(t,e){return` + + + +`+t+` + + +
`+e+`
+ + +`}function hle(){return function(){this.error(404)}}function gle(){return function(e){if(this.hasTrailingSlash()){this.error(404);return}var r=z$.original(this.req);r.path=null,r.pathname=fle(r.pathname+"/");var n=cle(dle.format(r)),i=mle("Redirecting","Redirecting to "+ule(n));e.statusCode=301,e.setHeader("Content-Type","text/html; charset=UTF-8"),e.setHeader("Content-Length",Buffer.byteLength(i)),e.setHeader("Content-Security-Policy","default-src 'none'"),e.setHeader("X-Content-Type-Options","nosniff"),e.setHeader("Location",n),e.end(i)}}});var G6=$((bn,B6)=>{"use strict";var Vv=gU(),vle=require("events").EventEmitter,F6=yU(),q6=J2(),yle=c$(),_le=l$(),H6=x6(),Z6=z6();bn=B6.exports=ble;function ble(){var t=function(e,r,n){t.handle(e,r,n)};return F6(t,vle.prototype,!1),F6(t,q6,!1),t.request=Object.create(H6,{app:{configurable:!0,enumerable:!0,writable:!0,value:t}}),t.response=Object.create(Z6,{app:{configurable:!0,enumerable:!0,writable:!0,value:t}}),t.init(),t}bn.application=q6;bn.request=H6;bn.response=Z6;bn.Route=yle;bn.Router=_le;bn.json=Vv.json;bn.query=d$();bn.raw=Vv.raw;bn.static=U6();bn.text=Vv.text;bn.urlencoded=Vv.urlencoded;var Sle=["bodyParser","compress","cookieSession","session","logger","cookieParser","favicon","responseTime","errorHandler","timeout","methodOverride","vhost","csrf","directory","limit","multipart","staticCache"];Sle.forEach(function(t){Object.defineProperty(bn,t,{get:function(){throw new Error("Most middleware (like "+t+") is no longer bundled with Express and must be installed separately. Please see https://github.com/senchalabs/connect#middleware.")},configurable:!0})})});var Kv=$((UDe,W6)=>{"use strict";W6.exports=G6()});var Y6=$((qDe,X6)=>{"use strict";var J6=Object.getOwnPropertySymbols,xle=Object.prototype.hasOwnProperty,wle=Object.prototype.propertyIsEnumerable;function Ele(t){if(t==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}function kle(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de",Object.getOwnPropertyNames(t)[0]==="5")return!1;for(var e={},r=0;r<10;r++)e["_"+String.fromCharCode(r)]=r;var n=Object.getOwnPropertyNames(e).map(function(s){return e[s]});if(n.join("")!=="0123456789")return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(s){i[s]=s}),Object.keys(Object.assign({},i)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}X6.exports=kle()?Object.assign:function(t,e){for(var r,n=Ele(t),i,s=1;s{(function(){"use strict";var t=Y6(),e=D$(),r={origin:"*",methods:"GET,HEAD,PUT,PATCH,POST,DELETE",preflightContinue:!1,optionsSuccessStatus:204};function n(m){return typeof m=="string"||m instanceof String}function i(m,h){if(Array.isArray(h)){for(var g=0;g{"use strict"});var $u={};Fn($u,{PendingMessageStore:()=>nf});var Ule,nf,Oa=Ee(()=>{"use strict";te();Ule=6e4,nf=class{db;maxRetries;constructor(e,r=3){this.db=e,this.maxRetries=r}enqueue(e,r,n){let i=Date.now();return this.db.prepare(` + INSERT INTO pending_messages ( + session_db_id, content_session_id, message_type, + tool_name, tool_input, tool_response, cwd, + last_assistant_message, + prompt_number, status, retry_count, created_at_epoch + ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, 'pending', 0, ?) + `).run(e,r,n.type,n.tool_name||null,n.tool_input?JSON.stringify(n.tool_input):null,n.tool_response?JSON.stringify(n.tool_response):null,n.cwd||null,n.last_assistant_message||null,n.prompt_number||null,i).lastInsertRowid}claimNextMessage(e){return this.db.transaction(n=>{let i=Date.now(),s=i-Ule,a=this.db.prepare(` + UPDATE pending_messages + SET status = 'pending', started_processing_at_epoch = NULL + WHERE session_db_id = ? AND status = 'processing' + AND started_processing_at_epoch < ? + `).run(n,s);a.changes>0&&_.info("QUEUE",`SELF_HEAL | sessionDbId=${n} | recovered ${a.changes} stale processing message(s)`);let u=this.db.prepare(` + SELECT * FROM pending_messages + WHERE session_db_id = ? AND status = 'pending' + ORDER BY id ASC + LIMIT 1 + `).get(n);return u&&(this.db.prepare(` + UPDATE pending_messages + SET status = 'processing', started_processing_at_epoch = ? + WHERE id = ? + `).run(i,u.id),_.info("QUEUE",`CLAIMED | sessionDbId=${n} | messageId=${u.id} | type=${u.message_type}`,{sessionId:n})),u})(e)}confirmProcessed(e){this.db.prepare("DELETE FROM pending_messages WHERE id = ?").run(e).changes>0&&_.debug("QUEUE",`CONFIRMED | messageId=${e} | deleted from queue`)}resetStaleProcessingMessages(e=300*1e3,r){let n=Date.now()-e,i,s;return r!==void 0?(i=this.db.prepare(` + UPDATE pending_messages + SET status = 'pending', started_processing_at_epoch = NULL + WHERE status = 'processing' AND started_processing_at_epoch < ? AND session_db_id = ? + `),s=i.run(n,r)):(i=this.db.prepare(` + UPDATE pending_messages + SET status = 'pending', started_processing_at_epoch = NULL + WHERE status = 'processing' AND started_processing_at_epoch < ? + `),s=i.run(n)),s.changes>0&&_.info("QUEUE",`RESET_STALE | count=${s.changes} | thresholdMs=${e}${r!==void 0?` | sessionDbId=${r}`:""}`),s.changes}getAllPending(e){return this.db.prepare(` + SELECT * FROM pending_messages + WHERE session_db_id = ? AND status = 'pending' + ORDER BY id ASC + `).all(e)}getQueueMessages(){return this.db.prepare(` + SELECT pm.*, ss.project + FROM pending_messages pm + LEFT JOIN sdk_sessions ss ON pm.content_session_id = ss.content_session_id + WHERE pm.status IN ('pending', 'processing', 'failed') + ORDER BY + CASE pm.status + WHEN 'failed' THEN 0 + WHEN 'processing' THEN 1 + WHEN 'pending' THEN 2 + END, + pm.created_at_epoch ASC + `).all()}getStuckCount(e){let r=Date.now()-e;return this.db.prepare(` + SELECT COUNT(*) as count FROM pending_messages + WHERE status = 'processing' AND started_processing_at_epoch < ? + `).get(r).count}retryMessage(e){return this.db.prepare(` + UPDATE pending_messages + SET status = 'pending', started_processing_at_epoch = NULL + WHERE id = ? AND status IN ('pending', 'processing', 'failed') + `).run(e).changes>0}resetProcessingToPending(e){return this.db.prepare(` + UPDATE pending_messages + SET status = 'pending', started_processing_at_epoch = NULL + WHERE session_db_id = ? AND status = 'processing' + `).run(e).changes}markSessionMessagesFailed(e){let r=Date.now();return this.db.prepare(` + UPDATE pending_messages + SET status = 'failed', failed_at_epoch = ? + WHERE session_db_id = ? AND status = 'processing' + `).run(r,e).changes}markAllSessionMessagesAbandoned(e){let r=Date.now();return this.db.prepare(` + UPDATE pending_messages + SET status = 'failed', failed_at_epoch = ? + WHERE session_db_id = ? AND status IN ('pending', 'processing') + `).run(r,e).changes}abortMessage(e){return this.db.prepare("DELETE FROM pending_messages WHERE id = ?").run(e).changes>0}retryAllStuck(e){let r=Date.now()-e;return this.db.prepare(` + UPDATE pending_messages + SET status = 'pending', started_processing_at_epoch = NULL + WHERE status = 'processing' AND started_processing_at_epoch < ? + `).run(r).changes}getRecentlyProcessed(e=10,r=30){let n=Date.now()-r*60*1e3;return this.db.prepare(` + SELECT pm.*, ss.project + FROM pending_messages pm + LEFT JOIN sdk_sessions ss ON pm.content_session_id = ss.content_session_id + WHERE pm.status = 'processed' AND pm.completed_at_epoch > ? + ORDER BY pm.completed_at_epoch DESC + LIMIT ? + `).all(n,e)}markFailed(e){let r=Date.now(),n=this.db.prepare("SELECT retry_count FROM pending_messages WHERE id = ?").get(e);n&&(n.retry_count0&&_.info("QUEUE",`STUCK_RESET | hasAnyPendingWork reset ${n.changes} stuck processing message(s) older than 5 minutes`),this.db.prepare(` + SELECT COUNT(*) as count FROM pending_messages + WHERE status IN ('pending', 'processing') + `).get().count>0}getSessionsWithPendingMessages(){return this.db.prepare(` + SELECT DISTINCT session_db_id FROM pending_messages + WHERE status IN ('pending', 'processing') + `).all().map(n=>n.session_db_id)}getSessionInfoForMessage(e){let n=this.db.prepare(` + SELECT session_db_id, content_session_id FROM pending_messages WHERE id = ? + `).get(e);return n?{sessionDbId:n.session_db_id,contentSessionId:n.content_session_id}:null}clearFailed(){return this.db.prepare(` + DELETE FROM pending_messages + WHERE status = 'failed' + `).run().changes}clearAll(){return this.db.prepare(` + DELETE FROM pending_messages + WHERE status IN ('pending', 'processing', 'failed') + `).run().changes}toPendingMessage(e){return{type:e.message_type,tool_name:e.tool_name||void 0,tool_input:e.tool_input?JSON.parse(e.tool_input):void 0,tool_response:e.tool_response?JSON.parse(e.tool_response):void 0,prompt_number:e.prompt_number||void 0,cwd:e.cwd||void 0,last_assistant_message:e.last_assistant_message||void 0}}}});var CF={};Fn(CF,{ModeManager:()=>He});var af,oy,He,sn=Ee(()=>{"use strict";af=require("fs"),oy=require("path");te();It();He=class t{static instance=null;activeMode=null;modesDir;constructor(){let e=gn(),r=[(0,oy.join)(e,"modes"),(0,oy.join)(e,"..","plugin","modes")],n=r.find(i=>(0,af.existsSync)(i));this.modesDir=n||r[0]}static getInstance(){return t.instance||(t.instance=new t),t.instance}parseInheritance(e){let r=e.split("--");if(r.length===1)return{hasParent:!1,parentId:"",overrideId:""};if(r.length>2)throw new Error(`Invalid mode inheritance: ${e}. Only one level of inheritance supported (parent--override)`);return{hasParent:!0,parentId:r[0],overrideId:e}}isPlainObject(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}deepMerge(e,r){let n={...e};for(let i in r){let s=r[i],o=e[i];this.isPlainObject(s)&&this.isPlainObject(o)?n[i]=this.deepMerge(o,s):n[i]=s}return n}loadModeFile(e){let r=(0,oy.join)(this.modesDir,`${e}.json`);if(!(0,af.existsSync)(r))throw new Error(`Mode file not found: ${r}`);let n=(0,af.readFileSync)(r,"utf-8");return JSON.parse(n)}loadMode(e){let r=this.parseInheritance(e);if(!r.hasParent)try{let c=this.loadModeFile(e);return this.activeMode=c,_.debug("SYSTEM",`Loaded mode: ${c.name} (${e})`,void 0,{types:c.observation_types.map(u=>u.id),concepts:c.observation_concepts.map(u=>u.id)}),c}catch{if(_.warn("SYSTEM",`Mode file not found: ${e}, falling back to 'code'`),e==="code")throw new Error("Critical: code.json mode file missing");return this.loadMode("code")}let{parentId:n,overrideId:i}=r,s;try{s=this.loadMode(n)}catch{_.warn("SYSTEM",`Parent mode '${n}' not found for ${e}, falling back to 'code'`),s=this.loadMode("code")}let o;try{o=this.loadModeFile(i),_.debug("SYSTEM",`Loaded override file: ${i} for parent ${n}`)}catch{return _.warn("SYSTEM",`Override file '${i}' not found, using parent mode '${n}' only`),this.activeMode=s,s}if(!o)return _.warn("SYSTEM",`Invalid override file: ${i}, using parent mode '${n}' only`),this.activeMode=s,s;let a=this.deepMerge(s,o);return this.activeMode=a,_.debug("SYSTEM",`Loaded mode with inheritance: ${a.name} (${e} = ${n} + ${i})`,void 0,{parent:n,override:i,types:a.observation_types.map(c=>c.id),concepts:a.observation_concepts.map(c=>c.id)}),a}getActiveMode(){if(!this.activeMode)throw new Error("No mode loaded. Call loadMode() first.");return this.activeMode}getObservationTypes(){return this.getActiveMode().observation_types}getObservationConcepts(){return this.getActiveMode().observation_concepts}getTypeIcon(e){return this.getObservationTypes().find(n=>n.id===e)?.emoji||"\u{1F4DD}"}getWorkEmoji(e){return this.getObservationTypes().find(n=>n.id===e)?.work_emoji||"\u{1F4DD}"}validateType(e){return this.getObservationTypes().some(r=>r.id===e)}getTypeLabel(e){return this.getObservationTypes().find(n=>n.id===e)?.label||e}}});function Ca(t){if(!t)return[];try{let e=JSON.parse(t);return Array.isArray(e)?e:[]}catch(e){return _.debug("PARSER","Failed to parse JSON array, using empty fallback",{preview:t?.substring(0,50)},e),[]}}function Mn(t){return new Date(t).toLocaleString("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit",hour12:!0})}function gr(t){return new Date(t).toLocaleString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}function zs(t){return new Date(t).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric"})}function NF(t,e){return X$.default.isAbsolute(t)?X$.default.relative(e,t):t}function wi(t,e,r){let n=Ca(t);if(n.length>0)return NF(n[0],e);if(r){let i=Ca(r);if(i.length>0)return NF(i[0],e)}return"General"}function Ls(t){return t?Math.ceil(t.length/4):0}function Us(t,e){let r=new Map;for(let i of t){let s=e(i),o=zs(s);r.has(o)||r.set(o,[]),r.get(o).push(i)}let n=Array.from(r.entries()).sort((i,s)=>{let o=new Date(i[0]).getTime(),a=new Date(s[0]).getTime();return o-a});return new Map(n)}var X$,Fs=Ee(()=>{"use strict";X$=Pe(require("path"),1);te()});function vH(t){let e=g_.default.join(t,".git"),r;try{r=(0,v_.statSync)(e)}catch{return rm}if(!r.isFile())return rm;let n;try{n=(0,v_.readFileSync)(e,"utf-8").trim()}catch{return rm}let i=n.match(/^gitdir:\s*(.+)$/);if(!i)return rm;let o=i[1].match(/^(.+)[/\\]\.git[/\\]worktrees[/\\]([^/\\]+)$/);if(!o)return rm;let a=o[1],c=g_.default.basename(t),u=g_.default.basename(a);return{isWorktree:!0,worktreeName:c,parentRepoPath:a,parentProjectName:u}}var v_,g_,rm,yH=Ee(()=>{"use strict";v_=require("fs"),g_=Pe(require("path"),1),rm={isWorktree:!1,worktreeName:null,parentRepoPath:null,parentProjectName:null}});function SH(t){return t==="~"||t.startsWith("~/")?t.replace(/^~/,(0,_H.homedir)()):t}function to(t){if(!t||t.trim()==="")return _.warn("PROJECT_NAME","Empty cwd provided, using fallback",{cwd:t}),"unknown-project";let e=SH(t),r=bH.default.basename(e);if(r===""){if(process.platform==="win32"){let i=t.match(/^([A-Z]):\\/i);if(i){let o=`drive-${i[1].toUpperCase()}`;return _.info("PROJECT_NAME","Drive root detected",{cwd:t,projectName:o}),o}}return _.warn("PROJECT_NAME","Root directory detected, using fallback",{cwd:t}),"unknown-project"}return r}function pl(t){let e=to(t);if(!t)return{primary:e,parent:null,isWorktree:!1,allProjects:[e]};let r=SH(t),n=vH(r);return n.isWorktree&&n.parentProjectName?{primary:e,parent:n.parentProjectName,isWorktree:!0,allProjects:[n.parentProjectName,e]}:{primary:e,parent:null,isWorktree:!1,allProjects:[e]}}var _H,bH,Za=Ee(()=>{"use strict";_H=require("os"),bH=Pe(require("path"),1);te();yH()});function gxe(t){let e=t.startsWith("~")?(0,xH.homedir)()+t.slice(1):t;e=e.replace(/\\/g,"/");let r=e.replace(/[.+^${}()|[\]\\]/g,"\\$&");return r=r.replace(/\*\*/g,"<<>>").replace(/\*/g,"[^/]*").replace(/\?/g,"[^/]").replace(/<<>>/g,".*"),new RegExp(`^${r}$`)}function fl(t,e){if(!e||!e.trim())return!1;let r=t.replace(/\\/g,"/"),n=e.split(",").map(i=>i.trim()).filter(Boolean);for(let i of n)try{if(gxe(i).test(r))return!0}catch{continue}return!1}var xH,y_=Ee(()=>{"use strict";xH=require("os")});var nm,__=Ee(()=>{"use strict";fr();Za();te();Pn();y_();tr();It();Vi();nm={async execute(t){if(!await sr())return{continue:!0,suppressOutput:!0,exitCode:it.SUCCESS};let{sessionId:r,cwd:n,prompt:i}=t;if(!r)return _.warn("HOOK","session-init: No sessionId provided, skipping (Codex CLI or unknown platform)"),{continue:!0,suppressOutput:!0,exitCode:it.SUCCESS};let s=ye.loadFromFile(vt);if(n&&fl(n,s.CLAUDE_MEM_EXCLUDED_PROJECTS))return _.info("HOOK","Project excluded from tracking",{cwd:n}),{continue:!0,suppressOutput:!0};let o=!i||!i.trim()?"[media prompt]":i,a=to(n),c=Rt(t.platform);_.debug("HOOK","session-init: Calling /api/sessions/init",{contentSessionId:r,project:a});let u=await Qe("/api/sessions/init",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:r,project:a,prompt:o,platformSource:c})});if(!u.ok)return _.failure("HOOK",`Session initialization failed: ${u.status}`,{contentSessionId:r,project:a}),{continue:!0,suppressOutput:!0,exitCode:it.SUCCESS};let l=await u.json(),d=l.sessionDbId,p=l.promptNumber;if(_.debug("HOOK","session-init: Received from /api/sessions/init",{sessionDbId:d,promptNumber:p,skipped:l.skipped,contextInjected:l.contextInjected}),_.debug("HOOK",`[ALIGNMENT] Hook Entry | contentSessionId=${r} | prompt#=${p} | sessionDbId=${d}`),l.skipped&&l.reason==="private")return _.info("HOOK",`INIT_COMPLETE | sessionDbId=${d} | promptNumber=${p} | skipped=true | reason=private`,{sessionId:d}),{continue:!0,suppressOutput:!0};let f=!!l.contextInjected;if(f&&_.info("HOOK",`INIT_COMPLETE | sessionDbId=${d} | promptNumber=${p} | skipped_agent_init=true | reason=context_already_injected`,{sessionId:d}),!f&&t.platform!=="cursor"&&d){let g=o.startsWith("/")?o.substring(1):o;_.debug("HOOK","session-init: Calling /sessions/{sessionDbId}/init",{sessionDbId:d,promptNumber:p});let v=await Qe(`/sessions/${d}/init`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({userPrompt:g,promptNumber:p})});v.ok||_.failure("HOOK",`SDK agent start failed: ${v.status}`,{sessionDbId:d,promptNumber:p})}else!f&&t.platform==="cursor"&&_.debug("HOOK","session-init: Skipping SDK agent init for Cursor platform",{sessionDbId:d,promptNumber:p});let m=String(s.CLAUDE_MEM_SEMANTIC_INJECT).toLowerCase()==="true",h="";if(m&&o&&o.length>=20&&o!=="[media prompt]")try{let g=s.CLAUDE_MEM_SEMANTIC_INJECT_LIMIT||"5",v=await Qe("/api/context/semantic",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({q:o,project:a,limit:g})});if(v.ok){let y=await v.json();y.context&&(h=y.context,_.debug("HOOK",`Semantic injection: ${y.count} observations for prompt`,{sessionId:d,count:y.count}))}}catch(g){_.debug("HOOK","Semantic injection unavailable",{error:g instanceof Error?g.message:String(g)})}return _.info("HOOK",`INIT_COMPLETE | sessionDbId=${d} | promptNumber=${p} | project=${a}`,{sessionId:d}),h?{continue:!0,suppressOutput:!0,hookSpecificOutput:{hookEventName:"UserPromptSubmit",additionalContext:h}}:{continue:!0,suppressOutput:!0}}}});var im,b_=Ee(()=>{"use strict";fr();te();Pn();y_();tr();It();Vi();im={async execute(t){if(!await sr())return{continue:!0,suppressOutput:!0,exitCode:it.SUCCESS};let{sessionId:r,cwd:n,toolName:i,toolInput:s,toolResponse:o}=t,a=Rt(t.platform);if(!i)return{continue:!0,suppressOutput:!0,exitCode:it.SUCCESS};let c=_.formatTool(i,s);if(_.dataIn("HOOK",`PostToolUse: ${c}`,{}),!n)throw new Error(`Missing cwd in PostToolUse hook input for session ${r}, tool ${i}`);let u=ye.loadFromFile(vt);if(fl(n,u.CLAUDE_MEM_EXCLUDED_PROJECTS))return _.debug("HOOK","Project excluded from tracking, skipping observation",{cwd:n,toolName:i}),{continue:!0,suppressOutput:!0};try{let l=await Qe("/api/sessions/observations",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:r,platformSource:a,tool_name:i,tool_input:s,tool_response:o,cwd:n})});if(!l.ok)return _.warn("HOOK","Observation storage failed, skipping",{status:l.status,toolName:i}),{continue:!0,suppressOutput:!0,exitCode:it.SUCCESS};_.debug("HOOK","Observation sent successfully",{toolName:i})}catch(l){return _.warn("HOOK","Observation fetch error, skipping",{error:l instanceof Error?l.message:String(l)}),{continue:!0,suppressOutput:!0,exitCode:it.SUCCESS}}return{continue:!0,suppressOutput:!0}}}});var sm,S_=Ee(()=>{"use strict";fr();te();Pn();Vi();sm={async execute(t){if(!await sr())return{continue:!0,suppressOutput:!0,exitCode:it.SUCCESS};let{sessionId:r,cwd:n,filePath:i,edits:s}=t,o=Rt(t.platform);if(!i)throw new Error("fileEditHandler requires filePath");if(_.dataIn("HOOK",`FileEdit: ${i}`,{editCount:s?.length??0}),!n)throw new Error(`Missing cwd in FileEdit hook input for session ${r}, file ${i}`);try{let a=await Qe("/api/sessions/observations",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:r,platformSource:o,tool_name:"write_file",tool_input:{filePath:i,edits:s},tool_response:{success:!0},cwd:n})});if(!a.ok)return _.warn("HOOK","File edit observation storage failed, skipping",{status:a.status,filePath:i}),{continue:!0,suppressOutput:!0,exitCode:it.SUCCESS};_.debug("HOOK","File edit observation sent successfully",{filePath:i})}catch(a){return _.warn("HOOK","File edit observation fetch error, skipping",{error:a instanceof Error?a.message:String(a)}),{continue:!0,suppressOutput:!0,exitCode:it.SUCCESS}}return{continue:!0,suppressOutput:!0}}}});var om,x_=Ee(()=>{"use strict";fr();te();Vi();om={async execute(t){if(!await sr())return{continue:!0,suppressOutput:!0};let{sessionId:r}=t,n=Rt(t.platform);if(!r)return _.warn("HOOK","session-complete: Missing sessionId, skipping"),{continue:!0,suppressOutput:!0};_.info("HOOK","\u2192 session-complete: Removing session from active map",{contentSessionId:r});try{let i=await Qe("/api/sessions/complete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:r,platformSource:n})});if(i.ok)_.info("HOOK","Session completed successfully",{contentSessionId:r});else{let s=await i.text();_.warn("HOOK","session-complete: Failed to complete session",{status:i.status,body:s})}}catch(i){_.warn("HOOK","session-complete: Error completing session",{error:i.message})}return{continue:!0,suppressOutput:!0}}}});function yxe(t){let e=(t.match(//g)||[]).length,r=(t.match(//g)||[]).length,n=(t.match(//g)||[]).length,i=(t.match(//g)||[]).length,s=(t.match(//g)||[]).length,o=(t.match(//g)||[]).length;return e+r+n+i+s+o}function OH(t){let e=yxe(t);return e>RH&&_.warn("SYSTEM","tag count exceeds limit",void 0,{tagCount:e,maxAllowed:RH,contentLength:t.length}),t.replace(/[\s\S]*?<\/claude-mem-context>/g,"").replace(/[\s\S]*?<\/private>/g,"").replace(/[\s\S]*?<\/system_instruction>/g,"").replace(/[\s\S]*?<\/system-instruction>/g,"").replace(/[\s\S]*?<\/persisted-output>/g,"").replace(am,"").trim()}function hR(t){return OH(t)}function CH(t){return OH(t)}var am,RH,O_=Ee(()=>{"use strict";te();am=/[\s\S]*?<\/system-reminder>/g,RH=100});function vR(){let t=NH.default.join((0,MH.homedir)(),".claude-mem","settings.json"),e=ye.loadFromFile(t),r=He.getInstance().getActiveMode(),n=new Set(r.observation_types.map(s=>s.id)),i=new Set(r.observation_concepts.map(s=>s.id));return{totalObservationCount:parseInt(e.CLAUDE_MEM_CONTEXT_OBSERVATIONS,10),fullObservationCount:parseInt(e.CLAUDE_MEM_CONTEXT_FULL_COUNT,10),sessionCount:parseInt(e.CLAUDE_MEM_CONTEXT_SESSION_COUNT,10),showReadTokens:e.CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS==="true",showWorkTokens:e.CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS==="true",showSavingsAmount:e.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT==="true",showSavingsPercent:e.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT==="true",observationTypes:n,observationConcepts:i,fullObservationField:e.CLAUDE_MEM_CONTEXT_FULL_FIELD,showLastSummary:e.CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY==="true",showLastMessage:e.CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE==="true"}}var NH,MH,yR=Ee(()=>{"use strict";NH=Pe(require("path"),1),MH=require("os");tr();sn()});var Y,DH,_R,um=Ee(()=>{"use strict";Y={reset:"\x1B[0m",bright:"\x1B[1m",dim:"\x1B[2m",cyan:"\x1B[36m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",gray:"\x1B[90m",red:"\x1B[31m"},DH=4,_R=1});function bR(t){let e=(t.title?.length||0)+(t.subtitle?.length||0)+(t.narrative?.length||0)+JSON.stringify(t.facts||[]).length;return Math.ceil(e/DH)}function SR(t){let e=t.length,r=t.reduce((o,a)=>o+bR(a),0),n=t.reduce((o,a)=>o+(a.discovery_tokens||0),0),i=n-r,s=n>0?Math.round(i/n*100):0;return{totalObservations:e,totalReadTokens:r,totalDiscoveryTokens:n,savings:i,savingsPercent:s}}function _xe(t){return He.getInstance().getWorkEmoji(t)}function lm(t,e){let r=bR(t),n=t.discovery_tokens||0,i=_xe(t.type),s=n>0?`${i} ${n.toLocaleString()}`:"-";return{readTokens:r,discoveryTokens:n,discoveryDisplay:s,workEmoji:i}}function N_(t){return t.showReadTokens||t.showWorkTokens||t.showSavingsAmount||t.showSavingsPercent}var Ba=Ee(()=>{"use strict";um();sn()});function xR(t,e,r,n){let i=Array.from(r.observationTypes),s=i.map(()=>"?").join(","),o=Array.from(r.observationConcepts),a=o.map(()=>"?").join(",");return t.db.prepare(` + SELECT + o.id, + o.memory_session_id, + COALESCE(s.platform_source, 'claude') as platform_source, + o.type, + o.title, + o.subtitle, + o.narrative, + o.facts, + o.concepts, + o.files_read, + o.files_modified, + o.discovery_tokens, + o.created_at, + o.created_at_epoch + FROM observations o + LEFT JOIN sdk_sessions s ON o.memory_session_id = s.memory_session_id + WHERE o.project = ? + AND type IN (${s}) + AND EXISTS ( + SELECT 1 FROM json_each(o.concepts) + WHERE value IN (${a}) + ) + ${n?"AND COALESCE(s.platform_source, 'claude') = ?":""} + ORDER BY o.created_at_epoch DESC + LIMIT ? + `).all(e,...i,...o,...n?[n]:[],r.totalObservationCount)}function wR(t,e,r,n){return t.db.prepare(` + SELECT + ss.id, + ss.memory_session_id, + COALESCE(s.platform_source, 'claude') as platform_source, + ss.request, + ss.investigated, + ss.learned, + ss.completed, + ss.next_steps, + ss.created_at, + ss.created_at_epoch + FROM session_summaries ss + LEFT JOIN sdk_sessions s ON ss.memory_session_id = s.memory_session_id + WHERE ss.project = ? + ${n?"AND COALESCE(s.platform_source, 'claude') = ?":""} + ORDER BY ss.created_at_epoch DESC + LIMIT ? + `).all(e,...n?[n]:[],r.sessionCount+_R)}function zH(t,e,r,n){let i=Array.from(r.observationTypes),s=i.map(()=>"?").join(","),o=Array.from(r.observationConcepts),a=o.map(()=>"?").join(","),c=e.map(()=>"?").join(",");return t.db.prepare(` + SELECT + o.id, + o.memory_session_id, + COALESCE(s.platform_source, 'claude') as platform_source, + o.type, + o.title, + o.subtitle, + o.narrative, + o.facts, + o.concepts, + o.files_read, + o.files_modified, + o.discovery_tokens, + o.created_at, + o.created_at_epoch, + o.project + FROM observations o + LEFT JOIN sdk_sessions s ON o.memory_session_id = s.memory_session_id + WHERE o.project IN (${c}) + AND type IN (${s}) + AND EXISTS ( + SELECT 1 FROM json_each(o.concepts) + WHERE value IN (${a}) + ) + ${n?"AND COALESCE(s.platform_source, 'claude') = ?":""} + ORDER BY o.created_at_epoch DESC + LIMIT ? + `).all(...e,...i,...o,...n?[n]:[],r.totalObservationCount)}function LH(t,e,r,n){let i=e.map(()=>"?").join(",");return t.db.prepare(` + SELECT + ss.id, + ss.memory_session_id, + COALESCE(s.platform_source, 'claude') as platform_source, + ss.request, + ss.investigated, + ss.learned, + ss.completed, + ss.next_steps, + ss.created_at, + ss.created_at_epoch, + ss.project + FROM session_summaries ss + LEFT JOIN sdk_sessions s ON ss.memory_session_id = s.memory_session_id + WHERE ss.project IN (${i}) + ${n?"AND COALESCE(s.platform_source, 'claude') = ?":""} + ORDER BY ss.created_at_epoch DESC + LIMIT ? + `).all(...e,...n?[n]:[],r.sessionCount+_R)}function bxe(t){return t.replace(/\//g,"-")}function Sxe(t){try{if(!(0,M_.existsSync)(t))return{userMessage:"",assistantMessage:""};let e=(0,M_.readFileSync)(t,"utf-8").trim();if(!e)return{userMessage:"",assistantMessage:""};let r=e.split(` +`).filter(i=>i.trim()),n="";for(let i=r.length-1;i>=0;i--)try{let s=r[i];if(!s.includes('"type":"assistant"'))continue;let o=JSON.parse(s);if(o.type==="assistant"&&o.message?.content&&Array.isArray(o.message.content)){let a="";for(let c of o.message.content)c.type==="text"&&(a+=c.text);if(a=a.replace(am,"").trim(),a){n=a;break}}}catch(s){_.debug("PARSER","Skipping malformed transcript line",{lineIndex:i},s);continue}return{userMessage:"",assistantMessage:n}}catch(e){return _.failure("WORKER","Failed to extract prior messages from transcript",{transcriptPath:t},e),{userMessage:"",assistantMessage:""}}}function ER(t,e,r,n){if(!e.showLastMessage||t.length===0)return{userMessage:"",assistantMessage:""};let i=t.find(c=>c.memory_session_id!==r);if(!i)return{userMessage:"",assistantMessage:""};let s=i.memory_session_id,o=bxe(n),a=jH.default.join(Rs,"projects",o,`${s}.jsonl`);return Sxe(a)}function UH(t,e){let r=e[0]?.id;return t.map((n,i)=>{let s=i===0?null:e[i+1];return{...n,displayEpoch:s?s.created_at_epoch:n.created_at_epoch,displayTime:s?s.created_at:n.created_at,shouldShowLink:n.id!==r}})}function kR(t,e){let r=[...t.map(n=>({type:"observation",data:n})),...e.map(n=>({type:"summary",data:n}))];return r.sort((n,i)=>{let s=n.type==="observation"?n.data.created_at_epoch:n.data.displayEpoch,o=i.type==="observation"?i.data.created_at_epoch:i.data.displayEpoch;return s-o}),r}function FH(t,e){return new Set(t.slice(0,e).map(r=>r.id))}var jH,M_,TR=Ee(()=>{"use strict";jH=Pe(require("path"),1),M_=require("fs");te();O_();It();um()});function qH(){let t=new Date,e=t.toLocaleDateString("en-CA"),r=t.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0}).toLowerCase().replace(" ",""),n=t.toLocaleTimeString("en-US",{timeZoneName:"short"}).split(" ").pop();return`${e} ${r} ${n}`}function HH(t){return[`# $CMEM ${t} ${qH()}`,""]}function ZH(){return[`Legend: \u{1F3AF}session ${He.getInstance().getActiveMode().observation_types.map(r=>`${r.emoji}${r.id}`).join(" ")}`,"Format: ID TIME TYPE TITLE","Fetch details: get_observations([IDs]) | Search: mem-search skill",""]}function BH(){return[]}function GH(){return[]}function WH(t,e){let r=[],n=[`${t.totalObservations} obs (${t.totalReadTokens.toLocaleString()}t read)`,`${t.totalDiscoveryTokens.toLocaleString()}t work`];return t.totalDiscoveryTokens>0&&(e.showSavingsAmount||e.showSavingsPercent)&&(e.showSavingsPercent?n.push(`${t.savingsPercent}% savings`):e.showSavingsAmount&&n.push(`${t.savings.toLocaleString()}t saved`)),r.push(`Stats: ${n.join(" | ")}`),r.push(""),r}function VH(t){return[`### ${t}`]}function KH(t){return t.toLowerCase().replace(" am","a").replace(" pm","p")}function JH(t,e,r){let n=t.title||"Untitled",i=He.getInstance().getTypeIcon(t.type),s=e?KH(e):'"';return`${t.id} ${s} ${i} ${n}`}function XH(t,e,r,n){let i=[],s=t.title||"Untitled",o=He.getInstance().getTypeIcon(t.type),a=e?KH(e):'"',{readTokens:c,discoveryDisplay:u}=lm(t,n);i.push(`**${t.id}** ${a} ${o} **${s}**`),r&&i.push(r);let l=[];return n.showReadTokens&&l.push(`~${c}t`),n.showWorkTokens&&l.push(u),l.length>0&&i.push(l.join(" ")),i.push(""),i}function YH(t,e){return[`S${t.id} ${t.request||"Session started"} (${e})`]}function dm(t,e){return e?[`**${t}**: ${e}`,""]:[]}function QH(t){return t.assistantMessage?["","---","","**Previously**","",`A: ${t.assistantMessage}`,""]:[]}function e5(t,e){return["",`Access ${Math.round(t/1e3)}k tokens of past work via get_observations([IDs]) or mem-search skill.`]}function t5(t){return`# $CMEM ${t} ${qH()} + +No previous sessions found.`}var gl=Ee(()=>{"use strict";sn();Ba()});function r5(){let t=new Date,e=t.toLocaleDateString("en-CA"),r=t.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0}).toLowerCase().replace(" ",""),n=t.toLocaleTimeString("en-US",{timeZoneName:"short"}).split(" ").pop();return`${e} ${r} ${n}`}function n5(t){return["",`${Y.bright}${Y.cyan}[${t}] recent context, ${r5()}${Y.reset}`,`${Y.gray}${"\u2500".repeat(60)}${Y.reset}`,""]}function i5(){let e=He.getInstance().getActiveMode().observation_types.map(r=>`${r.emoji} ${r.id}`).join(" | ");return[`${Y.dim}Legend: session-request | ${e}${Y.reset}`,""]}function s5(){return[`${Y.bright}Column Key${Y.reset}`,`${Y.dim} Read: Tokens to read this observation (cost to learn it now)${Y.reset}`,`${Y.dim} Work: Tokens spent on work that produced this record ( research, building, deciding)${Y.reset}`,""]}function o5(){return[`${Y.dim}Context Index: This semantic index (titles, types, files, tokens) is usually sufficient to understand past work.${Y.reset}`,"",`${Y.dim}When you need implementation details, rationale, or debugging context:${Y.reset}`,`${Y.dim} - Fetch by ID: get_observations([IDs]) for observations visible in this index${Y.reset}`,`${Y.dim} - Search history: Use the mem-search skill for past decisions, bugs, and deeper research${Y.reset}`,`${Y.dim} - Trust this index over re-reading code for past decisions and learnings${Y.reset}`,""]}function a5(t,e){let r=[];if(r.push(`${Y.bright}${Y.cyan}Context Economics${Y.reset}`),r.push(`${Y.dim} Loading: ${t.totalObservations} observations (${t.totalReadTokens.toLocaleString()} tokens to read)${Y.reset}`),r.push(`${Y.dim} Work investment: ${t.totalDiscoveryTokens.toLocaleString()} tokens spent on research, building, and decisions${Y.reset}`),t.totalDiscoveryTokens>0&&(e.showSavingsAmount||e.showSavingsPercent)){let n=" Your savings: ";e.showSavingsAmount&&e.showSavingsPercent?n+=`${t.savings.toLocaleString()} tokens (${t.savingsPercent}% reduction from reuse)`:e.showSavingsAmount?n+=`${t.savings.toLocaleString()} tokens`:n+=`${t.savingsPercent}% reduction from reuse`,r.push(`${Y.green}${n}${Y.reset}`)}return r.push(""),r}function c5(t){return[`${Y.bright}${Y.cyan}${t}${Y.reset}`,""]}function u5(t){return[`${Y.dim}${t}${Y.reset}`]}function l5(t,e,r,n){let i=t.title||"Untitled",s=He.getInstance().getTypeIcon(t.type),{readTokens:o,discoveryTokens:a,workEmoji:c}=lm(t,n),u=r?`${Y.dim}${e}${Y.reset}`:" ".repeat(e.length),l=n.showReadTokens&&o>0?`${Y.dim}(~${o}t)${Y.reset}`:"",d=n.showWorkTokens&&a>0?`${Y.dim}(${c} ${a.toLocaleString()}t)${Y.reset}`:"";return` ${Y.dim}#${t.id}${Y.reset} ${u} ${s} ${i} ${l} ${d}`}function d5(t,e,r,n,i){let s=[],o=t.title||"Untitled",a=He.getInstance().getTypeIcon(t.type),{readTokens:c,discoveryTokens:u,workEmoji:l}=lm(t,i),d=r?`${Y.dim}${e}${Y.reset}`:" ".repeat(e.length),p=i.showReadTokens&&c>0?`${Y.dim}(~${c}t)${Y.reset}`:"",f=i.showWorkTokens&&u>0?`${Y.dim}(${l} ${u.toLocaleString()}t)${Y.reset}`:"";return s.push(` ${Y.dim}#${t.id}${Y.reset} ${d} ${a} ${Y.bright}${o}${Y.reset}`),n&&s.push(` ${Y.dim}${n}${Y.reset}`),(p||f)&&s.push(` ${p} ${f}`),s.push(""),s}function p5(t,e){let r=`${t.request||"Session started"} (${e})`;return[`${Y.yellow}#S${t.id}${Y.reset} ${r}`,""]}function pm(t,e,r){return e?[`${r}${t}:${Y.reset} ${e}`,""]:[]}function f5(t){return t.assistantMessage?["","---","",`${Y.bright}${Y.magenta}Previously${Y.reset}`,"",`${Y.dim}A: ${t.assistantMessage}${Y.reset}`,""]:[]}function m5(t,e){let r=Math.round(t/1e3);return["",`${Y.dim}Access ${r}k tokens of past research & decisions for just ${e.toLocaleString()}t. Use the claude-mem skill to access memories by ID.${Y.reset}`]}function h5(t){return` +${Y.bright}${Y.cyan}[${t}] recent context, ${r5()}${Y.reset} +${Y.gray}${"\u2500".repeat(60)}${Y.reset} + +${Y.dim}No previous sessions found for this project yet.${Y.reset} +`}var vl=Ee(()=>{"use strict";um();sn();Ba()});function g5(t,e,r,n){let i=[];return n?i.push(...n5(t)):i.push(...HH(t)),n?i.push(...i5()):i.push(...ZH()),n?i.push(...s5()):i.push(...BH()),n?i.push(...o5()):i.push(...GH()),N_(r)&&(n?i.push(...a5(e,r)):i.push(...WH(e,r))),i}var v5=Ee(()=>{"use strict";Ba();gl();vl()});function xxe(t){let e=new Map;for(let n of t){let i=n.type==="observation"?n.data.created_at:n.data.displayTime,s=zs(i);e.has(s)||e.set(s,[]),e.get(s).push(n)}let r=Array.from(e.entries()).sort((n,i)=>{let s=new Date(n[0]).getTime(),o=new Date(i[0]).getTime();return s-o});return new Map(r)}function y5(t,e){return e.fullObservationField==="narrative"?t.narrative:t.facts?Ca(t.facts).join(` +`):null}function wxe(t,e,r,n){let i=[];i.push(...VH(t));let s="";for(let o of e)if(o.type==="summary"){let a=o.data,c=Mn(a.displayTime);i.push(...YH(a,c))}else{let a=o.data,c=gr(a.created_at),l=c!==s?c:"";if(s=c,r.has(a.id)){let p=y5(a,n);i.push(...XH(a,l,p,n))}else i.push(JH(a,l,n))}return i}function Exe(t,e,r,n,i){let s=[];s.push(...c5(t));let o=null,a="";for(let c of e)if(c.type==="summary"){o=null,a="";let u=c.data,l=Mn(u.displayTime);s.push(...p5(u,l))}else{let u=c.data,l=wi(u.files_modified,i,u.files_read),d=gr(u.created_at),p=d!==a;a=d;let f=r.has(u.id);if(l!==o&&(s.push(...u5(l)),o=l),f){let m=y5(u,n);s.push(...d5(u,d,p,m,n))}else s.push(l5(u,d,p,n))}return s.push(""),s}function kxe(t,e,r,n,i,s){return s?Exe(t,e,r,n,i):wxe(t,e,r,n)}function _5(t,e,r,n,i){let s=[],o=xxe(t);for(let[a,c]of o)s.push(...kxe(a,c,e,r,n,i));return s}var b5=Ee(()=>{"use strict";Fs();gl();vl()});function S5(t,e,r){return!(!t.showLastSummary||!e||!!!(e.investigated||e.learned||e.completed||e.next_steps)||r&&e.created_at_epoch<=r.created_at_epoch)}function x5(t,e){let r=[];return e?(r.push(...pm("Investigated",t.investigated,Y.blue)),r.push(...pm("Learned",t.learned,Y.yellow)),r.push(...pm("Completed",t.completed,Y.green)),r.push(...pm("Next Steps",t.next_steps,Y.magenta))):(r.push(...dm("Investigated",t.investigated)),r.push(...dm("Learned",t.learned)),r.push(...dm("Completed",t.completed)),r.push(...dm("Next Steps",t.next_steps))),r}var w5=Ee(()=>{"use strict";um();gl();vl()});function E5(t,e){return e?f5(t):QH(t)}function k5(t,e,r){return!N_(e)||t.totalDiscoveryTokens<=0||t.savings<=0?[]:r?m5(t.totalDiscoveryTokens,t.totalReadTokens):e5(t.totalDiscoveryTokens,t.totalReadTokens)}var T5=Ee(()=>{"use strict";Ba();gl();vl()});function $xe(){try{return new Ps}catch(t){if(t.code==="ERR_DLOPEN_FAILED"){try{(0,R5.unlinkSync)(Txe)}catch(e){_.debug("SYSTEM","Marker file cleanup failed (may not exist)",{},e)}return _.error("SYSTEM","Native module rebuild needed - restart Claude Code to auto-fix"),null}throw t}}function Ixe(t,e){return e?h5(t):t5(t)}function Rxe(t,e,r,n,i,s,o){let a=[],c=SR(e);a.push(...g5(t,c,n,o));let u=r.slice(0,n.sessionCount),l=UH(u,r),d=kR(e,l),p=FH(e,n.fullObservationCount);a.push(..._5(d,p,n,i,o));let f=r[0],m=e[0];S5(n,f,m)&&a.push(...x5(f,o));let h=ER(e,n,s,i);return a.push(...E5(h,o)),a.push(...k5(c,n,o)),a.join(` +`).trimEnd()}async function $R(t,e=!1){let r=vR(),n=t?.cwd??process.cwd(),i=to(n),s=t?.platform_source,o=t?.projects||[i];t?.full&&(r.totalObservationCount=999999,r.sessionCount=999999);let a=$xe();if(!a)return"";try{let c=o.length>1?zH(a,o,r,s):xR(a,i,r,s),u=o.length>1?LH(a,o,r,s):wR(a,i,r,s);return c.length===0&&u.length===0?Ixe(i,e):Rxe(i,c,u,r,n,t?.session_id,e)}finally{a.close()}}var $5,I5,R5,Txe,O5=Ee(()=>{"use strict";$5=Pe(require("path"),1),I5=require("os"),R5=require("fs");Fg();te();Za();yR();Ba();TR();v5();b5();w5();T5();gl();vl();Txe=$5.default.join((0,I5.homedir)(),".claude","plugins","marketplaces","thedotmack","plugin",".install-version")});var C5=Ee(()=>{"use strict";O5();yR();Ba();TR()});var IR={};Fn(IR,{generateContext:()=>$R});var RR=Ee(()=>{"use strict";C5()});function Pxe(){try{let t=process.stdin;return t.isTTY?!1:(t.readable,!0)}catch{return!1}}function Axe(t){let e=t.trim();if(!e)return{success:!1};try{return{success:!0,value:JSON.parse(e)}}catch{return{success:!1}}}async function D5(){if(Pxe())return new Promise((t,e)=>{let r="",n=!1,i=null,s=()=>{try{process.stdin.removeAllListeners("data"),process.stdin.removeAllListeners("end"),process.stdin.removeAllListeners("error")}catch{}},o=l=>{n||(n=!0,i&&clearTimeout(i),clearTimeout(u),s(),t(l))},a=l=>{n||(n=!0,i&&clearTimeout(i),clearTimeout(u),s(),e(l))},c=()=>{let l=Axe(r);return l.success?(o(l.value),!0):!1},u=setTimeout(()=>{n||c()||(r.trim()?a(new Error(`Incomplete JSON after ${M5}ms: ${r.slice(0,100)}...`)):o(void 0))},M5);try{process.stdin.on("data",l=>{r+=l,i&&(clearTimeout(i),i=null),!c()&&(i=setTimeout(()=>{c()},Nxe))}),process.stdin.on("end",()=>{n||c()||o((r.trim(),void 0))}),process.stdin.on("error",()=>{n||o(void 0)})}catch{n=!0,clearTimeout(u),s(),t(void 0)}})}var M5,Nxe,j5=Ee(()=>{"use strict";M5=3e4,Nxe=50});var z5,L5=Ee(()=>{"use strict";z5={normalizeInput(t){let e=t??{};return{sessionId:e.session_id??e.id??e.sessionId,cwd:e.cwd??process.cwd(),prompt:e.prompt,toolName:e.tool_name,toolInput:e.tool_input,toolResponse:e.tool_response,transcriptPath:e.transcript_path}},formatOutput(t){let e=t??{};if(e.hookSpecificOutput){let n={hookSpecificOutput:t.hookSpecificOutput};return e.systemMessage&&(n.systemMessage=e.systemMessage),n}let r={};return e.systemMessage&&(r.systemMessage=e.systemMessage),r}}});var U5,F5=Ee(()=>{"use strict";U5={normalizeInput(t){let e=t??{},r=!!e.command&&!e.tool_name;return{sessionId:e.conversation_id||e.generation_id||e.id,cwd:e.workspace_roots?.[0]??e.cwd??process.cwd(),prompt:e.prompt??e.query??e.input??e.message,toolName:r?"Bash":e.tool_name,toolInput:r?{command:e.command}:e.tool_input,toolResponse:r?{output:e.output}:e.result_json,transcriptPath:void 0,filePath:e.file_path,edits:e.edits}},formatOutput(t){return{continue:t.continue??!0}}}});var q5,H5=Ee(()=>{"use strict";q5={normalizeInput(t){let e=t??{},r=e.cwd??process.env.GEMINI_CWD??process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR??process.cwd(),n=e.session_id??process.env.GEMINI_SESSION_ID??void 0,i=e.hook_event_name,s=e.tool_name,o=e.tool_input,a=e.tool_response;i==="AfterAgent"&&e.prompt_response&&(s=s??"GeminiAgent",o=o??{prompt:e.prompt},a=a??{response:e.prompt_response}),i==="BeforeTool"&&s&&!a&&(a={_preExecution:!0}),i==="Notification"&&(s=s??"GeminiNotification",o=o??{notification_type:e.notification_type,message:e.message},a=a??{details:e.details});let c={};return e.source&&(c.source=e.source),e.reason&&(c.reason=e.reason),e.trigger&&(c.trigger=e.trigger),e.mcp_context&&(c.mcp_context=e.mcp_context),e.notification_type&&(c.notification_type=e.notification_type),e.stop_hook_active!==void 0&&(c.stop_hook_active=e.stop_hook_active),e.original_request_name&&(c.original_request_name=e.original_request_name),i&&(c.hook_event_name=i),{sessionId:n,cwd:r,prompt:e.prompt,toolName:s,toolInput:o,toolResponse:a,transcriptPath:e.transcript_path,metadata:Object.keys(c).length>0?c:void 0}},formatOutput(t){let e={};if(e.continue=t.continue??!0,t.suppressOutput!==void 0&&(e.suppressOutput=t.suppressOutput),t.systemMessage){let r=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;e.systemMessage=t.systemMessage.replace(r,"")}return t.hookSpecificOutput&&(e.hookSpecificOutput={additionalContext:t.hookSpecificOutput.additionalContext}),e}}});var NR,Z5=Ee(()=>{"use strict";NR={normalizeInput(t){let e=t;return{sessionId:e.sessionId??e.session_id??"unknown",cwd:e.cwd??process.cwd(),prompt:e.prompt,toolName:e.toolName??e.tool_name,toolInput:e.toolInput??e.tool_input,toolResponse:e.toolResponse??e.tool_response,transcriptPath:e.transcriptPath??e.transcript_path,filePath:e.filePath??e.file_path,edits:e.edits}},formatOutput(t){return t}}});var B5,G5=Ee(()=>{"use strict";B5={normalizeInput(t){let e=t??{},r=e.tool_info??{},n=e.agent_action_name??"",i={sessionId:e.trajectory_id??e.execution_id,cwd:r.cwd??process.cwd(),platform:"windsurf"};switch(n){case"pre_user_prompt":return{...i,prompt:r.user_prompt};case"post_write_code":return{...i,toolName:"Write",filePath:r.file_path,edits:r.edits,toolInput:{file_path:r.file_path,edits:r.edits}};case"post_run_command":return{...i,cwd:r.cwd??i.cwd,toolName:"Bash",toolInput:{command:r.command_line}};case"post_mcp_tool_use":return{...i,toolName:r.mcp_tool_name??"mcp_tool",toolInput:r.mcp_tool_arguments,toolResponse:r.mcp_result};case"post_cascade_response":return{...i,toolName:"cascade_response",toolResponse:r.response};default:return i}},formatOutput(t){return{continue:t.continue??!0}}}});function W5(t){switch(t){case"claude-code":return z5;case"cursor":return U5;case"gemini":case"gemini-cli":return q5;case"windsurf":return B5;case"raw":return NR;default:return NR}}var V5=Ee(()=>{"use strict";L5();F5();H5();Z5();G5()});var MR,DR=Ee(()=>{"use strict";fr();Za();Pn();te();tr();It();Vi();MR={async execute(t){if(!await sr())return{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:""},exitCode:it.SUCCESS};let r=t.cwd??process.cwd(),n=pl(r),i=Rr(),s=Rt(t.platform),a=ye.loadFromFile(vt).CLAUDE_MEM_CONTEXT_SHOW_TERMINAL_OUTPUT==="true",c=n.allProjects.join(","),u=`/api/context/inject?projects=${encodeURIComponent(c)}&platformSource=${encodeURIComponent(s)}`,l=t.platform==="claude-code"?`${u}&colors=true`:u;try{let[d,p]=await Promise.all([Qe(u),a?Qe(l).catch(()=>null):Promise.resolve(null)]);if(!d.ok)return _.warn("HOOK","Context generation failed, returning empty",{status:d.status}),{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:""},exitCode:it.SUCCESS};let[f,m]=await Promise.all([d.text(),p?.ok?p.text():Promise.resolve("")]),h=f.trim(),g=m.trim(),v=t.platform,y=g||(v==="gemini-cli"||v==="gemini"?h:""),b=a&&y?`${y} + +View Observations Live @ http://localhost:${i}`:void 0;return{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:h},systemMessage:b}}catch(d){return _.warn("HOOK","Context fetch error, returning empty",{error:d instanceof Error?d.message:String(d)}),{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:""},exitCode:it.SUCCESS}}}}});function K5(t,e,r=!1){if(!t||!(0,B_.existsSync)(t))return _.warn("PARSER",`Transcript path missing or file does not exist: ${t}`),"";let n=(0,B_.readFileSync)(t,"utf-8").trim();if(!n)return _.warn("PARSER",`Transcript file exists but is empty: ${t}`),"";let i=n.split(` +`),s=!1;for(let o=i.length-1;o>=0;o--){let a=JSON.parse(i[o]);if(a.type===e&&(s=!0,a.message?.content)){let c="",u=a.message.content;if(typeof u=="string")c=u;else if(Array.isArray(u))c=u.filter(l=>l.type==="text").map(l=>l.text).join(` +`);else throw new Error(`Unknown message content format in transcript. Type: ${typeof u}`);return r&&(c=c.replace(am,""),c=c.replace(/\n{3,}/g,` + +`).trim()),c}}return""}var B_,J5=Ee(()=>{"use strict";B_=require("fs");te();O_()});var Mxe,Dxe,jxe,jR,zR=Ee(()=>{"use strict";fr();te();J5();Pn();Mxe=Ig(Ir.DEFAULT),Dxe=500,jxe=11e4,jR={async execute(t){if(!await sr())return{continue:!0,suppressOutput:!0,exitCode:it.SUCCESS};let{sessionId:r,transcriptPath:n}=t;if(!n)return _.debug("HOOK",`No transcriptPath in Stop hook input for session ${r} - skipping summary`),{continue:!0,suppressOutput:!0,exitCode:it.SUCCESS};let i="";try{i=K5(n,"assistant",!0)}catch(a){return _.warn("HOOK",`Stop hook: failed to extract last assistant message for session ${r}: ${a instanceof Error?a.message:a}`),{continue:!0,suppressOutput:!0,exitCode:it.SUCCESS}}if(!i||!i.trim())return _.debug("HOOK","No assistant message in transcript - skipping summary",{sessionId:r,transcriptPath:n}),{continue:!0,suppressOutput:!0,exitCode:it.SUCCESS};if(_.dataIn("HOOK","Stop: Requesting summary",{hasLastAssistantMessage:!!i}),!(await Qe("/api/sessions/summarize",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:r,last_assistant_message:i}),timeoutMs:Mxe})).ok)return{continue:!0,suppressOutput:!0};_.debug("HOOK","Summary request queued, waiting for completion");let o=Date.now();for(;Date.now()-osetTimeout(a,Dxe));try{let a=await Qe(`/api/sessions/status?contentSessionId=${encodeURIComponent(r)}`,{timeoutMs:5e3});if(a.ok&&((await a.json()).queueLength??0)===0){_.info("HOOK","Summary processing complete",{waitedMs:Date.now()-o});break}}catch{}}try{await Qe("/api/sessions/complete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:r}),timeoutMs:1e4}),_.info("HOOK","Session completed in Stop hook",{contentSessionId:r})}catch(a){_.warn("HOOK",`Stop hook: session-complete failed: ${a instanceof Error?a.message:a}`)}return{continue:!0,suppressOutput:!0}}}});var X5,LR,UR=Ee(()=>{"use strict";X5=require("path");fr();Pn();LR={async execute(t){if(!await sr())return{exitCode:it.SUCCESS};let r=Rr(),n=(0,X5.basename)(t.cwd??process.cwd()),i=t.platform==="claude-code"?"&colors=true":"";try{let s=await Qe(`/api/context/inject?project=${encodeURIComponent(n)}${i}`);if(!s.ok)return{exitCode:it.SUCCESS};let o=await s.text();process.stderr.write(` + +`+String.fromCodePoint(128221)+` Claude-Mem Context Loaded + +`+o+` + +`+String.fromCodePoint(128161)+` Wrap any message with ... to prevent storing sensitive information. + +`+String.fromCodePoint(128172)+` Community https://discord.gg/J4wttp9vDu +`+String.fromCodePoint(128250)+` Watch live in browser http://localhost:${r}/ +`)}catch{}return{exitCode:it.SUCCESS}}}});function qxe(t){return t.toLowerCase().replace(" am","a").replace(" pm","p")}function Hxe(t){return new Date(t).toLocaleString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}function Zxe(t){return new Date(t).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric"})}function Bxe(t,e,r){let n=new Set,i=[];for(let o of t){let a=o.memory_session_id??`no-session-${o.id}`;n.has(a)||(n.add(a),i.push(o))}let s=i.map(o=>{let a=Ca(o.files_read),c=Ca(o.files_modified),u=a.length+c.length,l=e.replace(/\\/g,"/"),d=c.some(f=>f.replace(/\\/g,"/")===l),p=0;return d&&(p+=2),u<=3?p+=2:u<=8&&(p+=1),{obs:o,specificityScore:p}});return s.sort((o,a)=>a.specificityScore-o.specificityScore),s.slice(0,r).map(o=>o.obs)}function Gxe(t,e){let r=e.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n"),n=new Map;for(let l of t){let d=Zxe(l.created_at_epoch);n.has(d)||n.set(d,[]),n.get(d).push(l)}let i=Array.from(n.entries()).sort((l,d)=>{let p=Math.min(...l[1].map(m=>m.created_at_epoch)),f=Math.min(...d[1].map(m=>m.created_at_epoch));return p-f}),s=new Date,o=s.toLocaleDateString("en-CA"),a=s.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0}).toLowerCase().replace(" ",""),c=s.toLocaleTimeString("en-US",{timeZoneName:"short"}).split(" ").pop(),u=[`Current: ${o} ${a} ${c}`,"This file has prior observations. Only line 1 was read to save tokens.","- **Already know enough?** The timeline below may be all you need (semantic priming).","- **Need details?** get_observations([IDs]) \u2014 ~300 tokens each.","- **Need full file?** Read again with offset/limit for the section you need.",`- **Need to edit?** Edit works \u2014 the file is registered as read. Use smart_outline("${r}") for line numbers.`];for(let[l,d]of i){let p=[...d].sort((f,m)=>f.created_at_epoch-m.created_at_epoch);u.push(`### ${l}`);for(let f of p){let m=(f.title||"Untitled").replace(/[\r\n\t]+/g," ").replace(/\s+/g," ").trim().slice(0,160),h=Fxe[f.type]||"\u2753",g=qxe(Hxe(f.created_at_epoch));u.push(`${f.id} ${g} ${h} ${m}`)}}return u.join(` +`)}var Y5,Va,zxe,Lxe,Uxe,Fxe,FR,qR=Ee(()=>{"use strict";fr();te();Fs();Y5=require("fs"),Va=Pe(require("path"),1);y_();tr();It();Za();zxe=1500,Lxe=40,Uxe=15,Fxe={decision:"\u2696\uFE0F",bugfix:"\u{1F534}",feature:"\u{1F7E3}",refactor:"\u{1F504}",discovery:"\u{1F535}",change:"\u2705"};FR={async execute(t){let r=t.toolInput?.file_path;if(!r)return{continue:!0,suppressOutput:!0};try{let s=Va.default.isAbsolute(r)?r:Va.default.resolve(t.cwd||process.cwd(),r);if((0,Y5.statSync)(s).size0&&u.set("projects",s.allProjects.join(",")),u.set("limit",String(Lxe));let l=await Qe(`/api/observations/by-file?${u.toString()}`,{method:"GET"});if(!l.ok)return _.warn("HOOK","File context query failed, skipping",{status:l.status,filePath:r}),{continue:!0,suppressOutput:!0};let d=await l.json();if(!d.observations||d.observations.length===0)return{continue:!0,suppressOutput:!0};let p=Bxe(d.observations,c,Uxe);return p.length===0?{continue:!0,suppressOutput:!0}:{hookSpecificOutput:{hookEventName:"PreToolUse",additionalContext:Gxe(p,r),permissionDecision:"allow",updatedInput:{file_path:r,limit:1}}}}catch(s){return _.warn("HOOK","File context fetch error, skipping",{error:s instanceof Error?s.message:String(s)}),{continue:!0,suppressOutput:!0}}}}});function Q5(t){let e=Wxe[t];return e||(_.warn("HOOK",`Unknown event type: ${t}, returning no-op`),{async execute(){return{continue:!0,suppressOutput:!0,exitCode:it.SUCCESS}}})}var Wxe,e3=Ee(()=>{"use strict";Pn();te();DR();__();b_();zR();UR();S_();qR();x_();DR();__();b_();zR();UR();S_();qR();x_();Wxe={context:MR,"session-init":nm,observation:im,summarize:jR,"session-complete":om,"user-message":LR,"file-edit":sm,"file-context":FR}});var r3={};Fn(r3,{hookCommand:()=>Vxe,isWorkerUnavailableError:()=>t3});function t3(t){let e=t instanceof Error?t.message:String(t),r=e.toLowerCase();return["econnrefused","econnreset","epipe","etimedout","enotfound","econnaborted","enetunreach","ehostunreach","fetch failed","unable to connect","socket hang up"].some(i=>r.includes(i))||r.includes("timed out")||r.includes("timeout")||/failed:\s*5\d{2}/.test(e)||/status[:\s]+5\d{2}/.test(e)||/failed:\s*429/.test(e)||/status[:\s]+429/.test(e)?!0:(/failed:\s*4\d{2}/.test(e)||/status[:\s]+4\d{2}/.test(e)||t instanceof TypeError||t instanceof ReferenceError||t instanceof SyntaxError,!1)}async function Vxe(t,e,r={}){let n=process.stderr.write.bind(process.stderr);process.stderr.write=(()=>!0);try{let i=W5(t),s=Q5(e),o=await D5(),a=i.normalizeInput(o);a.platform=t;let c=await s.execute(a),u=i.formatOutput(c);console.log(JSON.stringify(u));let l=c.exitCode??it.SUCCESS;return r.skipExit||process.exit(l),l}catch(i){return t3(i)?(_.warn("HOOK",`Worker unavailable, skipping hook: ${i instanceof Error?i.message:i}`),r.skipExit||process.exit(it.SUCCESS),it.SUCCESS):(_.error("HOOK",`Hook error: ${i instanceof Error?i.message:i}`,{},i instanceof Error?i:void 0),r.skipExit||process.exit(it.BLOCKING_ERROR),it.BLOCKING_ERROR)}finally{process.stderr.write=n}}var n3=Ee(()=>{"use strict";j5();V5();e3();Pn();te()});var ZR={};Fn(ZR,{cleanClaudeMd:()=>awe,generateClaudeMd:()=>owe});function Xxe(t){return Jxe[t]||"\u{1F4DD}"}function Yxe(t){let e=(t.title?.length||0)+(t.subtitle?.length||0)+(t.narrative?.length||0)+(t.facts?.length||0);return Math.ceil(e/4)}function Qxe(t){let e=new Set;try{let n=(0,o3.execSync)("git ls-files",{cwd:t,encoding:"utf-8",maxBuffer:52428800}).trim().split(` +`).filter(i=>i);for(let i of n){let s=lr.default.join(t,i),o=lr.default.dirname(s);for(;o.length>t.length&&o.startsWith(t);)e.add(o),o=lr.default.dirname(o)}}catch(r){_.warn("CLAUDE_MD","git ls-files failed, falling back to directory walk",{error:String(r)}),a3(t,e)}return e}function a3(t,e,r=0){if(r>10)return;let n=["node_modules",".git",".next","dist","build",".cache","__pycache__",".venv","venv",".idea",".vscode","coverage",".claude-mem",".open-next",".turbo"];try{let i=(0,dr.readdirSync)(t,{withFileTypes:!0});for(let s of i){if(!s.isDirectory()||n.includes(s.name)||s.name.startsWith(".")&&s.name!==".claude")continue;let o=lr.default.join(t,s.name);e.add(o),a3(o,e,r+1)}}catch{}}function ewe(t,e){let r=n=>{if(!n)return!1;try{let i=JSON.parse(n);if(Array.isArray(i))return i.some(s=>Ra(s,e))}catch{}return!1};return r(t.files_modified)||r(t.files_read)}function twe(t,e,r,n){let i=n*3,s=` + SELECT o.*, o.discovery_tokens + FROM observations o + WHERE o.project = ? + AND (o.files_modified LIKE ? OR o.files_read LIKE ?) + ORDER BY o.created_at_epoch DESC + LIMIT ? + `,a=`%"${e.split(lr.default.sep).join("/")}/%`;return t.prepare(s).all(r,a,a,i).filter(u=>ewe(u,e)).slice(0,n)}function rwe(t,e){if(t.files_modified)try{let r=JSON.parse(t.files_modified);if(Array.isArray(r)){for(let n of r)if(Ra(n,e))return lr.default.basename(n)}}catch{}if(t.files_read)try{let r=JSON.parse(t.files_read);if(Array.isArray(r)){for(let n of r)if(Ra(n,e))return lr.default.basename(n)}}catch{}return"General"}function nwe(t,e){let r=[];if(r.push("# Recent Activity"),r.push(""),r.push(""),r.push(""),t.length===0)return r.push("*No recent activity*"),r.join(` +`);let n=Us(t,i=>i.created_at);for(let[i,s]of n){r.push(`### ${i}`),r.push("");let o=new Map;for(let a of s){let c=rwe(a,e);o.has(c)||o.set(c,[]),o.get(c).push(a)}for(let[a,c]of o){r.push(`**${a}**`),r.push("| ID | Time | T | Title | Read |"),r.push("|----|------|---|-------|------|");let u="";for(let l of c){let d=gr(l.created_at_epoch),p=d===u?'"':d;u=d;let f=Xxe(l.type),m=l.title||"Untitled",h=Yxe(l);r.push(`| #${l.id} | ${p} | ${f} | ${m} | ~${h} |`)}r.push("")}}return r.join(` +`).trim()}function iwe(t,e){let r=lr.default.resolve(t);if(r.includes("/.git/")||r.includes("\\.git\\")||r.endsWith("/.git")||r.endsWith("\\.git"))return;let n=lr.default.join(t,"CLAUDE.md"),i=`${n}.tmp`;if(!(0,dr.existsSync)(t))throw new Error(`Folder does not exist: ${t}`);let s="";(0,dr.existsSync)(n)&&(s=(0,dr.readFileSync)(n,"utf-8"));let o="",a="",c;if(!s)c=`${o} +${e} +${a}`;else{let u=s.indexOf(o),l=s.indexOf(a);u!==-1&&l!==-1?c=s.substring(0,u)+`${o} +${e} +${a}`+s.substring(l+a.length):c=s+` + +${o} +${e} +${a}`}(0,dr.writeFileSync)(i,c),(0,dr.renameSync)(i,n)}function swe(t,e,r,n,i,s,o){try{if(!(0,dr.existsSync)(e))return{success:!1,observationCount:0,error:"Folder no longer exists"};let a=lr.default.resolve(e),c=lr.default.resolve(s);if(!a.startsWith(c+lr.default.sep))return{success:!1,observationCount:0,error:"Path escapes project root"};let u=twe(t,r,n,o);if(u.length===0)return{success:!1,observationCount:0,error:"No observations for folder"};if(i)return{success:!0,observationCount:u.length};let l=nwe(u,r);return iwe(e,l),{success:!0,observationCount:u.length}}catch(a){return{success:!1,observationCount:0,error:String(a)}}}async function owe(t){try{let e=process.cwd(),r=ye.loadFromFile(Kxe),n=parseInt(r.CLAUDE_MEM_CONTEXT_OBSERVATIONS,10)||50;_.info("CLAUDE_MD","Starting CLAUDE.md generation",{workingDir:e,dryRun:t,observationLimit:n});let i=lr.default.basename(e),s=Qxe(e);if(s.size===0)return _.info("CLAUDE_MD","No folders found in project"),0;if(_.info("CLAUDE_MD",`Found ${s.size} folders in project`),!(0,dr.existsSync)(i3))return _.info("CLAUDE_MD","Database not found, no observations to process"),0;let o=new s3.Database(i3,{readonly:!0,create:!1}),a=0,c=0,u=0,l=Array.from(s).sort();for(let d of l){let p=lr.default.relative(e,d),f=swe(o,d,p,i,t,e,n);f.success?(_.debug("CLAUDE_MD",`Processed folder: ${p}`,{observationCount:f.observationCount}),a++):f.error?.includes("No observations")?c++:(_.warn("CLAUDE_MD",`Error processing folder: ${p}`,{error:f.error}),u++)}return o.close(),_.info("CLAUDE_MD","CLAUDE.md generation complete",{totalFolders:l.length,withObservations:a,noObservations:c,errors:u,dryRun:t}),0}catch(e){return _.error("CLAUDE_MD","Fatal error during CLAUDE.md generation",{error:String(e)}),1}}async function awe(t){try{let i=function(c){let u=["node_modules",".git",".next","dist","build",".cache","__pycache__",".venv","venv",".idea",".vscode","coverage",".claude-mem",".open-next",".turbo"];try{let l=(0,dr.readdirSync)(c,{withFileTypes:!0});for(let d of l){let p=lr.default.join(c,d.name);if(d.isDirectory())u.includes(d.name)||i(p);else if(d.name==="CLAUDE.md")try{(0,dr.readFileSync)(p,"utf-8").includes("")&&n.push(p)}catch{}}}catch{}};var e=i;let r=process.cwd();_.info("CLAUDE_MD","Starting CLAUDE.md cleanup",{workingDir:r,dryRun:t});let n=[];if(i(r),n.length===0)return _.info("CLAUDE_MD","No CLAUDE.md files with auto-generated content found"),0;_.info("CLAUDE_MD",`Found ${n.length} CLAUDE.md files with auto-generated content`);let s=0,o=0,a=0;for(let c of n){let u=lr.default.relative(r,c);try{let d=(0,dr.readFileSync)(c,"utf-8").replace(/[\s\S]*?<\/claude-mem-context>/g,"").trim();d===""?(t||(0,dr.unlinkSync)(c),_.debug("CLAUDE_MD",`${t?"[DRY-RUN] Would delete":"Deleted"} (empty): ${u}`),s++):(t||(0,dr.writeFileSync)(c,d),_.debug("CLAUDE_MD",`${t?"[DRY-RUN] Would clean":"Cleaned"}: ${u}`),o++)}catch(l){_.warn("CLAUDE_MD",`Error processing ${u}`,{error:String(l)}),a++}}return _.info("CLAUDE_MD","CLAUDE.md cleanup complete",{deleted:s,cleaned:o,errors:a,dryRun:t}),0}catch(r){return _.error("CLAUDE_MD","Fatal error during CLAUDE.md cleanup",{error:String(r)}),1}}var s3,lr,HR,dr,o3,i3,Kxe,Jxe,BR=Ee(()=>{"use strict";s3=require("bun:sqlite"),lr=Pe(require("path"),1),HR=Pe(require("os"),1),dr=require("fs"),o3=require("child_process");tr();Fs();K$();te();i3=lr.default.join(HR.default.homedir(),".claude-mem","claude-mem.db"),Kxe=lr.default.join(HR.default.homedir(),".claude-mem","settings.json"),Jxe={bugfix:"\u{1F534}",feature:"\u{1F7E3}",refactor:"\u{1F504}",change:"\u2705",discovery:"\u{1F535}",decision:"\u2696\uFE0F",session:"\u{1F3AF}",prompt:"\u{1F4AC}"}});te();var Ye;(function(t){t.assertEqual=i=>{};function e(i){}t.assertIs=e;function r(i){throw new Error}t.assertNever=r,t.arrayToEnum=i=>{let s={};for(let o of i)s[o]=o;return s},t.getValidEnumValues=i=>{let s=t.objectKeys(i).filter(a=>typeof i[i[a]]!="number"),o={};for(let a of s)o[a]=i[a];return t.objectValues(o)},t.objectValues=i=>t.objectKeys(i).map(function(s){return i[s]}),t.objectKeys=typeof Object.keys=="function"?i=>Object.keys(i):i=>{let s=[];for(let o in i)Object.prototype.hasOwnProperty.call(i,o)&&s.push(o);return s},t.find=(i,s)=>{for(let o of i)if(s(o))return o},t.isInteger=typeof Number.isInteger=="function"?i=>Number.isInteger(i):i=>typeof i=="number"&&Number.isFinite(i)&&Math.floor(i)===i;function n(i,s=" | "){return i.map(o=>typeof o=="string"?`'${o}'`:o).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(i,s)=>typeof s=="bigint"?s.toString():s})(Ye||(Ye={}));var cO;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(cO||(cO={}));var ie=Ye.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),ps=t=>{switch(typeof t){case"undefined":return ie.undefined;case"string":return ie.string;case"number":return Number.isNaN(t)?ie.nan:ie.number;case"boolean":return ie.boolean;case"function":return ie.function;case"bigint":return ie.bigint;case"symbol":return ie.symbol;case"object":return Array.isArray(t)?ie.array:t===null?ie.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?ie.promise:typeof Map<"u"&&t instanceof Map?ie.map:typeof Set<"u"&&t instanceof Set?ie.set:typeof Date<"u"&&t instanceof Date?ie.date:ie.object;default:return ie.unknown}};var B=Ye.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);var Tn=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},i=s=>{for(let o of s.issues)if(o.code==="invalid_union")o.unionErrors.map(i);else if(o.code==="invalid_return_type")i(o.returnTypeError);else if(o.code==="invalid_arguments")i(o.argumentsError);else if(o.path.length===0)n._errors.push(r(o));else{let a=n,c=0;for(;cr.message){let r=Object.create(null),n=[];for(let i of this.issues)if(i.path.length>0){let s=i.path[0];r[s]=r[s]||[],r[s].push(e(i))}else n.push(e(i));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};Tn.create=t=>new Tn(t);var j3=(t,e)=>{let r;switch(t.code){case B.invalid_type:t.received===ie.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case B.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,Ye.jsonStringifyReplacer)}`;break;case B.unrecognized_keys:r=`Unrecognized key(s) in object: ${Ye.joinValues(t.keys,", ")}`;break;case B.invalid_union:r="Invalid input";break;case B.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${Ye.joinValues(t.options)}`;break;case B.invalid_enum_value:r=`Invalid enum value. Expected ${Ye.joinValues(t.options)}, received '${t.received}'`;break;case B.invalid_arguments:r="Invalid function arguments";break;case B.invalid_return_type:r="Invalid function return type";break;case B.invalid_date:r="Invalid date";break;case B.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:Ye.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case B.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case B.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case B.custom:r="Invalid input";break;case B.invalid_intersection_types:r="Intersection results could not be merged";break;case B.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case B.not_finite:r="Number must be finite";break;default:r=e.defaultError,Ye.assertNever(t)}return{message:r}},ro=j3;var z3=ro;function wl(){return z3}var Sm=t=>{let{data:e,path:r,errorMaps:n,issueData:i}=t,s=[...r,...i.path||[]],o={...i,path:s};if(i.message!==void 0)return{...i,path:s,message:i.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(o,{data:e,defaultError:a}).message;return{...i,path:s,message:a}};function Q(t,e){let r=wl(),n=Sm({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===ro?void 0:ro].filter(i=>!!i)});t.common.issues.push(n)}var Ar=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let i of r){if(i.status==="aborted")return ke;i.status==="dirty"&&e.dirty(),n.push(i.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let i of r){let s=await i.key,o=await i.value;n.push({key:s,value:o})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let i of r){let{key:s,value:o}=i;if(s.status==="aborted"||o.status==="aborted")return ke;s.status==="dirty"&&e.dirty(),o.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof o.value<"u"||i.alwaysSet)&&(n[s.value]=o.value)}return{status:e.value,value:n}}},ke=Object.freeze({status:"aborted"}),Ja=t=>({status:"dirty",value:t}),Vr=t=>({status:"valid",value:t}),rb=t=>t.status==="aborted",nb=t=>t.status==="dirty",Bo=t=>t.status==="valid",El=t=>typeof Promise<"u"&&t instanceof Promise;var de;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(de||(de={}));var qn=class{constructor(e,r,n,i){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=i}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},uO=(t,e)=>{if(Bo(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new Tn(t.common.issues);return this._error=r,this._error}}};function Ae(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:i}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:i}:{errorMap:(o,a)=>{let{message:c}=t;return o.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:o.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:i}}var Fe=class{get description(){return this._def.description}_getType(e){return ps(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:ps(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Ar,ctx:{common:e.parent.common,data:e.data,parsedType:ps(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(El(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:ps(e)},i=this._parseSync({data:e,path:n.path,parent:n});return uO(n,i)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:ps(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Bo(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>Bo(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:ps(e)},i=this._parse({data:e,path:n.path,parent:n}),s=await(El(i)?i:Promise.resolve(i));return uO(n,s)}refine(e,r){let n=i=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(i):r;return this._refinement((i,s)=>{let o=e(i),a=()=>s.addIssue({code:B.custom,...n(i)});return typeof Promise<"u"&&o instanceof Promise?o.then(c=>c?!0:(a(),!1)):o?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,i)=>e(n)?!0:(i.addIssue(typeof r=="function"?r(n,i):r),!1))}_refinement(e){return new di({schema:this,typeName:be.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return li.create(this,this._def)}nullable(){return hs.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return io.create(this)}promise(){return Go.create(this,this._def)}or(e){return tc.create([this,e],this._def)}and(e){return rc.create(this,e,this._def)}transform(e){return new di({...Ae(this._def),schema:this,typeName:be.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new ac({...Ae(this._def),innerType:this,defaultValue:r,typeName:be.ZodDefault})}brand(){return new xm({typeName:be.ZodBranded,type:this,...Ae(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new cc({...Ae(this._def),innerType:this,catchValue:r,typeName:be.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return wm.create(this,e)}readonly(){return uc.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},L3=/^c[^\s-]{8,}$/i,U3=/^[0-9a-z]+$/,F3=/^[0-9A-HJKMNP-TV-Z]{26}$/i,q3=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,H3=/^[a-z0-9_-]{21}$/i,Z3=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,B3=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,G3=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,W3="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",ib,V3=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,K3=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,J3=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,X3=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Y3=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Q3=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,lO="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",eZ=new RegExp(`^${lO}$`);function dO(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function tZ(t){return new RegExp(`^${dO(t)}$`)}function rZ(t){let e=`${lO}T${dO(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function nZ(t,e){return!!((e==="v4"||!e)&&V3.test(t)||(e==="v6"||!e)&&J3.test(t))}function iZ(t,e){if(!Z3.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),i=JSON.parse(atob(n));return!(typeof i!="object"||i===null||"typ"in i&&i?.typ!=="JWT"||!i.alg||e&&i.alg!==e)}catch{return!1}}function sZ(t,e){return!!((e==="v4"||!e)&&K3.test(t)||(e==="v6"||!e)&&X3.test(t))}var Ya=class t extends Fe{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==ie.string){let s=this._getOrReturnCtx(e);return Q(s,{code:B.invalid_type,expected:ie.string,received:s.parsedType}),ke}let n=new Ar,i;for(let s of this._def.checks)if(s.kind==="min")e.data.lengths.value&&(i=this._getOrReturnCtx(e,i),Q(i,{code:B.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let o=e.data.length>s.value,a=e.data.lengthe.test(i),{validation:r,code:B.invalid_string,...de.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...de.errToObj(e)})}url(e){return this._addCheck({kind:"url",...de.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...de.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...de.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...de.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...de.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...de.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...de.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...de.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...de.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...de.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...de.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...de.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...de.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...de.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...de.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...de.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...de.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...de.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...de.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...de.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...de.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...de.errToObj(r)})}nonempty(e){return this.min(1,de.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew Ya({checks:[],typeName:be.ZodString,coerce:t?.coerce??!1,...Ae(t)});function oZ(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,i=r>n?r:n,s=Number.parseInt(t.toFixed(i).replace(".","")),o=Number.parseInt(e.toFixed(i).replace(".",""));return s%o/10**i}var kl=class t extends Fe{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==ie.number){let s=this._getOrReturnCtx(e);return Q(s,{code:B.invalid_type,expected:ie.number,received:s.parsedType}),ke}let n,i=new Ar;for(let s of this._def.checks)s.kind==="int"?Ye.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),Q(n,{code:B.invalid_type,expected:"integer",received:"float",message:s.message}),i.dirty()):s.kind==="min"?(s.inclusive?e.datas.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),Q(n,{code:B.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),i.dirty()):s.kind==="multipleOf"?oZ(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),Q(n,{code:B.not_multiple_of,multipleOf:s.value,message:s.message}),i.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),Q(n,{code:B.not_finite,message:s.message}),i.dirty()):Ye.assertNever(s);return{status:i.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,de.toString(r))}gt(e,r){return this.setLimit("min",e,!1,de.toString(r))}lte(e,r){return this.setLimit("max",e,!0,de.toString(r))}lt(e,r){return this.setLimit("max",e,!1,de.toString(r))}setLimit(e,r,n,i){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:de.toString(i)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:de.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:de.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:de.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:de.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:de.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:de.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:de.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:de.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:de.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuee.kind==="int"||e.kind==="multipleOf"&&Ye.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.valuenew kl({checks:[],typeName:be.ZodNumber,coerce:t?.coerce||!1,...Ae(t)});var Tl=class t extends Fe{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==ie.bigint)return this._getInvalidInput(e);let n,i=new Ar;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.datas.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),Q(n,{code:B.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),i.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),Q(n,{code:B.not_multiple_of,multipleOf:s.value,message:s.message}),i.dirty()):Ye.assertNever(s);return{status:i.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return Q(r,{code:B.invalid_type,expected:ie.bigint,received:r.parsedType}),ke}gte(e,r){return this.setLimit("min",e,!0,de.toString(r))}gt(e,r){return this.setLimit("min",e,!1,de.toString(r))}lte(e,r){return this.setLimit("max",e,!0,de.toString(r))}lt(e,r){return this.setLimit("max",e,!1,de.toString(r))}setLimit(e,r,n,i){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:de.toString(i)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:de.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:de.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:de.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:de.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:de.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew Tl({checks:[],typeName:be.ZodBigInt,coerce:t?.coerce??!1,...Ae(t)});var $l=class extends Fe{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==ie.boolean){let n=this._getOrReturnCtx(e);return Q(n,{code:B.invalid_type,expected:ie.boolean,received:n.parsedType}),ke}return Vr(e.data)}};$l.create=t=>new $l({typeName:be.ZodBoolean,coerce:t?.coerce||!1,...Ae(t)});var Il=class t extends Fe{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==ie.date){let s=this._getOrReturnCtx(e);return Q(s,{code:B.invalid_type,expected:ie.date,received:s.parsedType}),ke}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return Q(s,{code:B.invalid_date}),ke}let n=new Ar,i;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()s.value&&(i=this._getOrReturnCtx(e,i),Q(i,{code:B.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):Ye.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:de.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:de.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew Il({checks:[],coerce:t?.coerce||!1,typeName:be.ZodDate,...Ae(t)});var Rl=class extends Fe{_parse(e){if(this._getType(e)!==ie.symbol){let n=this._getOrReturnCtx(e);return Q(n,{code:B.invalid_type,expected:ie.symbol,received:n.parsedType}),ke}return Vr(e.data)}};Rl.create=t=>new Rl({typeName:be.ZodSymbol,...Ae(t)});var Qa=class extends Fe{_parse(e){if(this._getType(e)!==ie.undefined){let n=this._getOrReturnCtx(e);return Q(n,{code:B.invalid_type,expected:ie.undefined,received:n.parsedType}),ke}return Vr(e.data)}};Qa.create=t=>new Qa({typeName:be.ZodUndefined,...Ae(t)});var ec=class extends Fe{_parse(e){if(this._getType(e)!==ie.null){let n=this._getOrReturnCtx(e);return Q(n,{code:B.invalid_type,expected:ie.null,received:n.parsedType}),ke}return Vr(e.data)}};ec.create=t=>new ec({typeName:be.ZodNull,...Ae(t)});var Ol=class extends Fe{constructor(){super(...arguments),this._any=!0}_parse(e){return Vr(e.data)}};Ol.create=t=>new Ol({typeName:be.ZodAny,...Ae(t)});var no=class extends Fe{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Vr(e.data)}};no.create=t=>new no({typeName:be.ZodUnknown,...Ae(t)});var ji=class extends Fe{_parse(e){let r=this._getOrReturnCtx(e);return Q(r,{code:B.invalid_type,expected:ie.never,received:r.parsedType}),ke}};ji.create=t=>new ji({typeName:be.ZodNever,...Ae(t)});var Cl=class extends Fe{_parse(e){if(this._getType(e)!==ie.undefined){let n=this._getOrReturnCtx(e);return Q(n,{code:B.invalid_type,expected:ie.void,received:n.parsedType}),ke}return Vr(e.data)}};Cl.create=t=>new Cl({typeName:be.ZodVoid,...Ae(t)});var io=class t extends Fe{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),i=this._def;if(r.parsedType!==ie.array)return Q(r,{code:B.invalid_type,expected:ie.array,received:r.parsedType}),ke;if(i.exactLength!==null){let o=r.data.length>i.exactLength.value,a=r.data.lengthi.maxLength.value&&(Q(r,{code:B.too_big,maximum:i.maxLength.value,type:"array",inclusive:!0,exact:!1,message:i.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((o,a)=>i.type._parseAsync(new qn(r,o,r.path,a)))).then(o=>Ar.mergeArray(n,o));let s=[...r.data].map((o,a)=>i.type._parseSync(new qn(r,o,r.path,a)));return Ar.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:de.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:de.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:de.toString(r)}})}nonempty(e){return this.min(1,e)}};io.create=(t,e)=>new io({type:t,minLength:null,maxLength:null,exactLength:null,typeName:be.ZodArray,...Ae(e)});function Xa(t){if(t instanceof $n){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=li.create(Xa(n))}return new $n({...t._def,shape:()=>e})}else return t instanceof io?new io({...t._def,type:Xa(t.element)}):t instanceof li?li.create(Xa(t.unwrap())):t instanceof hs?hs.create(Xa(t.unwrap())):t instanceof ms?ms.create(t.items.map(e=>Xa(e))):t}var $n=class t extends Fe{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=Ye.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==ie.object){let u=this._getOrReturnCtx(e);return Q(u,{code:B.invalid_type,expected:ie.object,received:u.parsedType}),ke}let{status:n,ctx:i}=this._processInputParams(e),{shape:s,keys:o}=this._getCached(),a=[];if(!(this._def.catchall instanceof ji&&this._def.unknownKeys==="strip"))for(let u in i.data)o.includes(u)||a.push(u);let c=[];for(let u of o){let l=s[u],d=i.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new qn(i,d,i.path,u)),alwaysSet:u in i.data})}if(this._def.catchall instanceof ji){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:i.data[l]}});else if(u==="strict")a.length>0&&(Q(i,{code:B.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=i.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new qn(i,d,i.path,l)),alwaysSet:l in i.data})}}return i.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,p=await l.value;u.push({key:d,value:p,alwaysSet:l.alwaysSet})}return u}).then(u=>Ar.mergeObjectSync(n,u)):Ar.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return de.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let i=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:de.errToObj(e).message??i}:{message:i}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:be.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of Ye.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of Ye.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return Xa(this)}partial(e){let r={};for(let n of Ye.objectKeys(this.shape)){let i=this.shape[n];e&&!e[n]?r[n]=i:r[n]=i.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of Ye.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof li;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return pO(Ye.objectKeys(this.shape))}};$n.create=(t,e)=>new $n({shape:()=>t,unknownKeys:"strip",catchall:ji.create(),typeName:be.ZodObject,...Ae(e)});$n.strictCreate=(t,e)=>new $n({shape:()=>t,unknownKeys:"strict",catchall:ji.create(),typeName:be.ZodObject,...Ae(e)});$n.lazycreate=(t,e)=>new $n({shape:t,unknownKeys:"strip",catchall:ji.create(),typeName:be.ZodObject,...Ae(e)});var tc=class extends Fe{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function i(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let o=s.map(a=>new Tn(a.ctx.common.issues));return Q(r,{code:B.invalid_union,unionErrors:o}),ke}if(r.common.async)return Promise.all(n.map(async s=>{let o={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:o}),ctx:o}})).then(i);{let s,o=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!s&&(s={result:l,ctx:u}),u.common.issues.length&&o.push(u.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let a=o.map(c=>new Tn(c));return Q(r,{code:B.invalid_union,unionErrors:a}),ke}}get options(){return this._def.options}};tc.create=(t,e)=>new tc({options:t,typeName:be.ZodUnion,...Ae(e)});var fs=t=>t instanceof nc?fs(t.schema):t instanceof di?fs(t.innerType()):t instanceof ic?[t.value]:t instanceof sc?t.options:t instanceof oc?Ye.objectValues(t.enum):t instanceof ac?fs(t._def.innerType):t instanceof Qa?[void 0]:t instanceof ec?[null]:t instanceof li?[void 0,...fs(t.unwrap())]:t instanceof hs?[null,...fs(t.unwrap())]:t instanceof xm||t instanceof uc?fs(t.unwrap()):t instanceof cc?fs(t._def.innerType):[],sb=class t extends Fe{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==ie.object)return Q(r,{code:B.invalid_type,expected:ie.object,received:r.parsedType}),ke;let n=this.discriminator,i=r.data[n],s=this.optionsMap.get(i);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(Q(r,{code:B.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),ke)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let i=new Map;for(let s of r){let o=fs(s.shape[e]);if(!o.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of o){if(i.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);i.set(a,s)}}return new t({typeName:be.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:i,...Ae(n)})}};function ob(t,e){let r=ps(t),n=ps(e);if(t===e)return{valid:!0,data:t};if(r===ie.object&&n===ie.object){let i=Ye.objectKeys(e),s=Ye.objectKeys(t).filter(a=>i.indexOf(a)!==-1),o={...t,...e};for(let a of s){let c=ob(t[a],e[a]);if(!c.valid)return{valid:!1};o[a]=c.data}return{valid:!0,data:o}}else if(r===ie.array&&n===ie.array){if(t.length!==e.length)return{valid:!1};let i=[];for(let s=0;s{if(rb(s)||rb(o))return ke;let a=ob(s.value,o.value);return a.valid?((nb(s)||nb(o))&&r.dirty(),{status:r.value,value:a.data}):(Q(n,{code:B.invalid_intersection_types}),ke)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,o])=>i(s,o)):i(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};rc.create=(t,e,r)=>new rc({left:t,right:e,typeName:be.ZodIntersection,...Ae(r)});var ms=class t extends Fe{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==ie.array)return Q(n,{code:B.invalid_type,expected:ie.array,received:n.parsedType}),ke;if(n.data.lengththis._def.items.length&&(Q(n,{code:B.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((o,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new qn(n,o,n.path,a)):null}).filter(o=>!!o);return n.common.async?Promise.all(s).then(o=>Ar.mergeArray(r,o)):Ar.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};ms.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new ms({items:t,typeName:be.ZodTuple,rest:null,...Ae(e)})};var ab=class t extends Fe{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==ie.object)return Q(n,{code:B.invalid_type,expected:ie.object,received:n.parsedType}),ke;let i=[],s=this._def.keyType,o=this._def.valueType;for(let a in n.data)i.push({key:s._parse(new qn(n,a,n.path,a)),value:o._parse(new qn(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Ar.mergeObjectAsync(r,i):Ar.mergeObjectSync(r,i)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof Fe?new t({keyType:e,valueType:r,typeName:be.ZodRecord,...Ae(n)}):new t({keyType:Ya.create(),valueType:e,typeName:be.ZodRecord,...Ae(r)})}},Pl=class extends Fe{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==ie.map)return Q(n,{code:B.invalid_type,expected:ie.map,received:n.parsedType}),ke;let i=this._def.keyType,s=this._def.valueType,o=[...n.data.entries()].map(([a,c],u)=>({key:i._parse(new qn(n,a,n.path,[u,"key"])),value:s._parse(new qn(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of o){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return ke;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of o){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return ke;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};Pl.create=(t,e,r)=>new Pl({valueType:e,keyType:t,typeName:be.ZodMap,...Ae(r)});var Al=class t extends Fe{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==ie.set)return Q(n,{code:B.invalid_type,expected:ie.set,received:n.parsedType}),ke;let i=this._def;i.minSize!==null&&n.data.sizei.maxSize.value&&(Q(n,{code:B.too_big,maximum:i.maxSize.value,type:"set",inclusive:!0,exact:!1,message:i.maxSize.message}),r.dirty());let s=this._def.valueType;function o(c){let u=new Set;for(let l of c){if(l.status==="aborted")return ke;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new qn(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>o(c)):o(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:de.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:de.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};Al.create=(t,e)=>new Al({valueType:t,minSize:null,maxSize:null,typeName:be.ZodSet,...Ae(e)});var cb=class t extends Fe{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==ie.function)return Q(r,{code:B.invalid_type,expected:ie.function,received:r.parsedType}),ke;function n(a,c){return Sm({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,wl(),ro].filter(u=>!!u),issueData:{code:B.invalid_arguments,argumentsError:c}})}function i(a,c){return Sm({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,wl(),ro].filter(u=>!!u),issueData:{code:B.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},o=r.data;if(this._def.returns instanceof Go){let a=this;return Vr(async function(...c){let u=new Tn([]),l=await a._def.args.parseAsync(c,s).catch(f=>{throw u.addIssue(n(c,f)),u}),d=await Reflect.apply(o,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(f=>{throw u.addIssue(i(d,f)),u})})}else{let a=this;return Vr(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Tn([n(c,u.error)]);let l=Reflect.apply(o,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Tn([i(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:ms.create(e).rest(no.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||ms.create([]).rest(no.create()),returns:r||no.create(),typeName:be.ZodFunction,...Ae(n)})}},nc=class extends Fe{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};nc.create=(t,e)=>new nc({getter:t,typeName:be.ZodLazy,...Ae(e)});var ic=class extends Fe{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return Q(r,{received:r.data,code:B.invalid_literal,expected:this._def.value}),ke}return{status:"valid",value:e.data}}get value(){return this._def.value}};ic.create=(t,e)=>new ic({value:t,typeName:be.ZodLiteral,...Ae(e)});function pO(t,e){return new sc({values:t,typeName:be.ZodEnum,...Ae(e)})}var sc=class t extends Fe{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return Q(r,{expected:Ye.joinValues(n),received:r.parsedType,code:B.invalid_type}),ke}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return Q(r,{received:r.data,code:B.invalid_enum_value,options:n}),ke}return Vr(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};sc.create=pO;var oc=class extends Fe{_parse(e){let r=Ye.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==ie.string&&n.parsedType!==ie.number){let i=Ye.objectValues(r);return Q(n,{expected:Ye.joinValues(i),received:n.parsedType,code:B.invalid_type}),ke}if(this._cache||(this._cache=new Set(Ye.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let i=Ye.objectValues(r);return Q(n,{received:n.data,code:B.invalid_enum_value,options:i}),ke}return Vr(e.data)}get enum(){return this._def.values}};oc.create=(t,e)=>new oc({values:t,typeName:be.ZodNativeEnum,...Ae(e)});var Go=class extends Fe{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==ie.promise&&r.common.async===!1)return Q(r,{code:B.invalid_type,expected:ie.promise,received:r.parsedType}),ke;let n=r.parsedType===ie.promise?r.data:Promise.resolve(r.data);return Vr(n.then(i=>this._def.type.parseAsync(i,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Go.create=(t,e)=>new Go({type:t,typeName:be.ZodPromise,...Ae(e)});var di=class extends Fe{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===be.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),i=this._def.effect||null,s={addIssue:o=>{Q(n,o),o.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),i.type==="preprocess"){let o=i.transform(n.data,s);if(n.common.async)return Promise.resolve(o).then(async a=>{if(r.value==="aborted")return ke;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?ke:c.status==="dirty"?Ja(c.value):r.value==="dirty"?Ja(c.value):c});{if(r.value==="aborted")return ke;let a=this._def.schema._parseSync({data:o,path:n.path,parent:n});return a.status==="aborted"?ke:a.status==="dirty"?Ja(a.value):r.value==="dirty"?Ja(a.value):a}}if(i.type==="refinement"){let o=a=>{let c=i.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?ke:(a.status==="dirty"&&r.dirty(),o(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?ke:(a.status==="dirty"&&r.dirty(),o(a.value).then(()=>({status:r.value,value:a.value}))))}if(i.type==="transform")if(n.common.async===!1){let o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!Bo(o))return ke;let a=i.transform(o.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>Bo(o)?Promise.resolve(i.transform(o.value,s)).then(a=>({status:r.value,value:a})):ke);Ye.assertNever(i)}};di.create=(t,e,r)=>new di({schema:t,typeName:be.ZodEffects,effect:e,...Ae(r)});di.createWithPreprocess=(t,e,r)=>new di({schema:e,effect:{type:"preprocess",transform:t},typeName:be.ZodEffects,...Ae(r)});var li=class extends Fe{_parse(e){return this._getType(e)===ie.undefined?Vr(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};li.create=(t,e)=>new li({innerType:t,typeName:be.ZodOptional,...Ae(e)});var hs=class extends Fe{_parse(e){return this._getType(e)===ie.null?Vr(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};hs.create=(t,e)=>new hs({innerType:t,typeName:be.ZodNullable,...Ae(e)});var ac=class extends Fe{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===ie.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};ac.create=(t,e)=>new ac({innerType:t,typeName:be.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Ae(e)});var cc=class extends Fe{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},i=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return El(i)?i.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Tn(n.common.issues)},input:n.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new Tn(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};cc.create=(t,e)=>new cc({innerType:t,typeName:be.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Ae(e)});var Nl=class extends Fe{_parse(e){if(this._getType(e)!==ie.nan){let n=this._getOrReturnCtx(e);return Q(n,{code:B.invalid_type,expected:ie.nan,received:n.parsedType}),ke}return{status:"valid",value:e.data}}};Nl.create=t=>new Nl({typeName:be.ZodNaN,...Ae(t)});var xm=class extends Fe{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},wm=class t extends Fe{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?ke:s.status==="dirty"?(r.dirty(),Ja(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let i=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?ke:i.status==="dirty"?(r.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:be.ZodPipeline})}},uc=class extends Fe{_parse(e){let r=this._def.innerType._parse(e),n=i=>(Bo(i)&&(i.value=Object.freeze(i.value)),i);return El(r)?r.then(i=>n(i)):n(r)}unwrap(){return this._def.innerType}};uc.create=(t,e)=>new uc({innerType:t,typeName:be.ZodReadonly,...Ae(e)});var u0e={object:$n.lazycreate},be;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(be||(be={}));var l0e=Ya.create,d0e=kl.create,p0e=Nl.create,f0e=Tl.create,m0e=$l.create,h0e=Il.create,g0e=Rl.create,v0e=Qa.create,y0e=ec.create,_0e=Ol.create,b0e=no.create,S0e=ji.create,x0e=Cl.create,w0e=io.create,aZ=$n.create,E0e=$n.strictCreate,k0e=tc.create,T0e=sb.create,$0e=rc.create,I0e=ms.create,R0e=ab.create,O0e=Pl.create,C0e=Al.create,P0e=cb.create,A0e=nc.create,N0e=ic.create,M0e=sc.create,D0e=oc.create,j0e=Go.create,z0e=di.create,L0e=li.create,U0e=hs.create,F0e=di.createWithPreprocess,q0e=wm.create;var fO=Object.freeze({status:"aborted"});function O(t,e,r){function n(a,c){if(a._zod||Object.defineProperty(a,"_zod",{value:{def:c,constr:o,traits:new Set},enumerable:!1}),a._zod.traits.has(t))return;a._zod.traits.add(t),e(a,c);let u=o.prototype,l=Object.keys(u);for(let d=0;dr?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(o,"name",{value:t}),o}var zi=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Wo=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}},Em={};function ir(t){return t&&Object.assign(Em,t),Em}var W={};Fn(W,{BIGINT_FORMAT_RANGES:()=>yb,Class:()=>lb,NUMBER_FORMAT_RANGES:()=>vb,aborted:()=>co,allowsEval:()=>fb,assert:()=>mZ,assertEqual:()=>lZ,assertIs:()=>pZ,assertNever:()=>fZ,assertNotEqual:()=>dZ,assignProp:()=>oo,base64ToUint8Array:()=>SO,base64urlToUint8Array:()=>kZ,cached:()=>dc,captureStackTrace:()=>Tm,cleanEnum:()=>EZ,cleanRegex:()=>jl,clone:()=>Kr,cloneDef:()=>gZ,createTransparentProxy:()=>xZ,defineLazy:()=>De,esc:()=>km,escapeRegex:()=>Hn,extend:()=>vO,finalizeIssue:()=>dn,floatSafeRemainder:()=>db,getElementAtPath:()=>vZ,getEnumValues:()=>Dl,getLengthableOrigin:()=>Ul,getParsedType:()=>SZ,getSizableOrigin:()=>Ll,hexToUint8Array:()=>$Z,isObject:()=>Vo,isPlainObject:()=>ao,issue:()=>pc,joinValues:()=>Se,jsonStringifyReplacer:()=>lc,merge:()=>wZ,mergeDefs:()=>gs,normalizeParams:()=>ee,nullish:()=>so,numKeys:()=>bZ,objectClone:()=>hZ,omit:()=>gO,optionalKeys:()=>gb,parsedType:()=>Te,partial:()=>_O,pick:()=>hO,prefixIssues:()=>In,primitiveTypes:()=>hb,promiseAllObject:()=>yZ,propertyKeyTypes:()=>zl,randomString:()=>_Z,required:()=>bO,safeExtend:()=>yO,shallowClone:()=>mb,slugify:()=>pb,stringifyPrimitive:()=>xe,uint8ArrayToBase64:()=>xO,uint8ArrayToBase64url:()=>TZ,uint8ArrayToHex:()=>IZ,unwrapMessage:()=>Ml});function lZ(t){return t}function dZ(t){return t}function pZ(t){}function fZ(t){throw new Error("Unexpected value in exhaustive check")}function mZ(t){}function Dl(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,i])=>e.indexOf(+n)===-1).map(([n,i])=>i)}function Se(t,e="|"){return t.map(r=>xe(r)).join(e)}function lc(t,e){return typeof e=="bigint"?e.toString():e}function dc(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function so(t){return t==null}function jl(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function db(t,e){let r=(t.toString().split(".")[1]||"").length,n=e.toString(),i=(n.split(".")[1]||"").length;if(i===0&&/\d?e-\d?/.test(n)){let c=n.match(/\d?e-(\d?)/);c?.[1]&&(i=Number.parseInt(c[1]))}let s=r>i?r:i,o=Number.parseInt(t.toFixed(s).replace(".","")),a=Number.parseInt(e.toFixed(s).replace(".",""));return o%a/10**s}var mO=Symbol("evaluating");function De(t,e,r){let n;Object.defineProperty(t,e,{get(){if(n!==mO)return n===void 0&&(n=mO,n=r()),n},set(i){Object.defineProperty(t,e,{value:i})},configurable:!0})}function hZ(t){return Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t))}function oo(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function gs(...t){let e={};for(let r of t){let n=Object.getOwnPropertyDescriptors(r);Object.assign(e,n)}return Object.defineProperties({},e)}function gZ(t){return gs(t._zod.def)}function vZ(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function yZ(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let i={};for(let s=0;s{};function Vo(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var fb=dc(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function ao(t){if(Vo(t)===!1)return!1;let e=t.constructor;if(e===void 0||typeof e!="function")return!0;let r=e.prototype;return!(Vo(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function mb(t){return ao(t)?{...t}:Array.isArray(t)?[...t]:t}function bZ(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var SZ=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},zl=new Set(["string","number","symbol"]),hb=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Hn(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Kr(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function ee(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function xZ(t){let e;return new Proxy({},{get(r,n,i){return e??(e=t()),Reflect.get(e,n,i)},set(r,n,i,s){return e??(e=t()),Reflect.set(e,n,i,s)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,i){return e??(e=t()),Reflect.defineProperty(e,n,i)}})}function xe(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function gb(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var vb={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},yb={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function hO(t,e){let r=t._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");let s=gs(t._zod.def,{get shape(){let o={};for(let a in e){if(!(a in r.shape))throw new Error(`Unrecognized key: "${a}"`);e[a]&&(o[a]=r.shape[a])}return oo(this,"shape",o),o},checks:[]});return Kr(t,s)}function gO(t,e){let r=t._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");let s=gs(t._zod.def,{get shape(){let o={...t._zod.def.shape};for(let a in e){if(!(a in r.shape))throw new Error(`Unrecognized key: "${a}"`);e[a]&&delete o[a]}return oo(this,"shape",o),o},checks:[]});return Kr(t,s)}function vO(t,e){if(!ao(e))throw new Error("Invalid input to extend: expected a plain object");let r=t._zod.def.checks;if(r&&r.length>0){let s=t._zod.def.shape;for(let o in e)if(Object.getOwnPropertyDescriptor(s,o)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let i=gs(t._zod.def,{get shape(){let s={...t._zod.def.shape,...e};return oo(this,"shape",s),s}});return Kr(t,i)}function yO(t,e){if(!ao(e))throw new Error("Invalid input to safeExtend: expected a plain object");let r=gs(t._zod.def,{get shape(){let n={...t._zod.def.shape,...e};return oo(this,"shape",n),n}});return Kr(t,r)}function wZ(t,e){let r=gs(t._zod.def,{get shape(){let n={...t._zod.def.shape,...e._zod.def.shape};return oo(this,"shape",n),n},get catchall(){return e._zod.def.catchall},checks:[]});return Kr(t,r)}function _O(t,e,r){let i=e._zod.def.checks;if(i&&i.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");let o=gs(e._zod.def,{get shape(){let a=e._zod.def.shape,c={...a};if(r)for(let u in r){if(!(u in a))throw new Error(`Unrecognized key: "${u}"`);r[u]&&(c[u]=t?new t({type:"optional",innerType:a[u]}):a[u])}else for(let u in a)c[u]=t?new t({type:"optional",innerType:a[u]}):a[u];return oo(this,"shape",c),c},checks:[]});return Kr(e,o)}function bO(t,e,r){let n=gs(e._zod.def,{get shape(){let i=e._zod.def.shape,s={...i};if(r)for(let o in r){if(!(o in s))throw new Error(`Unrecognized key: "${o}"`);r[o]&&(s[o]=new t({type:"nonoptional",innerType:i[o]}))}else for(let o in i)s[o]=new t({type:"nonoptional",innerType:i[o]});return oo(this,"shape",s),s}});return Kr(e,n)}function co(t,e=0){if(t.aborted===!0)return!0;for(let r=e;r{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function Ml(t){return typeof t=="string"?t:t?.message}function dn(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let i=Ml(t.inst?._zod.def?.error?.(t))??Ml(e?.error?.(t))??Ml(r.customError?.(t))??Ml(r.localeError?.(t))??"Invalid input";n.message=i}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Ll(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Ul(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Te(t){let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"nan":"number";case"object":{if(t===null)return"null";if(Array.isArray(t))return"array";let r=t;if(r&&Object.getPrototypeOf(r)!==Object.prototype&&"constructor"in r&&r.constructor)return r.constructor.name}}return e}function pc(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function EZ(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}function SO(t){let e=atob(t),r=new Uint8Array(e.length);for(let n=0;ne.toString(16).padStart(2,"0")).join("")}var lb=class{constructor(...e){}};var wO=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),t.message=JSON.stringify(e,lc,2),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},$m=O("$ZodError",wO),Fl=O("$ZodError",wO,{Parent:Error});function Im(t,e=r=>r.message){let r={},n=[];for(let i of t.issues)i.path.length>0?(r[i.path[0]]=r[i.path[0]]||[],r[i.path[0]].push(e(i))):n.push(e(i));return{formErrors:n,fieldErrors:r}}function Rm(t,e=r=>r.message){let r={_errors:[]},n=i=>{for(let s of i.issues)if(s.code==="invalid_union"&&s.errors.length)s.errors.map(o=>n({issues:o}));else if(s.code==="invalid_key")n({issues:s.issues});else if(s.code==="invalid_element")n({issues:s.issues});else if(s.path.length===0)r._errors.push(e(s));else{let o=r,a=0;for(;a(e,r,n,i)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},o=e._zod.run({value:r,issues:[]},s);if(o instanceof Promise)throw new zi;if(o.issues.length){let a=new(i?.Err??t)(o.issues.map(c=>dn(c,s,ir())));throw Tm(a,i?.callee),a}return o.value},Hl=ql(Fl),Zl=t=>async(e,r,n,i)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},o=e._zod.run({value:r,issues:[]},s);if(o instanceof Promise&&(o=await o),o.issues.length){let a=new(i?.Err??t)(o.issues.map(c=>dn(c,s,ir())));throw Tm(a,i?.callee),a}return o.value},Bl=Zl(Fl),Gl=t=>(e,r,n)=>{let i=n?{...n,async:!1}:{async:!1},s=e._zod.run({value:r,issues:[]},i);if(s instanceof Promise)throw new zi;return s.issues.length?{success:!1,error:new(t??$m)(s.issues.map(o=>dn(o,i,ir())))}:{success:!0,data:s.value}},fc=Gl(Fl),Wl=t=>async(e,r,n)=>{let i=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},i);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(o=>dn(o,i,ir())))}:{success:!0,data:s.value}},Vl=Wl(Fl),EO=t=>(e,r,n)=>{let i=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return ql(t)(e,r,i)};var kO=t=>(e,r,n)=>ql(t)(e,r,n);var TO=t=>async(e,r,n)=>{let i=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Zl(t)(e,r,i)};var $O=t=>async(e,r,n)=>Zl(t)(e,r,n);var IO=t=>(e,r,n)=>{let i=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Gl(t)(e,r,i)};var RO=t=>(e,r,n)=>Gl(t)(e,r,n);var OO=t=>async(e,r,n)=>{let i=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Wl(t)(e,r,i)};var CO=t=>async(e,r,n)=>Wl(t)(e,r,n);var Zn={};Fn(Zn,{base64:()=>Nb,base64url:()=>Om,bigint:()=>Ub,boolean:()=>qb,browserEmail:()=>jZ,cidrv4:()=>Pb,cidrv6:()=>Ab,cuid:()=>_b,cuid2:()=>bb,date:()=>Db,datetime:()=>zb,domain:()=>UZ,duration:()=>kb,e164:()=>Mb,email:()=>$b,emoji:()=>Ib,extendedDuration:()=>OZ,guid:()=>Tb,hex:()=>FZ,hostname:()=>LZ,html5Email:()=>NZ,idnEmail:()=>DZ,integer:()=>Fb,ipv4:()=>Rb,ipv6:()=>Ob,ksuid:()=>wb,lowercase:()=>Bb,mac:()=>Cb,md5_base64:()=>HZ,md5_base64url:()=>ZZ,md5_hex:()=>qZ,nanoid:()=>Eb,null:()=>Hb,number:()=>Cm,rfc5322Email:()=>MZ,sha1_base64:()=>GZ,sha1_base64url:()=>WZ,sha1_hex:()=>BZ,sha256_base64:()=>KZ,sha256_base64url:()=>JZ,sha256_hex:()=>VZ,sha384_base64:()=>YZ,sha384_base64url:()=>QZ,sha384_hex:()=>XZ,sha512_base64:()=>tB,sha512_base64url:()=>rB,sha512_hex:()=>eB,string:()=>Lb,time:()=>jb,ulid:()=>Sb,undefined:()=>Zb,unicodeEmail:()=>PO,uppercase:()=>Gb,uuid:()=>Ko,uuid4:()=>CZ,uuid6:()=>PZ,uuid7:()=>AZ,xid:()=>xb});var _b=/^[cC][^\s-]{8,}$/,bb=/^[0-9a-z]+$/,Sb=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,xb=/^[0-9a-vA-V]{20}$/,wb=/^[A-Za-z0-9]{27}$/,Eb=/^[a-zA-Z0-9_-]{21}$/,kb=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,OZ=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Tb=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Ko=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,CZ=Ko(4),PZ=Ko(6),AZ=Ko(7),$b=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,NZ=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,MZ=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,PO=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,DZ=PO,jZ=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,zZ="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Ib(){return new RegExp(zZ,"u")}var Rb=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Ob=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,Cb=t=>{let e=Hn(t??":");return new RegExp(`^(?:[0-9A-F]{2}${e}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${e}){5}[0-9a-f]{2}$`)},Pb=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Ab=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Nb=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Om=/^[A-Za-z0-9_-]*$/,LZ=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,UZ=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,Mb=/^\+[1-9]\d{6,14}$/,AO="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",Db=new RegExp(`^${AO}$`);function NO(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function jb(t){return new RegExp(`^${NO(t)}$`)}function zb(t){let e=NO({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let n=`${e}(?:${r.join("|")})`;return new RegExp(`^${AO}T(?:${n})$`)}var Lb=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},Ub=/^-?\d+n?$/,Fb=/^-?\d+$/,Cm=/^-?\d+(?:\.\d+)?$/,qb=/^(?:true|false)$/i,Hb=/^null$/i;var Zb=/^undefined$/i;var Bb=/^[^A-Z]*$/,Gb=/^[^a-z]*$/,FZ=/^[0-9a-fA-F]*$/;function Kl(t,e){return new RegExp(`^[A-Za-z0-9+/]{${t}}${e}$`)}function Jl(t){return new RegExp(`^[A-Za-z0-9_-]{${t}}$`)}var qZ=/^[0-9a-fA-F]{32}$/,HZ=Kl(22,"=="),ZZ=Jl(22),BZ=/^[0-9a-fA-F]{40}$/,GZ=Kl(27,"="),WZ=Jl(27),VZ=/^[0-9a-fA-F]{64}$/,KZ=Kl(43,"="),JZ=Jl(43),XZ=/^[0-9a-fA-F]{96}$/,YZ=Kl(64,""),QZ=Jl(64),eB=/^[0-9a-fA-F]{128}$/,tB=Kl(86,"=="),rB=Jl(86);var bt=O("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),DO={number:"number",bigint:"bigint",object:"date"},Wb=O("$ZodCheckLessThan",(t,e)=>{bt.init(t,e);let r=DO[typeof e.value];t._zod.onattach.push(n=>{let i=n._zod.bag,s=(e.inclusive?i.maximum:i.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value{(e.inclusive?n.value<=e.value:n.value{bt.init(t,e);let r=DO[typeof e.value];t._zod.onattach.push(n=>{let i=n._zod.bag,s=(e.inclusive?i.minimum:i.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>s&&(e.inclusive?i.minimum=e.value:i.exclusiveMinimum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value>=e.value:n.value>e.value)||n.issues.push({origin:r,code:"too_small",minimum:typeof e.value=="object"?e.value.getTime():e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),jO=O("$ZodCheckMultipleOf",(t,e)=>{bt.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):db(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),zO=O("$ZodCheckNumberFormat",(t,e)=>{bt.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[i,s]=vb[e.format];t._zod.onattach.push(o=>{let a=o._zod.bag;a.format=e.format,a.minimum=i,a.maximum=s,r&&(a.pattern=Fb)}),t._zod.check=o=>{let a=o.value;if(r){if(!Number.isInteger(a)){o.issues.push({expected:n,format:e.format,code:"invalid_type",continue:!1,input:a,inst:t});return}if(!Number.isSafeInteger(a)){a>0?o.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,inclusive:!0,continue:!e.abort}):o.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,inclusive:!0,continue:!e.abort});return}}as&&o.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inclusive:!0,inst:t,continue:!e.abort})}}),LO=O("$ZodCheckBigIntFormat",(t,e)=>{bt.init(t,e);let[r,n]=yb[e.format];t._zod.onattach.push(i=>{let s=i._zod.bag;s.format=e.format,s.minimum=r,s.maximum=n}),t._zod.check=i=>{let s=i.value;sn&&i.issues.push({origin:"bigint",input:s,code:"too_big",maximum:n,inclusive:!0,inst:t,continue:!e.abort})}}),UO=O("$ZodCheckMaxSize",(t,e)=>{var r;bt.init(t,e),(r=t._zod.def).when??(r.when=n=>{let i=n.value;return!so(i)&&i.size!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum{let i=n.value;i.size<=e.maximum||n.issues.push({origin:Ll(i),code:"too_big",maximum:e.maximum,inclusive:!0,input:i,inst:t,continue:!e.abort})}}),FO=O("$ZodCheckMinSize",(t,e)=>{var r;bt.init(t,e),(r=t._zod.def).when??(r.when=n=>{let i=n.value;return!so(i)&&i.size!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>i&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let i=n.value;i.size>=e.minimum||n.issues.push({origin:Ll(i),code:"too_small",minimum:e.minimum,inclusive:!0,input:i,inst:t,continue:!e.abort})}}),qO=O("$ZodCheckSizeEquals",(t,e)=>{var r;bt.init(t,e),(r=t._zod.def).when??(r.when=n=>{let i=n.value;return!so(i)&&i.size!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag;i.minimum=e.size,i.maximum=e.size,i.size=e.size}),t._zod.check=n=>{let i=n.value,s=i.size;if(s===e.size)return;let o=s>e.size;n.issues.push({origin:Ll(i),...o?{code:"too_big",maximum:e.size}:{code:"too_small",minimum:e.size},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),HO=O("$ZodCheckMaxLength",(t,e)=>{var r;bt.init(t,e),(r=t._zod.def).when??(r.when=n=>{let i=n.value;return!so(i)&&i.length!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum{let i=n.value;if(i.length<=e.maximum)return;let o=Ul(i);n.issues.push({origin:o,code:"too_big",maximum:e.maximum,inclusive:!0,input:i,inst:t,continue:!e.abort})}}),ZO=O("$ZodCheckMinLength",(t,e)=>{var r;bt.init(t,e),(r=t._zod.def).when??(r.when=n=>{let i=n.value;return!so(i)&&i.length!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>i&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let i=n.value;if(i.length>=e.minimum)return;let o=Ul(i);n.issues.push({origin:o,code:"too_small",minimum:e.minimum,inclusive:!0,input:i,inst:t,continue:!e.abort})}}),BO=O("$ZodCheckLengthEquals",(t,e)=>{var r;bt.init(t,e),(r=t._zod.def).when??(r.when=n=>{let i=n.value;return!so(i)&&i.length!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag;i.minimum=e.length,i.maximum=e.length,i.length=e.length}),t._zod.check=n=>{let i=n.value,s=i.length;if(s===e.length)return;let o=Ul(i),a=s>e.length;n.issues.push({origin:o,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),Xl=O("$ZodCheckStringFormat",(t,e)=>{var r,n;bt.init(t,e),t._zod.onattach.push(i=>{let s=i._zod.bag;s.format=e.format,e.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=i=>{e.pattern.lastIndex=0,!e.pattern.test(i.value)&&i.issues.push({origin:"string",code:"invalid_format",format:e.format,input:i.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),GO=O("$ZodCheckRegex",(t,e)=>{Xl.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),WO=O("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Bb),Xl.init(t,e)}),VO=O("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Gb),Xl.init(t,e)}),KO=O("$ZodCheckIncludes",(t,e)=>{bt.init(t,e);let r=Hn(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(i=>{let s=i._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=i=>{i.value.includes(e.includes,e.position)||i.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:i.value,inst:t,continue:!e.abort})}}),JO=O("$ZodCheckStartsWith",(t,e)=>{bt.init(t,e);let r=new RegExp(`^${Hn(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let i=n._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),XO=O("$ZodCheckEndsWith",(t,e)=>{bt.init(t,e);let r=new RegExp(`.*${Hn(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let i=n._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}});function MO(t,e,r){t.issues.length&&e.issues.push(...In(r,t.issues))}var YO=O("$ZodCheckProperty",(t,e)=>{bt.init(t,e),t._zod.check=r=>{let n=e.schema._zod.run({value:r.value[e.property],issues:[]},{});if(n instanceof Promise)return n.then(i=>MO(i,r,e.property));MO(n,r,e.property)}}),QO=O("$ZodCheckMimeType",(t,e)=>{bt.init(t,e);let r=new Set(e.mime);t._zod.onattach.push(n=>{n._zod.bag.mime=e.mime}),t._zod.check=n=>{r.has(n.value.type)||n.issues.push({code:"invalid_value",values:e.mime,input:n.value.type,inst:t,continue:!e.abort})}}),e1=O("$ZodCheckOverwrite",(t,e)=>{bt.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Pm=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(` +`).filter(o=>o),i=Math.min(...n.map(o=>o.length-o.trimStart().length)),s=n.map(o=>o.slice(i)).map(o=>" ".repeat(this.indent*2)+o);for(let o of s)this.content.push(o)}compile(){let e=Function,r=this?.args,i=[...(this?.content??[""]).map(s=>` ${s}`)];return new e(...r,i.join(` +`))}};var r1={major:4,minor:3,patch:6};var Ce=O("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=r1;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let i of n)for(let s of i._zod.onattach)s(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let i=(o,a,c)=>{let u=co(o),l;for(let d of a){if(d._zod.def.when){if(!d._zod.def.when(o))continue}else if(u)continue;let p=o.issues.length,f=d._zod.check(o);if(f instanceof Promise&&c?.async===!1)throw new zi;if(l||f instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await f,o.issues.length!==p&&(u||(u=co(o,p)))});else{if(o.issues.length===p)continue;u||(u=co(o,p))}}return l?l.then(()=>o):o},s=(o,a,c)=>{if(co(o))return o.aborted=!0,o;let u=i(a,n,c);if(u instanceof Promise){if(c.async===!1)throw new zi;return u.then(l=>t._zod.parse(l,c))}return t._zod.parse(u,c)};t._zod.run=(o,a)=>{if(a.skipChecks)return t._zod.parse(o,a);if(a.direction==="backward"){let u=t._zod.parse({value:o.value,issues:[]},{...a,skipChecks:!0});return u instanceof Promise?u.then(l=>s(l,o,a)):s(u,o,a)}let c=t._zod.parse(o,a);if(c instanceof Promise){if(a.async===!1)throw new zi;return c.then(u=>i(u,n,a))}return i(c,n,a)}}De(t,"~standard",()=>({validate:i=>{try{let s=fc(t,i);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Vl(t,i).then(o=>o.success?{value:o.data}:{issues:o.error?.issues})}},vendor:"zod",version:1}))}),Jo=O("$ZodString",(t,e)=>{Ce.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Lb(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),mt=O("$ZodStringFormat",(t,e)=>{Xl.init(t,e),Jo.init(t,e)}),Jb=O("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Tb),mt.init(t,e)}),Xb=O("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=Ko(n))}else e.pattern??(e.pattern=Ko());mt.init(t,e)}),Yb=O("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=$b),mt.init(t,e)}),Qb=O("$ZodURL",(t,e)=>{mt.init(t,e),t._zod.check=r=>{try{let n=r.value.trim(),i=new URL(n);e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(i.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:e.hostname.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:r.value,inst:t,continue:!e.abort})),e.normalize?r.value=i.href:r.value=n;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),eS=O("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Ib()),mt.init(t,e)}),tS=O("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Eb),mt.init(t,e)}),rS=O("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=_b),mt.init(t,e)}),nS=O("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=bb),mt.init(t,e)}),iS=O("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Sb),mt.init(t,e)}),sS=O("$ZodXID",(t,e)=>{e.pattern??(e.pattern=xb),mt.init(t,e)}),oS=O("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=wb),mt.init(t,e)}),aS=O("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=zb(e)),mt.init(t,e)}),cS=O("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Db),mt.init(t,e)}),uS=O("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=jb(e)),mt.init(t,e)}),lS=O("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=kb),mt.init(t,e)}),dS=O("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Rb),mt.init(t,e),t._zod.bag.format="ipv4"}),pS=O("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Ob),mt.init(t,e),t._zod.bag.format="ipv6",t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),fS=O("$ZodMAC",(t,e)=>{e.pattern??(e.pattern=Cb(e.delimiter)),mt.init(t,e),t._zod.bag.format="mac"}),mS=O("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Pb),mt.init(t,e)}),hS=O("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Ab),mt.init(t,e),t._zod.check=r=>{let n=r.value.split("/");try{if(n.length!==2)throw new Error;let[i,s]=n;if(!s)throw new Error;let o=Number(s);if(`${o}`!==s)throw new Error;if(o<0||o>128)throw new Error;new URL(`http://[${i}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function m1(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var gS=O("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Nb),mt.init(t,e),t._zod.bag.contentEncoding="base64",t._zod.check=r=>{m1(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function nB(t){if(!Om.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return m1(r)}var vS=O("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Om),mt.init(t,e),t._zod.bag.contentEncoding="base64url",t._zod.check=r=>{nB(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),yS=O("$ZodE164",(t,e)=>{e.pattern??(e.pattern=Mb),mt.init(t,e)});function iB(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let i=JSON.parse(atob(n));return!("typ"in i&&i?.typ!=="JWT"||!i.alg||e&&(!("alg"in i)||i.alg!==e))}catch{return!1}}var _S=O("$ZodJWT",(t,e)=>{mt.init(t,e),t._zod.check=r=>{iB(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),bS=O("$ZodCustomStringFormat",(t,e)=>{mt.init(t,e),t._zod.check=r=>{e.fn(r.value)||r.issues.push({code:"invalid_format",format:e.format,input:r.value,inst:t,continue:!e.abort})}}),zm=O("$ZodNumber",(t,e)=>{Ce.init(t,e),t._zod.pattern=t._zod.bag.pattern??Cm,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let i=r.value;if(typeof i=="number"&&!Number.isNaN(i)&&Number.isFinite(i))return r;let s=typeof i=="number"?Number.isNaN(i)?"NaN":Number.isFinite(i)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:i,inst:t,...s?{received:s}:{}}),r}}),SS=O("$ZodNumberFormat",(t,e)=>{zO.init(t,e),zm.init(t,e)}),Yl=O("$ZodBoolean",(t,e)=>{Ce.init(t,e),t._zod.pattern=qb,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let i=r.value;return typeof i=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:t}),r}}),Lm=O("$ZodBigInt",(t,e)=>{Ce.init(t,e),t._zod.pattern=Ub,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=BigInt(r.value)}catch{}return typeof r.value=="bigint"||r.issues.push({expected:"bigint",code:"invalid_type",input:r.value,inst:t}),r}}),xS=O("$ZodBigIntFormat",(t,e)=>{LO.init(t,e),Lm.init(t,e)}),wS=O("$ZodSymbol",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;return typeof i=="symbol"||r.issues.push({expected:"symbol",code:"invalid_type",input:i,inst:t}),r}}),ES=O("$ZodUndefined",(t,e)=>{Ce.init(t,e),t._zod.pattern=Zb,t._zod.values=new Set([void 0]),t._zod.optin="optional",t._zod.optout="optional",t._zod.parse=(r,n)=>{let i=r.value;return typeof i>"u"||r.issues.push({expected:"undefined",code:"invalid_type",input:i,inst:t}),r}}),kS=O("$ZodNull",(t,e)=>{Ce.init(t,e),t._zod.pattern=Hb,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let i=r.value;return i===null||r.issues.push({expected:"null",code:"invalid_type",input:i,inst:t}),r}}),TS=O("$ZodAny",(t,e)=>{Ce.init(t,e),t._zod.parse=r=>r}),$S=O("$ZodUnknown",(t,e)=>{Ce.init(t,e),t._zod.parse=r=>r}),IS=O("$ZodNever",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)}),RS=O("$ZodVoid",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;return typeof i>"u"||r.issues.push({expected:"void",code:"invalid_type",input:i,inst:t}),r}}),OS=O("$ZodDate",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=new Date(r.value)}catch{}let i=r.value,s=i instanceof Date;return s&&!Number.isNaN(i.getTime())||r.issues.push({expected:"date",code:"invalid_type",input:i,...s?{received:"Invalid Date"}:{},inst:t}),r}});function n1(t,e,r){t.issues.length&&e.issues.push(...In(r,t.issues)),e.value[r]=t.value}var CS=O("$ZodArray",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;if(!Array.isArray(i))return r.issues.push({expected:"array",code:"invalid_type",input:i,inst:t}),r;r.value=Array(i.length);let s=[];for(let o=0;on1(u,r,o))):n1(c,r,o)}return s.length?Promise.all(s).then(()=>r):r}});function jm(t,e,r,n,i){if(t.issues.length){if(i&&!(r in n))return;e.issues.push(...In(r,t.issues))}t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}function h1(t){let e=Object.keys(t.shape);for(let n of e)if(!t.shape?.[n]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${n}": expected a Zod schema`);let r=gb(t.shape);return{...t,keys:e,keySet:new Set(e),numKeys:e.length,optionalKeys:new Set(r)}}function g1(t,e,r,n,i,s){let o=[],a=i.keySet,c=i.catchall._zod,u=c.def.type,l=c.optout==="optional";for(let d in e){if(a.has(d))continue;if(u==="never"){o.push(d);continue}let p=c.run({value:e[d],issues:[]},n);p instanceof Promise?t.push(p.then(f=>jm(f,r,d,e,l))):jm(p,r,d,e,l)}return o.length&&r.issues.push({code:"unrecognized_keys",keys:o,input:e,inst:s}),t.length?Promise.all(t).then(()=>r):r}var v1=O("$ZodObject",(t,e)=>{if(Ce.init(t,e),!Object.getOwnPropertyDescriptor(e,"shape")?.get){let a=e.shape;Object.defineProperty(e,"shape",{get:()=>{let c={...a};return Object.defineProperty(e,"shape",{value:c}),c}})}let n=dc(()=>h1(e));De(t._zod,"propValues",()=>{let a=e.shape,c={};for(let u in a){let l=a[u]._zod;if(l.values){c[u]??(c[u]=new Set);for(let d of l.values)c[u].add(d)}}return c});let i=Vo,s=e.catchall,o;t._zod.parse=(a,c)=>{o??(o=n.value);let u=a.value;if(!i(u))return a.issues.push({expected:"object",code:"invalid_type",input:u,inst:t}),a;a.value={};let l=[],d=o.shape;for(let p of o.keys){let f=d[p],m=f._zod.optout==="optional",h=f._zod.run({value:u[p],issues:[]},c);h instanceof Promise?l.push(h.then(g=>jm(g,a,p,u,m))):jm(h,a,p,u,m)}return s?g1(l,u,a,c,n.value,t):l.length?Promise.all(l).then(()=>a):a}}),y1=O("$ZodObjectJIT",(t,e)=>{v1.init(t,e);let r=t._zod.parse,n=dc(()=>h1(e)),i=p=>{let f=new Pm(["shape","payload","ctx"]),m=n.value,h=b=>{let S=km(b);return`shape[${S}]._zod.run({ value: input[${S}], issues: [] }, ctx)`};f.write("const input = payload.value;");let g=Object.create(null),v=0;for(let b of m.keys)g[b]=`key_${v++}`;f.write("const newResult = {};");for(let b of m.keys){let S=g[b],x=km(b),E=p[b]?._zod?.optout==="optional";f.write(`const ${S} = ${h(b)};`),E?f.write(` + if (${S}.issues.length) { + if (${x} in input) { + payload.issues = payload.issues.concat(${S}.issues.map(iss => ({ ...iss, - path: iss.path ? [${j}, ...iss.path] : [${j}] + path: iss.path ? [${x}, ...iss.path] : [${x}] }))); } } - if (${A}.value === undefined) { - if (${j} in input) { - newResult[${j}] = undefined; + if (${S}.value === undefined) { + if (${x} in input) { + newResult[${x}] = undefined; } } else { - newResult[${j}] = ${A}.value; + newResult[${x}] = ${S}.value; } - `):p.write(` - if (${A}.issues.length) { - payload.issues = payload.issues.concat(${A}.issues.map(iss => ({ + `):f.write(` + if (${S}.issues.length) { + payload.issues = payload.issues.concat(${S}.issues.map(iss => ({ ...iss, - path: iss.path ? [${j}, ...iss.path] : [${j}] + path: iss.path ? [${x}, ...iss.path] : [${x}] }))); } - if (${A}.value === undefined) { - if (${j} in input) { - newResult[${j}] = undefined; + if (${S}.value === undefined) { + if (${x} in input) { + newResult[${x}] = undefined; } } else { - newResult[${j}] = ${A}.value; + newResult[${x}] = ${S}.value; } - `)}p.write("payload.value = newResult;"),p.write("return payload;");let E=p.compile();return(I,A)=>E(m,I,A)},i,a=gr,s=!_i.jitless,u=s&&Hs.value,l=t.catchall,d;e._zod.parse=(m,p)=>{d??(d=n.value);let g=m.value;return a(g)?s&&u&&p?.async===!1&&p.jitless!==!0?(i||(i=o(t.shape)),m=i(m,p),l?Lm([],g,m,p,d,e):m):r(m,p):(m.issues.push({expected:"object",code:"invalid_type",input:g,inst:e}),m)}});function Tm(e,t,r,n){for(let i of e)if(i.issues.length===0)return t.value=i.value,t;let o=e.filter(i=>!er(i));return o.length===1?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map(i=>i.issues.map(a=>qe(a,n,be())))}),t)}var no=f("$ZodUnion",(e,t)=>{Z.init(e,t),V(e._zod,"optin",()=>t.options.some(o=>o._zod.optin==="optional")?"optional":void 0),V(e._zod,"optout",()=>t.options.some(o=>o._zod.optout==="optional")?"optional":void 0),V(e._zod,"values",()=>{if(t.options.every(o=>o._zod.values))return new Set(t.options.flatMap(o=>Array.from(o._zod.values)))}),V(e._zod,"pattern",()=>{if(t.options.every(o=>o._zod.pattern)){let o=t.options.map(i=>i._zod.pattern);return new RegExp(`^(${o.map(i=>Ln(i.source)).join("|")})$`)}});let r=t.options.length===1,n=t.options[0]._zod.run;e._zod.parse=(o,i)=>{if(r)return n(o,i);let a=!1,s=[];for(let c of t.options){let u=c._zod.run({value:o.value,issues:[]},i);if(u instanceof Promise)s.push(u),a=!0;else{if(u.issues.length===0)return u;s.push(u)}}return a?Promise.all(s).then(c=>Tm(c,o,e,i)):Tm(s,o,e,i)}});function Pm(e,t,r,n){let o=e.filter(i=>i.issues.length===0);return o.length===1?(t.value=o[0].value,t):(o.length===0?t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map(i=>i.issues.map(a=>qe(a,n,be())))}):t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:[],inclusive:!1}),t)}var pu=f("$ZodXor",(e,t)=>{no.init(e,t),t.inclusive=!1;let r=t.options.length===1,n=t.options[0]._zod.run;e._zod.parse=(o,i)=>{if(r)return n(o,i);let a=!1,s=[];for(let c of t.options){let u=c._zod.run({value:o.value,issues:[]},i);u instanceof Promise?(s.push(u),a=!0):s.push(u)}return a?Promise.all(s).then(c=>Pm(c,o,e,i)):Pm(s,o,e,i)}}),fu=f("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,no.init(e,t);let r=e._zod.parse;V(e._zod,"propValues",()=>{let o={};for(let i of t.options){let a=i._zod.propValues;if(!a||Object.keys(a).length===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(i)}"`);for(let[s,c]of Object.entries(a)){o[s]||(o[s]=new Set);for(let u of c)o[s].add(u)}}return o});let n=Hr(()=>{let o=t.options,i=new Map;for(let a of o){let s=a._zod.propValues?.[t.discriminator];if(!s||s.size===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(a)}"`);for(let c of s){if(i.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);i.set(c,a)}}return i});e._zod.parse=(o,i)=>{let a=o.value;if(!gr(a))return o.issues.push({code:"invalid_type",expected:"object",input:a,inst:e}),o;let s=n.value.get(a?.[t.discriminator]);return s?s._zod.run(o,i):t.unionFallback?r(o,i):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,input:a,path:[t.discriminator],inst:e}),o)}}),mu=f("$ZodIntersection",(e,t)=>{Z.init(e,t),e._zod.parse=(r,n)=>{let o=r.value,i=t.left._zod.run({value:o,issues:[]},n),a=t.right._zod.run({value:o,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([c,u])=>Om(r,c,u)):Om(r,i,a)}});function Tc(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(Qt(e)&&Qt(t)){let r=Object.keys(t),n=Object.keys(e).filter(i=>r.indexOf(i)!==-1),o={...e,...t};for(let i of n){let a=Tc(e[i],t[i]);if(!a.valid)return{valid:!1,mergeErrorPath:[i,...a.mergeErrorPath]};o[i]=a.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;ns.l&&s.r).map(([s])=>s);if(i.length&&o&&e.issues.push({...o,keys:i}),er(e))return e;let a=Tc(t.value,r.value);if(!a.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(a.mergeErrorPath)}`);return e.value=a.data,e}var Ni=f("$ZodTuple",(e,t)=>{Z.init(e,t);let r=t.items;e._zod.parse=(n,o)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({input:i,inst:e,expected:"tuple",code:"invalid_type"}),n;n.value=[];let a=[],s=[...r].reverse().findIndex(l=>l._zod.optin!=="optional"),c=s===-1?0:r.length-s;if(!t.rest){let l=i.length>r.length,d=i.length=i.length&&u>=c)continue;let d=l._zod.run({value:i[u],issues:[]},o);d instanceof Promise?a.push(d.then(m=>Ii(m,n,u))):Ii(d,n,u)}if(t.rest){let l=i.slice(r.length);for(let d of l){u++;let m=t.rest._zod.run({value:d,issues:[]},o);m instanceof Promise?a.push(m.then(p=>Ii(p,n,u))):Ii(m,n,u)}}return a.length?Promise.all(a).then(()=>n):n}});function Ii(e,t,r){e.issues.length&&t.issues.push(...Ge(r,e.issues)),t.value[r]=e.value}var hu=f("$ZodRecord",(e,t)=>{Z.init(e,t),e._zod.parse=(r,n)=>{let o=r.value;if(!Qt(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:e}),r;let i=[],a=t.keyType._zod.values;if(a){r.value={};let s=new Set;for(let u of a)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){s.add(typeof u=="number"?u.toString():u);let l=t.valueType._zod.run({value:o[u],issues:[]},n);l instanceof Promise?i.push(l.then(d=>{d.issues.length&&r.issues.push(...Ge(u,d.issues)),r.value[u]=d.value})):(l.issues.length&&r.issues.push(...Ge(u,l.issues)),r.value[u]=l.value)}let c;for(let u in o)s.has(u)||(c=c??[],c.push(u));c&&c.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:e,keys:c})}else{r.value={};for(let s of Reflect.ownKeys(o)){if(s==="__proto__")continue;let c=t.keyType._zod.run({value:s,issues:[]},n);if(c instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof s=="string"&&wi.test(s)&&c.issues.length&&c.issues.some(d=>d.code==="invalid_type"&&d.expected==="number")){let d=t.keyType._zod.run({value:Number(s),issues:[]},n);if(d instanceof Promise)throw new Error("Async schemas not supported in object keys currently");d.issues.length===0&&(c=d)}if(c.issues.length){t.mode==="loose"?r.value[s]=o[s]:r.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map(d=>qe(d,n,be())),input:s,path:[s],inst:e});continue}let l=t.valueType._zod.run({value:o[s],issues:[]},n);l instanceof Promise?i.push(l.then(d=>{d.issues.length&&r.issues.push(...Ge(s,d.issues)),r.value[c.value]=d.value})):(l.issues.length&&r.issues.push(...Ge(s,l.issues)),r.value[c.value]=l.value)}}return i.length?Promise.all(i).then(()=>r):r}}),gu=f("$ZodMap",(e,t)=>{Z.init(e,t),e._zod.parse=(r,n)=>{let o=r.value;if(!(o instanceof Map))return r.issues.push({expected:"map",code:"invalid_type",input:o,inst:e}),r;let i=[];r.value=new Map;for(let[a,s]of o){let c=t.keyType._zod.run({value:a,issues:[]},n),u=t.valueType._zod.run({value:s,issues:[]},n);c instanceof Promise||u instanceof Promise?i.push(Promise.all([c,u]).then(([l,d])=>{jm(l,d,r,a,o,e,n)})):jm(c,u,r,a,o,e,n)}return i.length?Promise.all(i).then(()=>r):r}});function jm(e,t,r,n,o,i,a){e.issues.length&&(qn.has(typeof n)?r.issues.push(...Ge(n,e.issues)):r.issues.push({code:"invalid_key",origin:"map",input:o,inst:i,issues:e.issues.map(s=>qe(s,a,be()))})),t.issues.length&&(qn.has(typeof n)?r.issues.push(...Ge(n,t.issues)):r.issues.push({origin:"map",code:"invalid_element",input:o,inst:i,key:n,issues:t.issues.map(s=>qe(s,a,be()))})),r.value.set(e.value,t.value)}var vu=f("$ZodSet",(e,t)=>{Z.init(e,t),e._zod.parse=(r,n)=>{let o=r.value;if(!(o instanceof Set))return r.issues.push({input:o,inst:e,expected:"set",code:"invalid_type"}),r;let i=[];r.value=new Set;for(let a of o){let s=t.valueType._zod.run({value:a,issues:[]},n);s instanceof Promise?i.push(s.then(c=>Dm(c,r))):Dm(s,r)}return i.length?Promise.all(i).then(()=>r):r}});function Dm(e,t){e.issues.length&&t.issues.push(...e.issues),t.value.add(e.value)}var _u=f("$ZodEnum",(e,t)=>{Z.init(e,t);let r=Zn(t.entries),n=new Set(r);e._zod.values=n,e._zod.pattern=new RegExp(`^(${r.filter(o=>qn.has(typeof o)).map(o=>typeof o=="string"?tt(o):o.toString()).join("|")})$`),e._zod.parse=(o,i)=>{let a=o.value;return n.has(a)||o.issues.push({code:"invalid_value",values:r,input:a,inst:e}),o}}),yu=f("$ZodLiteral",(e,t)=>{if(Z.init(e,t),t.values.length===0)throw new Error("Cannot create literal schema with no valid values");let r=new Set(t.values);e._zod.values=r,e._zod.pattern=new RegExp(`^(${t.values.map(n=>typeof n=="string"?tt(n):n?tt(n.toString()):String(n)).join("|")})$`),e._zod.parse=(n,o)=>{let i=n.value;return r.has(i)||n.issues.push({code:"invalid_value",values:t.values,input:i,inst:e}),n}}),$u=f("$ZodFile",(e,t)=>{Z.init(e,t),e._zod.parse=(r,n)=>{let o=r.value;return o instanceof File||r.issues.push({expected:"file",code:"invalid_type",input:o,inst:e}),r}}),bu=f("$ZodTransform",(e,t)=>{Z.init(e,t),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new hr(e.constructor.name);let o=t.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(a=>(r.value=a,r));if(o instanceof Promise)throw new _t;return r.value=o,r}});function Nm(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}var Ri=f("$ZodOptional",(e,t)=>{Z.init(e,t),e._zod.optin="optional",e._zod.optout="optional",V(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),V(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${Ln(r.source)})?$`):void 0}),e._zod.parse=(r,n)=>{if(t.innerType._zod.optin==="optional"){let o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>Nm(i,r.value)):Nm(o,r.value)}return r.value===void 0?r:t.innerType._zod.run(r,n)}}),xu=f("$ZodExactOptional",(e,t)=>{Ri.init(e,t),V(e._zod,"values",()=>t.innerType._zod.values),V(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(r,n)=>t.innerType._zod.run(r,n)}),ku=f("$ZodNullable",(e,t)=>{Z.init(e,t),V(e._zod,"optin",()=>t.innerType._zod.optin),V(e._zod,"optout",()=>t.innerType._zod.optout),V(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${Ln(r.source)}|null)$`):void 0}),V(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(r,n)=>r.value===null?r:t.innerType._zod.run(r,n)}),Su=f("$ZodDefault",(e,t)=>{Z.init(e,t),e._zod.optin="optional",V(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)return r.value=t.defaultValue,r;let o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>Rm(i,t)):Rm(o,t)}});function Rm(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var wu=f("$ZodPrefault",(e,t)=>{Z.init(e,t),e._zod.optin="optional",V(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>(n.direction==="backward"||r.value===void 0&&(r.value=t.defaultValue),t.innerType._zod.run(r,n))}),zu=f("$ZodNonOptional",(e,t)=>{Z.init(e,t),V(e._zod,"values",()=>{let r=t.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),e._zod.parse=(r,n)=>{let o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>Am(i,e)):Am(o,e)}});function Am(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}var Iu=f("$ZodSuccess",(e,t)=>{Z.init(e,t),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new hr("ZodSuccess");let o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>(r.value=i.issues.length===0,r)):(r.value=o.issues.length===0,r)}}),Eu=f("$ZodCatch",(e,t)=>{Z.init(e,t),V(e._zod,"optin",()=>t.innerType._zod.optin),V(e._zod,"optout",()=>t.innerType._zod.optout),V(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);let o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>(r.value=i.value,i.issues.length&&(r.value=t.catchValue({...r,error:{issues:i.issues.map(a=>qe(a,n,be()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=t.catchValue({...r,error:{issues:o.issues.map(i=>qe(i,n,be()))},input:r.value}),r.issues=[]),r)}}),Tu=f("$ZodNaN",(e,t)=>{Z.init(e,t),e._zod.parse=(r,n)=>((typeof r.value!="number"||!Number.isNaN(r.value))&&r.issues.push({input:r.value,inst:e,expected:"nan",code:"invalid_type"}),r)}),Pu=f("$ZodPipe",(e,t)=>{Z.init(e,t),V(e._zod,"values",()=>t.in._zod.values),V(e._zod,"optin",()=>t.in._zod.optin),V(e._zod,"optout",()=>t.out._zod.optout),V(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(r,n)=>{if(n.direction==="backward"){let i=t.out._zod.run(r,n);return i instanceof Promise?i.then(a=>Ei(a,t.in,n)):Ei(i,t.in,n)}let o=t.in._zod.run(r,n);return o instanceof Promise?o.then(i=>Ei(i,t.out,n)):Ei(o,t.out,n)}});function Ei(e,t,r){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},r)}var oo=f("$ZodCodec",(e,t)=>{Z.init(e,t),V(e._zod,"values",()=>t.in._zod.values),V(e._zod,"optin",()=>t.in._zod.optin),V(e._zod,"optout",()=>t.out._zod.optout),V(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(r,n)=>{if((n.direction||"forward")==="forward"){let i=t.in._zod.run(r,n);return i instanceof Promise?i.then(a=>Ti(a,t,n)):Ti(i,t,n)}else{let i=t.out._zod.run(r,n);return i instanceof Promise?i.then(a=>Ti(a,t,n)):Ti(i,t,n)}}});function Ti(e,t,r){if(e.issues.length)return e.aborted=!0,e;if((r.direction||"forward")==="forward"){let o=t.transform(e.value,e);return o instanceof Promise?o.then(i=>Pi(e,i,t.out,r)):Pi(e,o,t.out,r)}else{let o=t.reverseTransform(e.value,e);return o instanceof Promise?o.then(i=>Pi(e,i,t.in,r)):Pi(e,o,t.in,r)}}function Pi(e,t,r,n){return e.issues.length?(e.aborted=!0,e):r._zod.run({value:t,issues:e.issues},n)}var Ou=f("$ZodReadonly",(e,t)=>{Z.init(e,t),V(e._zod,"propValues",()=>t.innerType._zod.propValues),V(e._zod,"values",()=>t.innerType._zod.values),V(e._zod,"optin",()=>t.innerType?._zod?.optin),V(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);let o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(Mm):Mm(o)}});function Mm(e){return e.value=Object.freeze(e.value),e}var ju=f("$ZodTemplateLiteral",(e,t)=>{Z.init(e,t);let r=[];for(let n of t.parts)if(typeof n=="object"&&n!==null){if(!n._zod.pattern)throw new Error(`Invalid template literal part, no pattern found: ${[...n._zod.traits].shift()}`);let o=n._zod.pattern instanceof RegExp?n._zod.pattern.source:n._zod.pattern;if(!o)throw new Error(`Invalid template literal part: ${n._zod.traits}`);let i=o.startsWith("^")?1:0,a=o.endsWith("$")?o.length-1:o.length;r.push(o.slice(i,a))}else if(n===null||Gs.has(typeof n))r.push(tt(`${n}`));else throw new Error(`Invalid template literal part: ${n}`);e._zod.pattern=new RegExp(`^${r.join("")}$`),e._zod.parse=(n,o)=>typeof n.value!="string"?(n.issues.push({input:n.value,inst:e,expected:"string",code:"invalid_type"}),n):(e._zod.pattern.lastIndex=0,e._zod.pattern.test(n.value)||n.issues.push({input:n.value,inst:e,code:"invalid_format",format:t.format??"template_literal",pattern:e._zod.pattern.source}),n)}),Du=f("$ZodFunction",(e,t)=>(Z.init(e,t),e._def=t,e._zod.def=t,e.implement=r=>{if(typeof r!="function")throw new Error("implement() must be called with a function");return function(...n){let o=e._def.input?Kn(e._def.input,n):n,i=Reflect.apply(r,this,o);return e._def.output?Kn(e._def.output,i):i}},e.implementAsync=r=>{if(typeof r!="function")throw new Error("implementAsync() must be called with a function");return async function(...n){let o=e._def.input?await Gn(e._def.input,n):n,i=await Reflect.apply(r,this,o);return e._def.output?await Gn(e._def.output,i):i}},e._zod.parse=(r,n)=>typeof r.value!="function"?(r.issues.push({code:"invalid_type",expected:"function",input:r.value,inst:e}),r):(e._def.output&&e._def.output._zod.def.type==="promise"?r.value=e.implementAsync(r.value):r.value=e.implement(r.value),r),e.input=(...r)=>{let n=e.constructor;return Array.isArray(r[0])?new n({type:"function",input:new Ni({type:"tuple",items:r[0],rest:r[1]}),output:e._def.output}):new n({type:"function",input:r[0],output:e._def.output})},e.output=r=>{let n=e.constructor;return new n({type:"function",input:e._def.input,output:r})},e)),Nu=f("$ZodPromise",(e,t)=>{Z.init(e,t),e._zod.parse=(r,n)=>Promise.resolve(r.value).then(o=>t.innerType._zod.run({value:o,issues:[]},n))}),Ru=f("$ZodLazy",(e,t)=>{Z.init(e,t),V(e._zod,"innerType",()=>t.getter()),V(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),V(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),V(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),V(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(r,n)=>e._zod.innerType._zod.run(r,n)}),Au=f("$ZodCustom",(e,t)=>{se.init(e,t),Z.init(e,t),e._zod.parse=(r,n)=>r,e._zod.check=r=>{let n=r.value,o=t.fn(n);if(o instanceof Promise)return o.then(i=>Cm(i,r,n,e));Cm(o,r,n,e)}});function Cm(e,t,r,n){if(!e){let o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(o.params=n._zod.def.params),t.issues.push(Gr(o))}}var Jb=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function t(o){return e[o]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},n={nan:"NaN"};return o=>{switch(o.code){case"invalid_type":{let i=n[o.expected]??o.expected,a=C(o.input),s=n[a]??a;return`Invalid input: expected ${i}, received ${s}`}case"invalid_value":return o.values.length===1?`Invalid input: expected ${R(o.values[0])}`:`Invalid option: expected one of ${N(o.values,"|")}`;case"too_big":{let i=o.inclusive?"<=":"<",a=t(o.origin);return a?`Too big: expected ${o.origin??"value"} to have ${i}${o.maximum.toString()} ${a.unit??"elements"}`:`Too big: expected ${o.origin??"value"} to be ${i}${o.maximum.toString()}`}case"too_small":{let i=o.inclusive?">=":">",a=t(o.origin);return a?`Too small: expected ${o.origin} to have ${i}${o.minimum.toString()} ${a.unit}`:`Too small: expected ${o.origin} to be ${i}${o.minimum.toString()}`}case"invalid_format":{let i=o;return i.format==="starts_with"?`Invalid string: must start with "${i.prefix}"`:i.format==="ends_with"?`Invalid string: must end with "${i.suffix}"`:i.format==="includes"?`Invalid string: must include "${i.includes}"`:i.format==="regex"?`Invalid string: must match pattern ${i.pattern}`:`Invalid ${r[i.format]??o.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${o.divisor}`;case"unrecognized_keys":return`Unrecognized key${o.keys.length>1?"s":""}: ${N(o.keys,", ")}`;case"invalid_key":return`Invalid key in ${o.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${o.origin}`;default:return"Invalid input"}}};function Mu(){return{localeError:Jb()}}var Vm;var Uu=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...r){let n=r[0];return this._map.set(t,n),n&&typeof n=="object"&&"id"in n&&this._idmap.set(n.id,t),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(t){let r=this._map.get(t);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(t),this}get(t){let r=t._zod.parent;if(r){let n={...this.get(r)??{}};delete n.id;let o={...n,...this._map.get(t)};return Object.keys(o).length?o:void 0}return this._map.get(t)}has(t){return this._map.has(t)}};function Zu(){return new Uu}(Vm=globalThis).__zod_globalRegistry??(Vm.__zod_globalRegistry=Zu());var Ae=globalThis.__zod_globalRegistry;function Lu(e,t){return new e({type:"string",...k(t)})}function Ai(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...k(t)})}function io(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...k(t)})}function Mi(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...k(t)})}function Ci(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...k(t)})}function Ui(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...k(t)})}function Zi(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...k(t)})}function ao(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...k(t)})}function Li(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...k(t)})}function qi(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...k(t)})}function Fi(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...k(t)})}function Vi(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...k(t)})}function Ji(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...k(t)})}function Wi(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...k(t)})}function Ki(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...k(t)})}function Hi(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...k(t)})}function Gi(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...k(t)})}function qu(e,t){return new e({type:"string",format:"mac",check:"string_format",abort:!1,...k(t)})}function Bi(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...k(t)})}function Xi(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...k(t)})}function Yi(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...k(t)})}function Qi(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...k(t)})}function ea(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...k(t)})}function ta(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...k(t)})}function Fu(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...k(t)})}function Vu(e,t){return new e({type:"string",format:"date",check:"string_format",...k(t)})}function Ju(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...k(t)})}function Wu(e,t){return new e({type:"string",format:"duration",check:"string_format",...k(t)})}function Ku(e,t){return new e({type:"number",checks:[],...k(t)})}function Hu(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...k(t)})}function Gu(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"float32",...k(t)})}function Bu(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"float64",...k(t)})}function Xu(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"int32",...k(t)})}function Yu(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"uint32",...k(t)})}function Qu(e,t){return new e({type:"boolean",...k(t)})}function el(e,t){return new e({type:"bigint",...k(t)})}function tl(e,t){return new e({type:"bigint",check:"bigint_format",abort:!1,format:"int64",...k(t)})}function rl(e,t){return new e({type:"bigint",check:"bigint_format",abort:!1,format:"uint64",...k(t)})}function nl(e,t){return new e({type:"symbol",...k(t)})}function ol(e,t){return new e({type:"undefined",...k(t)})}function il(e,t){return new e({type:"null",...k(t)})}function al(e){return new e({type:"any"})}function sl(e){return new e({type:"unknown"})}function cl(e,t){return new e({type:"never",...k(t)})}function ul(e,t){return new e({type:"void",...k(t)})}function ll(e,t){return new e({type:"date",...k(t)})}function dl(e,t){return new e({type:"nan",...k(t)})}function Nt(e,t){return new Ic({check:"less_than",...k(t),value:e,inclusive:!1})}function Be(e,t){return new Ic({check:"less_than",...k(t),value:e,inclusive:!0})}function Rt(e,t){return new Ec({check:"greater_than",...k(t),value:e,inclusive:!1})}function Me(e,t){return new Ec({check:"greater_than",...k(t),value:e,inclusive:!0})}function pl(e){return Rt(0,e)}function fl(e){return Nt(0,e)}function ml(e){return Be(0,e)}function hl(e){return Me(0,e)}function yr(e,t){return new cm({check:"multiple_of",...k(t),value:e})}function $r(e,t){return new dm({check:"max_size",...k(t),maximum:e})}function At(e,t){return new pm({check:"min_size",...k(t),minimum:e})}function Xr(e,t){return new fm({check:"size_equals",...k(t),size:e})}function Yr(e,t){return new mm({check:"max_length",...k(t),maximum:e})}function tr(e,t){return new hm({check:"min_length",...k(t),minimum:e})}function Qr(e,t){return new gm({check:"length_equals",...k(t),length:e})}function so(e,t){return new vm({check:"string_format",format:"regex",...k(t),pattern:e})}function co(e){return new _m({check:"string_format",format:"lowercase",...k(e)})}function uo(e){return new ym({check:"string_format",format:"uppercase",...k(e)})}function lo(e,t){return new $m({check:"string_format",format:"includes",...k(t),includes:e})}function po(e,t){return new bm({check:"string_format",format:"starts_with",...k(t),prefix:e})}function fo(e,t){return new xm({check:"string_format",format:"ends_with",...k(t),suffix:e})}function gl(e,t,r){return new km({check:"property",property:e,schema:t,...k(r)})}function mo(e,t){return new Sm({check:"mime_type",mime:e,...k(t)})}function yt(e){return new wm({check:"overwrite",tx:e})}function ho(e){return yt(t=>t.normalize(e))}function go(){return yt(e=>e.trim())}function vo(){return yt(e=>e.toLowerCase())}function _o(){return yt(e=>e.toUpperCase())}function ra(){return yt(e=>Ks(e))}function Jm(e,t,r){return new e({type:"array",element:t,...k(r)})}function vl(e,t){return new e({type:"file",...k(t)})}function _l(e,t,r){let n=k(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function yl(e,t,r){return new e({type:"custom",check:"custom",fn:t,...k(r)})}function $l(e){let t=Gb(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(Gr(n,r.value,t._zod.def));else{let o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=t),o.continue??(o.continue=!t._zod.def.abort),r.issues.push(Gr(o))}},e(r.value,r)));return t}function Gb(e,t){let r=new se({check:"custom",...k(t)});return r._zod.check=e,r}function bl(e){let t=new se({check:"describe"});return t._zod.onattach=[r=>{let n=Ae.get(r)??{};Ae.add(r,{...n,description:e})}],t._zod.check=()=>{},t}function xl(e){let t=new se({check:"meta"});return t._zod.onattach=[r=>{let n=Ae.get(r)??{};Ae.add(r,{...n,...e})}],t._zod.check=()=>{},t}function kl(e,t){let r=k(t),n=r.truthy??["true","1","yes","on","y","enabled"],o=r.falsy??["false","0","no","off","n","disabled"];r.case!=="sensitive"&&(n=n.map(p=>typeof p=="string"?p.toLowerCase():p),o=o.map(p=>typeof p=="string"?p.toLowerCase():p));let i=new Set(n),a=new Set(o),s=e.Codec??oo,c=e.Boolean??ro,u=e.String??_r,l=new u({type:"string",error:r.error}),d=new c({type:"boolean",error:r.error}),m=new s({type:"pipe",in:l,out:d,transform:((p,g)=>{let h=p;return r.case!=="sensitive"&&(h=h.toLowerCase()),i.has(h)?!0:a.has(h)?!1:(g.issues.push({code:"invalid_value",expected:"stringbool",values:[...i,...a],input:g.value,inst:m,continue:!1}),{})}),reverseTransform:((p,g)=>p===!0?n[0]||"true":o[0]||"false"),error:r.error});return m}function en(e,t,r,n={}){let o=k(n),i={...k(n),check:"string_format",type:"string",format:t,fn:typeof r=="function"?r:s=>r.test(s),...o};return r instanceof RegExp&&(i.pattern=r),new e(i)}function na(e){let t=e?.target??"draft-2020-12";return t==="draft-4"&&(t="draft-04"),t==="draft-7"&&(t="draft-07"),{processors:e.processors??{},metadataRegistry:e?.metadata??Ae,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,cycles:e?.cycles??"ref",reused:e?.reused??"inline",external:e?.external??void 0}}function pe(e,t,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,i=t.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};t.seen.set(e,a);let s=e._zod.toJSONSchema?.();if(s)a.schema=s;else{let l={...r,schemaPath:[...r.schemaPath,e],path:r.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,a.schema,l);else{let m=a.schema,p=t.processors[o.type];if(!p)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);p(e,t,m,l)}let d=e._zod.parent;d&&(a.ref||(a.ref=d),pe(d,t,l),t.seen.get(d).isParent=!0)}let c=t.metadataRegistry.get(e);return c&&Object.assign(a.schema,c),t.io==="input"&&Ce(e)&&(delete a.schema.examples,delete a.schema.default),t.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,t.seen.get(e).schema}function oa(e,t){let r=e.seen.get(t);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let n=new Map;for(let a of e.seen.entries()){let s=e.metadataRegistry.get(a[0])?.id;if(s){let c=n.get(s);if(c&&c!==a[0])throw new Error(`Duplicate schema id "${s}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(s,a[0])}}let o=a=>{let s=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){let d=e.external.registry.get(a[0])?.id,m=e.external.uri??(g=>g);if(d)return{ref:m(d)};let p=a[1].defId??a[1].schema.id??`schema${e.counter++}`;return a[1].defId=p,{defId:p,ref:`${m("__shared")}#/${s}/${p}`}}if(a[1]===r)return{ref:"#"};let u=`#/${s}/`,l=a[1].schema.id??`__schema${e.counter++}`;return{defId:l,ref:u+l}},i=a=>{if(a[1].schema.$ref)return;let s=a[1],{ref:c,defId:u}=o(a);s.def={...s.schema},u&&(s.defId=u);let l=s.schema;for(let d in l)delete l[d];l.$ref=c};if(e.cycles==="throw")for(let a of e.seen.entries()){let s=a[1];if(s.cycle)throw new Error(`Cycle detected: #/${s.cycle?.join("/")}/ + `)}f.write("payload.value = newResult;"),f.write("return payload;");let y=f.compile();return(b,S)=>y(p,b,S)},s,o=Vo,a=!Em.jitless,u=a&&fb.value,l=e.catchall,d;t._zod.parse=(p,f)=>{d??(d=n.value);let m=p.value;return o(m)?a&&u&&f?.async===!1&&f.jitless!==!0?(s||(s=i(e.shape)),p=s(p,f),l?g1([],m,p,f,d,t):p):r(p,f):(p.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),p)}});function i1(t,e,r,n){for(let s of t)if(s.issues.length===0)return e.value=s.value,e;let i=t.filter(s=>!co(s));return i.length===1?(e.value=i[0].value,i[0]):(e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(s=>s.issues.map(o=>dn(o,n,ir())))}),e)}var Ql=O("$ZodUnion",(t,e)=>{Ce.init(t,e),De(t._zod,"optin",()=>e.options.some(i=>i._zod.optin==="optional")?"optional":void 0),De(t._zod,"optout",()=>e.options.some(i=>i._zod.optout==="optional")?"optional":void 0),De(t._zod,"values",()=>{if(e.options.every(i=>i._zod.values))return new Set(e.options.flatMap(i=>Array.from(i._zod.values)))}),De(t._zod,"pattern",()=>{if(e.options.every(i=>i._zod.pattern)){let i=e.options.map(s=>s._zod.pattern);return new RegExp(`^(${i.map(s=>jl(s.source)).join("|")})$`)}});let r=e.options.length===1,n=e.options[0]._zod.run;t._zod.parse=(i,s)=>{if(r)return n(i,s);let o=!1,a=[];for(let c of e.options){let u=c._zod.run({value:i.value,issues:[]},s);if(u instanceof Promise)a.push(u),o=!0;else{if(u.issues.length===0)return u;a.push(u)}}return o?Promise.all(a).then(c=>i1(c,i,t,s)):i1(a,i,t,s)}});function s1(t,e,r,n){let i=t.filter(s=>s.issues.length===0);return i.length===1?(e.value=i[0].value,e):(i.length===0?e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(s=>s.issues.map(o=>dn(o,n,ir())))}):e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:[],inclusive:!1}),e)}var PS=O("$ZodXor",(t,e)=>{Ql.init(t,e),e.inclusive=!1;let r=e.options.length===1,n=e.options[0]._zod.run;t._zod.parse=(i,s)=>{if(r)return n(i,s);let o=!1,a=[];for(let c of e.options){let u=c._zod.run({value:i.value,issues:[]},s);u instanceof Promise?(a.push(u),o=!0):a.push(u)}return o?Promise.all(a).then(c=>s1(c,i,t,s)):s1(a,i,t,s)}}),AS=O("$ZodDiscriminatedUnion",(t,e)=>{e.inclusive=!1,Ql.init(t,e);let r=t._zod.parse;De(t._zod,"propValues",()=>{let i={};for(let s of e.options){let o=s._zod.propValues;if(!o||Object.keys(o).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(o)){i[a]||(i[a]=new Set);for(let u of c)i[a].add(u)}}return i});let n=dc(()=>{let i=e.options,s=new Map;for(let o of i){let a=o._zod.propValues?.[e.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(o)}"`);for(let c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,o)}}return s});t._zod.parse=(i,s)=>{let o=i.value;if(!Vo(o))return i.issues.push({code:"invalid_type",expected:"object",input:o,inst:t}),i;let a=n.value.get(o?.[e.discriminator]);return a?a._zod.run(i,s):e.unionFallback?r(i,s):(i.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:e.discriminator,input:o,path:[e.discriminator],inst:t}),i)}}),NS=O("$ZodIntersection",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value,s=e.left._zod.run({value:i,issues:[]},n),o=e.right._zod.run({value:i,issues:[]},n);return s instanceof Promise||o instanceof Promise?Promise.all([s,o]).then(([c,u])=>o1(r,c,u)):o1(r,s,o)}});function Kb(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(ao(t)&&ao(e)){let r=Object.keys(e),n=Object.keys(t).filter(s=>r.indexOf(s)!==-1),i={...t,...e};for(let s of n){let o=Kb(t[s],e[s]);if(!o.valid)return{valid:!1,mergeErrorPath:[s,...o.mergeErrorPath]};i[s]=o.data}return{valid:!0,data:i}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;na.l&&a.r).map(([a])=>a);if(s.length&&i&&t.issues.push({...i,keys:s}),co(t))return t;let o=Kb(e.value,r.value);if(!o.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return t.value=o.data,t}var Um=O("$ZodTuple",(t,e)=>{Ce.init(t,e);let r=e.items;t._zod.parse=(n,i)=>{let s=n.value;if(!Array.isArray(s))return n.issues.push({input:s,inst:t,expected:"tuple",code:"invalid_type"}),n;n.value=[];let o=[],a=[...r].reverse().findIndex(l=>l._zod.optin!=="optional"),c=a===-1?0:r.length-a;if(!e.rest){let l=s.length>r.length,d=s.length=s.length&&u>=c)continue;let d=l._zod.run({value:s[u],issues:[]},i);d instanceof Promise?o.push(d.then(p=>Am(p,n,u))):Am(d,n,u)}if(e.rest){let l=s.slice(r.length);for(let d of l){u++;let p=e.rest._zod.run({value:d,issues:[]},i);p instanceof Promise?o.push(p.then(f=>Am(f,n,u))):Am(p,n,u)}}return o.length?Promise.all(o).then(()=>n):n}});function Am(t,e,r){t.issues.length&&e.issues.push(...In(r,t.issues)),e.value[r]=t.value}var MS=O("$ZodRecord",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;if(!ao(i))return r.issues.push({expected:"record",code:"invalid_type",input:i,inst:t}),r;let s=[],o=e.keyType._zod.values;if(o){r.value={};let a=new Set;for(let u of o)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){a.add(typeof u=="number"?u.toString():u);let l=e.valueType._zod.run({value:i[u],issues:[]},n);l instanceof Promise?s.push(l.then(d=>{d.issues.length&&r.issues.push(...In(u,d.issues)),r.value[u]=d.value})):(l.issues.length&&r.issues.push(...In(u,l.issues)),r.value[u]=l.value)}let c;for(let u in i)a.has(u)||(c=c??[],c.push(u));c&&c.length>0&&r.issues.push({code:"unrecognized_keys",input:i,inst:t,keys:c})}else{r.value={};for(let a of Reflect.ownKeys(i)){if(a==="__proto__")continue;let c=e.keyType._zod.run({value:a,issues:[]},n);if(c instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof a=="string"&&Cm.test(a)&&c.issues.length){let d=e.keyType._zod.run({value:Number(a),issues:[]},n);if(d instanceof Promise)throw new Error("Async schemas not supported in object keys currently");d.issues.length===0&&(c=d)}if(c.issues.length){e.mode==="loose"?r.value[a]=i[a]:r.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map(d=>dn(d,n,ir())),input:a,path:[a],inst:t});continue}let l=e.valueType._zod.run({value:i[a],issues:[]},n);l instanceof Promise?s.push(l.then(d=>{d.issues.length&&r.issues.push(...In(a,d.issues)),r.value[c.value]=d.value})):(l.issues.length&&r.issues.push(...In(a,l.issues)),r.value[c.value]=l.value)}}return s.length?Promise.all(s).then(()=>r):r}}),DS=O("$ZodMap",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;if(!(i instanceof Map))return r.issues.push({expected:"map",code:"invalid_type",input:i,inst:t}),r;let s=[];r.value=new Map;for(let[o,a]of i){let c=e.keyType._zod.run({value:o,issues:[]},n),u=e.valueType._zod.run({value:a,issues:[]},n);c instanceof Promise||u instanceof Promise?s.push(Promise.all([c,u]).then(([l,d])=>{a1(l,d,r,o,i,t,n)})):a1(c,u,r,o,i,t,n)}return s.length?Promise.all(s).then(()=>r):r}});function a1(t,e,r,n,i,s,o){t.issues.length&&(zl.has(typeof n)?r.issues.push(...In(n,t.issues)):r.issues.push({code:"invalid_key",origin:"map",input:i,inst:s,issues:t.issues.map(a=>dn(a,o,ir()))})),e.issues.length&&(zl.has(typeof n)?r.issues.push(...In(n,e.issues)):r.issues.push({origin:"map",code:"invalid_element",input:i,inst:s,key:n,issues:e.issues.map(a=>dn(a,o,ir()))})),r.value.set(t.value,e.value)}var jS=O("$ZodSet",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;if(!(i instanceof Set))return r.issues.push({input:i,inst:t,expected:"set",code:"invalid_type"}),r;let s=[];r.value=new Set;for(let o of i){let a=e.valueType._zod.run({value:o,issues:[]},n);a instanceof Promise?s.push(a.then(c=>c1(c,r))):c1(a,r)}return s.length?Promise.all(s).then(()=>r):r}});function c1(t,e){t.issues.length&&e.issues.push(...t.issues),e.value.add(t.value)}var zS=O("$ZodEnum",(t,e)=>{Ce.init(t,e);let r=Dl(e.entries),n=new Set(r);t._zod.values=n,t._zod.pattern=new RegExp(`^(${r.filter(i=>zl.has(typeof i)).map(i=>typeof i=="string"?Hn(i):i.toString()).join("|")})$`),t._zod.parse=(i,s)=>{let o=i.value;return n.has(o)||i.issues.push({code:"invalid_value",values:r,input:o,inst:t}),i}}),LS=O("$ZodLiteral",(t,e)=>{if(Ce.init(t,e),e.values.length===0)throw new Error("Cannot create literal schema with no valid values");let r=new Set(e.values);t._zod.values=r,t._zod.pattern=new RegExp(`^(${e.values.map(n=>typeof n=="string"?Hn(n):n?Hn(n.toString()):String(n)).join("|")})$`),t._zod.parse=(n,i)=>{let s=n.value;return r.has(s)||n.issues.push({code:"invalid_value",values:e.values,input:s,inst:t}),n}}),US=O("$ZodFile",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;return i instanceof File||r.issues.push({expected:"file",code:"invalid_type",input:i,inst:t}),r}}),FS=O("$ZodTransform",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Wo(t.constructor.name);let i=e.transform(r.value,r);if(n.async)return(i instanceof Promise?i:Promise.resolve(i)).then(o=>(r.value=o,r));if(i instanceof Promise)throw new zi;return r.value=i,r}});function u1(t,e){return t.issues.length&&e===void 0?{issues:[],value:void 0}:t}var Fm=O("$ZodOptional",(t,e)=>{Ce.init(t,e),t._zod.optin="optional",t._zod.optout="optional",De(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),De(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${jl(r.source)})?$`):void 0}),t._zod.parse=(r,n)=>{if(e.innerType._zod.optin==="optional"){let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>u1(s,r.value)):u1(i,r.value)}return r.value===void 0?r:e.innerType._zod.run(r,n)}}),qS=O("$ZodExactOptional",(t,e)=>{Fm.init(t,e),De(t._zod,"values",()=>e.innerType._zod.values),De(t._zod,"pattern",()=>e.innerType._zod.pattern),t._zod.parse=(r,n)=>e.innerType._zod.run(r,n)}),HS=O("$ZodNullable",(t,e)=>{Ce.init(t,e),De(t._zod,"optin",()=>e.innerType._zod.optin),De(t._zod,"optout",()=>e.innerType._zod.optout),De(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${jl(r.source)}|null)$`):void 0}),De(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),ZS=O("$ZodDefault",(t,e)=>{Ce.init(t,e),t._zod.optin="optional",De(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(n.direction==="backward")return e.innerType._zod.run(r,n);if(r.value===void 0)return r.value=e.defaultValue,r;let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>l1(s,e)):l1(i,e)}});function l1(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var BS=O("$ZodPrefault",(t,e)=>{Ce.init(t,e),t._zod.optin="optional",De(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(n.direction==="backward"||r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),GS=O("$ZodNonOptional",(t,e)=>{Ce.init(t,e),De(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>d1(s,t)):d1(i,t)}});function d1(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}var WS=O("$ZodSuccess",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Wo("ZodSuccess");let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>(r.value=s.issues.length===0,r)):(r.value=i.issues.length===0,r)}}),VS=O("$ZodCatch",(t,e)=>{Ce.init(t,e),De(t._zod,"optin",()=>e.innerType._zod.optin),De(t._zod,"optout",()=>e.innerType._zod.optout),De(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(n.direction==="backward")return e.innerType._zod.run(r,n);let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(o=>dn(o,n,ir()))},input:r.value}),r.issues=[]),r)):(r.value=i.value,i.issues.length&&(r.value=e.catchValue({...r,error:{issues:i.issues.map(s=>dn(s,n,ir()))},input:r.value}),r.issues=[]),r)}}),KS=O("$ZodNaN",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>((typeof r.value!="number"||!Number.isNaN(r.value))&&r.issues.push({input:r.value,inst:t,expected:"nan",code:"invalid_type"}),r)}),JS=O("$ZodPipe",(t,e)=>{Ce.init(t,e),De(t._zod,"values",()=>e.in._zod.values),De(t._zod,"optin",()=>e.in._zod.optin),De(t._zod,"optout",()=>e.out._zod.optout),De(t._zod,"propValues",()=>e.in._zod.propValues),t._zod.parse=(r,n)=>{if(n.direction==="backward"){let s=e.out._zod.run(r,n);return s instanceof Promise?s.then(o=>Nm(o,e.in,n)):Nm(s,e.in,n)}let i=e.in._zod.run(r,n);return i instanceof Promise?i.then(s=>Nm(s,e.out,n)):Nm(i,e.out,n)}});function Nm(t,e,r){return t.issues.length?(t.aborted=!0,t):e._zod.run({value:t.value,issues:t.issues},r)}var ed=O("$ZodCodec",(t,e)=>{Ce.init(t,e),De(t._zod,"values",()=>e.in._zod.values),De(t._zod,"optin",()=>e.in._zod.optin),De(t._zod,"optout",()=>e.out._zod.optout),De(t._zod,"propValues",()=>e.in._zod.propValues),t._zod.parse=(r,n)=>{if((n.direction||"forward")==="forward"){let s=e.in._zod.run(r,n);return s instanceof Promise?s.then(o=>Mm(o,e,n)):Mm(s,e,n)}else{let s=e.out._zod.run(r,n);return s instanceof Promise?s.then(o=>Mm(o,e,n)):Mm(s,e,n)}}});function Mm(t,e,r){if(t.issues.length)return t.aborted=!0,t;if((r.direction||"forward")==="forward"){let i=e.transform(t.value,t);return i instanceof Promise?i.then(s=>Dm(t,s,e.out,r)):Dm(t,i,e.out,r)}else{let i=e.reverseTransform(t.value,t);return i instanceof Promise?i.then(s=>Dm(t,s,e.in,r)):Dm(t,i,e.in,r)}}function Dm(t,e,r,n){return t.issues.length?(t.aborted=!0,t):r._zod.run({value:e,issues:t.issues},n)}var XS=O("$ZodReadonly",(t,e)=>{Ce.init(t,e),De(t._zod,"propValues",()=>e.innerType._zod.propValues),De(t._zod,"values",()=>e.innerType._zod.values),De(t._zod,"optin",()=>e.innerType?._zod?.optin),De(t._zod,"optout",()=>e.innerType?._zod?.optout),t._zod.parse=(r,n)=>{if(n.direction==="backward")return e.innerType._zod.run(r,n);let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(p1):p1(i)}});function p1(t){return t.value=Object.freeze(t.value),t}var YS=O("$ZodTemplateLiteral",(t,e)=>{Ce.init(t,e);let r=[];for(let n of e.parts)if(typeof n=="object"&&n!==null){if(!n._zod.pattern)throw new Error(`Invalid template literal part, no pattern found: ${[...n._zod.traits].shift()}`);let i=n._zod.pattern instanceof RegExp?n._zod.pattern.source:n._zod.pattern;if(!i)throw new Error(`Invalid template literal part: ${n._zod.traits}`);let s=i.startsWith("^")?1:0,o=i.endsWith("$")?i.length-1:i.length;r.push(i.slice(s,o))}else if(n===null||hb.has(typeof n))r.push(Hn(`${n}`));else throw new Error(`Invalid template literal part: ${n}`);t._zod.pattern=new RegExp(`^${r.join("")}$`),t._zod.parse=(n,i)=>typeof n.value!="string"?(n.issues.push({input:n.value,inst:t,expected:"string",code:"invalid_type"}),n):(t._zod.pattern.lastIndex=0,t._zod.pattern.test(n.value)||n.issues.push({input:n.value,inst:t,code:"invalid_format",format:e.format??"template_literal",pattern:t._zod.pattern.source}),n)}),QS=O("$ZodFunction",(t,e)=>(Ce.init(t,e),t._def=e,t._zod.def=e,t.implement=r=>{if(typeof r!="function")throw new Error("implement() must be called with a function");return function(...n){let i=t._def.input?Hl(t._def.input,n):n,s=Reflect.apply(r,this,i);return t._def.output?Hl(t._def.output,s):s}},t.implementAsync=r=>{if(typeof r!="function")throw new Error("implementAsync() must be called with a function");return async function(...n){let i=t._def.input?await Bl(t._def.input,n):n,s=await Reflect.apply(r,this,i);return t._def.output?await Bl(t._def.output,s):s}},t._zod.parse=(r,n)=>typeof r.value!="function"?(r.issues.push({code:"invalid_type",expected:"function",input:r.value,inst:t}),r):(t._def.output&&t._def.output._zod.def.type==="promise"?r.value=t.implementAsync(r.value):r.value=t.implement(r.value),r),t.input=(...r)=>{let n=t.constructor;return Array.isArray(r[0])?new n({type:"function",input:new Um({type:"tuple",items:r[0],rest:r[1]}),output:t._def.output}):new n({type:"function",input:r[0],output:t._def.output})},t.output=r=>{let n=t.constructor;return new n({type:"function",input:t._def.input,output:r})},t)),ex=O("$ZodPromise",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>Promise.resolve(r.value).then(i=>e.innerType._zod.run({value:i,issues:[]},n))}),tx=O("$ZodLazy",(t,e)=>{Ce.init(t,e),De(t._zod,"innerType",()=>e.getter()),De(t._zod,"pattern",()=>t._zod.innerType?._zod?.pattern),De(t._zod,"propValues",()=>t._zod.innerType?._zod?.propValues),De(t._zod,"optin",()=>t._zod.innerType?._zod?.optin??void 0),De(t._zod,"optout",()=>t._zod.innerType?._zod?.optout??void 0),t._zod.parse=(r,n)=>t._zod.innerType._zod.run(r,n)}),rx=O("$ZodCustom",(t,e)=>{bt.init(t,e),Ce.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,i=e.fn(n);if(i instanceof Promise)return i.then(s=>f1(s,r,n,t));f1(i,r,n,t)}});function f1(t,e,r,n){if(!t){let i={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(i.params=n._zod.def.params),e.issues.push(pc(i))}}var oB=()=>{let t={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function e(i){return t[i]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},n={nan:"NaN"};return i=>{switch(i.code){case"invalid_type":{let s=n[i.expected]??i.expected,o=Te(i.input),a=n[o]??o;return`Invalid input: expected ${s}, received ${a}`}case"invalid_value":return i.values.length===1?`Invalid input: expected ${xe(i.values[0])}`:`Invalid option: expected one of ${Se(i.values,"|")}`;case"too_big":{let s=i.inclusive?"<=":"<",o=e(i.origin);return o?`Too big: expected ${i.origin??"value"} to have ${s}${i.maximum.toString()} ${o.unit??"elements"}`:`Too big: expected ${i.origin??"value"} to be ${s}${i.maximum.toString()}`}case"too_small":{let s=i.inclusive?">=":">",o=e(i.origin);return o?`Too small: expected ${i.origin} to have ${s}${i.minimum.toString()} ${o.unit}`:`Too small: expected ${i.origin} to be ${s}${i.minimum.toString()}`}case"invalid_format":{let s=i;return s.format==="starts_with"?`Invalid string: must start with "${s.prefix}"`:s.format==="ends_with"?`Invalid string: must end with "${s.suffix}"`:s.format==="includes"?`Invalid string: must include "${s.includes}"`:s.format==="regex"?`Invalid string: must match pattern ${s.pattern}`:`Invalid ${r[s.format]??i.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${i.divisor}`;case"unrecognized_keys":return`Unrecognized key${i.keys.length>1?"s":""}: ${Se(i.keys,", ")}`;case"invalid_key":return`Invalid key in ${i.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${i.origin}`;default:return"Invalid input"}}};function nx(){return{localeError:oB()}}var _1;var sx=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...r){let n=r[0];return this._map.set(e,n),n&&typeof n=="object"&&"id"in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let r=this._map.get(e);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(e),this}get(e){let r=e._zod.parent;if(r){let n={...this.get(r)??{}};delete n.id;let i={...n,...this._map.get(e)};return Object.keys(i).length?i:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function ox(){return new sx}(_1=globalThis).__zod_globalRegistry??(_1.__zod_globalRegistry=ox());var Jr=globalThis.__zod_globalRegistry;function ax(t,e){return new t({type:"string",...ee(e)})}function qm(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...ee(e)})}function td(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...ee(e)})}function Hm(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...ee(e)})}function Zm(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...ee(e)})}function Bm(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...ee(e)})}function Gm(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...ee(e)})}function rd(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...ee(e)})}function Wm(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...ee(e)})}function Vm(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...ee(e)})}function Km(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...ee(e)})}function Jm(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...ee(e)})}function Xm(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...ee(e)})}function Ym(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...ee(e)})}function Qm(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...ee(e)})}function eh(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...ee(e)})}function th(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...ee(e)})}function cx(t,e){return new t({type:"string",format:"mac",check:"string_format",abort:!1,...ee(e)})}function rh(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...ee(e)})}function nh(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...ee(e)})}function ih(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...ee(e)})}function sh(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...ee(e)})}function oh(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...ee(e)})}function ah(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...ee(e)})}function ux(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...ee(e)})}function lx(t,e){return new t({type:"string",format:"date",check:"string_format",...ee(e)})}function dx(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...ee(e)})}function px(t,e){return new t({type:"string",format:"duration",check:"string_format",...ee(e)})}function fx(t,e){return new t({type:"number",checks:[],...ee(e)})}function mx(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...ee(e)})}function hx(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"float32",...ee(e)})}function gx(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"float64",...ee(e)})}function vx(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"int32",...ee(e)})}function yx(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"uint32",...ee(e)})}function _x(t,e){return new t({type:"boolean",...ee(e)})}function bx(t,e){return new t({type:"bigint",...ee(e)})}function Sx(t,e){return new t({type:"bigint",check:"bigint_format",abort:!1,format:"int64",...ee(e)})}function xx(t,e){return new t({type:"bigint",check:"bigint_format",abort:!1,format:"uint64",...ee(e)})}function wx(t,e){return new t({type:"symbol",...ee(e)})}function Ex(t,e){return new t({type:"undefined",...ee(e)})}function kx(t,e){return new t({type:"null",...ee(e)})}function Tx(t){return new t({type:"any"})}function $x(t){return new t({type:"unknown"})}function Ix(t,e){return new t({type:"never",...ee(e)})}function Rx(t,e){return new t({type:"void",...ee(e)})}function Ox(t,e){return new t({type:"date",...ee(e)})}function Cx(t,e){return new t({type:"nan",...ee(e)})}function vs(t,e){return new Wb({check:"less_than",...ee(e),value:t,inclusive:!1})}function Rn(t,e){return new Wb({check:"less_than",...ee(e),value:t,inclusive:!0})}function ys(t,e){return new Vb({check:"greater_than",...ee(e),value:t,inclusive:!1})}function Xr(t,e){return new Vb({check:"greater_than",...ee(e),value:t,inclusive:!0})}function Px(t){return ys(0,t)}function Ax(t){return vs(0,t)}function Nx(t){return Rn(0,t)}function Mx(t){return Xr(0,t)}function Xo(t,e){return new jO({check:"multiple_of",...ee(e),value:t})}function Yo(t,e){return new UO({check:"max_size",...ee(e),maximum:t})}function _s(t,e){return new FO({check:"min_size",...ee(e),minimum:t})}function mc(t,e){return new qO({check:"size_equals",...ee(e),size:t})}function hc(t,e){return new HO({check:"max_length",...ee(e),maximum:t})}function uo(t,e){return new ZO({check:"min_length",...ee(e),minimum:t})}function gc(t,e){return new BO({check:"length_equals",...ee(e),length:t})}function nd(t,e){return new GO({check:"string_format",format:"regex",...ee(e),pattern:t})}function id(t){return new WO({check:"string_format",format:"lowercase",...ee(t)})}function sd(t){return new VO({check:"string_format",format:"uppercase",...ee(t)})}function od(t,e){return new KO({check:"string_format",format:"includes",...ee(e),includes:t})}function ad(t,e){return new JO({check:"string_format",format:"starts_with",...ee(e),prefix:t})}function cd(t,e){return new XO({check:"string_format",format:"ends_with",...ee(e),suffix:t})}function Dx(t,e,r){return new YO({check:"property",property:t,schema:e,...ee(r)})}function ud(t,e){return new QO({check:"mime_type",mime:t,...ee(e)})}function Li(t){return new e1({check:"overwrite",tx:t})}function ld(t){return Li(e=>e.normalize(t))}function dd(){return Li(t=>t.trim())}function pd(){return Li(t=>t.toLowerCase())}function fd(){return Li(t=>t.toUpperCase())}function ch(){return Li(t=>pb(t))}function b1(t,e,r){return new t({type:"array",element:e,...ee(r)})}function jx(t,e){return new t({type:"file",...ee(e)})}function zx(t,e,r){let n=ee(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Lx(t,e,r){return new t({type:"custom",check:"custom",fn:e,...ee(r)})}function Ux(t){let e=lB(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(pc(n,r.value,e._zod.def));else{let i=n;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=e),i.continue??(i.continue=!e._zod.def.abort),r.issues.push(pc(i))}},t(r.value,r)));return e}function lB(t,e){let r=new bt({check:"custom",...ee(e)});return r._zod.check=t,r}function Fx(t){let e=new bt({check:"describe"});return e._zod.onattach=[r=>{let n=Jr.get(r)??{};Jr.add(r,{...n,description:t})}],e._zod.check=()=>{},e}function qx(t){let e=new bt({check:"meta"});return e._zod.onattach=[r=>{let n=Jr.get(r)??{};Jr.add(r,{...n,...t})}],e._zod.check=()=>{},e}function Hx(t,e){let r=ee(e),n=r.truthy??["true","1","yes","on","y","enabled"],i=r.falsy??["false","0","no","off","n","disabled"];r.case!=="sensitive"&&(n=n.map(f=>typeof f=="string"?f.toLowerCase():f),i=i.map(f=>typeof f=="string"?f.toLowerCase():f));let s=new Set(n),o=new Set(i),a=t.Codec??ed,c=t.Boolean??Yl,u=t.String??Jo,l=new u({type:"string",error:r.error}),d=new c({type:"boolean",error:r.error}),p=new a({type:"pipe",in:l,out:d,transform:((f,m)=>{let h=f;return r.case!=="sensitive"&&(h=h.toLowerCase()),s.has(h)?!0:o.has(h)?!1:(m.issues.push({code:"invalid_value",expected:"stringbool",values:[...s,...o],input:m.value,inst:p,continue:!1}),{})}),reverseTransform:((f,m)=>f===!0?n[0]||"true":i[0]||"false"),error:r.error});return p}function vc(t,e,r,n={}){let i=ee(n),s={...ee(n),check:"string_format",type:"string",format:e,fn:typeof r=="function"?r:a=>r.test(a),...i};return r instanceof RegExp&&(s.pattern=r),new t(s)}function uh(t){let e=t?.target??"draft-2020-12";return e==="draft-4"&&(e="draft-04"),e==="draft-7"&&(e="draft-07"),{processors:t.processors??{},metadataRegistry:t?.metadata??Jr,target:e,unrepresentable:t?.unrepresentable??"throw",override:t?.override??(()=>{}),io:t?.io??"output",counter:0,seen:new Map,cycles:t?.cycles??"ref",reused:t?.reused??"inline",external:t?.external??void 0}}function Tt(t,e,r={path:[],schemaPath:[]}){var n;let i=t._zod.def,s=e.seen.get(t);if(s)return s.count++,r.schemaPath.includes(t)&&(s.cycle=r.path),s.schema;let o={schema:{},count:1,cycle:void 0,path:r.path};e.seen.set(t,o);let a=t._zod.toJSONSchema?.();if(a)o.schema=a;else{let l={...r,schemaPath:[...r.schemaPath,t],path:r.path};if(t._zod.processJSONSchema)t._zod.processJSONSchema(e,o.schema,l);else{let p=o.schema,f=e.processors[i.type];if(!f)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);f(t,e,p,l)}let d=t._zod.parent;d&&(o.ref||(o.ref=d),Tt(d,e,l),e.seen.get(d).isParent=!0)}let c=e.metadataRegistry.get(t);return c&&Object.assign(o.schema,c),e.io==="input"&&Yr(t)&&(delete o.schema.examples,delete o.schema.default),e.io==="input"&&o.schema._prefault&&((n=o.schema).default??(n.default=o.schema._prefault)),delete o.schema._prefault,e.seen.get(t).schema}function lh(t,e){let r=t.seen.get(e);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let n=new Map;for(let o of t.seen.entries()){let a=t.metadataRegistry.get(o[0])?.id;if(a){let c=n.get(a);if(c&&c!==o[0])throw new Error(`Duplicate schema id "${a}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(a,o[0])}}let i=o=>{let a=t.target==="draft-2020-12"?"$defs":"definitions";if(t.external){let d=t.external.registry.get(o[0])?.id,p=t.external.uri??(m=>m);if(d)return{ref:p(d)};let f=o[1].defId??o[1].schema.id??`schema${t.counter++}`;return o[1].defId=f,{defId:f,ref:`${p("__shared")}#/${a}/${f}`}}if(o[1]===r)return{ref:"#"};let u=`#/${a}/`,l=o[1].schema.id??`__schema${t.counter++}`;return{defId:l,ref:u+l}},s=o=>{if(o[1].schema.$ref)return;let a=o[1],{ref:c,defId:u}=i(o);a.def={...a.schema},u&&(a.defId=u);let l=a.schema;for(let d in l)delete l[d];l.$ref=c};if(t.cycles==="throw")for(let o of t.seen.entries()){let a=o[1];if(a.cycle)throw new Error(`Cycle detected: #/${a.cycle?.join("/")}/ -Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let a of e.seen.entries()){let s=a[1];if(t===a[0]){i(a);continue}if(e.external){let u=e.external.registry.get(a[0])?.id;if(t!==a[0]&&u){i(a);continue}}if(e.metadataRegistry.get(a[0])?.id){i(a);continue}if(s.cycle){i(a);continue}if(s.count>1&&e.reused==="ref"){i(a);continue}}}function ia(e,t){let r=e.seen.get(t);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let n=a=>{let s=e.seen.get(a);if(s.ref===null)return;let c=s.def??s.schema,u={...c},l=s.ref;if(s.ref=null,l){n(l);let m=e.seen.get(l),p=m.schema;if(p.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(c.allOf=c.allOf??[],c.allOf.push(p)):Object.assign(c,p),Object.assign(c,u),a._zod.parent===l)for(let h in c)h==="$ref"||h==="allOf"||h in u||delete c[h];if(p.$ref)for(let h in c)h==="$ref"||h==="allOf"||h in m.def&&JSON.stringify(c[h])===JSON.stringify(m.def[h])&&delete c[h]}let d=a._zod.parent;if(d&&d!==l){n(d);let m=e.seen.get(d);if(m?.schema.$ref&&(c.$ref=m.schema.$ref,m.def))for(let p in c)p==="$ref"||p==="allOf"||p in m.def&&JSON.stringify(c[p])===JSON.stringify(m.def[p])&&delete c[p]}e.override({zodSchema:a,jsonSchema:c,path:s.path??[]})};for(let a of[...e.seen.entries()].reverse())n(a[0]);let o={};if(e.target==="draft-2020-12"?o.$schema="https://json-schema.org/draft/2020-12/schema":e.target==="draft-07"?o.$schema="http://json-schema.org/draft-07/schema#":e.target==="draft-04"?o.$schema="http://json-schema.org/draft-04/schema#":e.target,e.external?.uri){let a=e.external.registry.get(t)?.id;if(!a)throw new Error("Schema is missing an `id` property");o.$id=e.external.uri(a)}Object.assign(o,r.def??r.schema);let i=e.external?.defs??{};for(let a of e.seen.entries()){let s=a[1];s.def&&s.defId&&(i[s.defId]=s.def)}e.external||Object.keys(i).length>0&&(e.target==="draft-2020-12"?o.$defs=i:o.definitions=i);try{let a=JSON.parse(JSON.stringify(o));return Object.defineProperty(a,"~standard",{value:{...t["~standard"],jsonSchema:{input:yo(t,"input",e.processors),output:yo(t,"output",e.processors)}},enumerable:!1,writable:!1}),a}catch{throw new Error("Error converting schema to JSON.")}}function Ce(e,t){let r=t??{seen:new Set};if(r.seen.has(e))return!1;r.seen.add(e);let n=e._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return Ce(n.element,r);if(n.type==="set")return Ce(n.valueType,r);if(n.type==="lazy")return Ce(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault")return Ce(n.innerType,r);if(n.type==="intersection")return Ce(n.left,r)||Ce(n.right,r);if(n.type==="record"||n.type==="map")return Ce(n.keyType,r)||Ce(n.valueType,r);if(n.type==="pipe")return Ce(n.in,r)||Ce(n.out,r);if(n.type==="object"){for(let o in n.shape)if(Ce(n.shape[o],r))return!0;return!1}if(n.type==="union"){for(let o of n.options)if(Ce(o,r))return!0;return!1}if(n.type==="tuple"){for(let o of n.items)if(Ce(o,r))return!0;return!!(n.rest&&Ce(n.rest,r))}return!1}var Wm=(e,t={})=>r=>{let n=na({...r,processors:t});return pe(e,n),oa(n,e),ia(n,e)},yo=(e,t,r={})=>n=>{let{libraryOptions:o,target:i}=n??{},a=na({...o??{},target:i,io:t,processors:r});return pe(e,a),oa(a,e),ia(a,e)};var Bb={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},Km=(e,t,r,n)=>{let o=r;o.type="string";let{minimum:i,maximum:a,format:s,patterns:c,contentEncoding:u}=e._zod.bag;if(typeof i=="number"&&(o.minLength=i),typeof a=="number"&&(o.maxLength=a),s&&(o.format=Bb[s]??s,o.format===""&&delete o.format,s==="time"&&delete o.format),u&&(o.contentEncoding=u),c&&c.size>0){let l=[...c];l.length===1?o.pattern=l[0].source:l.length>1&&(o.allOf=[...l.map(d=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:d.source}))])}},Hm=(e,t,r,n)=>{let o=r,{minimum:i,maximum:a,format:s,multipleOf:c,exclusiveMaximum:u,exclusiveMinimum:l}=e._zod.bag;typeof s=="string"&&s.includes("int")?o.type="integer":o.type="number",typeof l=="number"&&(t.target==="draft-04"||t.target==="openapi-3.0"?(o.minimum=l,o.exclusiveMinimum=!0):o.exclusiveMinimum=l),typeof i=="number"&&(o.minimum=i,typeof l=="number"&&t.target!=="draft-04"&&(l>=i?delete o.minimum:delete o.exclusiveMinimum)),typeof u=="number"&&(t.target==="draft-04"||t.target==="openapi-3.0"?(o.maximum=u,o.exclusiveMaximum=!0):o.exclusiveMaximum=u),typeof a=="number"&&(o.maximum=a,typeof u=="number"&&t.target!=="draft-04"&&(u<=a?delete o.maximum:delete o.exclusiveMaximum)),typeof c=="number"&&(o.multipleOf=c)},Gm=(e,t,r,n)=>{r.type="boolean"},Bm=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema")},Xm=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema")},Ym=(e,t,r,n)=>{t.target==="openapi-3.0"?(r.type="string",r.nullable=!0,r.enum=[null]):r.type="null"},Qm=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema")},eh=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema")},th=(e,t,r,n)=>{r.not={}},rh=(e,t,r,n)=>{},nh=(e,t,r,n)=>{},oh=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema")},ih=(e,t,r,n)=>{let o=e._zod.def,i=Zn(o.entries);i.every(a=>typeof a=="number")&&(r.type="number"),i.every(a=>typeof a=="string")&&(r.type="string"),r.enum=i},ah=(e,t,r,n)=>{let o=e._zod.def,i=[];for(let a of o.values)if(a===void 0){if(t.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof a=="bigint"){if(t.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");i.push(Number(a))}else i.push(a);if(i.length!==0)if(i.length===1){let a=i[0];r.type=a===null?"null":typeof a,t.target==="draft-04"||t.target==="openapi-3.0"?r.enum=[a]:r.const=a}else i.every(a=>typeof a=="number")&&(r.type="number"),i.every(a=>typeof a=="string")&&(r.type="string"),i.every(a=>typeof a=="boolean")&&(r.type="boolean"),i.every(a=>a===null)&&(r.type="null"),r.enum=i},sh=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema")},ch=(e,t,r,n)=>{let o=r,i=e._zod.pattern;if(!i)throw new Error("Pattern not found in template literal");o.type="string",o.pattern=i.source},uh=(e,t,r,n)=>{let o=r,i={type:"string",format:"binary",contentEncoding:"binary"},{minimum:a,maximum:s,mime:c}=e._zod.bag;a!==void 0&&(i.minLength=a),s!==void 0&&(i.maxLength=s),c?c.length===1?(i.contentMediaType=c[0],Object.assign(o,i)):(Object.assign(o,i),o.anyOf=c.map(u=>({contentMediaType:u}))):Object.assign(o,i)},lh=(e,t,r,n)=>{r.type="boolean"},dh=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},ph=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Function types cannot be represented in JSON Schema")},fh=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},mh=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema")},hh=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema")},gh=(e,t,r,n)=>{let o=r,i=e._zod.def,{minimum:a,maximum:s}=e._zod.bag;typeof a=="number"&&(o.minItems=a),typeof s=="number"&&(o.maxItems=s),o.type="array",o.items=pe(i.element,t,{...n,path:[...n.path,"items"]})},vh=(e,t,r,n)=>{let o=r,i=e._zod.def;o.type="object",o.properties={};let a=i.shape;for(let u in a)o.properties[u]=pe(a[u],t,{...n,path:[...n.path,"properties",u]});let s=new Set(Object.keys(a)),c=new Set([...s].filter(u=>{let l=i.shape[u]._zod;return t.io==="input"?l.optin===void 0:l.optout===void 0}));c.size>0&&(o.required=Array.from(c)),i.catchall?._zod.def.type==="never"?o.additionalProperties=!1:i.catchall?i.catchall&&(o.additionalProperties=pe(i.catchall,t,{...n,path:[...n.path,"additionalProperties"]})):t.io==="output"&&(o.additionalProperties=!1)},Sl=(e,t,r,n)=>{let o=e._zod.def,i=o.inclusive===!1,a=o.options.map((s,c)=>pe(s,t,{...n,path:[...n.path,i?"oneOf":"anyOf",c]}));i?r.oneOf=a:r.anyOf=a},_h=(e,t,r,n)=>{let o=e._zod.def,i=pe(o.left,t,{...n,path:[...n.path,"allOf",0]}),a=pe(o.right,t,{...n,path:[...n.path,"allOf",1]}),s=u=>"allOf"in u&&Object.keys(u).length===1,c=[...s(i)?i.allOf:[i],...s(a)?a.allOf:[a]];r.allOf=c},yh=(e,t,r,n)=>{let o=r,i=e._zod.def;o.type="array";let a=t.target==="draft-2020-12"?"prefixItems":"items",s=t.target==="draft-2020-12"||t.target==="openapi-3.0"?"items":"additionalItems",c=i.items.map((m,p)=>pe(m,t,{...n,path:[...n.path,a,p]})),u=i.rest?pe(i.rest,t,{...n,path:[...n.path,s,...t.target==="openapi-3.0"?[i.items.length]:[]]}):null;t.target==="draft-2020-12"?(o.prefixItems=c,u&&(o.items=u)):t.target==="openapi-3.0"?(o.items={anyOf:c},u&&o.items.anyOf.push(u),o.minItems=c.length,u||(o.maxItems=c.length)):(o.items=c,u&&(o.additionalItems=u));let{minimum:l,maximum:d}=e._zod.bag;typeof l=="number"&&(o.minItems=l),typeof d=="number"&&(o.maxItems=d)},$h=(e,t,r,n)=>{let o=r,i=e._zod.def;o.type="object";let a=i.keyType,c=a._zod.bag?.patterns;if(i.mode==="loose"&&c&&c.size>0){let l=pe(i.valueType,t,{...n,path:[...n.path,"patternProperties","*"]});o.patternProperties={};for(let d of c)o.patternProperties[d.source]=l}else(t.target==="draft-07"||t.target==="draft-2020-12")&&(o.propertyNames=pe(i.keyType,t,{...n,path:[...n.path,"propertyNames"]})),o.additionalProperties=pe(i.valueType,t,{...n,path:[...n.path,"additionalProperties"]});let u=a._zod.values;if(u){let l=[...u].filter(d=>typeof d=="string"||typeof d=="number");l.length>0&&(o.required=l)}},bh=(e,t,r,n)=>{let o=e._zod.def,i=pe(o.innerType,t,n),a=t.seen.get(e);t.target==="openapi-3.0"?(a.ref=o.innerType,r.nullable=!0):r.anyOf=[i,{type:"null"}]},xh=(e,t,r,n)=>{let o=e._zod.def;pe(o.innerType,t,n);let i=t.seen.get(e);i.ref=o.innerType},kh=(e,t,r,n)=>{let o=e._zod.def;pe(o.innerType,t,n);let i=t.seen.get(e);i.ref=o.innerType,r.default=JSON.parse(JSON.stringify(o.defaultValue))},Sh=(e,t,r,n)=>{let o=e._zod.def;pe(o.innerType,t,n);let i=t.seen.get(e);i.ref=o.innerType,t.io==="input"&&(r._prefault=JSON.parse(JSON.stringify(o.defaultValue)))},wh=(e,t,r,n)=>{let o=e._zod.def;pe(o.innerType,t,n);let i=t.seen.get(e);i.ref=o.innerType;let a;try{a=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}r.default=a},zh=(e,t,r,n)=>{let o=e._zod.def,i=t.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;pe(i,t,n);let a=t.seen.get(e);a.ref=i},Ih=(e,t,r,n)=>{let o=e._zod.def;pe(o.innerType,t,n);let i=t.seen.get(e);i.ref=o.innerType,r.readOnly=!0},Eh=(e,t,r,n)=>{let o=e._zod.def;pe(o.innerType,t,n);let i=t.seen.get(e);i.ref=o.innerType},wl=(e,t,r,n)=>{let o=e._zod.def;pe(o.innerType,t,n);let i=t.seen.get(e);i.ref=o.innerType},Th=(e,t,r,n)=>{let o=e._zod.innerType;pe(o,t,n);let i=t.seen.get(e);i.ref=o};function tn(e){return!!e._zod}function rr(e,t){return tn(e)?Br(e,t):e.safeParse(t)}function aa(e){if(!e)return;let t;if(tn(e)?t=e._zod?.def?.shape:t=e.shape,!!t){if(typeof t=="function")try{return t()}catch{return}return t}}function Dh(e){if(tn(e)){let i=e._zod?.def;if(i){if(i.value!==void 0)return i.value;if(Array.isArray(i.values)&&i.values.length>0)return i.values[0]}}let r=e._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=e.value;if(n!==void 0)return n}var $o={};wn($o,{ZodAny:()=>Xh,ZodArray:()=>tg,ZodBase64:()=>Gl,ZodBase64URL:()=>Bl,ZodBigInt:()=>ha,ZodBigIntFormat:()=>Ql,ZodBoolean:()=>ma,ZodCIDRv4:()=>Kl,ZodCIDRv6:()=>Hl,ZodCUID:()=>Zl,ZodCUID2:()=>Ll,ZodCatch:()=>bg,ZodCodec:()=>ad,ZodCustom:()=>$a,ZodCustomStringFormat:()=>xo,ZodDate:()=>td,ZodDefault:()=>hg,ZodDiscriminatedUnion:()=>ng,ZodE164:()=>Xl,ZodEmail:()=>Ml,ZodEmoji:()=>Cl,ZodEnum:()=>bo,ZodExactOptional:()=>pg,ZodFile:()=>lg,ZodFunction:()=>Pg,ZodGUID:()=>ca,ZodIPv4:()=>Jl,ZodIPv6:()=>Wl,ZodIntersection:()=>og,ZodJWT:()=>Yl,ZodKSUID:()=>Vl,ZodLazy:()=>Ig,ZodLiteral:()=>ug,ZodMAC:()=>Kh,ZodMap:()=>sg,ZodNaN:()=>kg,ZodNanoID:()=>Ul,ZodNever:()=>Qh,ZodNonOptional:()=>od,ZodNull:()=>Bh,ZodNullable:()=>mg,ZodNumber:()=>fa,ZodNumberFormat:()=>rn,ZodObject:()=>ga,ZodOptional:()=>nd,ZodPipe:()=>id,ZodPrefault:()=>vg,ZodPromise:()=>Tg,ZodReadonly:()=>Sg,ZodRecord:()=>ya,ZodSet:()=>cg,ZodString:()=>da,ZodStringFormat:()=>ce,ZodSuccess:()=>$g,ZodSymbol:()=>Hh,ZodTemplateLiteral:()=>zg,ZodTransform:()=>dg,ZodTuple:()=>ig,ZodType:()=>q,ZodULID:()=>ql,ZodURL:()=>pa,ZodUUID:()=>Mt,ZodUndefined:()=>Gh,ZodUnion:()=>va,ZodUnknown:()=>Yh,ZodVoid:()=>eg,ZodXID:()=>Fl,ZodXor:()=>rg,_ZodString:()=>Al,_default:()=>gg,_function:()=>mk,any:()=>Bx,array:()=>G,base64:()=>Dx,base64url:()=>Nx,bigint:()=>Jx,boolean:()=>ye,catch:()=>xg,check:()=>hk,cidrv4:()=>Ox,cidrv6:()=>jx,codec:()=>dk,cuid:()=>kx,cuid2:()=>Sx,custom:()=>sd,date:()=>Yx,describe:()=>gk,discriminatedUnion:()=>_a,e164:()=>Rx,email:()=>fx,emoji:()=>bx,enum:()=>Pe,exactOptional:()=>fg,file:()=>sk,float32:()=>Lx,float64:()=>qx,function:()=>mk,guid:()=>mx,hash:()=>Zx,hex:()=>Ux,hostname:()=>Cx,httpUrl:()=>$x,instanceof:()=>_k,int:()=>Rl,int32:()=>Fx,int64:()=>Wx,intersection:()=>So,ipv4:()=>Ex,ipv6:()=>Px,json:()=>$k,jwt:()=>Ax,keyof:()=>Qx,ksuid:()=>Ix,lazy:()=>Eg,literal:()=>P,looseObject:()=>Te,looseRecord:()=>nk,mac:()=>Tx,map:()=>ok,meta:()=>vk,nan:()=>lk,nanoid:()=>xx,nativeEnum:()=>ak,never:()=>ed,nonoptional:()=>yg,null:()=>ko,nullable:()=>ua,nullish:()=>ck,number:()=>ne,object:()=>z,optional:()=>me,partialRecord:()=>rk,pipe:()=>la,prefault:()=>_g,preprocess:()=>ba,promise:()=>fk,readonly:()=>wg,record:()=>fe,refine:()=>Og,set:()=>ik,strictObject:()=>ek,string:()=>v,stringFormat:()=>Mx,stringbool:()=>yk,success:()=>uk,superRefine:()=>jg,symbol:()=>Hx,templateLiteral:()=>pk,transform:()=>rd,tuple:()=>ag,uint32:()=>Vx,uint64:()=>Kx,ulid:()=>wx,undefined:()=>Gx,union:()=>ie,unknown:()=>ue,url:()=>yx,uuid:()=>hx,uuidv4:()=>gx,uuidv6:()=>vx,uuidv7:()=>_x,void:()=>Xx,xid:()=>zx,xor:()=>tk});var sa={};wn(sa,{endsWith:()=>fo,gt:()=>Rt,gte:()=>Me,includes:()=>lo,length:()=>Qr,lowercase:()=>co,lt:()=>Nt,lte:()=>Be,maxLength:()=>Yr,maxSize:()=>$r,mime:()=>mo,minLength:()=>tr,minSize:()=>At,multipleOf:()=>yr,negative:()=>fl,nonnegative:()=>hl,nonpositive:()=>ml,normalize:()=>ho,overwrite:()=>yt,positive:()=>pl,property:()=>gl,regex:()=>so,size:()=>Xr,slugify:()=>ra,startsWith:()=>po,toLowerCase:()=>vo,toUpperCase:()=>_o,trim:()=>go,uppercase:()=>uo});var br={};wn(br,{ZodISODate:()=>Tl,ZodISODateTime:()=>Il,ZodISODuration:()=>Dl,ZodISOTime:()=>Ol,date:()=>Pl,datetime:()=>El,duration:()=>Nl,time:()=>jl});var Il=f("ZodISODateTime",(e,t)=>{Lc.init(e,t),ce.init(e,t)});function El(e){return Fu(Il,e)}var Tl=f("ZodISODate",(e,t)=>{qc.init(e,t),ce.init(e,t)});function Pl(e){return Vu(Tl,e)}var Ol=f("ZodISOTime",(e,t)=>{Fc.init(e,t),ce.init(e,t)});function jl(e){return Ju(Ol,e)}var Dl=f("ZodISODuration",(e,t)=>{Vc.init(e,t),ce.init(e,t)});function Nl(e){return Wu(Dl,e)}var Nh=(e,t)=>{bi.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:r=>ki(e,r)},flatten:{value:r=>xi(e,r)},addIssue:{value:r=>{e.issues.push(r),e.message=JSON.stringify(e.issues,Kr,2)}},addIssues:{value:r=>{e.issues.push(...r),e.message=JSON.stringify(e.issues,Kr,2)}},isEmpty:{get(){return e.issues.length===0}}})},RR=f("ZodError",Nh),Xe=f("ZodError",Nh,{Parent:Error});var Rh=Wn(Xe),Ah=Hn(Xe),Mh=Bn(Xe),Ch=Xn(Xe),Uh=Gf(Xe),Zh=Bf(Xe),Lh=Xf(Xe),qh=Yf(Xe),Fh=Qf(Xe),Vh=em(Xe),Jh=tm(Xe),Wh=rm(Xe);var q=f("ZodType",(e,t)=>(Z.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:yo(e,"input"),output:yo(e,"output")}}),e.toJSONSchema=Wm(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...r)=>e.clone($.mergeDefs(t,{checks:[...t.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),{parent:!0}),e.with=e.check,e.clone=(r,n)=>Re(e,r,n),e.brand=()=>e,e.register=((r,n)=>(r.add(e,n),e)),e.parse=(r,n)=>Rh(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>Mh(e,r,n),e.parseAsync=async(r,n)=>Ah(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>Ch(e,r,n),e.spa=e.safeParseAsync,e.encode=(r,n)=>Uh(e,r,n),e.decode=(r,n)=>Zh(e,r,n),e.encodeAsync=async(r,n)=>Lh(e,r,n),e.decodeAsync=async(r,n)=>qh(e,r,n),e.safeEncode=(r,n)=>Fh(e,r,n),e.safeDecode=(r,n)=>Vh(e,r,n),e.safeEncodeAsync=async(r,n)=>Jh(e,r,n),e.safeDecodeAsync=async(r,n)=>Wh(e,r,n),e.refine=(r,n)=>e.check(Og(r,n)),e.superRefine=r=>e.check(jg(r)),e.overwrite=r=>e.check(yt(r)),e.optional=()=>me(e),e.exactOptional=()=>fg(e),e.nullable=()=>ua(e),e.nullish=()=>me(ua(e)),e.nonoptional=r=>yg(e,r),e.array=()=>G(e),e.or=r=>ie([e,r]),e.and=r=>So(e,r),e.transform=r=>la(e,rd(r)),e.default=r=>gg(e,r),e.prefault=r=>_g(e,r),e.catch=r=>xg(e,r),e.pipe=r=>la(e,r),e.readonly=()=>wg(e),e.describe=r=>{let n=e.clone();return Ae.add(n,{description:r}),n},Object.defineProperty(e,"description",{get(){return Ae.get(e)?.description},configurable:!0}),e.meta=(...r)=>{if(r.length===0)return Ae.get(e);let n=e.clone();return Ae.add(n,r[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=r=>r(e),e)),Al=f("_ZodString",(e,t)=>{_r.init(e,t),q.init(e,t),e._zod.processJSONSchema=(n,o,i)=>Km(e,n,o,i);let r=e._zod.bag;e.format=r.format??null,e.minLength=r.minimum??null,e.maxLength=r.maximum??null,e.regex=(...n)=>e.check(so(...n)),e.includes=(...n)=>e.check(lo(...n)),e.startsWith=(...n)=>e.check(po(...n)),e.endsWith=(...n)=>e.check(fo(...n)),e.min=(...n)=>e.check(tr(...n)),e.max=(...n)=>e.check(Yr(...n)),e.length=(...n)=>e.check(Qr(...n)),e.nonempty=(...n)=>e.check(tr(1,...n)),e.lowercase=n=>e.check(co(n)),e.uppercase=n=>e.check(uo(n)),e.trim=()=>e.check(go()),e.normalize=(...n)=>e.check(ho(...n)),e.toLowerCase=()=>e.check(vo()),e.toUpperCase=()=>e.check(_o()),e.slugify=()=>e.check(ra())}),da=f("ZodString",(e,t)=>{_r.init(e,t),Al.init(e,t),e.email=r=>e.check(Ai(Ml,r)),e.url=r=>e.check(ao(pa,r)),e.jwt=r=>e.check(ta(Yl,r)),e.emoji=r=>e.check(Li(Cl,r)),e.guid=r=>e.check(io(ca,r)),e.uuid=r=>e.check(Mi(Mt,r)),e.uuidv4=r=>e.check(Ci(Mt,r)),e.uuidv6=r=>e.check(Ui(Mt,r)),e.uuidv7=r=>e.check(Zi(Mt,r)),e.nanoid=r=>e.check(qi(Ul,r)),e.guid=r=>e.check(io(ca,r)),e.cuid=r=>e.check(Fi(Zl,r)),e.cuid2=r=>e.check(Vi(Ll,r)),e.ulid=r=>e.check(Ji(ql,r)),e.base64=r=>e.check(Yi(Gl,r)),e.base64url=r=>e.check(Qi(Bl,r)),e.xid=r=>e.check(Wi(Fl,r)),e.ksuid=r=>e.check(Ki(Vl,r)),e.ipv4=r=>e.check(Hi(Jl,r)),e.ipv6=r=>e.check(Gi(Wl,r)),e.cidrv4=r=>e.check(Bi(Kl,r)),e.cidrv6=r=>e.check(Xi(Hl,r)),e.e164=r=>e.check(ea(Xl,r)),e.datetime=r=>e.check(El(r)),e.date=r=>e.check(Pl(r)),e.time=r=>e.check(jl(r)),e.duration=r=>e.check(Nl(r))});function v(e){return Lu(da,e)}var ce=f("ZodStringFormat",(e,t)=>{oe.init(e,t),Al.init(e,t)}),Ml=f("ZodEmail",(e,t)=>{jc.init(e,t),ce.init(e,t)});function fx(e){return Ai(Ml,e)}var ca=f("ZodGUID",(e,t)=>{Pc.init(e,t),ce.init(e,t)});function mx(e){return io(ca,e)}var Mt=f("ZodUUID",(e,t)=>{Oc.init(e,t),ce.init(e,t)});function hx(e){return Mi(Mt,e)}function gx(e){return Ci(Mt,e)}function vx(e){return Ui(Mt,e)}function _x(e){return Zi(Mt,e)}var pa=f("ZodURL",(e,t)=>{Dc.init(e,t),ce.init(e,t)});function yx(e){return ao(pa,e)}function $x(e){return ao(pa,{protocol:/^https?$/,hostname:rt.domain,...$.normalizeParams(e)})}var Cl=f("ZodEmoji",(e,t)=>{Nc.init(e,t),ce.init(e,t)});function bx(e){return Li(Cl,e)}var Ul=f("ZodNanoID",(e,t)=>{Rc.init(e,t),ce.init(e,t)});function xx(e){return qi(Ul,e)}var Zl=f("ZodCUID",(e,t)=>{Ac.init(e,t),ce.init(e,t)});function kx(e){return Fi(Zl,e)}var Ll=f("ZodCUID2",(e,t)=>{Mc.init(e,t),ce.init(e,t)});function Sx(e){return Vi(Ll,e)}var ql=f("ZodULID",(e,t)=>{Cc.init(e,t),ce.init(e,t)});function wx(e){return Ji(ql,e)}var Fl=f("ZodXID",(e,t)=>{Uc.init(e,t),ce.init(e,t)});function zx(e){return Wi(Fl,e)}var Vl=f("ZodKSUID",(e,t)=>{Zc.init(e,t),ce.init(e,t)});function Ix(e){return Ki(Vl,e)}var Jl=f("ZodIPv4",(e,t)=>{Jc.init(e,t),ce.init(e,t)});function Ex(e){return Hi(Jl,e)}var Kh=f("ZodMAC",(e,t)=>{Kc.init(e,t),ce.init(e,t)});function Tx(e){return qu(Kh,e)}var Wl=f("ZodIPv6",(e,t)=>{Wc.init(e,t),ce.init(e,t)});function Px(e){return Gi(Wl,e)}var Kl=f("ZodCIDRv4",(e,t)=>{Hc.init(e,t),ce.init(e,t)});function Ox(e){return Bi(Kl,e)}var Hl=f("ZodCIDRv6",(e,t)=>{Gc.init(e,t),ce.init(e,t)});function jx(e){return Xi(Hl,e)}var Gl=f("ZodBase64",(e,t)=>{Bc.init(e,t),ce.init(e,t)});function Dx(e){return Yi(Gl,e)}var Bl=f("ZodBase64URL",(e,t)=>{Xc.init(e,t),ce.init(e,t)});function Nx(e){return Qi(Bl,e)}var Xl=f("ZodE164",(e,t)=>{Yc.init(e,t),ce.init(e,t)});function Rx(e){return ea(Xl,e)}var Yl=f("ZodJWT",(e,t)=>{Qc.init(e,t),ce.init(e,t)});function Ax(e){return ta(Yl,e)}var xo=f("ZodCustomStringFormat",(e,t)=>{eu.init(e,t),ce.init(e,t)});function Mx(e,t,r={}){return en(xo,e,t,r)}function Cx(e){return en(xo,"hostname",rt.hostname,e)}function Ux(e){return en(xo,"hex",rt.hex,e)}function Zx(e,t){let r=t?.enc??"hex",n=`${e}_${r}`,o=rt[n];if(!o)throw new Error(`Unrecognized hash format: ${n}`);return en(xo,n,o,t)}var fa=f("ZodNumber",(e,t)=>{ji.init(e,t),q.init(e,t),e._zod.processJSONSchema=(n,o,i)=>Hm(e,n,o,i),e.gt=(n,o)=>e.check(Rt(n,o)),e.gte=(n,o)=>e.check(Me(n,o)),e.min=(n,o)=>e.check(Me(n,o)),e.lt=(n,o)=>e.check(Nt(n,o)),e.lte=(n,o)=>e.check(Be(n,o)),e.max=(n,o)=>e.check(Be(n,o)),e.int=n=>e.check(Rl(n)),e.safe=n=>e.check(Rl(n)),e.positive=n=>e.check(Rt(0,n)),e.nonnegative=n=>e.check(Me(0,n)),e.negative=n=>e.check(Nt(0,n)),e.nonpositive=n=>e.check(Be(0,n)),e.multipleOf=(n,o)=>e.check(yr(n,o)),e.step=(n,o)=>e.check(yr(n,o)),e.finite=()=>e;let r=e._zod.bag;e.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),e.isFinite=!0,e.format=r.format??null});function ne(e){return Ku(fa,e)}var rn=f("ZodNumberFormat",(e,t)=>{tu.init(e,t),fa.init(e,t)});function Rl(e){return Hu(rn,e)}function Lx(e){return Gu(rn,e)}function qx(e){return Bu(rn,e)}function Fx(e){return Xu(rn,e)}function Vx(e){return Yu(rn,e)}var ma=f("ZodBoolean",(e,t)=>{ro.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Gm(e,r,n,o)});function ye(e){return Qu(ma,e)}var ha=f("ZodBigInt",(e,t)=>{Di.init(e,t),q.init(e,t),e._zod.processJSONSchema=(n,o,i)=>Bm(e,n,o,i),e.gte=(n,o)=>e.check(Me(n,o)),e.min=(n,o)=>e.check(Me(n,o)),e.gt=(n,o)=>e.check(Rt(n,o)),e.gte=(n,o)=>e.check(Me(n,o)),e.min=(n,o)=>e.check(Me(n,o)),e.lt=(n,o)=>e.check(Nt(n,o)),e.lte=(n,o)=>e.check(Be(n,o)),e.max=(n,o)=>e.check(Be(n,o)),e.positive=n=>e.check(Rt(BigInt(0),n)),e.negative=n=>e.check(Nt(BigInt(0),n)),e.nonpositive=n=>e.check(Be(BigInt(0),n)),e.nonnegative=n=>e.check(Me(BigInt(0),n)),e.multipleOf=(n,o)=>e.check(yr(n,o));let r=e._zod.bag;e.minValue=r.minimum??null,e.maxValue=r.maximum??null,e.format=r.format??null});function Jx(e){return el(ha,e)}var Ql=f("ZodBigIntFormat",(e,t)=>{ru.init(e,t),ha.init(e,t)});function Wx(e){return tl(Ql,e)}function Kx(e){return rl(Ql,e)}var Hh=f("ZodSymbol",(e,t)=>{nu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Xm(e,r,n,o)});function Hx(e){return nl(Hh,e)}var Gh=f("ZodUndefined",(e,t)=>{ou.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Qm(e,r,n,o)});function Gx(e){return ol(Gh,e)}var Bh=f("ZodNull",(e,t)=>{iu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ym(e,r,n,o)});function ko(e){return il(Bh,e)}var Xh=f("ZodAny",(e,t)=>{au.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>rh(e,r,n,o)});function Bx(){return al(Xh)}var Yh=f("ZodUnknown",(e,t)=>{su.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>nh(e,r,n,o)});function ue(){return sl(Yh)}var Qh=f("ZodNever",(e,t)=>{cu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>th(e,r,n,o)});function ed(e){return cl(Qh,e)}var eg=f("ZodVoid",(e,t)=>{uu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>eh(e,r,n,o)});function Xx(e){return ul(eg,e)}var td=f("ZodDate",(e,t)=>{lu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(n,o,i)=>oh(e,n,o,i),e.min=(n,o)=>e.check(Me(n,o)),e.max=(n,o)=>e.check(Be(n,o));let r=e._zod.bag;e.minDate=r.minimum?new Date(r.minimum):null,e.maxDate=r.maximum?new Date(r.maximum):null});function Yx(e){return ll(td,e)}var tg=f("ZodArray",(e,t)=>{du.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>gh(e,r,n,o),e.element=t.element,e.min=(r,n)=>e.check(tr(r,n)),e.nonempty=r=>e.check(tr(1,r)),e.max=(r,n)=>e.check(Yr(r,n)),e.length=(r,n)=>e.check(Qr(r,n)),e.unwrap=()=>e.element});function G(e,t){return Jm(tg,e,t)}function Qx(e){let t=e._zod.def.shape;return Pe(Object.keys(t))}var ga=f("ZodObject",(e,t)=>{Fm.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>vh(e,r,n,o),$.defineLazy(e,"shape",()=>t.shape),e.keyof=()=>Pe(Object.keys(e._zod.def.shape)),e.catchall=r=>e.clone({...e._zod.def,catchall:r}),e.passthrough=()=>e.clone({...e._zod.def,catchall:ue()}),e.loose=()=>e.clone({...e._zod.def,catchall:ue()}),e.strict=()=>e.clone({...e._zod.def,catchall:ed()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=r=>$.extend(e,r),e.safeExtend=r=>$.safeExtend(e,r),e.merge=r=>$.merge(e,r),e.pick=r=>$.pick(e,r),e.omit=r=>$.omit(e,r),e.partial=(...r)=>$.partial(nd,e,r[0]),e.required=(...r)=>$.required(od,e,r[0])});function z(e,t){let r={type:"object",shape:e??{},...$.normalizeParams(t)};return new ga(r)}function ek(e,t){return new ga({type:"object",shape:e,catchall:ed(),...$.normalizeParams(t)})}function Te(e,t){return new ga({type:"object",shape:e,catchall:ue(),...$.normalizeParams(t)})}var va=f("ZodUnion",(e,t)=>{no.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Sl(e,r,n,o),e.options=t.options});function ie(e,t){return new va({type:"union",options:e,...$.normalizeParams(t)})}var rg=f("ZodXor",(e,t)=>{va.init(e,t),pu.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Sl(e,r,n,o),e.options=t.options});function tk(e,t){return new rg({type:"union",options:e,inclusive:!1,...$.normalizeParams(t)})}var ng=f("ZodDiscriminatedUnion",(e,t)=>{va.init(e,t),fu.init(e,t)});function _a(e,t,r){return new ng({type:"union",options:t,discriminator:e,...$.normalizeParams(r)})}var og=f("ZodIntersection",(e,t)=>{mu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>_h(e,r,n,o)});function So(e,t){return new og({type:"intersection",left:e,right:t})}var ig=f("ZodTuple",(e,t)=>{Ni.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>yh(e,r,n,o),e.rest=r=>e.clone({...e._zod.def,rest:r})});function ag(e,t,r){let n=t instanceof Z,o=n?r:t,i=n?t:null;return new ig({type:"tuple",items:e,rest:i,...$.normalizeParams(o)})}var ya=f("ZodRecord",(e,t)=>{hu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>$h(e,r,n,o),e.keyType=t.keyType,e.valueType=t.valueType});function fe(e,t,r){return new ya({type:"record",keyType:e,valueType:t,...$.normalizeParams(r)})}function rk(e,t,r){let n=Re(e);return n._zod.values=void 0,new ya({type:"record",keyType:n,valueType:t,...$.normalizeParams(r)})}function nk(e,t,r){return new ya({type:"record",keyType:e,valueType:t,mode:"loose",...$.normalizeParams(r)})}var sg=f("ZodMap",(e,t)=>{gu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>mh(e,r,n,o),e.keyType=t.keyType,e.valueType=t.valueType,e.min=(...r)=>e.check(At(...r)),e.nonempty=r=>e.check(At(1,r)),e.max=(...r)=>e.check($r(...r)),e.size=(...r)=>e.check(Xr(...r))});function ok(e,t,r){return new sg({type:"map",keyType:e,valueType:t,...$.normalizeParams(r)})}var cg=f("ZodSet",(e,t)=>{vu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>hh(e,r,n,o),e.min=(...r)=>e.check(At(...r)),e.nonempty=r=>e.check(At(1,r)),e.max=(...r)=>e.check($r(...r)),e.size=(...r)=>e.check(Xr(...r))});function ik(e,t){return new cg({type:"set",valueType:e,...$.normalizeParams(t)})}var bo=f("ZodEnum",(e,t)=>{_u.init(e,t),q.init(e,t),e._zod.processJSONSchema=(n,o,i)=>ih(e,n,o,i),e.enum=t.entries,e.options=Object.values(t.entries);let r=new Set(Object.keys(t.entries));e.extract=(n,o)=>{let i={};for(let a of n)if(r.has(a))i[a]=t.entries[a];else throw new Error(`Key ${a} not found in enum`);return new bo({...t,checks:[],...$.normalizeParams(o),entries:i})},e.exclude=(n,o)=>{let i={...t.entries};for(let a of n)if(r.has(a))delete i[a];else throw new Error(`Key ${a} not found in enum`);return new bo({...t,checks:[],...$.normalizeParams(o),entries:i})}});function Pe(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e;return new bo({type:"enum",entries:r,...$.normalizeParams(t)})}function ak(e,t){return new bo({type:"enum",entries:e,...$.normalizeParams(t)})}var ug=f("ZodLiteral",(e,t)=>{yu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ah(e,r,n,o),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function P(e,t){return new ug({type:"literal",values:Array.isArray(e)?e:[e],...$.normalizeParams(t)})}var lg=f("ZodFile",(e,t)=>{$u.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>uh(e,r,n,o),e.min=(r,n)=>e.check(At(r,n)),e.max=(r,n)=>e.check($r(r,n)),e.mime=(r,n)=>e.check(mo(Array.isArray(r)?r:[r],n))});function sk(e){return vl(lg,e)}var dg=f("ZodTransform",(e,t)=>{bu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>fh(e,r,n,o),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new hr(e.constructor.name);r.addIssue=i=>{if(typeof i=="string")r.issues.push($.issue(i,r.value,t));else{let a=i;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=r.value),a.inst??(a.inst=e),r.issues.push($.issue(a))}};let o=t.transform(r.value,r);return o instanceof Promise?o.then(i=>(r.value=i,r)):(r.value=o,r)}});function rd(e){return new dg({type:"transform",transform:e})}var nd=f("ZodOptional",(e,t)=>{Ri.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>wl(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function me(e){return new nd({type:"optional",innerType:e})}var pg=f("ZodExactOptional",(e,t)=>{xu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>wl(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function fg(e){return new pg({type:"optional",innerType:e})}var mg=f("ZodNullable",(e,t)=>{ku.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>bh(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function ua(e){return new mg({type:"nullable",innerType:e})}function ck(e){return me(ua(e))}var hg=f("ZodDefault",(e,t)=>{Su.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>kh(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function gg(e,t){return new hg({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():$.shallowClone(t)}})}var vg=f("ZodPrefault",(e,t)=>{wu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Sh(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function _g(e,t){return new vg({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():$.shallowClone(t)}})}var od=f("ZodNonOptional",(e,t)=>{zu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>xh(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function yg(e,t){return new od({type:"nonoptional",innerType:e,...$.normalizeParams(t)})}var $g=f("ZodSuccess",(e,t)=>{Iu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>lh(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function uk(e){return new $g({type:"success",innerType:e})}var bg=f("ZodCatch",(e,t)=>{Eu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>wh(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function xg(e,t){return new bg({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}var kg=f("ZodNaN",(e,t)=>{Tu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>sh(e,r,n,o)});function lk(e){return dl(kg,e)}var id=f("ZodPipe",(e,t)=>{Pu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>zh(e,r,n,o),e.in=t.in,e.out=t.out});function la(e,t){return new id({type:"pipe",in:e,out:t})}var ad=f("ZodCodec",(e,t)=>{id.init(e,t),oo.init(e,t)});function dk(e,t,r){return new ad({type:"pipe",in:e,out:t,transform:r.decode,reverseTransform:r.encode})}var Sg=f("ZodReadonly",(e,t)=>{Ou.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ih(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function wg(e){return new Sg({type:"readonly",innerType:e})}var zg=f("ZodTemplateLiteral",(e,t)=>{ju.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ch(e,r,n,o)});function pk(e,t){return new zg({type:"template_literal",parts:e,...$.normalizeParams(t)})}var Ig=f("ZodLazy",(e,t)=>{Ru.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Th(e,r,n,o),e.unwrap=()=>e._zod.def.getter()});function Eg(e){return new Ig({type:"lazy",getter:e})}var Tg=f("ZodPromise",(e,t)=>{Nu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Eh(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function fk(e){return new Tg({type:"promise",innerType:e})}var Pg=f("ZodFunction",(e,t)=>{Du.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ph(e,r,n,o)});function mk(e){return new Pg({type:"function",input:Array.isArray(e?.input)?ag(e?.input):e?.input??G(ue()),output:e?.output??ue()})}var $a=f("ZodCustom",(e,t)=>{Au.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>dh(e,r,n,o)});function hk(e){let t=new se({check:"custom"});return t._zod.check=e,t}function sd(e,t){return _l($a,e??(()=>!0),t)}function Og(e,t={}){return yl($a,e,t)}function jg(e){return $l(e)}var gk=bl,vk=xl;function _k(e,t={}){let r=new $a({type:"custom",check:"custom",fn:n=>n instanceof e,abort:!0,...$.normalizeParams(t)});return r._zod.bag.Class=e,r._zod.check=n=>{n.value instanceof e||n.issues.push({code:"invalid_type",expected:e.name,input:n.value,inst:r,path:[...r._zod.def.path??[]]})},r}var yk=(...e)=>kl({Codec:ad,Boolean:ma,String:da},...e);function $k(e){let t=Eg(()=>ie([v(e),ne(),ye(),ko(),G(t),fe(v(),t)]));return t}function ba(e,t){return la(rd(e),t)}var Dg;Dg||(Dg={});var FR={...$o,...sa,iso:br};be(Mu());var ud="2025-11-25";var Ng=[ud,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],nr="io.modelcontextprotocol/related-task",ka="2.0",xe=sd(e=>e!==null&&(typeof e=="object"||typeof e=="function")),Rg=ie([v(),ne().int()]),Ag=v(),c1=Te({ttl:ie([ne(),ko()]).optional(),pollInterval:ne().optional()}),Sk=z({ttl:ne().optional()}),wk=z({taskId:v()}),ld=Te({progressToken:Rg.optional(),[nr]:wk.optional()}),Ye=z({_meta:ld.optional()}),wo=Ye.extend({task:Sk.optional()}),Mg=e=>wo.safeParse(e).success,ke=z({method:v(),params:Ye.loose().optional()}),nt=z({_meta:ld.optional()}),ot=z({method:v(),params:nt.loose().optional()}),Se=Te({_meta:ld.optional()}),Sa=ie([v(),ne().int()]),Cg=z({jsonrpc:P(ka),id:Sa,...ke.shape}).strict(),dd=e=>Cg.safeParse(e).success,Ug=z({jsonrpc:P(ka),...ot.shape}).strict(),Zg=e=>Ug.safeParse(e).success,pd=z({jsonrpc:P(ka),id:Sa,result:Se}).strict(),zo=e=>pd.safeParse(e).success;var Y;(function(e){e[e.ConnectionClosed=-32e3]="ConnectionClosed",e[e.RequestTimeout=-32001]="RequestTimeout",e[e.ParseError=-32700]="ParseError",e[e.InvalidRequest=-32600]="InvalidRequest",e[e.MethodNotFound=-32601]="MethodNotFound",e[e.InvalidParams=-32602]="InvalidParams",e[e.InternalError=-32603]="InternalError",e[e.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(Y||(Y={}));var fd=z({jsonrpc:P(ka),id:Sa.optional(),error:z({code:ne().int(),message:v(),data:ue().optional()})}).strict();var Lg=e=>fd.safeParse(e).success;var qg=ie([Cg,Ug,pd,fd]),u1=ie([pd,fd]),wa=Se.strict(),zk=nt.extend({requestId:Sa.optional(),reason:v().optional()}),za=ot.extend({method:P("notifications/cancelled"),params:zk}),Ik=z({src:v(),mimeType:v().optional(),sizes:G(v()).optional(),theme:Pe(["light","dark"]).optional()}),Io=z({icons:G(Ik).optional()}),nn=z({name:v(),title:v().optional()}),Fg=nn.extend({...nn.shape,...Io.shape,version:v(),websiteUrl:v().optional(),description:v().optional()}),Ek=So(z({applyDefaults:ye().optional()}),fe(v(),ue())),Tk=ba(e=>e&&typeof e=="object"&&!Array.isArray(e)&&Object.keys(e).length===0?{form:{}}:e,So(z({form:Ek.optional(),url:xe.optional()}),fe(v(),ue()).optional())),Pk=Te({list:xe.optional(),cancel:xe.optional(),requests:Te({sampling:Te({createMessage:xe.optional()}).optional(),elicitation:Te({create:xe.optional()}).optional()}).optional()}),Ok=Te({list:xe.optional(),cancel:xe.optional(),requests:Te({tools:Te({call:xe.optional()}).optional()}).optional()}),jk=z({experimental:fe(v(),xe).optional(),sampling:z({context:xe.optional(),tools:xe.optional()}).optional(),elicitation:Tk.optional(),roots:z({listChanged:ye().optional()}).optional(),tasks:Pk.optional()}),Dk=Ye.extend({protocolVersion:v(),capabilities:jk,clientInfo:Fg}),md=ke.extend({method:P("initialize"),params:Dk});var Nk=z({experimental:fe(v(),xe).optional(),logging:xe.optional(),completions:xe.optional(),prompts:z({listChanged:ye().optional()}).optional(),resources:z({subscribe:ye().optional(),listChanged:ye().optional()}).optional(),tools:z({listChanged:ye().optional()}).optional(),tasks:Ok.optional()}),Rk=Se.extend({protocolVersion:v(),capabilities:Nk,serverInfo:Fg,instructions:v().optional()}),hd=ot.extend({method:P("notifications/initialized"),params:nt.optional()});var Ia=ke.extend({method:P("ping"),params:Ye.optional()}),Ak=z({progress:ne(),total:me(ne()),message:me(v())}),Mk=z({...nt.shape,...Ak.shape,progressToken:Rg}),Ea=ot.extend({method:P("notifications/progress"),params:Mk}),Ck=Ye.extend({cursor:Ag.optional()}),Eo=ke.extend({params:Ck.optional()}),To=Se.extend({nextCursor:Ag.optional()}),Uk=Pe(["working","input_required","completed","failed","cancelled"]),Po=z({taskId:v(),status:Uk,ttl:ie([ne(),ko()]),createdAt:v(),lastUpdatedAt:v(),pollInterval:me(ne()),statusMessage:me(v())}),on=Se.extend({task:Po}),Zk=nt.merge(Po),Oo=ot.extend({method:P("notifications/tasks/status"),params:Zk}),Ta=ke.extend({method:P("tasks/get"),params:Ye.extend({taskId:v()})}),Pa=Se.merge(Po),Oa=ke.extend({method:P("tasks/result"),params:Ye.extend({taskId:v()})}),l1=Se.loose(),ja=Eo.extend({method:P("tasks/list")}),Da=To.extend({tasks:G(Po)}),Na=ke.extend({method:P("tasks/cancel"),params:Ye.extend({taskId:v()})}),Vg=Se.merge(Po),Jg=z({uri:v(),mimeType:me(v()),_meta:fe(v(),ue()).optional()}),Wg=Jg.extend({text:v()}),gd=v().refine(e=>{try{return atob(e),!0}catch{return!1}},{message:"Invalid Base64 string"}),Kg=Jg.extend({blob:gd}),jo=Pe(["user","assistant"]),an=z({audience:G(jo).optional(),priority:ne().min(0).max(1).optional(),lastModified:br.datetime({offset:!0}).optional()}),Hg=z({...nn.shape,...Io.shape,uri:v(),description:me(v()),mimeType:me(v()),annotations:an.optional(),_meta:me(Te({}))}),Lk=z({...nn.shape,...Io.shape,uriTemplate:v(),description:me(v()),mimeType:me(v()),annotations:an.optional(),_meta:me(Te({}))}),qk=Eo.extend({method:P("resources/list")}),Fk=To.extend({resources:G(Hg)}),Vk=Eo.extend({method:P("resources/templates/list")}),Jk=To.extend({resourceTemplates:G(Lk)}),vd=Ye.extend({uri:v()}),Wk=vd,Kk=ke.extend({method:P("resources/read"),params:Wk}),Hk=Se.extend({contents:G(ie([Wg,Kg]))}),Gk=ot.extend({method:P("notifications/resources/list_changed"),params:nt.optional()}),Bk=vd,Xk=ke.extend({method:P("resources/subscribe"),params:Bk}),Yk=vd,Qk=ke.extend({method:P("resources/unsubscribe"),params:Yk}),eS=nt.extend({uri:v()}),tS=ot.extend({method:P("notifications/resources/updated"),params:eS}),rS=z({name:v(),description:me(v()),required:me(ye())}),nS=z({...nn.shape,...Io.shape,description:me(v()),arguments:me(G(rS)),_meta:me(Te({}))}),oS=Eo.extend({method:P("prompts/list")}),iS=To.extend({prompts:G(nS)}),aS=Ye.extend({name:v(),arguments:fe(v(),v()).optional()}),sS=ke.extend({method:P("prompts/get"),params:aS}),_d=z({type:P("text"),text:v(),annotations:an.optional(),_meta:fe(v(),ue()).optional()}),yd=z({type:P("image"),data:gd,mimeType:v(),annotations:an.optional(),_meta:fe(v(),ue()).optional()}),$d=z({type:P("audio"),data:gd,mimeType:v(),annotations:an.optional(),_meta:fe(v(),ue()).optional()}),cS=z({type:P("tool_use"),name:v(),id:v(),input:fe(v(),ue()),_meta:fe(v(),ue()).optional()}),uS=z({type:P("resource"),resource:ie([Wg,Kg]),annotations:an.optional(),_meta:fe(v(),ue()).optional()}),lS=Hg.extend({type:P("resource_link")}),bd=ie([_d,yd,$d,lS,uS]),dS=z({role:jo,content:bd}),pS=Se.extend({description:v().optional(),messages:G(dS)}),fS=ot.extend({method:P("notifications/prompts/list_changed"),params:nt.optional()}),mS=z({title:v().optional(),readOnlyHint:ye().optional(),destructiveHint:ye().optional(),idempotentHint:ye().optional(),openWorldHint:ye().optional()}),hS=z({taskSupport:Pe(["required","optional","forbidden"]).optional()}),Gg=z({...nn.shape,...Io.shape,description:v().optional(),inputSchema:z({type:P("object"),properties:fe(v(),xe).optional(),required:G(v()).optional()}).catchall(ue()),outputSchema:z({type:P("object"),properties:fe(v(),xe).optional(),required:G(v()).optional()}).catchall(ue()).optional(),annotations:mS.optional(),execution:hS.optional(),_meta:fe(v(),ue()).optional()}),xd=Eo.extend({method:P("tools/list")}),gS=To.extend({tools:G(Gg)}),Ra=Se.extend({content:G(bd).default([]),structuredContent:fe(v(),ue()).optional(),isError:ye().optional()}),d1=Ra.or(Se.extend({toolResult:ue()})),vS=wo.extend({name:v(),arguments:fe(v(),ue()).optional()}),Do=ke.extend({method:P("tools/call"),params:vS}),_S=ot.extend({method:P("notifications/tools/list_changed"),params:nt.optional()}),p1=z({autoRefresh:ye().default(!0),debounceMs:ne().int().nonnegative().default(300)}),No=Pe(["debug","info","notice","warning","error","critical","alert","emergency"]),yS=Ye.extend({level:No}),kd=ke.extend({method:P("logging/setLevel"),params:yS}),$S=nt.extend({level:No,logger:v().optional(),data:ue()}),bS=ot.extend({method:P("notifications/message"),params:$S}),xS=z({name:v().optional()}),kS=z({hints:G(xS).optional(),costPriority:ne().min(0).max(1).optional(),speedPriority:ne().min(0).max(1).optional(),intelligencePriority:ne().min(0).max(1).optional()}),SS=z({mode:Pe(["auto","required","none"]).optional()}),wS=z({type:P("tool_result"),toolUseId:v().describe("The unique identifier for the corresponding tool call."),content:G(bd).default([]),structuredContent:z({}).loose().optional(),isError:ye().optional(),_meta:fe(v(),ue()).optional()}),zS=_a("type",[_d,yd,$d]),xa=_a("type",[_d,yd,$d,cS,wS]),IS=z({role:jo,content:ie([xa,G(xa)]),_meta:fe(v(),ue()).optional()}),ES=wo.extend({messages:G(IS),modelPreferences:kS.optional(),systemPrompt:v().optional(),includeContext:Pe(["none","thisServer","allServers"]).optional(),temperature:ne().optional(),maxTokens:ne().int(),stopSequences:G(v()).optional(),metadata:xe.optional(),tools:G(Gg).optional(),toolChoice:SS.optional()}),TS=ke.extend({method:P("sampling/createMessage"),params:ES}),Sd=Se.extend({model:v(),stopReason:me(Pe(["endTurn","stopSequence","maxTokens"]).or(v())),role:jo,content:zS}),wd=Se.extend({model:v(),stopReason:me(Pe(["endTurn","stopSequence","maxTokens","toolUse"]).or(v())),role:jo,content:ie([xa,G(xa)])}),PS=z({type:P("boolean"),title:v().optional(),description:v().optional(),default:ye().optional()}),OS=z({type:P("string"),title:v().optional(),description:v().optional(),minLength:ne().optional(),maxLength:ne().optional(),format:Pe(["email","uri","date","date-time"]).optional(),default:v().optional()}),jS=z({type:Pe(["number","integer"]),title:v().optional(),description:v().optional(),minimum:ne().optional(),maximum:ne().optional(),default:ne().optional()}),DS=z({type:P("string"),title:v().optional(),description:v().optional(),enum:G(v()),default:v().optional()}),NS=z({type:P("string"),title:v().optional(),description:v().optional(),oneOf:G(z({const:v(),title:v()})),default:v().optional()}),RS=z({type:P("string"),title:v().optional(),description:v().optional(),enum:G(v()),enumNames:G(v()).optional(),default:v().optional()}),AS=ie([DS,NS]),MS=z({type:P("array"),title:v().optional(),description:v().optional(),minItems:ne().optional(),maxItems:ne().optional(),items:z({type:P("string"),enum:G(v())}),default:G(v()).optional()}),CS=z({type:P("array"),title:v().optional(),description:v().optional(),minItems:ne().optional(),maxItems:ne().optional(),items:z({anyOf:G(z({const:v(),title:v()}))}),default:G(v()).optional()}),US=ie([MS,CS]),ZS=ie([RS,AS,US]),LS=ie([ZS,PS,OS,jS]),qS=wo.extend({mode:P("form").optional(),message:v(),requestedSchema:z({type:P("object"),properties:fe(v(),LS),required:G(v()).optional()})}),FS=wo.extend({mode:P("url"),message:v(),elicitationId:v(),url:v().url()}),VS=ie([qS,FS]),JS=ke.extend({method:P("elicitation/create"),params:VS}),WS=nt.extend({elicitationId:v()}),KS=ot.extend({method:P("notifications/elicitation/complete"),params:WS}),Aa=Se.extend({action:Pe(["accept","decline","cancel"]),content:ba(e=>e===null?void 0:e,fe(v(),ie([v(),ne(),ye(),G(v())])).optional())}),HS=z({type:P("ref/resource"),uri:v()});var GS=z({type:P("ref/prompt"),name:v()}),BS=Ye.extend({ref:ie([GS,HS]),argument:z({name:v(),value:v()}),context:z({arguments:fe(v(),v()).optional()}).optional()}),XS=ke.extend({method:P("completion/complete"),params:BS});var YS=Se.extend({completion:Te({values:G(v()).max(100),total:me(ne().int()),hasMore:me(ye())})}),QS=z({uri:v().startsWith("file://"),name:v().optional(),_meta:fe(v(),ue()).optional()}),ew=ke.extend({method:P("roots/list"),params:Ye.optional()}),zd=Se.extend({roots:G(QS)}),tw=ot.extend({method:P("notifications/roots/list_changed"),params:nt.optional()}),f1=ie([Ia,md,XS,kd,sS,oS,qk,Vk,Kk,Xk,Qk,Do,xd,Ta,Oa,ja,Na]),m1=ie([za,Ea,hd,tw,Oo]),h1=ie([wa,Sd,wd,Aa,zd,Pa,Da,on]),g1=ie([Ia,TS,JS,ew,Ta,Oa,ja,Na]),v1=ie([za,Ea,bS,tS,Gk,_S,fS,Oo,KS]),_1=ie([wa,Rk,YS,pS,iS,Fk,Jk,Hk,Ra,gS,Pa,Da,on]),J=class e extends Error{constructor(t,r,n){super(`MCP error ${t}: ${r}`),this.code=t,this.data=n,this.name="McpError"}static fromError(t,r,n){if(t===Y.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new cd(o.elicitations,r)}return new e(t,r,n)}},cd=class extends J{constructor(t,r=`URL elicitation${t.length>1?"s":""} required`){super(Y.UrlElicitationRequired,r,{elicitations:t})}get elicitations(){return this.data?.elicitations??[]}};function or(e){return e==="completed"||e==="failed"||e==="cancelled"}var Y1=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Id(e){let r=aa(e)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Dh(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function Ed(e,t){let r=rr(e,t);if(!r.success)throw r.error;return r.data}var sw=6e4,Ma=class{constructor(t){this._options=t,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(za,r=>{this._oncancel(r)}),this.setNotificationHandler(Ea,r=>{this._onprogress(r)}),this.setRequestHandler(Ia,r=>({})),this._taskStore=t?.taskStore,this._taskMessageQueue=t?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Ta,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new J(Y.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(Oa,async(r,n)=>{let o=async()=>{let i=r.params.taskId;if(this._taskMessageQueue){let s;for(;s=await this._taskMessageQueue.dequeue(i,n.sessionId);){if(s.type==="response"||s.type==="error"){let c=s.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),s.type==="response")l(c);else{let d=c,m=new J(d.error.code,d.error.message,d.error.data);l(m)}else{let d=s.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(s.message,{relatedRequestId:n.requestId})}}let a=await this._taskStore.getTask(i,n.sessionId);if(!a)throw new J(Y.InvalidParams,`Task not found: ${i}`);if(!or(a.status))return await this._waitForTaskUpdate(i,n.signal),await o();if(or(a.status)){let s=await this._taskStore.getTaskResult(i,n.sessionId);return this._clearTaskQueue(i),{...s,_meta:{...s._meta,[nr]:{taskId:i}}}}return await o()};return await o()}),this.setRequestHandler(ja,async(r,n)=>{try{let{tasks:o,nextCursor:i}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:i,_meta:{}}}catch(o){throw new J(Y.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(Na,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new J(Y.InvalidParams,`Task not found: ${r.params.taskId}`);if(or(o.status))throw new J(Y.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let i=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!i)throw new J(Y.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...i}}catch(o){throw o instanceof J?o:new J(Y.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(t){if(!t.params.requestId)return;this._requestHandlerAbortControllers.get(t.params.requestId)?.abort(t.params.reason)}_setupTimeout(t,r,n,o,i=!1){this._timeoutInfo.set(t,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:i,onTimeout:o})}_resetTimeout(t){let r=this._timeoutInfo.get(t);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(t),J.fromError(Y.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(t){let r=this._timeoutInfo.get(t);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(t))}async connect(t){this._transport=t;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=i=>{n?.(i),this._onerror(i)};let o=this._transport?.onmessage;this._transport.onmessage=(i,a)=>{o?.(i,a),zo(i)||Lg(i)?this._onresponse(i):dd(i)?this._onrequest(i,a):Zg(i)?this._onnotification(i):this._onerror(new Error(`Unknown message type: ${JSON.stringify(i)}`))},await this._transport.start()}_onclose(){let t=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();let r=J.fromError(Y.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of t.values())n(r)}_onerror(t){this.onerror?.(t)}_onnotification(t){let r=this._notificationHandlers.get(t.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(t)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(t,r){let n=this._requestHandlers.get(t.method)??this.fallbackRequestHandler,o=this._transport,i=t.params?._meta?.[nr]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:t.id,error:{code:Y.MethodNotFound,message:"Method not found"}};i&&this._taskMessageQueue?this._enqueueTaskMessage(i,{type:"error",message:l,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let a=new AbortController;this._requestHandlerAbortControllers.set(t.id,a);let s=Mg(t.params)?t.params.task:void 0,c=this._taskStore?this.requestTaskStore(t,o?.sessionId):void 0,u={signal:a.signal,sessionId:o?.sessionId,_meta:t.params?._meta,sendNotification:async l=>{let d={relatedRequestId:t.id};i&&(d.relatedTask={taskId:i}),await this.notification(l,d)},sendRequest:async(l,d,m)=>{let p={...m,relatedRequestId:t.id};i&&!p.relatedTask&&(p.relatedTask={taskId:i});let g=p.relatedTask?.taskId??i;return g&&c&&await c.updateTaskStatus(g,"input_required"),await this.request(l,d,p)},authInfo:r?.authInfo,requestId:t.id,requestInfo:r?.requestInfo,taskId:i,taskStore:c,taskRequestedTtl:s?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{s&&this.assertTaskHandlerCapability(t.method)}).then(()=>n(t,u)).then(async l=>{if(a.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:t.id};i&&this._taskMessageQueue?await this._enqueueTaskMessage(i,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(a.signal.aborted)return;let d={jsonrpc:"2.0",id:t.id,error:{code:Number.isSafeInteger(l.code)?l.code:Y.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};i&&this._taskMessageQueue?await this._enqueueTaskMessage(i,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.delete(t.id)})}_onprogress(t){let{progressToken:r,...n}=t.params,o=Number(r),i=this._progressHandlers.get(o);if(!i){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(t)}`));return}let a=this._responseHandlers.get(o),s=this._timeoutInfo.get(o);if(s&&a&&s.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(c){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),a(c);return}i(n)}_onresponse(t){let r=Number(t.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),zo(t))n(t);else{let a=new J(t.error.code,t.error.message,t.error.data);n(a)}return}let o=this._responseHandlers.get(r);if(o===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(t)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let i=!1;if(zo(t)&&t.result&&typeof t.result=="object"){let a=t.result;if(a.task&&typeof a.task=="object"){let s=a.task;typeof s.taskId=="string"&&(i=!0,this._taskProgressTokens.set(s.taskId,r))}}if(i||this._progressHandlers.delete(r),zo(t))o(t);else{let a=J.fromError(t.error.code,t.error.message,t.error.data);o(a)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(t,r,n){let{task:o}=n??{};if(!o){try{yield{type:"result",result:await this.request(t,r,n)}}catch(a){yield{type:"error",error:a instanceof J?a:new J(Y.InternalError,String(a))}}return}let i;try{let a=await this.request(t,on,n);if(a.task)i=a.task.taskId,yield{type:"taskCreated",task:a.task};else throw new J(Y.InternalError,"Task creation did not return a task");for(;;){let s=await this.getTask({taskId:i},n);if(yield{type:"taskStatus",task:s},or(s.status)){s.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:i},r,n)}:s.status==="failed"?yield{type:"error",error:new J(Y.InternalError,`Task ${i} failed`)}:s.status==="cancelled"&&(yield{type:"error",error:new J(Y.InternalError,`Task ${i} was cancelled`)});return}if(s.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:i},r,n)};return}let c=s.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(a){yield{type:"error",error:a instanceof J?a:new J(Y.InternalError,String(a))}}}request(t,r,n){let{relatedRequestId:o,resumptionToken:i,onresumptiontoken:a,task:s,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=E=>{l(E)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(t.method),s&&this.assertTaskCapability(t.method)}catch(E){d(E);return}n?.signal?.throwIfAborted();let m=this._requestMessageId++,p={...t,jsonrpc:"2.0",id:m};n?.onprogress&&(this._progressHandlers.set(m,n.onprogress),p.params={...t.params,_meta:{...t.params?._meta||{},progressToken:m}}),s&&(p.params={...p.params,task:s}),c&&(p.params={...p.params,_meta:{...p.params?._meta||{},[nr]:c}});let g=E=>{this._responseHandlers.delete(m),this._progressHandlers.delete(m),this._cleanupTimeout(m),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:m,reason:String(E)}},{relatedRequestId:o,resumptionToken:i,onresumptiontoken:a}).catch(A=>this._onerror(new Error(`Failed to send cancellation: ${A}`)));let I=E instanceof J?E:new J(Y.RequestTimeout,String(E));l(I)};this._responseHandlers.set(m,E=>{if(!n?.signal?.aborted){if(E instanceof Error)return l(E);try{let I=rr(r,E.result);I.success?u(I.data):l(I.error)}catch(I){l(I)}}}),n?.signal?.addEventListener("abort",()=>{g(n?.signal?.reason)});let h=n?.timeout??sw,_=()=>g(J.fromError(Y.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(m,h,n?.maxTotalTimeout,_,n?.resetTimeoutOnProgress??!1);let b=c?.taskId;if(b){let E=I=>{let A=this._responseHandlers.get(m);A?A(I):this._onerror(new Error(`Response handler missing for side-channeled request ${m}`))};this._requestResolvers.set(m,E),this._enqueueTaskMessage(b,{type:"request",message:p,timestamp:Date.now()}).catch(I=>{this._cleanupTimeout(m),l(I)})}else this._transport.send(p,{relatedRequestId:o,resumptionToken:i,onresumptiontoken:a}).catch(E=>{this._cleanupTimeout(m),l(E)})})}async getTask(t,r){return this.request({method:"tasks/get",params:t},Pa,r)}async getTaskResult(t,r,n){return this.request({method:"tasks/result",params:t},r,n)}async listTasks(t,r){return this.request({method:"tasks/list",params:t},Da,r)}async cancelTask(t,r){return this.request({method:"tasks/cancel",params:t},Vg,r)}async notification(t,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(t.method);let n=r?.relatedTask?.taskId;if(n){let s={...t,jsonrpc:"2.0",params:{...t.params,_meta:{...t.params?._meta||{},[nr]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:s,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(t.method)&&!t.params&&!r?.relatedRequestId&&!r?.relatedTask){if(this._pendingDebouncedNotifications.has(t.method))return;this._pendingDebouncedNotifications.add(t.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(t.method),!this._transport)return;let s={...t,jsonrpc:"2.0"};r?.relatedTask&&(s={...s,params:{...s.params,_meta:{...s.params?._meta||{},[nr]:r.relatedTask}}}),this._transport?.send(s,r).catch(c=>this._onerror(c))});return}let a={...t,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[nr]:r.relatedTask}}}),await this._transport.send(a,r)}setRequestHandler(t,r){let n=Id(t);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,i)=>{let a=Ed(t,o);return Promise.resolve(r(a,i))})}removeRequestHandler(t){this._requestHandlers.delete(t)}assertCanSetRequestHandler(t){if(this._requestHandlers.has(t))throw new Error(`A request handler for ${t} already exists, which would be overridden`)}setNotificationHandler(t,r){let n=Id(t);this._notificationHandlers.set(n,o=>{let i=Ed(t,o);return Promise.resolve(r(i))})}removeNotificationHandler(t){this._notificationHandlers.delete(t)}_cleanupTaskProgressHandler(t){let r=this._taskProgressTokens.get(t);r!==void 0&&(this._progressHandlers.delete(r),this._taskProgressTokens.delete(t))}async _enqueueTaskMessage(t,r,n){if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let o=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(t,r,n,o)}async _clearTaskQueue(t,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(t,r);for(let o of n)if(o.type==="request"&&dd(o.message)){let i=o.message.id,a=this._requestResolvers.get(i);a?(a(new J(Y.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(i)):this._onerror(new Error(`Resolver missing for request ${i} during task ${t} cleanup`))}}}async _waitForTaskUpdate(t,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(t);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,i)=>{if(r.aborted){i(new J(Y.InvalidRequest,"Request cancelled"));return}let a=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(a),i(new J(Y.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(t,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!t)throw new Error("No request provided");return await n.createTask(o,t.id,{method:t.method,params:t.params},r)},getTask:async o=>{let i=await n.getTask(o,r);if(!i)throw new J(Y.InvalidParams,"Failed to retrieve task: Task not found");return i},storeTaskResult:async(o,i,a)=>{await n.storeTaskResult(o,i,a,r);let s=await n.getTask(o,r);if(s){let c=Oo.parse({method:"notifications/tasks/status",params:s});await this.notification(c),or(s.status)&&this._cleanupTaskProgressHandler(o)}},getTaskResult:o=>n.getTaskResult(o,r),updateTaskStatus:async(o,i,a)=>{let s=await n.getTask(o,r);if(!s)throw new J(Y.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(or(s.status))throw new J(Y.InvalidParams,`Cannot update task "${o}" from terminal status "${s.status}" to "${i}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,i,a,r);let c=await n.getTask(o,r);if(c){let u=Oo.parse({method:"notifications/tasks/status",params:c});await this.notification(u),or(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function Bg(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Xg(e,t){let r={...e};for(let n in t){let o=n,i=t[o];if(i===void 0)continue;let a=r[o];Bg(a)&&Bg(i)?r[o]={...a,...i}:r[o]=i}return r}var My=mi(mf(),1),Cy=mi(Ay(),1);function XT(){let e=new My.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,Cy.default)(e),e}var $s=class{constructor(t){this._ajv=t??XT()}getValidator(t){let r="$id"in t&&typeof t.$id=="string"?this._ajv.getSchema(t.$id)??this._ajv.compile(t):this._ajv.compile(t);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var bs=class{constructor(t){this._server=t}requestStream(t,r,n){return this._server.requestStream(t,r,n)}async getTask(t,r){return this._server.getTask({taskId:t},r)}async getTaskResult(t,r,n){return this._server.getTaskResult({taskId:t},r,n)}async listTasks(t,r){return this._server.listTasks(t?{cursor:t}:void 0,r)}async cancelTask(t,r){return this._server.cancelTask({taskId:t},r)}};function Uy(e,t,r){if(!e)throw new Error(`${r} does not support task creation (required for ${t})`);switch(t){case"tools/call":if(!e.tools?.call)throw new Error(`${r} does not support task creation for tools/call (required for ${t})`);break;default:break}}function Zy(e,t,r){if(!e)throw new Error(`${r} does not support task creation (required for ${t})`);switch(t){case"sampling/createMessage":if(!e.sampling?.createMessage)throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${t})`);break;case"elicitation/create":if(!e.elicitation?.create)throw new Error(`${r} does not support task creation for elicitation/create (required for ${t})`);break;default:break}}var xs=class extends Ma{constructor(t,r){super(r),this._serverInfo=t,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(No.options.map((n,o)=>[n,o])),this.isMessageIgnored=(n,o)=>{let i=this._loggingLevels.get(o);return i?this.LOG_LEVEL_SEVERITY.get(n)this._oninitialize(n)),this.setNotificationHandler(hd,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(kd,async(n,o)=>{let i=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:a}=n.params,s=No.safeParse(a);return s.success&&this._loggingLevels.set(i,s.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new bs(this)}),this._experimental}registerCapabilities(t){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=Xg(this._capabilities,t)}setRequestHandler(t,r){let o=aa(t)?.method;if(!o)throw new Error("Schema is missing a method literal");let i;if(tn(o)){let s=o;i=s._zod?.def?.value??s.value}else{let s=o;i=s._def?.value??s.value}if(typeof i!="string")throw new Error("Schema method literal must be a string");if(i==="tools/call"){let s=async(c,u)=>{let l=rr(Do,c);if(!l.success){let g=l.error instanceof Error?l.error.message:String(l.error);throw new J(Y.InvalidParams,`Invalid tools/call request: ${g}`)}let{params:d}=l.data,m=await Promise.resolve(r(c,u));if(d.task){let g=rr(on,m);if(!g.success){let h=g.error instanceof Error?g.error.message:String(g.error);throw new J(Y.InvalidParams,`Invalid task creation result: ${h}`)}return g.data}let p=rr(Ra,m);if(!p.success){let g=p.error instanceof Error?p.error.message:String(p.error);throw new J(Y.InvalidParams,`Invalid tools/call result: ${g}`)}return p.data};return super.setRequestHandler(t,s)}return super.setRequestHandler(t,r)}assertCapabilityForMethod(t){switch(t){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${t})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${t})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${t})`);break;case"ping":break}}assertNotificationCapability(t){switch(t){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${t})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${t})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${t})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${t})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${t})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(t){if(this._capabilities)switch(t){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${t})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${t})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${t})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${t})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${t})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${t})`);break;case"ping":case"initialize":break}}assertTaskCapability(t){Zy(this._clientCapabilities?.tasks?.requests,t,"Client")}assertTaskHandlerCapability(t){this._capabilities&&Uy(this._capabilities.tasks?.requests,t,"Server")}async _oninitialize(t){let r=t.params.protocolVersion;return this._clientCapabilities=t.params.capabilities,this._clientVersion=t.params.clientInfo,{protocolVersion:Ng.includes(r)?r:ud,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},wa)}async createMessage(t,r){if((t.tools||t.toolChoice)&&!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(t.messages.length>0){let n=t.messages[t.messages.length-1],o=Array.isArray(n.content)?n.content:[n.content],i=o.some(u=>u.type==="tool_result"),a=t.messages.length>1?t.messages[t.messages.length-2]:void 0,s=a?Array.isArray(a.content)?a.content:[a.content]:[],c=s.some(u=>u.type==="tool_use");if(i){if(o.some(u=>u.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!c)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(c){let u=new Set(s.filter(d=>d.type==="tool_use").map(d=>d.id)),l=new Set(o.filter(d=>d.type==="tool_result").map(d=>d.toolUseId));if(u.size!==l.size||![...u].every(d=>l.has(d)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return t.tools?this.request({method:"sampling/createMessage",params:t},wd,r):this.request({method:"sampling/createMessage",params:t},Sd,r)}async elicitInput(t,r){switch(t.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support url elicitation.");let o=t;return this.request({method:"elicitation/create",params:o},Aa,r)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw new Error("Client does not support form elicitation.");let o=t.mode==="form"?t:{...t,mode:"form"},i=await this.request({method:"elicitation/create",params:o},Aa,r);if(i.action==="accept"&&i.content&&o.requestedSchema)try{let s=this._jsonSchemaValidator.getValidator(o.requestedSchema)(i.content);if(!s.valid)throw new J(Y.InvalidParams,`Elicitation response content does not match requested schema: ${s.errorMessage}`)}catch(a){throw a instanceof J?a:new J(Y.InternalError,`Error validating elicitation response: ${a instanceof Error?a.message:String(a)}`)}return i}}}createElicitationCompletionNotifier(t,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:t}},r)}async listRoots(t,r){return this.request({method:"roots/list",params:t},zd,r)}async sendLoggingMessage(t,r){if(this._capabilities.logging&&!this.isMessageIgnored(t.level,r))return this.notification({method:"notifications/message",params:t})}async sendResourceUpdated(t){return this.notification({method:"notifications/resources/updated",params:t})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}};var xf=mi(require("node:process"),1);var ks=class{append(t){this._buffer=this._buffer?Buffer.concat([this._buffer,t]):t}readMessage(){if(!this._buffer)return null;let t=this._buffer.indexOf(` -`);if(t===-1)return null;let r=this._buffer.toString("utf8",0,t).replace(/\r$/,"");return this._buffer=this._buffer.subarray(t+1),YT(r)}clear(){this._buffer=void 0}};function YT(e){return qg.parse(JSON.parse(e))}function Ly(e){return JSON.stringify(e)+` -`}var Ss=class{constructor(t=xf.default.stdin,r=xf.default.stdout){this._stdin=t,this._stdout=r,this._readBuffer=new ks,this._started=!1,this._ondata=n=>{this._readBuffer.append(n),this.processReadBuffer()},this._onerror=n=>{this.onerror?.(n)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){for(;;)try{let t=this._readBuffer.readMessage();if(t===null)break;this.onmessage?.(t)}catch(t){this.onerror?.(t)}}async close(){this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0&&this._stdin.pause(),this._readBuffer.clear(),this.onclose?.()}send(t){return new Promise(r=>{let n=Ly(t);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};var zf=mi(require("path"),1);var kf={DEFAULT:3e5,HEALTH_CHECK:3e3,POST_SPAWN_WAIT:5e3,READINESS_WAIT:3e4,PORT_IN_USE_WAIT:3e3,WORKER_STARTUP_WAIT:1e3,PRE_RESTART_SETTLE_DELAY:2e3,POWERSHELL_COMMAND:1e4,WINDOWS_MULTIPLIER:1.5};function qy(e){return process.platform==="win32"?Math.round(e*kf.WINDOWS_MULTIPLIER):e}var zt=require("fs"),ws=require("path"),Fy=require("os"),jr=class{static DEFAULTS={CLAUDE_MEM_MODEL:"claude-sonnet-4-5",CLAUDE_MEM_CONTEXT_OBSERVATIONS:"50",CLAUDE_MEM_WORKER_PORT:"37777",CLAUDE_MEM_WORKER_HOST:"127.0.0.1",CLAUDE_MEM_SKIP_TOOLS:"ListMcpResourcesTool,SlashCommand,Skill,TodoWrite,AskUserQuestion",CLAUDE_MEM_PROVIDER:"claude",CLAUDE_MEM_CLAUDE_AUTH_METHOD:"cli",CLAUDE_MEM_GEMINI_API_KEY:"",CLAUDE_MEM_GEMINI_MODEL:"gemini-2.5-flash-lite",CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED:"true",CLAUDE_MEM_OPENROUTER_API_KEY:"",CLAUDE_MEM_OPENROUTER_MODEL:"xiaomi/mimo-v2-flash:free",CLAUDE_MEM_OPENROUTER_SITE_URL:"",CLAUDE_MEM_OPENROUTER_APP_NAME:"claude-mem",CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES:"20",CLAUDE_MEM_OPENROUTER_MAX_TOKENS:"100000",CLAUDE_MEM_DATA_DIR:(0,ws.join)((0,Fy.homedir)(),".claude-mem"),CLAUDE_MEM_LOG_LEVEL:"INFO",CLAUDE_MEM_PYTHON_VERSION:"3.13",CLAUDE_CODE_PATH:"",CLAUDE_MEM_MODE:"code",CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT:"true",CLAUDE_MEM_CONTEXT_FULL_COUNT:"0",CLAUDE_MEM_CONTEXT_FULL_FIELD:"narrative",CLAUDE_MEM_CONTEXT_SESSION_COUNT:"10",CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY:"true",CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE:"false",CLAUDE_MEM_CONTEXT_SHOW_TERMINAL_OUTPUT:"true",CLAUDE_MEM_FOLDER_CLAUDEMD_ENABLED:"false",CLAUDE_MEM_MAX_CONCURRENT_AGENTS:"2",CLAUDE_MEM_EXCLUDED_PROJECTS:"",CLAUDE_MEM_FOLDER_MD_EXCLUDE:"[]",CLAUDE_MEM_SEMANTIC_INJECT:"false",CLAUDE_MEM_SEMANTIC_INJECT_LIMIT:"5",CLAUDE_MEM_TIER_ROUTING_ENABLED:"true",CLAUDE_MEM_TIER_SIMPLE_MODEL:"haiku",CLAUDE_MEM_TIER_SUMMARY_MODEL:"",CLAUDE_MEM_CHROMA_ENABLED:"true",CLAUDE_MEM_CHROMA_MODE:"local",CLAUDE_MEM_CHROMA_HOST:"127.0.0.1",CLAUDE_MEM_CHROMA_PORT:"8000",CLAUDE_MEM_CHROMA_SSL:"false",CLAUDE_MEM_CHROMA_API_KEY:"",CLAUDE_MEM_CHROMA_TENANT:"default_tenant",CLAUDE_MEM_CHROMA_DATABASE:"default_database"};static getAllDefaults(){return{...this.DEFAULTS}}static get(t){return process.env[t]??this.DEFAULTS[t]}static getInt(t){let r=this.get(t);return parseInt(r,10)}static getBool(t){let r=this.get(t);return r==="true"||r===!0}static applyEnvOverrides(t){let r={...t};for(let n of Object.keys(this.DEFAULTS))process.env[n]!==void 0&&(r[n]=process.env[n]);return r}static loadFromFile(t){try{if(!(0,zt.existsSync)(t)){let a=this.getAllDefaults();try{let s=(0,ws.dirname)(t);(0,zt.existsSync)(s)||(0,zt.mkdirSync)(s,{recursive:!0}),(0,zt.writeFileSync)(t,JSON.stringify(a,null,2),"utf-8"),console.log("[SETTINGS] Created settings file with defaults:",t)}catch(s){console.warn("[SETTINGS] Failed to create settings file, using in-memory defaults:",t,s)}return this.applyEnvOverrides(a)}let r=(0,zt.readFileSync)(t,"utf-8"),n=JSON.parse(r),o=n;if(n.env&&typeof n.env=="object"){o=n.env;try{(0,zt.writeFileSync)(t,JSON.stringify(o,null,2),"utf-8"),console.log("[SETTINGS] Migrated settings file from nested to flat schema:",t)}catch(a){console.warn("[SETTINGS] Failed to auto-migrate settings file:",t,a)}}let i={...this.DEFAULTS};for(let a of Object.keys(this.DEFAULTS))o[a]!==void 0&&(i[a]=o[a]);return this.applyEnvOverrides(i)}catch(r){return console.warn("[SETTINGS] Failed to load settings, using defaults:",t,r),this.applyEnvOverrides(this.getAllDefaults())}}};var $e=require("path"),Sf=require("os"),wf=require("fs");var Vy=require("url");var rP={};function QT(){return typeof __dirname<"u"?__dirname:(0,$e.dirname)((0,Vy.fileURLToPath)(rP.url))}var jU=QT();function eP(){if(process.env.CLAUDE_MEM_DATA_DIR)return process.env.CLAUDE_MEM_DATA_DIR;let e=(0,$e.join)((0,Sf.homedir)(),".claude-mem"),t=(0,$e.join)(e,"settings.json");try{if((0,wf.existsSync)(t)){let{readFileSync:r}=require("fs"),n=JSON.parse(r(t,"utf-8")),o=n.env??n;if(o.CLAUDE_MEM_DATA_DIR)return o.CLAUDE_MEM_DATA_DIR}}catch{}return e}var Vt=eP(),zs=process.env.CLAUDE_CONFIG_DIR||(0,$e.join)((0,Sf.homedir)(),".claude"),tP=(0,$e.join)(zs,"plugins","marketplaces","thedotmack"),DU=(0,$e.join)(Vt,"archives"),NU=(0,$e.join)(Vt,"logs"),RU=(0,$e.join)(Vt,"trash"),AU=(0,$e.join)(Vt,"backups"),MU=(0,$e.join)(Vt,"modes"),CU=(0,$e.join)(Vt,"settings.json"),UU=(0,$e.join)(Vt,"claude-mem.db"),ZU=(0,$e.join)(Vt,"vector-db"),LU=(0,$e.join)(Vt,"observer-sessions"),qU=(0,$e.join)(zs,"settings.json"),FU=(0,$e.join)(zs,"commands"),VU=(0,$e.join)(zs,"CLAUDE.md");var nP=(()=>{let e=process.env.CLAUDE_MEM_HEALTH_TIMEOUT_MS;if(e){let t=parseInt(e,10);if(Number.isFinite(t)&&t>=500&&t<=3e5)return t;ve.warn("SYSTEM","Invalid CLAUDE_MEM_HEALTH_TIMEOUT_MS, using default",{value:e,min:500,max:3e5})}return qy(kf.HEALTH_CHECK)})();function oP(e,t={},r){return new Promise((n,o)=>{let i=setTimeout(()=>o(new Error(`Request timed out after ${r}ms`)),r);fetch(e,t).then(a=>{clearTimeout(i),n(a)},a=>{clearTimeout(i),o(a)})})}var Is=null,Es=null;function iP(){if(Is!==null)return Is;let e=zf.default.join(jr.get("CLAUDE_MEM_DATA_DIR"),"settings.json"),t=jr.loadFromFile(e);return Is=parseInt(t.CLAUDE_MEM_WORKER_PORT,10),Is}function aP(){if(Es!==null)return Es;let e=zf.default.join(jr.get("CLAUDE_MEM_DATA_DIR"),"settings.json");return Es=jr.loadFromFile(e).CLAUDE_MEM_WORKER_HOST,Es}function sP(e){return`http://${aP()}:${iP()}${e}`}function Ts(e,t={}){let r=t.method??"GET",n=t.timeoutMs??nP,o=sP(e),i={method:r};return t.headers&&(i.headers=t.headers),t.body&&(i.body=t.body),n>0?oP(o,i,n):fetch(o,i)}var Sn=require("node:fs/promises"),pi=require("node:path");var Wy=require("node:child_process"),It=require("node:fs"),Jt=require("node:path"),Pf=require("node:os"),Tf=require("node:module"),$P={},Ky=typeof __filename<"u"?(0,Tf.createRequire)(__filename):(0,Tf.createRequire)($P.url),cP={".js":"javascript",".mjs":"javascript",".cjs":"javascript",".jsx":"tsx",".ts":"typescript",".tsx":"tsx",".py":"python",".pyw":"python",".go":"go",".rs":"rust",".rb":"ruby",".java":"java",".c":"c",".h":"c",".cpp":"cpp",".cc":"cpp",".cxx":"cpp",".hpp":"cpp",".hh":"cpp"};function Hy(e){let t=e.slice(e.lastIndexOf("."));return cP[t]||"unknown"}var uP={javascript:"tree-sitter-javascript",typescript:"tree-sitter-typescript/typescript",tsx:"tree-sitter-typescript/tsx",python:"tree-sitter-python",go:"tree-sitter-go",rust:"tree-sitter-rust",ruby:"tree-sitter-ruby",java:"tree-sitter-java",c:"tree-sitter-c",cpp:"tree-sitter-cpp"};function Gy(e){let t=uP[e];if(!t)return null;try{let r=Ky.resolve(t+"/package.json");return(0,Jt.dirname)(r)}catch{return null}}var lP={jsts:` +Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let o of t.seen.entries()){let a=o[1];if(e===o[0]){s(o);continue}if(t.external){let u=t.external.registry.get(o[0])?.id;if(e!==o[0]&&u){s(o);continue}}if(t.metadataRegistry.get(o[0])?.id){s(o);continue}if(a.cycle){s(o);continue}if(a.count>1&&t.reused==="ref"){s(o);continue}}}function dh(t,e){let r=t.seen.get(e);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let n=o=>{let a=t.seen.get(o);if(a.ref===null)return;let c=a.def??a.schema,u={...c},l=a.ref;if(a.ref=null,l){n(l);let p=t.seen.get(l),f=p.schema;if(f.$ref&&(t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0")?(c.allOf=c.allOf??[],c.allOf.push(f)):Object.assign(c,f),Object.assign(c,u),o._zod.parent===l)for(let h in c)h==="$ref"||h==="allOf"||h in u||delete c[h];if(f.$ref&&p.def)for(let h in c)h==="$ref"||h==="allOf"||h in p.def&&JSON.stringify(c[h])===JSON.stringify(p.def[h])&&delete c[h]}let d=o._zod.parent;if(d&&d!==l){n(d);let p=t.seen.get(d);if(p?.schema.$ref&&(c.$ref=p.schema.$ref,p.def))for(let f in c)f==="$ref"||f==="allOf"||f in p.def&&JSON.stringify(c[f])===JSON.stringify(p.def[f])&&delete c[f]}t.override({zodSchema:o,jsonSchema:c,path:a.path??[]})};for(let o of[...t.seen.entries()].reverse())n(o[0]);let i={};if(t.target==="draft-2020-12"?i.$schema="https://json-schema.org/draft/2020-12/schema":t.target==="draft-07"?i.$schema="http://json-schema.org/draft-07/schema#":t.target==="draft-04"?i.$schema="http://json-schema.org/draft-04/schema#":t.target,t.external?.uri){let o=t.external.registry.get(e)?.id;if(!o)throw new Error("Schema is missing an `id` property");i.$id=t.external.uri(o)}Object.assign(i,r.def??r.schema);let s=t.external?.defs??{};for(let o of t.seen.entries()){let a=o[1];a.def&&a.defId&&(s[a.defId]=a.def)}t.external||Object.keys(s).length>0&&(t.target==="draft-2020-12"?i.$defs=s:i.definitions=s);try{let o=JSON.parse(JSON.stringify(i));return Object.defineProperty(o,"~standard",{value:{...e["~standard"],jsonSchema:{input:md(e,"input",t.processors),output:md(e,"output",t.processors)}},enumerable:!1,writable:!1}),o}catch{throw new Error("Error converting schema to JSON.")}}function Yr(t,e){let r=e??{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let n=t._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return Yr(n.element,r);if(n.type==="set")return Yr(n.valueType,r);if(n.type==="lazy")return Yr(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault")return Yr(n.innerType,r);if(n.type==="intersection")return Yr(n.left,r)||Yr(n.right,r);if(n.type==="record"||n.type==="map")return Yr(n.keyType,r)||Yr(n.valueType,r);if(n.type==="pipe")return Yr(n.in,r)||Yr(n.out,r);if(n.type==="object"){for(let i in n.shape)if(Yr(n.shape[i],r))return!0;return!1}if(n.type==="union"){for(let i of n.options)if(Yr(i,r))return!0;return!1}if(n.type==="tuple"){for(let i of n.items)if(Yr(i,r))return!0;return!!(n.rest&&Yr(n.rest,r))}return!1}var S1=(t,e={})=>r=>{let n=uh({...r,processors:e});return Tt(t,n),lh(n,t),dh(n,t)},md=(t,e,r={})=>n=>{let{libraryOptions:i,target:s}=n??{},o=uh({...i??{},target:s,io:e,processors:r});return Tt(t,o),lh(o,t),dh(o,t)};var dB={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},x1=(t,e,r,n)=>{let i=r;i.type="string";let{minimum:s,maximum:o,format:a,patterns:c,contentEncoding:u}=t._zod.bag;if(typeof s=="number"&&(i.minLength=s),typeof o=="number"&&(i.maxLength=o),a&&(i.format=dB[a]??a,i.format===""&&delete i.format,a==="time"&&delete i.format),u&&(i.contentEncoding=u),c&&c.size>0){let l=[...c];l.length===1?i.pattern=l[0].source:l.length>1&&(i.allOf=[...l.map(d=>({...e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"?{type:"string"}:{},pattern:d.source}))])}},w1=(t,e,r,n)=>{let i=r,{minimum:s,maximum:o,format:a,multipleOf:c,exclusiveMaximum:u,exclusiveMinimum:l}=t._zod.bag;typeof a=="string"&&a.includes("int")?i.type="integer":i.type="number",typeof l=="number"&&(e.target==="draft-04"||e.target==="openapi-3.0"?(i.minimum=l,i.exclusiveMinimum=!0):i.exclusiveMinimum=l),typeof s=="number"&&(i.minimum=s,typeof l=="number"&&e.target!=="draft-04"&&(l>=s?delete i.minimum:delete i.exclusiveMinimum)),typeof u=="number"&&(e.target==="draft-04"||e.target==="openapi-3.0"?(i.maximum=u,i.exclusiveMaximum=!0):i.exclusiveMaximum=u),typeof o=="number"&&(i.maximum=o,typeof u=="number"&&e.target!=="draft-04"&&(u<=o?delete i.maximum:delete i.exclusiveMaximum)),typeof c=="number"&&(i.multipleOf=c)},E1=(t,e,r,n)=>{r.type="boolean"},k1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema")},T1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema")},$1=(t,e,r,n)=>{e.target==="openapi-3.0"?(r.type="string",r.nullable=!0,r.enum=[null]):r.type="null"},I1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema")},R1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema")},O1=(t,e,r,n)=>{r.not={}},C1=(t,e,r,n)=>{},P1=(t,e,r,n)=>{},A1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema")},N1=(t,e,r,n)=>{let i=t._zod.def,s=Dl(i.entries);s.every(o=>typeof o=="number")&&(r.type="number"),s.every(o=>typeof o=="string")&&(r.type="string"),r.enum=s},M1=(t,e,r,n)=>{let i=t._zod.def,s=[];for(let o of i.values)if(o===void 0){if(e.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof o=="bigint"){if(e.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");s.push(Number(o))}else s.push(o);if(s.length!==0)if(s.length===1){let o=s[0];r.type=o===null?"null":typeof o,e.target==="draft-04"||e.target==="openapi-3.0"?r.enum=[o]:r.const=o}else s.every(o=>typeof o=="number")&&(r.type="number"),s.every(o=>typeof o=="string")&&(r.type="string"),s.every(o=>typeof o=="boolean")&&(r.type="boolean"),s.every(o=>o===null)&&(r.type="null"),r.enum=s},D1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema")},j1=(t,e,r,n)=>{let i=r,s=t._zod.pattern;if(!s)throw new Error("Pattern not found in template literal");i.type="string",i.pattern=s.source},z1=(t,e,r,n)=>{let i=r,s={type:"string",format:"binary",contentEncoding:"binary"},{minimum:o,maximum:a,mime:c}=t._zod.bag;o!==void 0&&(s.minLength=o),a!==void 0&&(s.maxLength=a),c?c.length===1?(s.contentMediaType=c[0],Object.assign(i,s)):(Object.assign(i,s),i.anyOf=c.map(u=>({contentMediaType:u}))):Object.assign(i,s)},L1=(t,e,r,n)=>{r.type="boolean"},U1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},F1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Function types cannot be represented in JSON Schema")},q1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},H1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema")},Z1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema")},B1=(t,e,r,n)=>{let i=r,s=t._zod.def,{minimum:o,maximum:a}=t._zod.bag;typeof o=="number"&&(i.minItems=o),typeof a=="number"&&(i.maxItems=a),i.type="array",i.items=Tt(s.element,e,{...n,path:[...n.path,"items"]})},G1=(t,e,r,n)=>{let i=r,s=t._zod.def;i.type="object",i.properties={};let o=s.shape;for(let u in o)i.properties[u]=Tt(o[u],e,{...n,path:[...n.path,"properties",u]});let a=new Set(Object.keys(o)),c=new Set([...a].filter(u=>{let l=s.shape[u]._zod;return e.io==="input"?l.optin===void 0:l.optout===void 0}));c.size>0&&(i.required=Array.from(c)),s.catchall?._zod.def.type==="never"?i.additionalProperties=!1:s.catchall?s.catchall&&(i.additionalProperties=Tt(s.catchall,e,{...n,path:[...n.path,"additionalProperties"]})):e.io==="output"&&(i.additionalProperties=!1)},Zx=(t,e,r,n)=>{let i=t._zod.def,s=i.inclusive===!1,o=i.options.map((a,c)=>Tt(a,e,{...n,path:[...n.path,s?"oneOf":"anyOf",c]}));s?r.oneOf=o:r.anyOf=o},W1=(t,e,r,n)=>{let i=t._zod.def,s=Tt(i.left,e,{...n,path:[...n.path,"allOf",0]}),o=Tt(i.right,e,{...n,path:[...n.path,"allOf",1]}),a=u=>"allOf"in u&&Object.keys(u).length===1,c=[...a(s)?s.allOf:[s],...a(o)?o.allOf:[o]];r.allOf=c},V1=(t,e,r,n)=>{let i=r,s=t._zod.def;i.type="array";let o=e.target==="draft-2020-12"?"prefixItems":"items",a=e.target==="draft-2020-12"||e.target==="openapi-3.0"?"items":"additionalItems",c=s.items.map((p,f)=>Tt(p,e,{...n,path:[...n.path,o,f]})),u=s.rest?Tt(s.rest,e,{...n,path:[...n.path,a,...e.target==="openapi-3.0"?[s.items.length]:[]]}):null;e.target==="draft-2020-12"?(i.prefixItems=c,u&&(i.items=u)):e.target==="openapi-3.0"?(i.items={anyOf:c},u&&i.items.anyOf.push(u),i.minItems=c.length,u||(i.maxItems=c.length)):(i.items=c,u&&(i.additionalItems=u));let{minimum:l,maximum:d}=t._zod.bag;typeof l=="number"&&(i.minItems=l),typeof d=="number"&&(i.maxItems=d)},K1=(t,e,r,n)=>{let i=r,s=t._zod.def;i.type="object";let o=s.keyType,c=o._zod.bag?.patterns;if(s.mode==="loose"&&c&&c.size>0){let l=Tt(s.valueType,e,{...n,path:[...n.path,"patternProperties","*"]});i.patternProperties={};for(let d of c)i.patternProperties[d.source]=l}else(e.target==="draft-07"||e.target==="draft-2020-12")&&(i.propertyNames=Tt(s.keyType,e,{...n,path:[...n.path,"propertyNames"]})),i.additionalProperties=Tt(s.valueType,e,{...n,path:[...n.path,"additionalProperties"]});let u=o._zod.values;if(u){let l=[...u].filter(d=>typeof d=="string"||typeof d=="number");l.length>0&&(i.required=l)}},J1=(t,e,r,n)=>{let i=t._zod.def,s=Tt(i.innerType,e,n),o=e.seen.get(t);e.target==="openapi-3.0"?(o.ref=i.innerType,r.nullable=!0):r.anyOf=[s,{type:"null"}]},X1=(t,e,r,n)=>{let i=t._zod.def;Tt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType},Y1=(t,e,r,n)=>{let i=t._zod.def;Tt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType,r.default=JSON.parse(JSON.stringify(i.defaultValue))},Q1=(t,e,r,n)=>{let i=t._zod.def;Tt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType,e.io==="input"&&(r._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},eC=(t,e,r,n)=>{let i=t._zod.def;Tt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}r.default=o},tC=(t,e,r,n)=>{let i=t._zod.def,s=e.io==="input"?i.in._zod.def.type==="transform"?i.out:i.in:i.out;Tt(s,e,n);let o=e.seen.get(t);o.ref=s},rC=(t,e,r,n)=>{let i=t._zod.def;Tt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType,r.readOnly=!0},nC=(t,e,r,n)=>{let i=t._zod.def;Tt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType},Bx=(t,e,r,n)=>{let i=t._zod.def;Tt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType},iC=(t,e,r,n)=>{let i=t._zod.innerType;Tt(i,e,n);let s=e.seen.get(t);s.ref=i};function lo(t){return!!t._zod}function Qr(t,e){return lo(t)?fc(t,e):t.safeParse(e)}function yc(t){if(!t)return;let e;if(lo(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function cC(t){if(lo(t)){let s=t._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=t._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=t.value;if(n!==void 0)return n}var hd={};Fn(hd,{ZodAny:()=>TC,ZodArray:()=>OC,ZodBase64:()=>hw,ZodBase64URL:()=>gw,ZodBigInt:()=>bh,ZodBigIntFormat:()=>_w,ZodBoolean:()=>_h,ZodCIDRv4:()=>fw,ZodCIDRv6:()=>mw,ZodCUID:()=>ow,ZodCUID2:()=>aw,ZodCatch:()=>JC,ZodCodec:()=>Tw,ZodCustom:()=>kh,ZodCustomStringFormat:()=>vd,ZodDate:()=>Sw,ZodDefault:()=>ZC,ZodDiscriminatedUnion:()=>PC,ZodE164:()=>vw,ZodEmail:()=>nw,ZodEmoji:()=>iw,ZodEnum:()=>gd,ZodExactOptional:()=>FC,ZodFile:()=>LC,ZodFunction:()=>sP,ZodGUID:()=>fh,ZodIPv4:()=>dw,ZodIPv6:()=>pw,ZodIntersection:()=>AC,ZodJWT:()=>yw,ZodKSUID:()=>lw,ZodLazy:()=>rP,ZodLiteral:()=>zC,ZodMAC:()=>xC,ZodMap:()=>DC,ZodNaN:()=>YC,ZodNanoID:()=>sw,ZodNever:()=>IC,ZodNonOptional:()=>Ew,ZodNull:()=>kC,ZodNullable:()=>HC,ZodNumber:()=>yh,ZodNumberFormat:()=>_c,ZodObject:()=>Sh,ZodOptional:()=>ww,ZodPipe:()=>kw,ZodPrefault:()=>GC,ZodPromise:()=>iP,ZodReadonly:()=>QC,ZodRecord:()=>Eh,ZodSet:()=>jC,ZodString:()=>gh,ZodStringFormat:()=>St,ZodSuccess:()=>KC,ZodSymbol:()=>wC,ZodTemplateLiteral:()=>tP,ZodTransform:()=>UC,ZodTuple:()=>NC,ZodType:()=>je,ZodULID:()=>cw,ZodURL:()=>vh,ZodUUID:()=>bs,ZodUndefined:()=>EC,ZodUnion:()=>xh,ZodUnknown:()=>$C,ZodVoid:()=>RC,ZodXID:()=>uw,ZodXor:()=>CC,_ZodString:()=>rw,_default:()=>BC,_function:()=>RG,any:()=>dG,array:()=>Ve,base64:()=>VB,base64url:()=>KB,bigint:()=>oG,boolean:()=>er,catch:()=>XC,check:()=>OG,cidrv4:()=>GB,cidrv6:()=>WB,codec:()=>TG,cuid:()=>zB,cuid2:()=>LB,custom:()=>$w,date:()=>fG,describe:()=>CG,discriminatedUnion:()=>wh,e164:()=>JB,email:()=>IB,emoji:()=>DB,enum:()=>Mr,exactOptional:()=>qC,file:()=>xG,float32:()=>rG,float64:()=>nG,function:()=>RG,guid:()=>RB,hash:()=>tG,hex:()=>eG,hostname:()=>QB,httpUrl:()=>MB,instanceof:()=>AG,int:()=>tw,int32:()=>iG,int64:()=>aG,intersection:()=>_d,ipv4:()=>HB,ipv6:()=>BB,json:()=>MG,jwt:()=>XB,keyof:()=>mG,ksuid:()=>qB,lazy:()=>nP,literal:()=>me,looseObject:()=>Nr,looseRecord:()=>yG,mac:()=>ZB,map:()=>_G,meta:()=>PG,nan:()=>kG,nanoid:()=>jB,nativeEnum:()=>SG,never:()=>bw,nonoptional:()=>VC,null:()=>yd,nullable:()=>mh,nullish:()=>wG,number:()=>ut,object:()=>se,optional:()=>At,partialRecord:()=>vG,pipe:()=>hh,prefault:()=>WC,preprocess:()=>Th,promise:()=>IG,readonly:()=>eP,record:()=>$t,refine:()=>oP,set:()=>bG,strictObject:()=>hG,string:()=>z,stringFormat:()=>YB,stringbool:()=>NG,success:()=>EG,superRefine:()=>aP,symbol:()=>uG,templateLiteral:()=>$G,transform:()=>xw,tuple:()=>MC,uint32:()=>sG,uint64:()=>cG,ulid:()=>UB,undefined:()=>lG,union:()=>ht,unknown:()=>xt,url:()=>NB,uuid:()=>OB,uuidv4:()=>CB,uuidv6:()=>PB,uuidv7:()=>AB,void:()=>pG,xid:()=>FB,xor:()=>gG});var ph={};Fn(ph,{endsWith:()=>cd,gt:()=>ys,gte:()=>Xr,includes:()=>od,length:()=>gc,lowercase:()=>id,lt:()=>vs,lte:()=>Rn,maxLength:()=>hc,maxSize:()=>Yo,mime:()=>ud,minLength:()=>uo,minSize:()=>_s,multipleOf:()=>Xo,negative:()=>Ax,nonnegative:()=>Mx,nonpositive:()=>Nx,normalize:()=>ld,overwrite:()=>Li,positive:()=>Px,property:()=>Dx,regex:()=>nd,size:()=>mc,slugify:()=>ch,startsWith:()=>ad,toLowerCase:()=>pd,toUpperCase:()=>fd,trim:()=>dd,uppercase:()=>sd});var Qo={};Fn(Qo,{ZodISODate:()=>Kx,ZodISODateTime:()=>Wx,ZodISODuration:()=>Qx,ZodISOTime:()=>Xx,date:()=>Jx,datetime:()=>Vx,duration:()=>ew,time:()=>Yx});var Wx=O("ZodISODateTime",(t,e)=>{aS.init(t,e),St.init(t,e)});function Vx(t){return ux(Wx,t)}var Kx=O("ZodISODate",(t,e)=>{cS.init(t,e),St.init(t,e)});function Jx(t){return lx(Kx,t)}var Xx=O("ZodISOTime",(t,e)=>{uS.init(t,e),St.init(t,e)});function Yx(t){return dx(Xx,t)}var Qx=O("ZodISODuration",(t,e)=>{lS.init(t,e),St.init(t,e)});function ew(t){return px(Qx,t)}var uC=(t,e)=>{$m.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Rm(t,r)},flatten:{value:r=>Im(t,r)},addIssue:{value:r=>{t.issues.push(r),t.message=JSON.stringify(t.issues,lc,2)}},addIssues:{value:r=>{t.issues.push(...r),t.message=JSON.stringify(t.issues,lc,2)}},isEmpty:{get(){return t.issues.length===0}}})},Z$e=O("ZodError",uC),On=O("ZodError",uC,{Parent:Error});var lC=ql(On),dC=Zl(On),pC=Gl(On),fC=Wl(On),mC=EO(On),hC=kO(On),gC=TO(On),vC=$O(On),yC=IO(On),_C=RO(On),bC=OO(On),SC=CO(On);var je=O("ZodType",(t,e)=>(Ce.init(t,e),Object.assign(t["~standard"],{jsonSchema:{input:md(t,"input"),output:md(t,"output")}}),t.toJSONSchema=S1(t,{}),t.def=e,t.type=e.type,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone(W.mergeDefs(e,{checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),{parent:!0}),t.with=t.check,t.clone=(r,n)=>Kr(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>lC(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>pC(t,r,n),t.parseAsync=async(r,n)=>dC(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>fC(t,r,n),t.spa=t.safeParseAsync,t.encode=(r,n)=>mC(t,r,n),t.decode=(r,n)=>hC(t,r,n),t.encodeAsync=async(r,n)=>gC(t,r,n),t.decodeAsync=async(r,n)=>vC(t,r,n),t.safeEncode=(r,n)=>yC(t,r,n),t.safeDecode=(r,n)=>_C(t,r,n),t.safeEncodeAsync=async(r,n)=>bC(t,r,n),t.safeDecodeAsync=async(r,n)=>SC(t,r,n),t.refine=(r,n)=>t.check(oP(r,n)),t.superRefine=r=>t.check(aP(r)),t.overwrite=r=>t.check(Li(r)),t.optional=()=>At(t),t.exactOptional=()=>qC(t),t.nullable=()=>mh(t),t.nullish=()=>At(mh(t)),t.nonoptional=r=>VC(t,r),t.array=()=>Ve(t),t.or=r=>ht([t,r]),t.and=r=>_d(t,r),t.transform=r=>hh(t,xw(r)),t.default=r=>BC(t,r),t.prefault=r=>WC(t,r),t.catch=r=>XC(t,r),t.pipe=r=>hh(t,r),t.readonly=()=>eP(t),t.describe=r=>{let n=t.clone();return Jr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Jr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Jr.get(t);let n=t.clone();return Jr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t.apply=r=>r(t),t)),rw=O("_ZodString",(t,e)=>{Jo.init(t,e),je.init(t,e),t._zod.processJSONSchema=(n,i,s)=>x1(t,n,i,s);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,t.regex=(...n)=>t.check(nd(...n)),t.includes=(...n)=>t.check(od(...n)),t.startsWith=(...n)=>t.check(ad(...n)),t.endsWith=(...n)=>t.check(cd(...n)),t.min=(...n)=>t.check(uo(...n)),t.max=(...n)=>t.check(hc(...n)),t.length=(...n)=>t.check(gc(...n)),t.nonempty=(...n)=>t.check(uo(1,...n)),t.lowercase=n=>t.check(id(n)),t.uppercase=n=>t.check(sd(n)),t.trim=()=>t.check(dd()),t.normalize=(...n)=>t.check(ld(...n)),t.toLowerCase=()=>t.check(pd()),t.toUpperCase=()=>t.check(fd()),t.slugify=()=>t.check(ch())}),gh=O("ZodString",(t,e)=>{Jo.init(t,e),rw.init(t,e),t.email=r=>t.check(qm(nw,r)),t.url=r=>t.check(rd(vh,r)),t.jwt=r=>t.check(ah(yw,r)),t.emoji=r=>t.check(Wm(iw,r)),t.guid=r=>t.check(td(fh,r)),t.uuid=r=>t.check(Hm(bs,r)),t.uuidv4=r=>t.check(Zm(bs,r)),t.uuidv6=r=>t.check(Bm(bs,r)),t.uuidv7=r=>t.check(Gm(bs,r)),t.nanoid=r=>t.check(Vm(sw,r)),t.guid=r=>t.check(td(fh,r)),t.cuid=r=>t.check(Km(ow,r)),t.cuid2=r=>t.check(Jm(aw,r)),t.ulid=r=>t.check(Xm(cw,r)),t.base64=r=>t.check(ih(hw,r)),t.base64url=r=>t.check(sh(gw,r)),t.xid=r=>t.check(Ym(uw,r)),t.ksuid=r=>t.check(Qm(lw,r)),t.ipv4=r=>t.check(eh(dw,r)),t.ipv6=r=>t.check(th(pw,r)),t.cidrv4=r=>t.check(rh(fw,r)),t.cidrv6=r=>t.check(nh(mw,r)),t.e164=r=>t.check(oh(vw,r)),t.datetime=r=>t.check(Vx(r)),t.date=r=>t.check(Jx(r)),t.time=r=>t.check(Yx(r)),t.duration=r=>t.check(ew(r))});function z(t){return ax(gh,t)}var St=O("ZodStringFormat",(t,e)=>{mt.init(t,e),rw.init(t,e)}),nw=O("ZodEmail",(t,e)=>{Yb.init(t,e),St.init(t,e)});function IB(t){return qm(nw,t)}var fh=O("ZodGUID",(t,e)=>{Jb.init(t,e),St.init(t,e)});function RB(t){return td(fh,t)}var bs=O("ZodUUID",(t,e)=>{Xb.init(t,e),St.init(t,e)});function OB(t){return Hm(bs,t)}function CB(t){return Zm(bs,t)}function PB(t){return Bm(bs,t)}function AB(t){return Gm(bs,t)}var vh=O("ZodURL",(t,e)=>{Qb.init(t,e),St.init(t,e)});function NB(t){return rd(vh,t)}function MB(t){return rd(vh,{protocol:/^https?$/,hostname:Zn.domain,...W.normalizeParams(t)})}var iw=O("ZodEmoji",(t,e)=>{eS.init(t,e),St.init(t,e)});function DB(t){return Wm(iw,t)}var sw=O("ZodNanoID",(t,e)=>{tS.init(t,e),St.init(t,e)});function jB(t){return Vm(sw,t)}var ow=O("ZodCUID",(t,e)=>{rS.init(t,e),St.init(t,e)});function zB(t){return Km(ow,t)}var aw=O("ZodCUID2",(t,e)=>{nS.init(t,e),St.init(t,e)});function LB(t){return Jm(aw,t)}var cw=O("ZodULID",(t,e)=>{iS.init(t,e),St.init(t,e)});function UB(t){return Xm(cw,t)}var uw=O("ZodXID",(t,e)=>{sS.init(t,e),St.init(t,e)});function FB(t){return Ym(uw,t)}var lw=O("ZodKSUID",(t,e)=>{oS.init(t,e),St.init(t,e)});function qB(t){return Qm(lw,t)}var dw=O("ZodIPv4",(t,e)=>{dS.init(t,e),St.init(t,e)});function HB(t){return eh(dw,t)}var xC=O("ZodMAC",(t,e)=>{fS.init(t,e),St.init(t,e)});function ZB(t){return cx(xC,t)}var pw=O("ZodIPv6",(t,e)=>{pS.init(t,e),St.init(t,e)});function BB(t){return th(pw,t)}var fw=O("ZodCIDRv4",(t,e)=>{mS.init(t,e),St.init(t,e)});function GB(t){return rh(fw,t)}var mw=O("ZodCIDRv6",(t,e)=>{hS.init(t,e),St.init(t,e)});function WB(t){return nh(mw,t)}var hw=O("ZodBase64",(t,e)=>{gS.init(t,e),St.init(t,e)});function VB(t){return ih(hw,t)}var gw=O("ZodBase64URL",(t,e)=>{vS.init(t,e),St.init(t,e)});function KB(t){return sh(gw,t)}var vw=O("ZodE164",(t,e)=>{yS.init(t,e),St.init(t,e)});function JB(t){return oh(vw,t)}var yw=O("ZodJWT",(t,e)=>{_S.init(t,e),St.init(t,e)});function XB(t){return ah(yw,t)}var vd=O("ZodCustomStringFormat",(t,e)=>{bS.init(t,e),St.init(t,e)});function YB(t,e,r={}){return vc(vd,t,e,r)}function QB(t){return vc(vd,"hostname",Zn.hostname,t)}function eG(t){return vc(vd,"hex",Zn.hex,t)}function tG(t,e){let r=e?.enc??"hex",n=`${t}_${r}`,i=Zn[n];if(!i)throw new Error(`Unrecognized hash format: ${n}`);return vc(vd,n,i,e)}var yh=O("ZodNumber",(t,e)=>{zm.init(t,e),je.init(t,e),t._zod.processJSONSchema=(n,i,s)=>w1(t,n,i,s),t.gt=(n,i)=>t.check(ys(n,i)),t.gte=(n,i)=>t.check(Xr(n,i)),t.min=(n,i)=>t.check(Xr(n,i)),t.lt=(n,i)=>t.check(vs(n,i)),t.lte=(n,i)=>t.check(Rn(n,i)),t.max=(n,i)=>t.check(Rn(n,i)),t.int=n=>t.check(tw(n)),t.safe=n=>t.check(tw(n)),t.positive=n=>t.check(ys(0,n)),t.nonnegative=n=>t.check(Xr(0,n)),t.negative=n=>t.check(vs(0,n)),t.nonpositive=n=>t.check(Rn(0,n)),t.multipleOf=(n,i)=>t.check(Xo(n,i)),t.step=(n,i)=>t.check(Xo(n,i)),t.finite=()=>t;let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function ut(t){return fx(yh,t)}var _c=O("ZodNumberFormat",(t,e)=>{SS.init(t,e),yh.init(t,e)});function tw(t){return mx(_c,t)}function rG(t){return hx(_c,t)}function nG(t){return gx(_c,t)}function iG(t){return vx(_c,t)}function sG(t){return yx(_c,t)}var _h=O("ZodBoolean",(t,e)=>{Yl.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>E1(t,r,n,i)});function er(t){return _x(_h,t)}var bh=O("ZodBigInt",(t,e)=>{Lm.init(t,e),je.init(t,e),t._zod.processJSONSchema=(n,i,s)=>k1(t,n,i,s),t.gte=(n,i)=>t.check(Xr(n,i)),t.min=(n,i)=>t.check(Xr(n,i)),t.gt=(n,i)=>t.check(ys(n,i)),t.gte=(n,i)=>t.check(Xr(n,i)),t.min=(n,i)=>t.check(Xr(n,i)),t.lt=(n,i)=>t.check(vs(n,i)),t.lte=(n,i)=>t.check(Rn(n,i)),t.max=(n,i)=>t.check(Rn(n,i)),t.positive=n=>t.check(ys(BigInt(0),n)),t.negative=n=>t.check(vs(BigInt(0),n)),t.nonpositive=n=>t.check(Rn(BigInt(0),n)),t.nonnegative=n=>t.check(Xr(BigInt(0),n)),t.multipleOf=(n,i)=>t.check(Xo(n,i));let r=t._zod.bag;t.minValue=r.minimum??null,t.maxValue=r.maximum??null,t.format=r.format??null});function oG(t){return bx(bh,t)}var _w=O("ZodBigIntFormat",(t,e)=>{xS.init(t,e),bh.init(t,e)});function aG(t){return Sx(_w,t)}function cG(t){return xx(_w,t)}var wC=O("ZodSymbol",(t,e)=>{wS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>T1(t,r,n,i)});function uG(t){return wx(wC,t)}var EC=O("ZodUndefined",(t,e)=>{ES.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>I1(t,r,n,i)});function lG(t){return Ex(EC,t)}var kC=O("ZodNull",(t,e)=>{kS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>$1(t,r,n,i)});function yd(t){return kx(kC,t)}var TC=O("ZodAny",(t,e)=>{TS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>C1(t,r,n,i)});function dG(){return Tx(TC)}var $C=O("ZodUnknown",(t,e)=>{$S.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>P1(t,r,n,i)});function xt(){return $x($C)}var IC=O("ZodNever",(t,e)=>{IS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>O1(t,r,n,i)});function bw(t){return Ix(IC,t)}var RC=O("ZodVoid",(t,e)=>{RS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>R1(t,r,n,i)});function pG(t){return Rx(RC,t)}var Sw=O("ZodDate",(t,e)=>{OS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(n,i,s)=>A1(t,n,i,s),t.min=(n,i)=>t.check(Xr(n,i)),t.max=(n,i)=>t.check(Rn(n,i));let r=t._zod.bag;t.minDate=r.minimum?new Date(r.minimum):null,t.maxDate=r.maximum?new Date(r.maximum):null});function fG(t){return Ox(Sw,t)}var OC=O("ZodArray",(t,e)=>{CS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>B1(t,r,n,i),t.element=e.element,t.min=(r,n)=>t.check(uo(r,n)),t.nonempty=r=>t.check(uo(1,r)),t.max=(r,n)=>t.check(hc(r,n)),t.length=(r,n)=>t.check(gc(r,n)),t.unwrap=()=>t.element});function Ve(t,e){return b1(OC,t,e)}function mG(t){let e=t._zod.def.shape;return Mr(Object.keys(e))}var Sh=O("ZodObject",(t,e)=>{y1.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>G1(t,r,n,i),W.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Mr(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:xt()}),t.loose=()=>t.clone({...t._zod.def,catchall:xt()}),t.strict=()=>t.clone({...t._zod.def,catchall:bw()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>W.extend(t,r),t.safeExtend=r=>W.safeExtend(t,r),t.merge=r=>W.merge(t,r),t.pick=r=>W.pick(t,r),t.omit=r=>W.omit(t,r),t.partial=(...r)=>W.partial(ww,t,r[0]),t.required=(...r)=>W.required(Ew,t,r[0])});function se(t,e){let r={type:"object",shape:t??{},...W.normalizeParams(e)};return new Sh(r)}function hG(t,e){return new Sh({type:"object",shape:t,catchall:bw(),...W.normalizeParams(e)})}function Nr(t,e){return new Sh({type:"object",shape:t,catchall:xt(),...W.normalizeParams(e)})}var xh=O("ZodUnion",(t,e)=>{Ql.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>Zx(t,r,n,i),t.options=e.options});function ht(t,e){return new xh({type:"union",options:t,...W.normalizeParams(e)})}var CC=O("ZodXor",(t,e)=>{xh.init(t,e),PS.init(t,e),t._zod.processJSONSchema=(r,n,i)=>Zx(t,r,n,i),t.options=e.options});function gG(t,e){return new CC({type:"union",options:t,inclusive:!1,...W.normalizeParams(e)})}var PC=O("ZodDiscriminatedUnion",(t,e)=>{xh.init(t,e),AS.init(t,e)});function wh(t,e,r){return new PC({type:"union",options:e,discriminator:t,...W.normalizeParams(r)})}var AC=O("ZodIntersection",(t,e)=>{NS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>W1(t,r,n,i)});function _d(t,e){return new AC({type:"intersection",left:t,right:e})}var NC=O("ZodTuple",(t,e)=>{Um.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>V1(t,r,n,i),t.rest=r=>t.clone({...t._zod.def,rest:r})});function MC(t,e,r){let n=e instanceof Ce,i=n?r:e,s=n?e:null;return new NC({type:"tuple",items:t,rest:s,...W.normalizeParams(i)})}var Eh=O("ZodRecord",(t,e)=>{MS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>K1(t,r,n,i),t.keyType=e.keyType,t.valueType=e.valueType});function $t(t,e,r){return new Eh({type:"record",keyType:t,valueType:e,...W.normalizeParams(r)})}function vG(t,e,r){let n=Kr(t);return n._zod.values=void 0,new Eh({type:"record",keyType:n,valueType:e,...W.normalizeParams(r)})}function yG(t,e,r){return new Eh({type:"record",keyType:t,valueType:e,mode:"loose",...W.normalizeParams(r)})}var DC=O("ZodMap",(t,e)=>{DS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>H1(t,r,n,i),t.keyType=e.keyType,t.valueType=e.valueType,t.min=(...r)=>t.check(_s(...r)),t.nonempty=r=>t.check(_s(1,r)),t.max=(...r)=>t.check(Yo(...r)),t.size=(...r)=>t.check(mc(...r))});function _G(t,e,r){return new DC({type:"map",keyType:t,valueType:e,...W.normalizeParams(r)})}var jC=O("ZodSet",(t,e)=>{jS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>Z1(t,r,n,i),t.min=(...r)=>t.check(_s(...r)),t.nonempty=r=>t.check(_s(1,r)),t.max=(...r)=>t.check(Yo(...r)),t.size=(...r)=>t.check(mc(...r))});function bG(t,e){return new jC({type:"set",valueType:t,...W.normalizeParams(e)})}var gd=O("ZodEnum",(t,e)=>{zS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(n,i,s)=>N1(t,n,i,s),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,i)=>{let s={};for(let o of n)if(r.has(o))s[o]=e.entries[o];else throw new Error(`Key ${o} not found in enum`);return new gd({...e,checks:[],...W.normalizeParams(i),entries:s})},t.exclude=(n,i)=>{let s={...e.entries};for(let o of n)if(r.has(o))delete s[o];else throw new Error(`Key ${o} not found in enum`);return new gd({...e,checks:[],...W.normalizeParams(i),entries:s})}});function Mr(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new gd({type:"enum",entries:r,...W.normalizeParams(e)})}function SG(t,e){return new gd({type:"enum",entries:t,...W.normalizeParams(e)})}var zC=O("ZodLiteral",(t,e)=>{LS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>M1(t,r,n,i),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function me(t,e){return new zC({type:"literal",values:Array.isArray(t)?t:[t],...W.normalizeParams(e)})}var LC=O("ZodFile",(t,e)=>{US.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>z1(t,r,n,i),t.min=(r,n)=>t.check(_s(r,n)),t.max=(r,n)=>t.check(Yo(r,n)),t.mime=(r,n)=>t.check(ud(Array.isArray(r)?r:[r],n))});function xG(t){return jx(LC,t)}var UC=O("ZodTransform",(t,e)=>{FS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>q1(t,r,n,i),t._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Wo(t.constructor.name);r.addIssue=s=>{if(typeof s=="string")r.issues.push(W.issue(s,r.value,e));else{let o=s;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=t),r.issues.push(W.issue(o))}};let i=e.transform(r.value,r);return i instanceof Promise?i.then(s=>(r.value=s,r)):(r.value=i,r)}});function xw(t){return new UC({type:"transform",transform:t})}var ww=O("ZodOptional",(t,e)=>{Fm.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>Bx(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function At(t){return new ww({type:"optional",innerType:t})}var FC=O("ZodExactOptional",(t,e)=>{qS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>Bx(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function qC(t){return new FC({type:"optional",innerType:t})}var HC=O("ZodNullable",(t,e)=>{HS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>J1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function mh(t){return new HC({type:"nullable",innerType:t})}function wG(t){return At(mh(t))}var ZC=O("ZodDefault",(t,e)=>{ZS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>Y1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function BC(t,e){return new ZC({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():W.shallowClone(e)}})}var GC=O("ZodPrefault",(t,e)=>{BS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>Q1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function WC(t,e){return new GC({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():W.shallowClone(e)}})}var Ew=O("ZodNonOptional",(t,e)=>{GS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>X1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function VC(t,e){return new Ew({type:"nonoptional",innerType:t,...W.normalizeParams(e)})}var KC=O("ZodSuccess",(t,e)=>{WS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>L1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function EG(t){return new KC({type:"success",innerType:t})}var JC=O("ZodCatch",(t,e)=>{VS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>eC(t,r,n,i),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function XC(t,e){return new JC({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var YC=O("ZodNaN",(t,e)=>{KS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>D1(t,r,n,i)});function kG(t){return Cx(YC,t)}var kw=O("ZodPipe",(t,e)=>{JS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>tC(t,r,n,i),t.in=e.in,t.out=e.out});function hh(t,e){return new kw({type:"pipe",in:t,out:e})}var Tw=O("ZodCodec",(t,e)=>{kw.init(t,e),ed.init(t,e)});function TG(t,e,r){return new Tw({type:"pipe",in:t,out:e,transform:r.decode,reverseTransform:r.encode})}var QC=O("ZodReadonly",(t,e)=>{XS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>rC(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function eP(t){return new QC({type:"readonly",innerType:t})}var tP=O("ZodTemplateLiteral",(t,e)=>{YS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>j1(t,r,n,i)});function $G(t,e){return new tP({type:"template_literal",parts:t,...W.normalizeParams(e)})}var rP=O("ZodLazy",(t,e)=>{tx.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>iC(t,r,n,i),t.unwrap=()=>t._zod.def.getter()});function nP(t){return new rP({type:"lazy",getter:t})}var iP=O("ZodPromise",(t,e)=>{ex.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>nC(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function IG(t){return new iP({type:"promise",innerType:t})}var sP=O("ZodFunction",(t,e)=>{QS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>F1(t,r,n,i)});function RG(t){return new sP({type:"function",input:Array.isArray(t?.input)?MC(t?.input):t?.input??Ve(xt()),output:t?.output??xt()})}var kh=O("ZodCustom",(t,e)=>{rx.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>U1(t,r,n,i)});function OG(t){let e=new bt({check:"custom"});return e._zod.check=t,e}function $w(t,e){return zx(kh,t??(()=>!0),e)}function oP(t,e={}){return Lx(kh,t,e)}function aP(t){return Ux(t)}var CG=Fx,PG=qx;function AG(t,e={}){let r=new kh({type:"custom",check:"custom",fn:n=>n instanceof t,abort:!0,...W.normalizeParams(e)});return r._zod.bag.Class=t,r._zod.check=n=>{n.value instanceof t||n.issues.push({code:"invalid_type",expected:t.name,input:n.value,inst:r,path:[...r._zod.def.path??[]]})},r}var NG=(...t)=>Hx({Codec:Tw,Boolean:_h,String:gh},...t);function MG(t){let e=nP(()=>ht([z(t),ut(),er(),yd(),Ve(e),$t(z(),e)]));return e}function Th(t,e){return hh(xw(t),e)}var cP;cP||(cP={});var Y$e={...hd,...ph,iso:Qo};ir(nx());var bd="2025-11-25";var Ih=[bd,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],po="io.modelcontextprotocol/related-task",Rh="2.0",xr=$w(t=>t!==null&&(typeof t=="object"||typeof t=="function")),uP=ht([z(),ut().int()]),lP=z(),vIe=Nr({ttl:ht([ut(),yd()]).optional(),pollInterval:ut().optional()}),LG=se({ttl:ut().optional()}),UG=se({taskId:z()}),Rw=Nr({progressToken:uP.optional(),[po]:UG.optional()}),Cn=se({_meta:Rw.optional()}),Sd=Cn.extend({task:LG.optional()}),dP=t=>Sd.safeParse(t).success,wr=se({method:z(),params:Cn.loose().optional()}),Bn=se({_meta:Rw.optional()}),Gn=se({method:z(),params:Bn.loose().optional()}),Er=Nr({_meta:Rw.optional()}),Oh=ht([z(),ut().int()]),pP=se({jsonrpc:me(Rh),id:Oh,...wr.shape}).strict(),Ow=t=>pP.safeParse(t).success,fP=se({jsonrpc:me(Rh),...Gn.shape}).strict(),mP=t=>fP.safeParse(t).success,Cw=se({jsonrpc:me(Rh),id:Oh,result:Er}).strict(),xd=t=>Cw.safeParse(t).success;var _e;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(_e||(_e={}));var Pw=se({jsonrpc:me(Rh),id:Oh.optional(),error:se({code:ut().int(),message:z(),data:xt().optional()})}).strict();var hP=t=>Pw.safeParse(t).success;var gP=ht([pP,fP,Cw,Pw]),yIe=ht([Cw,Pw]),Ss=Er.strict(),FG=Bn.extend({requestId:Oh.optional(),reason:z().optional()}),Ch=Gn.extend({method:me("notifications/cancelled"),params:FG}),qG=se({src:z(),mimeType:z().optional(),sizes:Ve(z()).optional(),theme:Mr(["light","dark"]).optional()}),wd=se({icons:Ve(qG).optional()}),bc=se({name:z(),title:z().optional()}),vP=bc.extend({...bc.shape,...wd.shape,version:z(),websiteUrl:z().optional(),description:z().optional()}),HG=_d(se({applyDefaults:er().optional()}),$t(z(),xt())),ZG=Th(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,_d(se({form:HG.optional(),url:xr.optional()}),$t(z(),xt()).optional())),BG=Nr({list:xr.optional(),cancel:xr.optional(),requests:Nr({sampling:Nr({createMessage:xr.optional()}).optional(),elicitation:Nr({create:xr.optional()}).optional()}).optional()}),GG=Nr({list:xr.optional(),cancel:xr.optional(),requests:Nr({tools:Nr({call:xr.optional()}).optional()}).optional()}),WG=se({experimental:$t(z(),xr).optional(),sampling:se({context:xr.optional(),tools:xr.optional()}).optional(),elicitation:ZG.optional(),roots:se({listChanged:er().optional()}).optional(),tasks:BG.optional()}),VG=Cn.extend({protocolVersion:z(),capabilities:WG,clientInfo:vP}),Aw=wr.extend({method:me("initialize"),params:VG});var KG=se({experimental:$t(z(),xr).optional(),logging:xr.optional(),completions:xr.optional(),prompts:se({listChanged:er().optional()}).optional(),resources:se({subscribe:er().optional(),listChanged:er().optional()}).optional(),tools:se({listChanged:er().optional()}).optional(),tasks:GG.optional()}),Nw=Er.extend({protocolVersion:z(),capabilities:KG,serverInfo:vP,instructions:z().optional()}),Mw=Gn.extend({method:me("notifications/initialized"),params:Bn.optional()});var Ph=wr.extend({method:me("ping"),params:Cn.optional()}),JG=se({progress:ut(),total:At(ut()),message:At(z())}),XG=se({...Bn.shape,...JG.shape,progressToken:uP}),Ah=Gn.extend({method:me("notifications/progress"),params:XG}),YG=Cn.extend({cursor:lP.optional()}),Ed=wr.extend({params:YG.optional()}),kd=Er.extend({nextCursor:lP.optional()}),QG=Mr(["working","input_required","completed","failed","cancelled"]),Td=se({taskId:z(),status:QG,ttl:ht([ut(),yd()]),createdAt:z(),lastUpdatedAt:z(),pollInterval:At(ut()),statusMessage:At(z())}),xs=Er.extend({task:Td}),eW=Bn.merge(Td),$d=Gn.extend({method:me("notifications/tasks/status"),params:eW}),Nh=wr.extend({method:me("tasks/get"),params:Cn.extend({taskId:z()})}),Mh=Er.merge(Td),Dh=wr.extend({method:me("tasks/result"),params:Cn.extend({taskId:z()})}),_Ie=Er.loose(),jh=Ed.extend({method:me("tasks/list")}),zh=kd.extend({tasks:Ve(Td)}),Lh=wr.extend({method:me("tasks/cancel"),params:Cn.extend({taskId:z()})}),yP=Er.merge(Td),_P=se({uri:z(),mimeType:At(z()),_meta:$t(z(),xt()).optional()}),bP=_P.extend({text:z()}),Dw=z().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),SP=_P.extend({blob:Dw}),Id=Mr(["user","assistant"]),Sc=se({audience:Ve(Id).optional(),priority:ut().min(0).max(1).optional(),lastModified:Qo.datetime({offset:!0}).optional()}),xP=se({...bc.shape,...wd.shape,uri:z(),description:At(z()),mimeType:At(z()),annotations:Sc.optional(),_meta:At(Nr({}))}),tW=se({...bc.shape,...wd.shape,uriTemplate:z(),description:At(z()),mimeType:At(z()),annotations:Sc.optional(),_meta:At(Nr({}))}),rW=Ed.extend({method:me("resources/list")}),jw=kd.extend({resources:Ve(xP)}),nW=Ed.extend({method:me("resources/templates/list")}),zw=kd.extend({resourceTemplates:Ve(tW)}),Lw=Cn.extend({uri:z()}),iW=Lw,sW=wr.extend({method:me("resources/read"),params:iW}),Uw=Er.extend({contents:Ve(ht([bP,SP]))}),Fw=Gn.extend({method:me("notifications/resources/list_changed"),params:Bn.optional()}),oW=Lw,aW=wr.extend({method:me("resources/subscribe"),params:oW}),cW=Lw,uW=wr.extend({method:me("resources/unsubscribe"),params:cW}),lW=Bn.extend({uri:z()}),dW=Gn.extend({method:me("notifications/resources/updated"),params:lW}),pW=se({name:z(),description:At(z()),required:At(er())}),fW=se({...bc.shape,...wd.shape,description:At(z()),arguments:At(Ve(pW)),_meta:At(Nr({}))}),mW=Ed.extend({method:me("prompts/list")}),qw=kd.extend({prompts:Ve(fW)}),hW=Cn.extend({name:z(),arguments:$t(z(),z()).optional()}),gW=wr.extend({method:me("prompts/get"),params:hW}),Hw=se({type:me("text"),text:z(),annotations:Sc.optional(),_meta:$t(z(),xt()).optional()}),Zw=se({type:me("image"),data:Dw,mimeType:z(),annotations:Sc.optional(),_meta:$t(z(),xt()).optional()}),Bw=se({type:me("audio"),data:Dw,mimeType:z(),annotations:Sc.optional(),_meta:$t(z(),xt()).optional()}),vW=se({type:me("tool_use"),name:z(),id:z(),input:$t(z(),xt()),_meta:$t(z(),xt()).optional()}),yW=se({type:me("resource"),resource:ht([bP,SP]),annotations:Sc.optional(),_meta:$t(z(),xt()).optional()}),_W=xP.extend({type:me("resource_link")}),Gw=ht([Hw,Zw,Bw,_W,yW]),bW=se({role:Id,content:Gw}),Ww=Er.extend({description:z().optional(),messages:Ve(bW)}),Vw=Gn.extend({method:me("notifications/prompts/list_changed"),params:Bn.optional()}),SW=se({title:z().optional(),readOnlyHint:er().optional(),destructiveHint:er().optional(),idempotentHint:er().optional(),openWorldHint:er().optional()}),xW=se({taskSupport:Mr(["required","optional","forbidden"]).optional()}),wP=se({...bc.shape,...wd.shape,description:z().optional(),inputSchema:se({type:me("object"),properties:$t(z(),xr).optional(),required:Ve(z()).optional()}).catchall(xt()),outputSchema:se({type:me("object"),properties:$t(z(),xr).optional(),required:Ve(z()).optional()}).catchall(xt()).optional(),annotations:SW.optional(),execution:xW.optional(),_meta:$t(z(),xt()).optional()}),Kw=Ed.extend({method:me("tools/list")}),Jw=kd.extend({tools:Ve(wP)}),fo=Er.extend({content:Ve(Gw).default([]),structuredContent:$t(z(),xt()).optional(),isError:er().optional()}),bIe=fo.or(Er.extend({toolResult:xt()})),wW=Sd.extend({name:z(),arguments:$t(z(),xt()).optional()}),Rd=wr.extend({method:me("tools/call"),params:wW}),Xw=Gn.extend({method:me("notifications/tools/list_changed"),params:Bn.optional()}),EP=se({autoRefresh:er().default(!0),debounceMs:ut().int().nonnegative().default(300)}),Od=Mr(["debug","info","notice","warning","error","critical","alert","emergency"]),EW=Cn.extend({level:Od}),Yw=wr.extend({method:me("logging/setLevel"),params:EW}),kW=Bn.extend({level:Od,logger:z().optional(),data:xt()}),TW=Gn.extend({method:me("notifications/message"),params:kW}),$W=se({name:z().optional()}),IW=se({hints:Ve($W).optional(),costPriority:ut().min(0).max(1).optional(),speedPriority:ut().min(0).max(1).optional(),intelligencePriority:ut().min(0).max(1).optional()}),RW=se({mode:Mr(["auto","required","none"]).optional()}),OW=se({type:me("tool_result"),toolUseId:z().describe("The unique identifier for the corresponding tool call."),content:Ve(Gw).default([]),structuredContent:se({}).loose().optional(),isError:er().optional(),_meta:$t(z(),xt()).optional()}),CW=wh("type",[Hw,Zw,Bw]),$h=wh("type",[Hw,Zw,Bw,vW,OW]),PW=se({role:Id,content:ht([$h,Ve($h)]),_meta:$t(z(),xt()).optional()}),AW=Sd.extend({messages:Ve(PW),modelPreferences:IW.optional(),systemPrompt:z().optional(),includeContext:Mr(["none","thisServer","allServers"]).optional(),temperature:ut().optional(),maxTokens:ut().int(),stopSequences:Ve(z()).optional(),metadata:xr.optional(),tools:Ve(wP).optional(),toolChoice:RW.optional()}),Qw=wr.extend({method:me("sampling/createMessage"),params:AW}),ea=Er.extend({model:z(),stopReason:At(Mr(["endTurn","stopSequence","maxTokens"]).or(z())),role:Id,content:CW}),Cd=Er.extend({model:z(),stopReason:At(Mr(["endTurn","stopSequence","maxTokens","toolUse"]).or(z())),role:Id,content:ht([$h,Ve($h)])}),NW=se({type:me("boolean"),title:z().optional(),description:z().optional(),default:er().optional()}),MW=se({type:me("string"),title:z().optional(),description:z().optional(),minLength:ut().optional(),maxLength:ut().optional(),format:Mr(["email","uri","date","date-time"]).optional(),default:z().optional()}),DW=se({type:Mr(["number","integer"]),title:z().optional(),description:z().optional(),minimum:ut().optional(),maximum:ut().optional(),default:ut().optional()}),jW=se({type:me("string"),title:z().optional(),description:z().optional(),enum:Ve(z()),default:z().optional()}),zW=se({type:me("string"),title:z().optional(),description:z().optional(),oneOf:Ve(se({const:z(),title:z()})),default:z().optional()}),LW=se({type:me("string"),title:z().optional(),description:z().optional(),enum:Ve(z()),enumNames:Ve(z()).optional(),default:z().optional()}),UW=ht([jW,zW]),FW=se({type:me("array"),title:z().optional(),description:z().optional(),minItems:ut().optional(),maxItems:ut().optional(),items:se({type:me("string"),enum:Ve(z())}),default:Ve(z()).optional()}),qW=se({type:me("array"),title:z().optional(),description:z().optional(),minItems:ut().optional(),maxItems:ut().optional(),items:se({anyOf:Ve(se({const:z(),title:z()}))}),default:Ve(z()).optional()}),HW=ht([FW,qW]),ZW=ht([LW,UW,HW]),BW=ht([ZW,NW,MW,DW]),GW=Sd.extend({mode:me("form").optional(),message:z(),requestedSchema:se({type:me("object"),properties:$t(z(),BW),required:Ve(z()).optional()})}),WW=Sd.extend({mode:me("url"),message:z(),elicitationId:z(),url:z().url()}),VW=ht([GW,WW]),e0=wr.extend({method:me("elicitation/create"),params:VW}),KW=Bn.extend({elicitationId:z()}),JW=Gn.extend({method:me("notifications/elicitation/complete"),params:KW}),mo=Er.extend({action:Mr(["accept","decline","cancel"]),content:Th(t=>t===null?void 0:t,$t(z(),ht([z(),ut(),er(),Ve(z())])).optional())}),XW=se({type:me("ref/resource"),uri:z()});var YW=se({type:me("ref/prompt"),name:z()}),QW=Cn.extend({ref:ht([YW,XW]),argument:se({name:z(),value:z()}),context:se({arguments:$t(z(),z()).optional()}).optional()}),eV=wr.extend({method:me("completion/complete"),params:QW});var t0=Er.extend({completion:Nr({values:Ve(z()).max(100),total:At(ut().int()),hasMore:At(er())})}),tV=se({uri:z().startsWith("file://"),name:z().optional(),_meta:$t(z(),xt()).optional()}),rV=wr.extend({method:me("roots/list"),params:Cn.optional()}),r0=Er.extend({roots:Ve(tV)}),nV=Gn.extend({method:me("notifications/roots/list_changed"),params:Bn.optional()}),SIe=ht([Ph,Aw,eV,Yw,gW,mW,rW,nW,sW,aW,uW,Rd,Kw,Nh,Dh,jh,Lh]),xIe=ht([Ch,Ah,Mw,nV,$d]),wIe=ht([Ss,ea,Cd,mo,r0,Mh,zh,xs]),EIe=ht([Ph,Qw,e0,rV,Nh,Dh,jh,Lh]),kIe=ht([Ch,Ah,TW,dW,Fw,Xw,Vw,$d,JW]),TIe=ht([Ss,Nw,t0,Ww,qw,jw,zw,Uw,fo,Jw,Mh,zh,xs]),pe=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===_e.UrlElicitationRequired&&n){let i=n;if(i.elicitations)return new Iw(i.elicitations,r)}return new t(e,r,n)}},Iw=class extends pe{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(_e.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function ho(t){return t==="completed"||t==="failed"||t==="cancelled"}var oRe=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function n0(t){let r=yc(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=cC(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function i0(t,e){let r=Qr(t,e);if(!r.success)throw r.error;return r.data}var uV=6e4,xc=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(Ch,r=>{this._oncancel(r)}),this.setNotificationHandler(Ah,r=>{this._onprogress(r)}),this.setRequestHandler(Ph,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Nh,async(r,n)=>{let i=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!i)throw new pe(_e.InvalidParams,"Failed to retrieve task: Task not found");return{...i}}),this.setRequestHandler(Dh,async(r,n)=>{let i=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,p=new pe(d.error.code,d.error.message,d.error.data);l(p)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let o=await this._taskStore.getTask(s,n.sessionId);if(!o)throw new pe(_e.InvalidParams,`Task not found: ${s}`);if(!ho(o.status))return await this._waitForTaskUpdate(s,n.signal),await i();if(ho(o.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[po]:{taskId:s}}}}return await i()};return await i()}),this.setRequestHandler(jh,async(r,n)=>{try{let{tasks:i,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:i,nextCursor:s,_meta:{}}}catch(i){throw new pe(_e.InvalidParams,`Failed to list tasks: ${i instanceof Error?i.message:String(i)}`)}}),this.setRequestHandler(Lh,async(r,n)=>{try{let i=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!i)throw new pe(_e.InvalidParams,`Task not found: ${r.params.taskId}`);if(ho(i.status))throw new pe(_e.InvalidParams,`Cannot cancel task in terminal status: ${i.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new pe(_e.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(i){throw i instanceof pe?i:new pe(_e.InvalidRequest,`Failed to cancel task: ${i instanceof Error?i.message:String(i)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,i,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(i,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:i})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),pe.fromError(_e.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let i=this._transport?.onmessage;this._transport.onmessage=(s,o)=>{i?.(s,o),xd(s)||hP(s)?this._onresponse(s):Ow(s)?this._onrequest(s,o):mP(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=pe.fromError(_e.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,i=this._transport,s=e.params?._meta?.[po]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:_e.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},i?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):i?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let o=new AbortController;this._requestHandlerAbortControllers.set(e.id,o);let a=dP(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,i?.sessionId):void 0,u={signal:o.signal,sessionId:i?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(o.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,p)=>{if(o.signal.aborted)throw new pe(_e.ConnectionClosed,"Request was cancelled");let f={...p,relatedRequestId:e.id};s&&!f.relatedTask&&(f.relatedTask={taskId:s});let m=f.relatedTask?.taskId??s;return m&&c&&await c.updateTaskStatus(m,"input_required"),await this.request(l,d,f)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(o.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},i?.sessionId):await i?.send(d)},async l=>{if(o.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:_e.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},i?.sessionId):await i?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,i=Number(r),s=this._progressHandlers.get(i);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let o=this._responseHandlers.get(i),a=this._timeoutInfo.get(i);if(a&&o&&a.resetTimeoutOnProgress)try{this._resetTimeout(i)}catch(c){this._responseHandlers.delete(i),this._progressHandlers.delete(i),this._cleanupTimeout(i),o(c);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),xd(e))n(e);else{let o=new pe(e.error.code,e.error.message,e.error.data);n(o)}return}let i=this._responseHandlers.get(r);if(i===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let s=!1;if(xd(e)&&e.result&&typeof e.result=="object"){let o=e.result;if(o.task&&typeof o.task=="object"){let a=o.task;typeof a.taskId=="string"&&(s=!0,this._taskProgressTokens.set(a.taskId,r))}}if(s||this._progressHandlers.delete(r),xd(e))i(e);else{let o=pe.fromError(e.error.code,e.error.message,e.error.data);i(o)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:i}=n??{};if(!i){try{yield{type:"result",result:await this.request(e,r,n)}}catch(o){yield{type:"error",error:o instanceof pe?o:new pe(_e.InternalError,String(o))}}return}let s;try{let o=await this.request(e,xs,n);if(o.task)s=o.task.taskId,yield{type:"taskCreated",task:o.task};else throw new pe(_e.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},ho(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new pe(_e.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new pe(_e.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(o){yield{type:"error",error:o instanceof pe?o:new pe(_e.InternalError,String(o))}}}request(e,r,n){let{relatedRequestId:i,resumptionToken:s,onresumptiontoken:o,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=y=>{l(y)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(y){d(y);return}n?.signal?.throwIfAborted();let p=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:p};n?.onprogress&&(this._progressHandlers.set(p,n.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:p}}),a&&(f.params={...f.params,task:a}),c&&(f.params={...f.params,_meta:{...f.params?._meta||{},[po]:c}});let m=y=>{this._responseHandlers.delete(p),this._progressHandlers.delete(p),this._cleanupTimeout(p),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:p,reason:String(y)}},{relatedRequestId:i,resumptionToken:s,onresumptiontoken:o}).catch(S=>this._onerror(new Error(`Failed to send cancellation: ${S}`)));let b=y instanceof pe?y:new pe(_e.RequestTimeout,String(y));l(b)};this._responseHandlers.set(p,y=>{if(!n?.signal?.aborted){if(y instanceof Error)return l(y);try{let b=Qr(r,y.result);b.success?u(b.data):l(b.error)}catch(b){l(b)}}}),n?.signal?.addEventListener("abort",()=>{m(n?.signal?.reason)});let h=n?.timeout??uV,g=()=>m(pe.fromError(_e.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(p,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let v=c?.taskId;if(v){let y=b=>{let S=this._responseHandlers.get(p);S?S(b):this._onerror(new Error(`Response handler missing for side-channeled request ${p}`))};this._requestResolvers.set(p,y),this._enqueueTaskMessage(v,{type:"request",message:f,timestamp:Date.now()}).catch(b=>{this._cleanupTimeout(p),l(b)})}else this._transport.send(f,{relatedRequestId:i,resumptionToken:s,onresumptiontoken:o}).catch(y=>{this._cleanupTimeout(p),l(y)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},Mh,r)}async getTaskResult(e,r,n){return this.request({method:"tasks/result",params:e},r,n)}async listTasks(e,r){return this.request({method:"tasks/list",params:e},zh,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},yP,r)}async notification(e,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(e.method);let n=r?.relatedTask?.taskId;if(n){let a={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[po]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:a,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!r?.relatedRequestId&&!r?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let a={...e,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[po]:r.relatedTask}}}),this._transport?.send(a,r).catch(c=>this._onerror(c))});return}let o={...e,jsonrpc:"2.0"};r?.relatedTask&&(o={...o,params:{...o.params,_meta:{...o.params?._meta||{},[po]:r.relatedTask}}}),await this._transport.send(o,r)}setRequestHandler(e,r){let n=n0(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(i,s)=>{let o=i0(e,i);return Promise.resolve(r(o,s))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw new Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,r){let n=n0(e);this._notificationHandlers.set(n,i=>{let s=i0(e,i);return Promise.resolve(r(s))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let r=this._taskProgressTokens.get(e);r!==void 0&&(this._progressHandlers.delete(r),this._taskProgressTokens.delete(e))}async _enqueueTaskMessage(e,r,n){if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let i=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,r,n,i)}async _clearTaskQueue(e,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(e,r);for(let i of n)if(i.type==="request"&&Ow(i.message)){let s=i.message.id,o=this._requestResolvers.get(s);o?(o(new pe(_e.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let i=await this._taskStore?.getTask(e);i?.pollInterval&&(n=i.pollInterval)}catch{}return new Promise((i,s)=>{if(r.aborted){s(new pe(_e.InvalidRequest,"Request cancelled"));return}let o=setTimeout(i,n);r.addEventListener("abort",()=>{clearTimeout(o),s(new pe(_e.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async i=>{if(!e)throw new Error("No request provided");return await n.createTask(i,e.id,{method:e.method,params:e.params},r)},getTask:async i=>{let s=await n.getTask(i,r);if(!s)throw new pe(_e.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(i,s,o)=>{await n.storeTaskResult(i,s,o,r);let a=await n.getTask(i,r);if(a){let c=$d.parse({method:"notifications/tasks/status",params:a});await this.notification(c),ho(a.status)&&this._cleanupTaskProgressHandler(i)}},getTaskResult:i=>n.getTaskResult(i,r),updateTaskStatus:async(i,s,o)=>{let a=await n.getTask(i,r);if(!a)throw new pe(_e.InvalidParams,`Task "${i}" not found - it may have been cleaned up`);if(ho(a.status))throw new pe(_e.InvalidParams,`Cannot update task "${i}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(i,s,o,r);let c=await n.getTask(i,r);if(c){let u=$d.parse({method:"notifications/tasks/status",params:c});await this.notification(u),ho(c.status)&&this._cleanupTaskProgressHandler(i)}},listTasks:i=>n.listTasks(i,r)}}};function kP(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function Uh(t,e){let r={...t};for(let n in e){let i=n,s=e[i];if(s===void 0)continue;let o=r[i];kP(o)&&kP(s)?r[i]={...o,...s}:r[i]=s}return r}var dM=Pe(HE(),1),pM=Pe(lM(),1);function eQ(){let t=new dM.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,pM.default)(t),t}var Uc=class{constructor(e){this._ajv=e??eQ()}getValidator(e){let r="$id"in e&&typeof e.$id=="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var xg=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}createMessageStream(e,r){let n=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!n?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let i=e.messages[e.messages.length-1],s=Array.isArray(i.content)?i.content:[i.content],o=s.some(l=>l.type==="tool_result"),a=e.messages.length>1?e.messages[e.messages.length-2]:void 0,c=a?Array.isArray(a.content)?a.content:[a.content]:[],u=c.some(l=>l.type==="tool_use");if(o){if(s.some(l=>l.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!u)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(u){let l=new Set(c.filter(p=>p.type==="tool_use").map(p=>p.id)),d=new Set(s.filter(p=>p.type==="tool_result").map(p=>p.toolUseId));if(l.size!==d.size||![...l].every(p=>d.has(p)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},ea,r)}elicitInputStream(e,r){let n=this._server.getClientCapabilities(),i=e.mode??"form";switch(i){case"url":{if(!n?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!n?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let s=i==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:s},mo,r)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._server.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}};function wg(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"tools/call":if(!t.tools?.call)throw new Error(`${r} does not support task creation for tools/call (required for ${e})`);break;default:break}}function Eg(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"sampling/createMessage":if(!t.sampling?.createMessage)throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${e})`);break;case"elicitation/create":if(!t.elicitation?.create)throw new Error(`${r} does not support task creation for elicitation/create (required for ${e})`);break;default:break}}var kg=class extends xc{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Od.options.map((n,i)=>[n,i])),this.isMessageIgnored=(n,i)=>{let s=this._loggingLevels.get(i);return s?this.LOG_LEVEL_SEVERITY.get(n)this._oninitialize(n)),this.setNotificationHandler(Mw,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Yw,async(n,i)=>{let s=i.sessionId||i.requestInfo?.headers["mcp-session-id"]||void 0,{level:o}=n.params,a=Od.safeParse(o);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new xg(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=Uh(this._capabilities,e)}setRequestHandler(e,r){let i=yc(e)?.method;if(!i)throw new Error("Schema is missing a method literal");let s;if(lo(i)){let a=i;s=a._zod?.def?.value??a.value}else{let a=i;s=a._def?.value??a.value}if(typeof s!="string")throw new Error("Schema method literal must be a string");if(s==="tools/call"){let a=async(c,u)=>{let l=Qr(Rd,c);if(!l.success){let m=l.error instanceof Error?l.error.message:String(l.error);throw new pe(_e.InvalidParams,`Invalid tools/call request: ${m}`)}let{params:d}=l.data,p=await Promise.resolve(r(c,u));if(d.task){let m=Qr(xs,p);if(!m.success){let h=m.error instanceof Error?m.error.message:String(m.error);throw new pe(_e.InvalidParams,`Invalid task creation result: ${h}`)}return m.data}let f=Qr(fo,p);if(!f.success){let m=f.error instanceof Error?f.error.message:String(f.error);throw new pe(_e.InvalidParams,`Invalid tools/call result: ${m}`)}return f.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){Eg(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&wg(this._capabilities.tasks?.requests,e,"Server")}async _oninitialize(e){let r=e.params.protocolVersion;return this._clientCapabilities=e.params.capabilities,this._clientVersion=e.params.clientInfo,{protocolVersion:Ih.includes(r)?r:bd,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},Ss)}async createMessage(e,r){if((e.tools||e.toolChoice)&&!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let n=e.messages[e.messages.length-1],i=Array.isArray(n.content)?n.content:[n.content],s=i.some(u=>u.type==="tool_result"),o=e.messages.length>1?e.messages[e.messages.length-2]:void 0,a=o?Array.isArray(o.content)?o.content:[o.content]:[],c=a.some(u=>u.type==="tool_use");if(s){if(i.some(u=>u.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!c)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(c){let u=new Set(a.filter(d=>d.type==="tool_use").map(d=>d.id)),l=new Set(i.filter(d=>d.type==="tool_result").map(d=>d.toolUseId));if(u.size!==l.size||![...u].every(d=>l.has(d)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return e.tools?this.request({method:"sampling/createMessage",params:e},Cd,r):this.request({method:"sampling/createMessage",params:e},ea,r)}async elicitInput(e,r){switch(e.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support url elicitation.");let i=e;return this.request({method:"elicitation/create",params:i},mo,r)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw new Error("Client does not support form elicitation.");let i=e.mode==="form"?e:{...e,mode:"form"},s=await this.request({method:"elicitation/create",params:i},mo,r);if(s.action==="accept"&&s.content&&i.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(i.requestedSchema)(s.content);if(!a.valid)throw new pe(_e.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(o){throw o instanceof pe?o:new pe(_e.InternalError,`Error validating elicitation response: ${o instanceof Error?o.message:String(o)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},r0,r)}async sendLoggingMessage(e,r){if(this._capabilities.logging&&!this.isMessageIgnored(e.level,r))return this.notification({method:"notifications/message",params:e})}async sendResourceUpdated(e){return this.notification({method:"notifications/resources/updated",params:e})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}};var XE=Pe(require("node:process"),1);var Fc=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(` +`);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),tQ(r)}clear(){this._buffer=void 0}};function tQ(t){return gP.parse(JSON.parse(t))}function Tg(t){return JSON.stringify(t)+` +`}var $g=class{constructor(e=XE.default.stdin,r=XE.default.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new Fc,this._started=!1,this._ondata=n=>{this._readBuffer.append(n),this.processReadBuffer()},this._onerror=n=>{this.onerror?.(n)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0&&this._stdin.pause(),this._readBuffer.clear(),this.onclose?.()}send(e){return new Promise(r=>{let n=Tg(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};fr();var WR=Pe(require("path"),1),Di=require("fs");var Pg=class{constructor(e){this._client=e}async*callToolStream(e,r=fo,n){let i=this._client,s={...n,task:n?.task??(i.isToolTask(e.name)?{}:void 0)},o=i.requestStream({method:"tools/call",params:e},r,s),a=i.getToolOutputValidator(e.name);for await(let c of o){if(c.type==="result"&&a){let u=c.result;if(!u.structuredContent&&!u.isError){yield{type:"error",error:new pe(_e.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`)};return}if(u.structuredContent)try{let l=a(u.structuredContent);if(!l.valid){yield{type:"error",error:new pe(_e.InvalidParams,`Structured content does not match the tool's output schema: ${l.errorMessage}`)};return}}catch(l){if(l instanceof pe){yield{type:"error",error:l};return}yield{type:"error",error:new pe(_e.InvalidParams,`Failed to validate structured content: ${l instanceof Error?l.message:String(l)}`)};return}}yield c}}async getTask(e,r){return this._client.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._client.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._client.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._client.cancelTask({taskId:e},r)}requestStream(e,r,n){return this._client.requestStream(e,r,n)}};function Ag(t,e){if(!(!t||e===null||typeof e!="object")){if(t.type==="object"&&t.properties&&typeof t.properties=="object"){let r=e,n=t.properties;for(let i of Object.keys(n)){let s=n[i];r[i]===void 0&&Object.prototype.hasOwnProperty.call(s,"default")&&(r[i]=s.default),r[i]!==void 0&&Ag(s,r[i])}}if(Array.isArray(t.anyOf))for(let r of t.anyOf)typeof r!="boolean"&&Ag(r,e);if(Array.isArray(t.oneOf))for(let r of t.oneOf)typeof r!="boolean"&&Ag(r,e)}}function xQ(t){if(!t)return{supportsFormMode:!1,supportsUrlMode:!1};let e=t.form!==void 0,r=t.url!==void 0;return{supportsFormMode:e||!e&&!r,supportsUrlMode:r}}var qc=class extends xc{constructor(e,r){super(r),this._clientInfo=e,this._cachedToolOutputValidators=new Map,this._cachedKnownTaskTools=new Set,this._cachedRequiredTaskTools=new Set,this._listChangedDebounceTimers=new Map,this._capabilities=r?.capabilities??{},this._jsonSchemaValidator=r?.jsonSchemaValidator??new Uc,r?.listChanged&&(this._pendingListChangedConfig=r.listChanged)}_setupListChangedHandlers(e){e.tools&&this._serverCapabilities?.tools?.listChanged&&this._setupListChangedHandler("tools",Xw,e.tools,async()=>(await this.listTools()).tools),e.prompts&&this._serverCapabilities?.prompts?.listChanged&&this._setupListChangedHandler("prompts",Vw,e.prompts,async()=>(await this.listPrompts()).prompts),e.resources&&this._serverCapabilities?.resources?.listChanged&&this._setupListChangedHandler("resources",Fw,e.resources,async()=>(await this.listResources()).resources)}get experimental(){return this._experimental||(this._experimental={tasks:new Pg(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=Uh(this._capabilities,e)}setRequestHandler(e,r){let i=yc(e)?.method;if(!i)throw new Error("Schema is missing a method literal");let s;if(lo(i)){let a=i;s=a._zod?.def?.value??a.value}else{let a=i;s=a._def?.value??a.value}if(typeof s!="string")throw new Error("Schema method literal must be a string");let o=s;if(o==="elicitation/create"){let a=async(c,u)=>{let l=Qr(e0,c);if(!l.success){let y=l.error instanceof Error?l.error.message:String(l.error);throw new pe(_e.InvalidParams,`Invalid elicitation request: ${y}`)}let{params:d}=l.data;d.mode=d.mode??"form";let{supportsFormMode:p,supportsUrlMode:f}=xQ(this._capabilities.elicitation);if(d.mode==="form"&&!p)throw new pe(_e.InvalidParams,"Client does not support form-mode elicitation requests");if(d.mode==="url"&&!f)throw new pe(_e.InvalidParams,"Client does not support URL-mode elicitation requests");let m=await Promise.resolve(r(c,u));if(d.task){let y=Qr(xs,m);if(!y.success){let b=y.error instanceof Error?y.error.message:String(y.error);throw new pe(_e.InvalidParams,`Invalid task creation result: ${b}`)}return y.data}let h=Qr(mo,m);if(!h.success){let y=h.error instanceof Error?h.error.message:String(h.error);throw new pe(_e.InvalidParams,`Invalid elicitation result: ${y}`)}let g=h.data,v=d.mode==="form"?d.requestedSchema:void 0;if(d.mode==="form"&&g.action==="accept"&&g.content&&v&&this._capabilities.elicitation?.form?.applyDefaults)try{Ag(v,g.content)}catch{}return g};return super.setRequestHandler(e,a)}if(o==="sampling/createMessage"){let a=async(c,u)=>{let l=Qr(Qw,c);if(!l.success){let g=l.error instanceof Error?l.error.message:String(l.error);throw new pe(_e.InvalidParams,`Invalid sampling request: ${g}`)}let{params:d}=l.data,p=await Promise.resolve(r(c,u));if(d.task){let g=Qr(xs,p);if(!g.success){let v=g.error instanceof Error?g.error.message:String(g.error);throw new pe(_e.InvalidParams,`Invalid task creation result: ${v}`)}return g.data}let m=d.tools||d.toolChoice?Cd:ea,h=Qr(m,p);if(!h.success){let g=h.error instanceof Error?h.error.message:String(h.error);throw new pe(_e.InvalidParams,`Invalid sampling result: ${g}`)}return h.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapability(e,r){if(!this._serverCapabilities?.[e])throw new Error(`Server does not support ${e} (required for ${r})`)}async connect(e,r){if(await super.connect(e),e.sessionId===void 0)try{let n=await this.request({method:"initialize",params:{protocolVersion:bd,capabilities:this._capabilities,clientInfo:this._clientInfo}},Nw,r);if(n===void 0)throw new Error(`Server sent invalid initialize result: ${n}`);if(!Ih.includes(n.protocolVersion))throw new Error(`Server's protocol version is not supported: ${n.protocolVersion}`);this._serverCapabilities=n.capabilities,this._serverVersion=n.serverInfo,e.setProtocolVersion&&e.setProtocolVersion(n.protocolVersion),this._instructions=n.instructions,await this.notification({method:"notifications/initialized"}),this._pendingListChangedConfig&&(this._setupListChangedHandlers(this._pendingListChangedConfig),this._pendingListChangedConfig=void 0)}catch(n){throw this.close(),n}}getServerCapabilities(){return this._serverCapabilities}getServerVersion(){return this._serverVersion}getInstructions(){return this._instructions}assertCapabilityForMethod(e){switch(e){case"logging/setLevel":if(!this._serverCapabilities?.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._serverCapabilities?.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":case"resources/subscribe":case"resources/unsubscribe":if(!this._serverCapabilities?.resources)throw new Error(`Server does not support resources (required for ${e})`);if(e==="resources/subscribe"&&!this._serverCapabilities.resources.subscribe)throw new Error(`Server does not support resource subscriptions (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._serverCapabilities?.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"completion/complete":if(!this._serverCapabilities?.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"initialize":break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/roots/list_changed":if(!this._capabilities.roots?.listChanged)throw new Error(`Client does not support roots list changed notifications (required for ${e})`);break;case"notifications/initialized":break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"sampling/createMessage":if(!this._capabilities.sampling)throw new Error(`Client does not support sampling capability (required for ${e})`);break;case"elicitation/create":if(!this._capabilities.elicitation)throw new Error(`Client does not support elicitation capability (required for ${e})`);break;case"roots/list":if(!this._capabilities.roots)throw new Error(`Client does not support roots capability (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Client does not support tasks capability (required for ${e})`);break;case"ping":break}}assertTaskCapability(e){wg(this._serverCapabilities?.tasks?.requests,e,"Server")}assertTaskHandlerCapability(e){this._capabilities&&Eg(this._capabilities.tasks?.requests,e,"Client")}async ping(e){return this.request({method:"ping"},Ss,e)}async complete(e,r){return this.request({method:"completion/complete",params:e},t0,r)}async setLoggingLevel(e,r){return this.request({method:"logging/setLevel",params:{level:e}},Ss,r)}async getPrompt(e,r){return this.request({method:"prompts/get",params:e},Ww,r)}async listPrompts(e,r){return this.request({method:"prompts/list",params:e},qw,r)}async listResources(e,r){return this.request({method:"resources/list",params:e},jw,r)}async listResourceTemplates(e,r){return this.request({method:"resources/templates/list",params:e},zw,r)}async readResource(e,r){return this.request({method:"resources/read",params:e},Uw,r)}async subscribeResource(e,r){return this.request({method:"resources/subscribe",params:e},Ss,r)}async unsubscribeResource(e,r){return this.request({method:"resources/unsubscribe",params:e},Ss,r)}async callTool(e,r=fo,n){if(this.isToolTaskRequired(e.name))throw new pe(_e.InvalidRequest,`Tool "${e.name}" requires task-based execution. Use client.experimental.tasks.callToolStream() instead.`);let i=await this.request({method:"tools/call",params:e},r,n),s=this.getToolOutputValidator(e.name);if(s){if(!i.structuredContent&&!i.isError)throw new pe(_e.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`);if(i.structuredContent)try{let o=s(i.structuredContent);if(!o.valid)throw new pe(_e.InvalidParams,`Structured content does not match the tool's output schema: ${o.errorMessage}`)}catch(o){throw o instanceof pe?o:new pe(_e.InvalidParams,`Failed to validate structured content: ${o instanceof Error?o.message:String(o)}`)}}return i}isToolTask(e){return this._serverCapabilities?.tasks?.requests?.tools?.call?this._cachedKnownTaskTools.has(e):!1}isToolTaskRequired(e){return this._cachedRequiredTaskTools.has(e)}cacheToolMetadata(e){this._cachedToolOutputValidators.clear(),this._cachedKnownTaskTools.clear(),this._cachedRequiredTaskTools.clear();for(let r of e){if(r.outputSchema){let i=this._jsonSchemaValidator.getValidator(r.outputSchema);this._cachedToolOutputValidators.set(r.name,i)}let n=r.execution?.taskSupport;(n==="required"||n==="optional")&&this._cachedKnownTaskTools.add(r.name),n==="required"&&this._cachedRequiredTaskTools.add(r.name)}}getToolOutputValidator(e){return this._cachedToolOutputValidators.get(e)}async listTools(e,r){let n=await this.request({method:"tools/list",params:e},Jw,r);return this.cacheToolMetadata(n.tools),n}_setupListChangedHandler(e,r,n,i){let s=EP.safeParse(n);if(!s.success)throw new Error(`Invalid ${e} listChanged options: ${s.error.message}`);if(typeof n.onChanged!="function")throw new Error(`Invalid ${e} listChanged options: onChanged must be a function`);let{autoRefresh:o,debounceMs:a}=s.data,{onChanged:c}=n,u=async()=>{if(!o){c(null,null);return}try{let d=await i();c(null,d)}catch(d){let p=d instanceof Error?d:new Error(String(d));c(p,null)}},l=()=>{if(a){let d=this._listChangedDebounceTimers.get(e);d&&clearTimeout(d);let p=setTimeout(u,a);this._listChangedDebounceTimers.set(e,p)}else u()};this.setNotificationHandler(r,l)}async sendRootsListChanged(){return this.notification({method:"notifications/roots/list_changed"})}};var pD=Pe(dD(),1),pp=Pe(require("node:process"),1),fD=require("node:stream");var KQ=pp.default.platform==="win32"?["APPDATA","HOMEDRIVE","HOMEPATH","LOCALAPPDATA","PATH","PROCESSOR_ARCHITECTURE","SYSTEMDRIVE","SYSTEMROOT","TEMP","USERNAME","USERPROFILE","PROGRAMFILES"]:["HOME","LOGNAME","PATH","SHELL","TERM","USER"];function JQ(){let t={};for(let e of KQ){let r=pp.default.env[e];r!==void 0&&(r.startsWith("()")||(t[e]=r))}return t}var Bc=class{constructor(e){this._readBuffer=new Fc,this._stderrStream=null,this._serverParams=e,(e.stderr==="pipe"||e.stderr==="overlapped")&&(this._stderrStream=new fD.PassThrough)}async start(){if(this._process)throw new Error("StdioClientTransport already started! If using Client class, note that connect() calls start() automatically.");return new Promise((e,r)=>{this._process=(0,pD.default)(this._serverParams.command,this._serverParams.args??[],{env:{...JQ(),...this._serverParams.env},stdio:["pipe","pipe",this._serverParams.stderr??"inherit"],shell:!1,windowsHide:pp.default.platform==="win32"&&XQ(),cwd:this._serverParams.cwd}),this._process.on("error",n=>{r(n),this.onerror?.(n)}),this._process.on("spawn",()=>{e()}),this._process.on("close",n=>{this._process=void 0,this.onclose?.()}),this._process.stdin?.on("error",n=>{this.onerror?.(n)}),this._process.stdout?.on("data",n=>{this._readBuffer.append(n),this.processReadBuffer()}),this._process.stdout?.on("error",n=>{this.onerror?.(n)}),this._stderrStream&&this._process.stderr&&this._process.stderr.pipe(this._stderrStream)})}get stderr(){return this._stderrStream?this._stderrStream:this._process?.stderr??null}get pid(){return this._process?.pid??null}processReadBuffer(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){if(this._process){let e=this._process;this._process=void 0;let r=new Promise(n=>{e.once("close",()=>{n()})});try{e.stdin?.end()}catch{}if(await Promise.race([r,new Promise(n=>setTimeout(n,2e3).unref())]),e.exitCode===null){try{e.kill("SIGTERM")}catch{}await Promise.race([r,new Promise(n=>setTimeout(n,2e3).unref())])}if(e.exitCode===null)try{e.kill("SIGKILL")}catch{}}this._readBuffer.clear()}send(e){return new Promise(r=>{if(!this._process?.stdin)throw new Error("Not connected");let n=Tg(e);this._process.stdin.write(n)?r():this._process.stdin.once("drain",r)})}};function XQ(){return"type"in pp.default}fr();Pn();tr();var Gc=require("fs"),mk=require("path"),mD=require("os");te();var YQ=(0,mk.join)((0,mD.homedir)(),".claude-mem"),fk=(0,mk.join)(YQ,".env"),QQ=["ANTHROPIC_API_KEY","CLAUDECODE"];function eee(t){let e={};for(let r of t.split(` +`)){let n=r.trim();if(!n||n.startsWith("#"))continue;let i=n.indexOf("=");if(i===-1)continue;let s=n.slice(0,i).trim(),o=n.slice(i+1).trim();(o.startsWith('"')&&o.endsWith('"')||o.startsWith("'")&&o.endsWith("'"))&&(o=o.slice(1,-1)),s&&(e[s]=o)}return e}function hk(){if(!(0,Gc.existsSync)(fk))return{};try{let t=(0,Gc.readFileSync)(fk,"utf-8"),e=eee(t),r={};return e.ANTHROPIC_API_KEY&&(r.ANTHROPIC_API_KEY=e.ANTHROPIC_API_KEY),e.GEMINI_API_KEY&&(r.GEMINI_API_KEY=e.GEMINI_API_KEY),e.OPENROUTER_API_KEY&&(r.OPENROUTER_API_KEY=e.OPENROUTER_API_KEY),r}catch(t){return _.warn("ENV","Failed to load .env file",{path:fk},t),{}}}function hD(t=!0){let e={};for(let[r,n]of Object.entries(process.env))n!==void 0&&!QQ.includes(r)&&(e[r]=n);if(e.CLAUDE_CODE_ENTRYPOINT="sdk-ts",t){let r=hk();r.ANTHROPIC_API_KEY&&(e.ANTHROPIC_API_KEY=r.ANTHROPIC_API_KEY),r.GEMINI_API_KEY&&(e.GEMINI_API_KEY=r.GEMINI_API_KEY),r.OPENROUTER_API_KEY&&(e.OPENROUTER_API_KEY=r.OPENROUTER_API_KEY),!e.ANTHROPIC_API_KEY&&process.env.CLAUDE_CODE_OAUTH_TOKEN&&(e.CLAUDE_CODE_OAUTH_TOKEN=process.env.CLAUDE_CODE_OAUTH_TOKEN)}return e}function Wc(t){return hk()[t]}function tee(){return!!hk().ANTHROPIC_API_KEY}function Mg(){return tee()?"API key (from ~/.claude-mem/.env)":process.env.CLAUDE_CODE_OAUTH_TOKEN?"Claude Code OAuth token (from parent process)":"Claude Code CLI (subscription billing)"}te();var Ek=require("child_process"),kk=Pe(require("path"),1),Tk=Pe(require("os"),1),pa=Pe(require("fs"),1);te();tr();It();var gk=["CLAUDECODE_","CLAUDE_CODE_"],vk=new Set(["CLAUDECODE","CLAUDE_CODE_SESSION","CLAUDE_CODE_ENTRYPOINT","MCP_SESSION_ID"]),ree=new Set(["CLAUDE_CODE_OAUTH_TOKEN","CLAUDE_CODE_GIT_BASH_PATH"]);function Wi(t=process.env){let e={};for(let[r,n]of Object.entries(t))if(n!==void 0){if(ree.has(r)){e[r]=n;continue}vk.has(r)||gk.some(i=>r.startsWith(i))||(e[r]=n)}return e}var da=require("fs"),$D=require("os"),xk=Pe(require("path"),1);te();var Os=require("fs"),gD=require("os"),fp=Pe(require("path"),1);te();var nee=5e3,iee=1e3,see=fp.default.join((0,gD.homedir)(),".claude-mem"),oee=fp.default.join(see,"supervisor.json");function An(t){if(!Number.isInteger(t)||t<0||t===0)return!1;try{return process.kill(t,0),!0}catch(e){return e.code==="EPERM"}}var _k=class{registryPath;entries=new Map;runtimeProcesses=new Map;initialized=!1;constructor(e=oee){this.registryPath=e}initialize(){if(this.initialized)return;if(this.initialized=!0,(0,Os.mkdirSync)(fp.default.dirname(this.registryPath),{recursive:!0}),!(0,Os.existsSync)(this.registryPath)){this.persist();return}try{let n=JSON.parse((0,Os.readFileSync)(this.registryPath,"utf-8")).processes??{};for(let[i,s]of Object.entries(n))this.entries.set(i,s)}catch(r){_.warn("SYSTEM","Failed to parse supervisor registry, rebuilding",{path:this.registryPath},r),this.entries.clear()}let e=this.pruneDeadEntries();e>0&&_.info("SYSTEM","Removed dead processes from supervisor registry",{removed:e}),this.persist()}register(e,r,n){this.initialize(),this.entries.set(e,r),n&&this.runtimeProcesses.set(e,n),this.persist()}unregister(e){this.initialize(),this.entries.delete(e),this.runtimeProcesses.delete(e),this.persist()}clear(){this.entries.clear(),this.runtimeProcesses.clear(),this.persist()}getAll(){return this.initialize(),Array.from(this.entries.entries()).map(([e,r])=>({id:e,...r})).sort((e,r)=>{let n=Date.parse(e.startedAt),i=Date.parse(r.startedAt);return(Number.isNaN(n)?0:n)-(Number.isNaN(i)?0:i)})}getBySession(e){let r=String(e);return this.getAll().filter(n=>n.sessionId!==void 0&&String(n.sessionId)===r)}getRuntimeProcess(e){return this.runtimeProcesses.get(e)}getByPid(e){return this.getAll().filter(r=>r.pid===e)}pruneDeadEntries(){this.initialize();let e=0;for(let[r,n]of this.entries)An(n.pid)||(this.entries.delete(r),this.runtimeProcesses.delete(r),e+=1);return e>0&&this.persist(),e}async reapSession(e){this.initialize();let r=this.getBySession(e);if(r.length===0)return 0;let n=typeof e=="number"?e:Number(e)||void 0;_.info("SYSTEM",`Reaping ${r.length} process(es) for session ${e}`,{sessionId:n,pids:r.map(a=>a.pid)});let i=r.filter(a=>An(a.pid));for(let a of i)try{process.kill(a.pid,"SIGTERM")}catch(c){c.code!=="ESRCH"&&_.debug("SYSTEM",`Failed to SIGTERM session process PID ${a.pid}`,{pid:a.pid},c)}let s=Date.now()+nee;for(;Date.now()An(c.pid)).length!==0;)await new Promise(c=>setTimeout(c,100));let o=i.filter(a=>An(a.pid));for(let a of o){_.warn("SYSTEM",`Session process PID ${a.pid} did not exit after SIGTERM, sending SIGKILL`,{pid:a.pid,sessionId:n});try{process.kill(a.pid,"SIGKILL")}catch(c){c.code!=="ESRCH"&&_.debug("SYSTEM",`Failed to SIGKILL session process PID ${a.pid}`,{pid:a.pid},c)}}if(o.length>0){let a=Date.now()+iee;for(;Date.now()An(u.pid)).length!==0;)await new Promise(u=>setTimeout(u,100))}for(let a of r)this.entries.delete(a.id),this.runtimeProcesses.delete(a.id);return this.persist(),_.info("SYSTEM",`Reaped ${r.length} process(es) for session ${e}`,{sessionId:n,reaped:r.length}),r.length}persist(){let e={processes:Object.fromEntries(this.entries.entries())};(0,Os.mkdirSync)(fp.default.dirname(this.registryPath),{recursive:!0}),(0,Os.writeFileSync)(this.registryPath,JSON.stringify(e,null,2))}},yk=null;function Dg(){return yk||(yk=new _k),yk}var _D=require("child_process"),bD=require("fs"),SD=require("os"),bk=Pe(require("path"),1),xD=require("util");te();Pn();var aee=(0,xD.promisify)(_D.execFile),cee=bk.default.join((0,SD.homedir)(),".claude-mem"),uee=bk.default.join(cee,"worker.pid");async function wD(t){let e=t.currentPid??process.pid,r=t.pidFilePath??uee,n=t.registry.getAll(),i=[...n].filter(o=>o.pid!==e).sort((o,a)=>Date.parse(a.startedAt)-Date.parse(o.startedAt));for(let o of i){if(!An(o.pid)){t.registry.unregister(o.id);continue}try{await yD(o.pid,"SIGTERM")}catch(a){_.debug("SYSTEM","Failed to send SIGTERM to child process",{pid:o.pid,type:o.type},a)}}await vD(i,5e3);let s=i.filter(o=>An(o.pid));for(let o of s)try{await yD(o.pid,"SIGKILL")}catch(a){_.debug("SYSTEM","Failed to force kill child process",{pid:o.pid,type:o.type},a)}await vD(s,1e3);for(let o of i)t.registry.unregister(o.id);for(let o of n.filter(a=>a.pid===e))t.registry.unregister(o.id);try{(0,bD.rmSync)(r,{force:!0})}catch(o){_.debug("SYSTEM","Failed to remove PID file during shutdown",{pidFilePath:r},o)}t.registry.pruneDeadEntries()}async function vD(t,e){let r=Date.now()+e;for(;Date.now()An(i.pid)).length===0)return;await new Promise(i=>setTimeout(i,100))}}async function yD(t,e){if(e==="SIGTERM"){try{process.kill(t,e)}catch(r){if(r.code==="ESRCH")return;throw r}return}if(process.platform==="win32"){let r=await lee();if(r){await new Promise((i,s)=>{r(t,e,o=>{if(!o){i();return}if(o.code==="ESRCH"){i();return}s(o)})});return}let n=["/PID",String(t),"/T"];e==="SIGKILL"&&n.push("/F"),await aee("taskkill",n,{timeout:Ir.POWERSHELL_COMMAND,windowsHide:!0});return}try{process.kill(t,e)}catch(r){if(r.code==="ESRCH")return;throw r}}async function lee(){let t="tree-kill";try{let e=await import(t);return e.default??e}catch{return null}}te();var ED=3e4,Vc=null;function dee(){let e=Dg().pruneDeadEntries();e>0&&_.info("SYSTEM",`Health check: pruned ${e} dead process(es) from registry`)}function kD(){Vc===null&&(Vc=setInterval(dee,ED),Vc.unref(),_.debug("SYSTEM","Health checker started",{intervalMs:ED}))}function TD(){Vc!==null&&(clearInterval(Vc),Vc=null,_.debug("SYSTEM","Health checker stopped"))}var pee=xk.default.join((0,$D.homedir)(),".claude-mem"),fee=xk.default.join(pee,"worker.pid"),Sk=class{registry;started=!1;stopPromise=null;signalHandlersRegistered=!1;shutdownInitiated=!1;shutdownHandler=null;constructor(e){this.registry=e}async start(){if(this.started)return;if(this.registry.initialize(),wk({logAlive:!1})==="alive")throw new Error("Worker already running");this.started=!0,kD()}configureSignalHandlers(e){if(this.shutdownHandler=e,this.signalHandlersRegistered)return;this.signalHandlersRegistered=!0;let r=async n=>{if(this.shutdownInitiated){_.warn("SYSTEM",`Received ${n} but shutdown already in progress`);return}this.shutdownInitiated=!0,_.info("SYSTEM",`Received ${n}, shutting down...`);try{this.shutdownHandler?await this.shutdownHandler():await this.stop()}catch(i){_.error("SYSTEM","Error during shutdown",{},i);try{await this.stop()}catch(s){_.debug("SYSTEM","Supervisor shutdown fallback failed",{},s)}}process.exit(0)};process.on("SIGTERM",()=>{r("SIGTERM")}),process.on("SIGINT",()=>{r("SIGINT")}),process.platform!=="win32"&&(process.argv.includes("--daemon")?process.on("SIGHUP",()=>{_.debug("SYSTEM","Ignoring SIGHUP in daemon mode")}):process.on("SIGHUP",()=>{r("SIGHUP")}))}async stop(){if(this.stopPromise){await this.stopPromise;return}TD(),this.stopPromise=wD({registry:this.registry,currentPid:process.pid}).finally(()=>{this.started=!1,this.stopPromise=null}),await this.stopPromise}assertCanSpawn(e){if(this.stopPromise!==null)throw new Error(`Supervisor is shutting down, refusing to spawn ${e}`)}registerProcess(e,r,n){this.registry.register(e,r,n)}unregisterProcess(e){this.registry.unregister(e)}getRegistry(){return this.registry}},jg=new Sk(Dg());async function ID(){await jg.start()}async function RD(){await jg.stop()}function yt(){return jg}function OD(t){jg.configureSignalHandlers(t)}function wk(t={}){let e=t.pidFilePath??fee;if(!(0,da.existsSync)(e))return"missing";let r=null;try{r=JSON.parse((0,da.readFileSync)(e,"utf-8"))}catch(n){return _.warn("SYSTEM","Failed to parse worker PID file, removing it",{path:e},n),(0,da.rmSync)(e,{force:!0}),"invalid"}return An(r.pid)?((t.logAlive??!0)&&_.info("SYSTEM","Worker already running (PID alive)",{existingPid:r.pid,existingPort:r.port,startedAt:r.startedAt}),"alive"):(_.info("SYSTEM","Removing stale PID file (worker process is dead)",{pid:r.pid,port:r.port,startedAt:r.startedAt}),(0,da.rmSync)(e,{force:!0}),"stale")}var mee="claude-mem-chroma",hee="1.0.0",CD=3e4,PD=1e4,gee=kk.default.join(Tk.default.homedir(),".claude-mem","chroma"),zg="chroma-mcp",Cs=class t{static instance=null;client=null;transport=null;connected=!1;lastConnectionFailureTimestamp=0;connecting=null;constructor(){}static getInstance(){return t.instance||(t.instance=new t),t.instance}async ensureConnected(){if(this.connected&&this.client)return;let e=Date.now()-this.lastConnectionFailureTimestamp;if(this.lastConnectionFailureTimestamp>0&&e{a=setTimeout(()=>d(new Error(`MCP connection to chroma-mcp timed out after ${CD}ms`)),CD)});try{await Promise.race([o,c])}catch(l){clearTimeout(a),_.warn("CHROMA_MCP","Connection failed, killing subprocess to prevent zombie",{error:l instanceof Error?l.message:String(l)});try{await this.transport.close()}catch{}try{await this.client.close()}catch{}throw this.client=null,this.transport=null,this.connected=!1,l}clearTimeout(a),this.connected=!0,this.registerManagedProcess(),_.info("CHROMA_MCP","Connected to chroma-mcp successfully");let u=this.transport;this.transport.onclose=()=>{if(this.transport!==u){_.debug("CHROMA_MCP","Ignoring stale onclose from previous transport");return}_.warn("CHROMA_MCP","chroma-mcp subprocess closed unexpectedly, applying reconnect backoff"),this.connected=!1,yt().unregisterProcess(zg),this.client=null,this.transport=null,this.lastConnectionFailureTimestamp=Date.now()}}buildCommandArgs(){let e=ye.loadFromFile(vt),r=e.CLAUDE_MEM_CHROMA_MODE||"local",n=process.env.CLAUDE_MEM_PYTHON_VERSION||e.CLAUDE_MEM_PYTHON_VERSION||"3.13";if(r==="remote"){let i=e.CLAUDE_MEM_CHROMA_HOST||"127.0.0.1",s=e.CLAUDE_MEM_CHROMA_PORT||"8000",o=e.CLAUDE_MEM_CHROMA_SSL==="true",a=e.CLAUDE_MEM_CHROMA_TENANT||"default_tenant",c=e.CLAUDE_MEM_CHROMA_DATABASE||"default_database",u=e.CLAUDE_MEM_CHROMA_API_KEY||"",l=["--python",n,"chroma-mcp","--client-type","http","--host",i,"--port",s];return l.push("--ssl",o?"true":"false"),a!=="default_tenant"&&l.push("--tenant",a),c!=="default_database"&&l.push("--database",c),u&&l.push("--api-key",u),l}return["--python",n,"chroma-mcp","--client-type","persistent","--data-dir",gee.replace(/\\/g,"/")]}async callTool(e,r){await this.ensureConnected(),_.debug("CHROMA_MCP",`Calling tool: ${e}`,{arguments:JSON.stringify(r).slice(0,200)});let n;try{n=await this.client.callTool({name:e,arguments:r})}catch(o){this.connected=!1,this.client=null,this.transport=null,_.warn("CHROMA_MCP",`Transport error during "${e}", reconnecting and retrying once`,{error:o instanceof Error?o.message:String(o)});try{await this.ensureConnected(),n=await this.client.callTool({name:e,arguments:r})}catch(a){throw this.connected=!1,new Error(`chroma-mcp transport error during "${e}" (retry failed): ${a instanceof Error?a.message:String(a)}`)}}if(n.isError){let o=n.content?.find(a=>a.type==="text")?.text||"Unknown chroma-mcp error";throw new Error(`chroma-mcp tool "${e}" returned error: ${o}`)}let i=n.content;if(!i||i.length===0)return null;let s=i.find(o=>o.type==="text"&&o.text);if(!s||!s.text)return null;try{return JSON.parse(s.text)}catch{return null}}async isHealthy(){try{return await this.callTool("chroma_list_collections",{limit:1}),!0}catch{return!1}}async stop(){if(!this.client){_.debug("CHROMA_MCP","No active MCP connection to stop");return}_.info("CHROMA_MCP","Stopping chroma-mcp MCP connection");try{await this.client.close()}catch(e){_.debug("CHROMA_MCP","Error during client close (subprocess may already be dead)",{},e)}yt().unregisterProcess(zg),this.client=null,this.transport=null,this.connected=!1,this.connecting=null,_.info("CHROMA_MCP","chroma-mcp MCP connection stopped")}static async reset(){t.instance&&await t.instance.stop(),t.instance=null}getCombinedCertPath(){let e=kk.default.join(Tk.default.homedir(),".claude-mem","combined_certs.pem");if(pa.default.existsSync(e)){let r=pa.default.statSync(e);if(Date.now()-r.mtimeMs<1440*60*1e3)return e}if(process.platform==="darwin")try{let r;try{r=(0,Ek.execSync)('uvx --with certifi python -c "import certifi; print(certifi.where())"',{encoding:"utf8",stdio:["pipe","pipe","pipe"],timeout:1e4}).trim()}catch{return}if(!r||!pa.default.existsSync(r))return;let n="";try{n=(0,Ek.execSync)('security find-certificate -a -c "Zscaler" -p /Library/Keychains/System.keychain',{encoding:"utf8",stdio:["pipe","pipe","pipe"],timeout:5e3})}catch{return}if(!n||!n.includes("-----BEGIN CERTIFICATE-----")||!n.includes("-----END CERTIFICATE-----"))return;let i=pa.default.readFileSync(r,"utf8"),s=e+".tmp";return pa.default.writeFileSync(s,i+` +`+n),pa.default.renameSync(s,e),_.info("CHROMA_MCP","Created combined SSL certificate bundle for Zscaler",{path:e}),e}catch(r){_.debug("CHROMA_MCP","Could not create combined cert bundle",{},r);return}}getSpawnEnv(){let e={};for(let[n,i]of Object.entries(Wi(process.env)))i!==void 0&&(e[n]=i);let r=this.getCombinedCertPath();return r?(_.info("CHROMA_MCP","Using combined SSL certificates for enterprise compatibility",{certPath:r}),{...e,SSL_CERT_FILE:r,REQUESTS_CA_BUNDLE:r,CURL_CA_BUNDLE:r,NODE_EXTRA_CA_CERTS:r}):e}registerManagedProcess(){let e=this.transport._process;e?.pid&&(yt().registerProcess(zg,{pid:e.pid,type:"chroma",startedAt:new Date().toISOString()},e),e.once("exit",()=>{yt().unregisterProcess(zg)}))}};Fg();te();$k();var Jc=class t{project;collectionName;collectionCreated=!1;BATCH_SIZE=100;constructor(e){this.project=e;let r=e.replace(/[^a-zA-Z0-9._-]/g,"_").replace(/[^a-zA-Z0-9]+$/,"");this.collectionName=`cm__${r||"unknown"}`}async ensureCollectionExists(){if(this.collectionCreated)return;let e=Cs.getInstance();try{await e.callTool("chroma_create_collection",{collection_name:this.collectionName})}catch(r){if(!(r instanceof Error?r.message:String(r)).includes("already exists"))throw r}this.collectionCreated=!0,_.debug("CHROMA_SYNC","Collection ready",{collection:this.collectionName})}formatObservationDocs(e){let r=[],n=e.facts?JSON.parse(e.facts):[],i=e.concepts?JSON.parse(e.concepts):[],s=Kc(e.files_read),o=Kc(e.files_modified),a={sqlite_id:e.id,doc_type:"observation",memory_session_id:e.memory_session_id,project:e.project,created_at_epoch:e.created_at_epoch,type:e.type||"discovery",title:e.title||"Untitled"};return e.subtitle&&(a.subtitle=e.subtitle),i.length>0&&(a.concepts=i.join(",")),s.length>0&&(a.files_read=s.join(",")),o.length>0&&(a.files_modified=o.join(",")),e.narrative&&r.push({id:`obs_${e.id}_narrative`,document:e.narrative,metadata:{...a,field_type:"narrative"}}),e.text&&r.push({id:`obs_${e.id}_text`,document:e.text,metadata:{...a,field_type:"text"}}),n.forEach((c,u)=>{r.push({id:`obs_${e.id}_fact_${u}`,document:c,metadata:{...a,field_type:"fact",fact_index:u}})}),r}formatSummaryDocs(e){let r=[],n={sqlite_id:e.id,doc_type:"session_summary",memory_session_id:e.memory_session_id,project:e.project,created_at_epoch:e.created_at_epoch,prompt_number:e.prompt_number||0};return e.request&&r.push({id:`summary_${e.id}_request`,document:e.request,metadata:{...n,field_type:"request"}}),e.investigated&&r.push({id:`summary_${e.id}_investigated`,document:e.investigated,metadata:{...n,field_type:"investigated"}}),e.learned&&r.push({id:`summary_${e.id}_learned`,document:e.learned,metadata:{...n,field_type:"learned"}}),e.completed&&r.push({id:`summary_${e.id}_completed`,document:e.completed,metadata:{...n,field_type:"completed"}}),e.next_steps&&r.push({id:`summary_${e.id}_next_steps`,document:e.next_steps,metadata:{...n,field_type:"next_steps"}}),e.notes&&r.push({id:`summary_${e.id}_notes`,document:e.notes,metadata:{...n,field_type:"notes"}}),r}async addDocuments(e){if(e.length===0)return;await this.ensureCollectionExists();let r=Cs.getInstance();for(let n=0;nObject.fromEntries(Object.entries(o.metadata).filter(([a,c])=>c!=null&&c!=="")));try{await r.callTool("chroma_add_documents",{collection_name:this.collectionName,ids:i.map(o=>o.id),documents:i.map(o=>o.document),metadatas:s})}catch(o){if((o instanceof Error?o.message:String(o)).includes("already exist"))try{await r.callTool("chroma_delete_documents",{collection_name:this.collectionName,ids:i.map(c=>c.id)}),await r.callTool("chroma_add_documents",{collection_name:this.collectionName,ids:i.map(c=>c.id),documents:i.map(c=>c.document),metadatas:s}),_.info("CHROMA_SYNC","Batch reconciled via delete+add after duplicate conflict",{collection:this.collectionName,batchStart:n,batchSize:i.length})}catch(c){_.error("CHROMA_SYNC","Batch reconcile (delete+add) failed",{collection:this.collectionName,batchStart:n,batchSize:i.length},c)}else _.error("CHROMA_SYNC","Batch add failed, continuing with remaining batches",{collection:this.collectionName,batchStart:n,batchSize:i.length},o)}}_.debug("CHROMA_SYNC","Documents added",{collection:this.collectionName,count:e.length})}async syncObservation(e,r,n,i,s,o,a=0){let c={id:e,memory_session_id:r,project:n,text:null,type:i.type,title:i.title,subtitle:i.subtitle,facts:JSON.stringify(i.facts),narrative:i.narrative,concepts:JSON.stringify(i.concepts),files_read:JSON.stringify(i.files_read),files_modified:JSON.stringify(i.files_modified),prompt_number:s,discovery_tokens:a,created_at:new Date(o*1e3).toISOString(),created_at_epoch:o},u=this.formatObservationDocs(c);_.info("CHROMA_SYNC","Syncing observation",{observationId:e,documentCount:u.length,project:n}),await this.addDocuments(u)}async syncSummary(e,r,n,i,s,o,a=0){let c={id:e,memory_session_id:r,project:n,request:i.request,investigated:i.investigated,learned:i.learned,completed:i.completed,next_steps:i.next_steps,notes:i.notes,prompt_number:s,discovery_tokens:a,created_at:new Date(o*1e3).toISOString(),created_at_epoch:o},u=this.formatSummaryDocs(c);_.info("CHROMA_SYNC","Syncing summary",{summaryId:e,documentCount:u.length,project:n}),await this.addDocuments(u)}formatUserPromptDoc(e){return{id:`prompt_${e.id}`,document:e.prompt_text,metadata:{sqlite_id:e.id,doc_type:"user_prompt",memory_session_id:e.memory_session_id,project:e.project,created_at_epoch:e.created_at_epoch,prompt_number:e.prompt_number}}}async syncUserPrompt(e,r,n,i,s,o){let a={id:e,content_session_id:"",prompt_number:s,prompt_text:i,created_at:new Date(o*1e3).toISOString(),created_at_epoch:o,memory_session_id:r,project:n},c=this.formatUserPromptDoc(a);_.info("CHROMA_SYNC","Syncing user prompt",{promptId:e,project:n}),await this.addDocuments([c])}async getExistingChromaIds(e){let r=e??this.project;await this.ensureCollectionExists();let n=Cs.getInstance(),i=new Set,s=new Set,o=new Set,a=0,c=1e3;for(_.info("CHROMA_SYNC","Fetching existing Chroma document IDs...",{project:r});;){let l=(await n.callTool("chroma_get_documents",{collection_name:this.collectionName,limit:c,offset:a,where:{project:r},include:["metadatas"]}))?.metadatas||[];if(l.length===0)break;for(let d of l)if(d&&d.sqlite_id){let p=d.sqlite_id;d.doc_type==="observation"?i.add(p):d.doc_type==="session_summary"?s.add(p):d.doc_type==="user_prompt"&&o.add(p)}a+=c,_.debug("CHROMA_SYNC","Fetched batch of existing IDs",{project:r,offset:a,batchSize:l.length})}return _.info("CHROMA_SYNC","Existing IDs fetched",{project:r,observations:i.size,summaries:s.size,prompts:o.size}),{observations:i,summaries:s,prompts:o}}async ensureBackfilled(e){let r=e??this.project;_.info("CHROMA_SYNC","Starting smart backfill",{project:r}),await this.ensureCollectionExists();let n=await this.getExistingChromaIds(r),i=new Ps;try{let s=Array.from(n.observations).filter(S=>Number.isInteger(S)&&S>0),o=s.length>0?`AND id NOT IN (${s.join(",")})`:"",a=i.db.prepare(` + SELECT * FROM observations + WHERE project = ? ${o} + ORDER BY id ASC + `).all(r),c=i.db.prepare(` + SELECT COUNT(*) as count FROM observations WHERE project = ? + `).get(r);_.info("CHROMA_SYNC","Backfilling observations",{project:r,missing:a.length,existing:n.observations.size,total:c.count});let u=[];for(let S of a)u.push(...this.formatObservationDocs(S));for(let S=0;SNumber.isInteger(S)&&S>0),d=l.length>0?`AND id NOT IN (${l.join(",")})`:"",p=i.db.prepare(` + SELECT * FROM session_summaries + WHERE project = ? ${d} + ORDER BY id ASC + `).all(r),f=i.db.prepare(` + SELECT COUNT(*) as count FROM session_summaries WHERE project = ? + `).get(r);_.info("CHROMA_SYNC","Backfilling summaries",{project:r,missing:p.length,existing:n.summaries.size,total:f.count});let m=[];for(let S of p)m.push(...this.formatSummaryDocs(S));for(let S=0;SNumber.isInteger(S)&&S>0),g=h.length>0?`AND up.id NOT IN (${h.join(",")})`:"",v=i.db.prepare(` + SELECT + up.*, + s.project, + s.memory_session_id + FROM user_prompts up + JOIN sdk_sessions s ON up.content_session_id = s.content_session_id + WHERE s.project = ? ${g} + ORDER BY up.id ASC + `).all(r),y=i.db.prepare(` + SELECT COUNT(*) as count + FROM user_prompts up + JOIN sdk_sessions s ON up.content_session_id = s.content_session_id + WHERE s.project = ? + `).get(r);_.info("CHROMA_SYNC","Backfilling user prompts",{project:r,missing:v.length,existing:n.prompts.size,total:y.count});let b=[];for(let S of v)b.push(this.formatUserPromptDoc(S));for(let S=0;Ss.trim()).find(s=>s.length>0)||null}catch{return null}}function xee(t={}){let e=t.platform??process.platform,r=t.execPath??process.execPath;if(e!=="win32"||UD(r))return r;let n=t.env??process.env,i=t.homeDirectory??(0,Ck.homedir)(),s=t.pathExists??Ht.existsSync,o=t.lookupInPath??See,a=[n.BUN,n.BUN_PATH,Ki.default.join(i,".bun","bin","bun.exe"),Ki.default.join(i,".bun","bin","bun"),n.USERPROFILE?Ki.default.join(n.USERPROFILE,".bun","bin","bun.exe"):void 0,n.LOCALAPPDATA?Ki.default.join(n.LOCALAPPDATA,"bun","bun.exe"):void 0,n.LOCALAPPDATA?Ki.default.join(n.LOCALAPPDATA,"bun","bin","bun.exe"):void 0];for(let c of a){let u=c?.trim();if(u&&(UD(u)&&s(u)||u.toLowerCase()==="bun"))return u}return o("bun",e)}function qD(t){(0,Ht.mkdirSync)(Pk,{recursive:!0}),(0,Ht.writeFileSync)(As,JSON.stringify(t,null,2))}function Ak(){if(!(0,Ht.existsSync)(As))return null;try{return JSON.parse((0,Ht.readFileSync)(As,"utf-8"))}catch(t){return _.warn("SYSTEM","Failed to parse PID file",{path:As},t),null}}function Xc(){if((0,Ht.existsSync)(As))try{(0,Ht.unlinkSync)(As)}catch(t){_.warn("SYSTEM","Failed to remove PID file",{path:As},t)}}function Ms(t){return process.platform==="win32"?Math.round(t*2):t}function wee(t){if(!t||t.trim()==="")return-1;let e=t.trim(),r=0,n=e.match(/^(\d+)-(\d+):(\d+):(\d+)$/);if(n)return r=parseInt(n[1],10)*24*60+parseInt(n[2],10)*60+parseInt(n[3],10),r;let i=e.match(/^(\d+):(\d+):(\d+)$/);if(i)return r=parseInt(i[1],10)*60+parseInt(i[2],10),r;let s=e.match(/^(\d+):(\d+)$/);return s?parseInt(s[1],10):-1}var Ok=["worker-service.cjs","chroma-mcp"],Eee=["mcp-server.cjs"];async function HD(){let t=process.platform==="win32",e=process.pid,r=[],n=[...Ok,...Eee],i=new Set([e]);process.ppid&&process.ppid>0&&i.add(process.ppid);try{if(t){let o=`powershell -NoProfile -NonInteractive -Command "Get-CimInstance Win32_Process -Filter '(${n.map(d=>`CommandLine LIKE '%${d}%'`).join(" OR ")}) AND ProcessId != ${e}' | Select-Object ProcessId, CommandLine, CreationDate | ConvertTo-Json"`,{stdout:a}=await zD(o,{timeout:Ir.POWERSHELL_COMMAND,windowsHide:!0});if(!a.trim()||a.trim()==="null"){_.debug("SYSTEM","No orphaned claude-mem processes found (Windows)");return}let c=JSON.parse(a),u=Array.isArray(c)?c:[c],l=Date.now();for(let d of u){let p=d.ProcessId;if(!Number.isInteger(p)||p<=0||i.has(p))continue;let f=d.CommandLine||"";if(Ok.some(h=>f.includes(h)))r.push(p),_.debug("SYSTEM","Found orphaned process (aggressive)",{pid:p,commandLine:f.substring(0,80)});else{let h=d.CreationDate?.match(/\/Date\((\d+)\)\//);if(h){let g=parseInt(h[1],10),v=(l-g)/(1e3*60);v>=LD&&(r.push(p),_.debug("SYSTEM","Found orphaned process (age-gated)",{pid:p,ageMinutes:Math.round(v)}))}}}}else{let s=n.join("|"),{stdout:o}=await zD(`ps -eo pid,etime,command | grep -E "${s}" | grep -v grep || true`);if(!o.trim()){_.debug("SYSTEM","No orphaned claude-mem processes found (Unix)");return}let a=o.trim().split(` +`);for(let c of a){let u=c.trim().match(/^(\d+)\s+(\S+)\s+(.*)$/);if(!u)continue;let l=parseInt(u[1],10),d=u[2],p=u[3];if(!Number.isInteger(l)||l<=0||i.has(l))continue;if(Ok.some(m=>p.includes(m)))r.push(l),_.debug("SYSTEM","Found orphaned process (aggressive)",{pid:l,command:p.substring(0,80)});else{let m=wee(d);m>=LD&&(r.push(l),_.debug("SYSTEM","Found orphaned process (age-gated)",{pid:l,ageMinutes:m,command:p.substring(0,80)}))}}}}catch(s){_.error("SYSTEM","Failed to enumerate orphaned processes during aggressive cleanup",{},s);return}if(r.length!==0){if(_.info("SYSTEM","Aggressive startup cleanup: killing orphaned processes",{platform:t?"Windows":"Unix",count:r.length,pids:r}),t){for(let s of r)if(!(!Number.isInteger(s)||s<=0))try{(0,Ns.execSync)(`taskkill /PID ${s} /T /F`,{timeout:Ir.POWERSHELL_COMMAND,stdio:"ignore",windowsHide:!0})}catch(o){_.debug("SYSTEM","Failed to kill process, may have already exited",{pid:s},o)}}else for(let s of r)try{process.kill(s,"SIGKILL")}catch(o){_.debug("SYSTEM","Process already exited",{pid:s},o)}_.info("SYSTEM","Aggressive startup cleanup complete",{count:r.length})}}var kee=".chroma-cleaned-v10.3";function ZD(t){let e=t??Pk,r=Ki.default.join(e,kee),n=Ki.default.join(e,"chroma");if((0,Ht.existsSync)(r)){_.debug("SYSTEM","Chroma migration marker exists, skipping wipe");return}_.warn("SYSTEM","Running one-time chroma data wipe (upgrade from pre-v10.3)",{chromaDir:n}),(0,Ht.existsSync)(n)&&((0,Ht.rmSync)(n,{recursive:!0,force:!0}),_.info("SYSTEM","Chroma data directory removed",{chromaDir:n})),(0,Ht.mkdirSync)(e,{recursive:!0}),(0,Ht.writeFileSync)(r,new Date().toISOString()),_.info("SYSTEM","Chroma migration marker written",{markerPath:r})}function Nk(t,e,r={}){let n=process.platform==="win32";yt().assertCanSpawn("worker daemon");let i=Wi({...process.env,CLAUDE_MEM_WORKER_PORT:String(e),...r});if(n){let a=xee();if(!a){_.error("SYSTEM","Failed to locate Bun runtime for Windows worker spawn");return}let c=`Start-Process -FilePath '${a.replace(/'/g,"''")}' -ArgumentList @('${t.replace(/'/g,"''")}','--daemon') -WindowStyle Hidden`,u=Buffer.from(c,"utf16le").toString("base64");try{return(0,Ns.execSync)(`powershell -NoProfile -EncodedCommand ${u}`,{stdio:"ignore",windowsHide:!0,env:i}),0}catch(l){_.error("SYSTEM","Failed to spawn worker daemon on Windows",{runtimePath:a},l);return}}let s="/usr/bin/setsid";if((0,Ht.existsSync)(s)){let a=(0,Ns.spawn)(s,[process.execPath,t,"--daemon"],{detached:!0,stdio:"ignore",env:i});return a.pid===void 0?void 0:(a.unref(),a.pid)}let o=(0,Ns.spawn)(process.execPath,[t,"--daemon"],{detached:!0,stdio:"ignore",env:i});if(o.pid!==void 0)return o.unref(),o.pid}function BD(t){if(t===0)return!0;if(!Number.isInteger(t)||t<0)return!1;try{return process.kill(t,0),!0}catch(e){return e.code==="EPERM"}}function GD(){try{if(!(0,Ht.existsSync)(As))return;let t=new Date;(0,Ht.utimesSync)(As,t,t)}catch{}}function WD(){return wk({logAlive:!1})}var VD=Pe(require("net"),1);te();It();async function KD(t,e,r="GET"){let n=await fetch(`http://127.0.0.1:${t}${e}`,{method:r}),i="";try{i=await n.text()}catch{}return{ok:n.ok,statusCode:n.status,body:i}}async function mp(t){if(process.platform==="win32")try{return(await fetch(`http://127.0.0.1:${t}/api/health`)).ok}catch{return!1}return new Promise(e=>{let r=VD.default.createServer();r.once("error",n=>{n.code==="EADDRINUSE"?e(!0):e(!1)}),r.once("listening",()=>{r.close(()=>e(!1))}),r.listen(t,"127.0.0.1")})}async function JD(t,e,r,n){let i=Date.now();for(;Date.now()-isetTimeout(s,500))}return!1}function Yc(t,e=3e4){return JD(t,"/api/health",e,"Service not ready yet, will retry")}function Mk(t,e=3e4){return JD(t,"/api/readiness",e,"Worker not ready yet, will retry")}async function Dk(t,e=1e4){let r=Date.now();for(;Date.now()-rsetTimeout(n,500))}return!1}async function jk(t){try{let e=await KD(t,"/api/admin/shutdown","POST");return e.ok?!0:(_.warn("SYSTEM","Shutdown request returned error",{status:e.statusCode}),!1)}catch(e){return e instanceof Error&&e.message?.includes("ECONNREFUSED")?(_.debug("SYSTEM","Worker already stopped",{},e),!1):(_.error("SYSTEM","Shutdown request failed unexpectedly",{},e),!1)}}te();async function XD(t){_.info("SYSTEM","Shutdown initiated"),t.server&&(await Tee(t.server),_.info("SYSTEM","HTTP server closed")),await t.sessionManager.shutdownAll(),t.mcpClient&&(await t.mcpClient.close(),_.info("SYSTEM","MCP client closed")),t.chromaMcpManager&&(_.info("SHUTDOWN","Stopping Chroma MCP connection..."),await t.chromaMcpManager.stop(),_.info("SHUTDOWN","Chroma MCP connection stopped")),t.dbManager&&await t.dbManager.close(),await RD(),_.info("SYSTEM","Worker shutdown complete")}async function Tee(t){t.closeAllConnections(),process.platform==="win32"&&await new Promise(e=>setTimeout(e,500)),await new Promise((e,r)=>{t.close(n=>n?r(n):e())}),process.platform==="win32"&&(await new Promise(e=>setTimeout(e,500)),_.info("SYSTEM","Waited for Windows port cleanup"))}var aF=Pe(Kv(),1),H$=Pe(require("fs"),1),Qp=Pe(require("path"),1);var V6=["search","context","summarize","import","export"],K6=["workflow","search_params","examples","all"];te();var U$=Pe(Kv(),1),tF=Pe(eF(),1),rF=Pe(require("path"),1);It();te();function F$(t){let e=[];e.push(U$.default.json({limit:"50mb"})),e.push((0,tF.default)({origin:(i,s)=>{!i||i.startsWith("http://localhost:")||i.startsWith("http://127.0.0.1:")?s(null,!0):s(new Error("CORS not allowed"))},methods:["GET","HEAD","POST","PUT","PATCH","DELETE"],allowedHeaders:["Content-Type","Authorization","X-Requested-With"],credentials:!1})),e.push((i,s,o)=>{let c=[".html",".js",".css",".svg",".png",".jpg",".jpeg",".webp",".woff",".woff2",".ttf",".eot"].some(m=>i.path.endsWith(m)),u=i.path==="/api/logs";if(i.path.startsWith("/health")||i.path==="/"||c||u)return o();let l=Date.now(),d=`${i.method}-${Date.now()}`,p=t(i.method,i.path,i.body);_.debug("HTTP",`\u2192 ${i.method} ${i.path}`,{requestId:d},p);let f=s.send.bind(s);s.send=function(m){let h=Date.now()-l;return _.debug("HTTP",`\u2190 ${s.statusCode} ${i.path}`,{requestId:d,duration:`${h}ms`}),f(m)},o()});let r=gn(),n=rF.default.join(r,"plugin","ui");return e.push(U$.default.static(n)),e}function Yp(t,e,r){let n=t.ip||t.connection.remoteAddress||"";if(!(n==="127.0.0.1"||n==="::1"||n==="::ffff:127.0.0.1"||n==="localhost")){_.warn("SECURITY","Admin endpoint access denied - not localhost",{endpoint:t.path,clientIp:n,method:t.method}),e.status(403).json({error:"Forbidden",message:"Admin endpoints are only accessible from localhost"});return}r()}function q$(t,e,r){if(!r||Object.keys(r).length===0||e.includes("/init"))return"";if(e.includes("/observations")){let n=r.tool_name||"?",i=r.tool_input;return`tool=${_.formatTool(n,i)}`}return e.includes("/summarize")?"requesting summary":""}te();var Sn=class extends Error{constructor(r,n=500,i,s){super(r);this.statusCode=n;this.code=i;this.details=s;this.name="AppError"}};function nF(t,e,r,n){let i={error:t,message:e};return r&&(i.code=r),n&&(i.details=n),i}var iF=(t,e,r,n)=>{let i=t instanceof Sn?t.statusCode:500;_.error("HTTP",`Error handling ${e.method} ${e.path}`,{statusCode:i,error:t.message,code:t instanceof Sn?t.code:void 0},t);let s=nF(t.name||"Error",t.message,t instanceof Sn?t.code:void 0,t instanceof Sn?t.details:void 0);r.status(i).json(s)};function sF(t,e){e.status(404).json(nF("NotFound",`Cannot ${t.method} ${t.path}`))}var oF="11.0.1",Jv=class{app;server=null;options;startTime=Date.now();constructor(e){this.options=e,this.app=(0,aF.default)(),this.setupMiddleware(),this.setupCoreRoutes()}getHttpServer(){return this.server}async listen(e,r){return new Promise((n,i)=>{this.server=this.app.listen(e,r,()=>{_.info("SYSTEM","HTTP server started",{host:r,port:e,pid:process.pid}),n()}),this.server.on("error",i)})}async close(){this.server&&(this.server.closeAllConnections(),process.platform==="win32"&&await new Promise(e=>setTimeout(e,500)),await new Promise((e,r)=>{this.server.close(n=>n?r(n):e())}),process.platform==="win32"&&await new Promise(e=>setTimeout(e,500)),this.server=null,_.info("SYSTEM","HTTP server closed"))}registerRoutes(e){e.setupRoutes(this.app)}finalizeRoutes(){this.app.use(sF),this.app.use(iF)}setupMiddleware(){F$(q$).forEach(r=>this.app.use(r))}setupCoreRoutes(){this.app.get("/api/health",(e,r)=>{r.status(200).json({status:"ok",version:oF,workerPath:this.options.workerPath,uptime:Date.now()-this.startTime,managed:process.env.CLAUDE_MEM_MANAGED==="true",hasIpc:typeof process.send=="function",platform:process.platform,pid:process.pid,initialized:this.options.getInitializationComplete(),mcpReady:this.options.getMcpReady(),ai:this.options.getAiStatus()})}),this.app.get("/api/readiness",(e,r)=>{this.options.getInitializationComplete()?r.status(200).json({status:"ready",mcpReady:this.options.getMcpReady()}):r.status(503).json({status:"initializing",message:"Worker is still initializing, please retry"})}),this.app.get("/api/version",(e,r)=>{r.status(200).json({version:oF})}),this.app.get("/api/instructions",async(e,r)=>{let n=e.query.topic||"all",i=e.query.operation;if(n&&!K6.includes(n))return r.status(400).json({error:"Invalid topic"});try{let s;if(i){if(!V6.includes(i))return r.status(400).json({error:"Invalid operation"});let o=Qp.default.resolve(__dirname,"../skills/mem-search/operations"),a=Qp.default.resolve(o,`${i}.md`);if(!a.startsWith(o+Qp.default.sep))return r.status(400).json({error:"Invalid request"});s=await H$.promises.readFile(a,"utf-8")}else{let o=Qp.default.join(__dirname,"../skills/mem-search/SKILL.md"),a=await H$.promises.readFile(o,"utf-8");s=this.extractInstructionSection(a,n)}r.json({content:[{type:"text",text:s}]})}catch{r.status(404).json({error:"Instruction not found"})}}),this.app.post("/api/admin/restart",Yp,async(e,r)=>{r.json({status:"restarting"}),process.platform==="win32"&&process.env.CLAUDE_MEM_MANAGED==="true"&&process.send?(_.info("SYSTEM","Sending restart request to wrapper"),process.send({type:"restart"})):setTimeout(async()=>{try{await this.options.onRestart()}finally{process.exit(0)}},100)}),this.app.post("/api/admin/shutdown",Yp,async(e,r)=>{r.json({status:"shutting_down"}),process.platform==="win32"&&process.env.CLAUDE_MEM_MANAGED==="true"&&process.send?(_.info("SYSTEM","Sending shutdown request to wrapper"),process.send({type:"shutdown"})):setTimeout(async()=>{try{await this.options.onShutdown()}finally{process.exit(0)}},100)}),this.app.get("/api/admin/doctor",Yp,(e,r)=>{let o=yt().getRegistry().getAll().map(m=>({id:m.id,pid:m.pid,type:m.type,status:An(m.pid)?"alive":"dead",startedAt:m.startedAt})),a=o.filter(m=>m.status==="dead").map(m=>m.pid),c=!Object.keys(process.env).some(m=>vk.has(m)||gk.some(h=>m.startsWith(h))),u=Date.now()-this.startTime,l=Math.floor(u/1e3),d=Math.floor(l/3600),p=Math.floor(l%3600/60),f=d>0?`${d}h ${p}m`:`${p}m`;r.json({supervisor:{running:!0,pid:process.pid,uptime:f},processes:o,health:{deadProcessPids:a,envClean:c}})})}extractInstructionSection(e,r){let n={workflow:this.extractBetween(e,"## The Workflow","## Search Parameters"),search_params:this.extractBetween(e,"## Search Parameters","## Examples"),examples:this.extractBetween(e,"## Examples","## Why This Workflow"),all:e};return n[r]||n.all}extractBetween(e,r,n){let i=e.indexOf(r),s=e.indexOf(n);return i===-1?e:s===-1?e.substring(i):e.substring(i,s).trim()}};var Ct=Pe(require("path"),1),tf=require("os"),Jt=require("fs"),lF=require("child_process"),dF=require("util");te();fr();It();var ti=require("fs"),ef=require("path");te();function cF(t){try{return(0,ti.existsSync)(t)?JSON.parse((0,ti.readFileSync)(t,"utf-8")):{}}catch(e){return _.error("CONFIG","Failed to read Cursor registry, using empty registry",{file:t,error:e instanceof Error?e.message:String(e)}),{}}}function uF(t,e){let r=(0,ef.join)(t,"..");(0,ti.mkdirSync)(r,{recursive:!0}),(0,ti.writeFileSync)(t,JSON.stringify(e,null,2))}function Z$(t,e){let r=(0,ef.join)(t,".cursor","rules"),n=(0,ef.join)(r,"claude-mem-context.mdc"),i=`${n}.tmp`;(0,ti.mkdirSync)(r,{recursive:!0});let s=`--- +alwaysApply: true +description: "Claude-mem context from past sessions (auto-updated)" +--- + +# Memory Context from Past Sessions + +The following context is from claude-mem, a persistent memory system that tracks your coding sessions. + +${e} + +--- +*Updated after last session. Use claude-mem's MCP search tools for more detailed queries.* +`;(0,ti.writeFileSync)(i,s),(0,ti.renameSync)(i,n)}var _je=(0,dF.promisify)(lF.exec),pF=Ct.default.join(pr,"cursor-projects.json");function B$(){return cF(pF)}function fF(t){uF(pF,t)}function Tle(t,e){let r=B$();r[t]={workspacePath:e,installedAt:new Date().toISOString()},fF(r),_.info("CURSOR","Registered project for auto-context updates",{projectName:t,workspacePath:e})}function $le(t){let e=B$();e[t]&&(delete e[t],fF(e),_.info("CURSOR","Unregistered project",{projectName:t}))}async function mF(t,e){let n=B$()[t];if(n)try{let i=await Qe(`/api/context/inject?project=${encodeURIComponent(t)}`);if(!i.ok)return;let s=await i.text();if(!s||!s.trim())return;Z$(n.workspacePath,s),_.debug("CURSOR","Updated context file",{projectName:t,workspacePath:n.workspacePath})}catch(i){_.error("CURSOR","Failed to update context file",{projectName:t},i)}}function G$(){let t=[Ct.default.join(Eo,"plugin","scripts","worker-service.cjs"),Ct.default.join(process.cwd(),"plugin","scripts","worker-service.cjs")];for(let e of t)if((0,Jt.existsSync)(e))return e;return null}function W$(){let t=[Ct.default.join((0,tf.homedir)(),".bun","bin","bun"),"/usr/local/bin/bun","/usr/bin/bun",...process.platform==="win32"?[Ct.default.join((0,tf.homedir)(),".bun","bin","bun.exe"),Ct.default.join(process.env.LOCALAPPDATA||"","bun","bun.exe")]:[]];for(let e of t)if(e&&(0,Jt.existsSync)(e))return e;return"bun"}function hF(t){switch(t){case"project":return Ct.default.join(process.cwd(),".cursor");case"user":return Ct.default.join((0,tf.homedir)(),".cursor");case"enterprise":return process.platform==="darwin"?"/Library/Application Support/Cursor":process.platform==="linux"?"/etc/cursor":process.platform==="win32"?Ct.default.join(process.env.ProgramData||"C:\\ProgramData","Cursor"):null;default:return null}}async function Ile(t){console.log(` +Installing Claude-Mem Cursor hooks (${t} level)... +`);let e=hF(t);if(!e)return console.error(`Invalid target: ${t}. Use: project, user, or enterprise`),1;let r=G$();if(!r)return console.error("Could not find worker-service.cjs"),console.error(" Expected at: ~/.claude/plugins/marketplaces/thedotmack/plugin/scripts/worker-service.cjs"),1;let n=process.cwd();try{(0,Jt.mkdirSync)(e,{recursive:!0});let i=Ct.default.join(e,"hooks.json"),s=W$(),o=s.replace(/\\/g,"\\\\"),a=r.replace(/\\/g,"\\\\"),c=l=>`"${o}" "${a}" hook cursor ${l}`;console.log(` Using Bun runtime: ${s}`);let u={version:1,hooks:{beforeSubmitPrompt:[{command:c("session-init")},{command:c("context")}],afterMCPExecution:[{command:c("observation")}],afterShellExecution:[{command:c("observation")}],afterFileEdit:[{command:c("file-edit")}],stop:[{command:c("summarize")}]}};return(0,Jt.writeFileSync)(i,JSON.stringify(u,null,2)),console.log(" Created hooks.json (unified CLI mode)"),console.log(` Worker service: ${r}`),t==="project"&&await Rle(e,n),console.log(` +Installation complete! + +Hooks installed to: ${e}/hooks.json +Using unified CLI: bun worker-service.cjs hook cursor + +Next steps: + 1. Start claude-mem worker: claude-mem start + 2. Restart Cursor to load the hooks + 3. Check Cursor Settings \u2192 Hooks tab to verify + +Context Injection: + Context from past sessions is stored in .cursor/rules/claude-mem-context.mdc + and automatically included in every chat. It updates after each session ends. +`),0}catch(i){return console.error(` +Installation failed: ${i.message}`),t==="enterprise"&&console.error(" Tip: Enterprise installation may require sudo/admin privileges"),1}}async function Rle(t,e){let r=Ct.default.join(t,"rules");(0,Jt.mkdirSync)(r,{recursive:!0});let n=Ct.default.basename(e),i=!1;console.log(" Generating initial context...");try{if((await Qe("/api/readiness")).ok){let o=await Qe(`/api/context/inject?project=${encodeURIComponent(n)}`);if(o.ok){let a=await o.text();a&&a.trim()&&(Z$(e,a),i=!0,console.log(" Generated initial context from existing memory"))}}}catch(s){_.debug("CURSOR","Worker not running during install",{},s)}if(!i){let s=Ct.default.join(r,"claude-mem-context.mdc");(0,Jt.writeFileSync)(s,`--- +alwaysApply: true +description: "Claude-mem context from past sessions (auto-updated)" +--- + +# Memory Context from Past Sessions + +*No context yet. Complete your first session and context will appear here.* + +Use claude-mem's MCP search tools for manual memory queries. +`),console.log(" Created placeholder context file (will populate after first session)")}Tle(n,e),console.log(" Registered for auto-context updates")}function Ole(t){console.log(` +Uninstalling Claude-Mem Cursor hooks (${t} level)... +`);let e=hF(t);if(!e)return console.error(`Invalid target: ${t}`),1;try{let r=Ct.default.join(e,"hooks"),n=Ct.default.join(e,"hooks.json"),i=["common.sh","session-init.sh","context-inject.sh","save-observation.sh","save-file-edit.sh","session-summary.sh"],s=["common.ps1","session-init.ps1","context-inject.ps1","save-observation.ps1","save-file-edit.ps1","session-summary.ps1"],o=[...i,...s];for(let a of o){let c=Ct.default.join(r,a);(0,Jt.existsSync)(c)&&((0,Jt.unlinkSync)(c),console.log(` Removed legacy script: ${a}`))}if((0,Jt.existsSync)(n)&&((0,Jt.unlinkSync)(n),console.log(" Removed hooks.json")),t==="project"){let a=Ct.default.join(e,"rules","claude-mem-context.mdc");(0,Jt.existsSync)(a)&&((0,Jt.unlinkSync)(a),console.log(" Removed context file"));let c=Ct.default.basename(process.cwd());$le(c),console.log(" Unregistered from auto-context updates")}return console.log(` +Uninstallation complete! +`),console.log("Restart Cursor to apply changes."),0}catch(r){return console.error(` +Uninstallation failed: ${r.message}`),1}}function Cle(){console.log(` +Claude-Mem Cursor Hooks Status +`);let t=[{name:"Project",dir:Ct.default.join(process.cwd(),".cursor")},{name:"User",dir:Ct.default.join((0,tf.homedir)(),".cursor")}];process.platform==="darwin"?t.push({name:"Enterprise",dir:"/Library/Application Support/Cursor"}):process.platform==="linux"&&t.push({name:"Enterprise",dir:"/etc/cursor"});let e=!1;for(let r of t){let n=Ct.default.join(r.dir,"hooks.json"),i=Ct.default.join(r.dir,"hooks");if((0,Jt.existsSync)(n)){e=!0,console.log(`${r.name}: Installed`),console.log(` Config: ${n}`);try{let o=JSON.parse((0,Jt.readFileSync)(n,"utf-8"))?.hooks?.beforeSubmitPrompt?.[0]?.command||"";if(o.includes("worker-service.cjs")&&o.includes("hook cursor"))console.log(" Mode: Unified CLI (bun worker-service.cjs)");else{let a=["session-init.sh","context-inject.sh","save-observation.sh"],c=["session-init.ps1","context-inject.ps1","save-observation.ps1"],u=a.some(d=>(0,Jt.existsSync)(Ct.default.join(i,d))),l=c.some(d=>(0,Jt.existsSync)(Ct.default.join(i,d)));u||l?(console.log(" Mode: Legacy shell scripts (consider reinstalling for unified CLI)"),u&&l?console.log(" Platform: Both (bash + PowerShell)"):u?console.log(" Platform: Unix (bash)"):l&&console.log(" Platform: Windows (PowerShell)")):console.log(" Mode: Unknown configuration")}}catch{console.log(" Mode: Unable to parse hooks.json")}if(r.name==="Project"){let s=Ct.default.join(r.dir,"rules","claude-mem-context.mdc");(0,Jt.existsSync)(s)?console.log(" Context: Active"):console.log(" Context: Not yet generated (will be created on first prompt)")}}else console.log(`${r.name}: Not installed`);console.log("")}return e||console.log(`No hooks installed. Run: claude-mem cursor install +`),0}async function gF(t,e){switch(t){case"install":{let r=e[0]||"project";return Ile(r)}case"uninstall":{let r=e[0]||"project";return Ole(r)}case"status":return Cle();case"setup":return console.log("Use the main entry point for setup"),0;default:return console.log(` +Claude-Mem Cursor Integration + +Usage: claude-mem cursor [options] + +Commands: + setup Interactive guided setup (recommended for first-time users) + + install [target] Install Cursor hooks + target: project (default), user, or enterprise + + uninstall [target] Remove Cursor hooks + target: project (default), user, or enterprise + + status Check installation status + +Examples: + npm run cursor:setup # Interactive wizard (recommended) + npm run cursor:install # Install for current project + claude-mem cursor install user # Install globally for user + claude-mem cursor uninstall # Remove from current project + claude-mem cursor status # Check if hooks are installed + +For more info: https://docs.claude-mem.ai/cursor + `),0}}var Xv=Pe(require("path"),1),vF=require("os"),ar=require("fs");var Yv=Xv.default.join((0,vF.homedir)(),".gemini"),xi=Xv.default.join(Yv,"settings.json"),Si=Xv.default.join(Yv,"GEMINI.md"),rf="claude-mem",Ple=1e4,Tu={SessionStart:"context",BeforeAgent:"user-message",AfterAgent:"observation",BeforeTool:"observation",AfterTool:"observation",PreCompress:"summarize",Notification:"observation",SessionEnd:"session-complete"};function Ale(t,e,r){let n=Tu[r];if(!n)throw new Error(`Unknown Gemini CLI event: ${r}`);let i=t.replace(/\\/g,"\\\\"),s=e.replace(/\\/g,"\\\\");return`"${i}" "${s}" hook gemini-cli ${n}`}function Nle(t){return{matcher:"*",hooks:[{name:rf,type:"command",command:t,timeout:Ple}]}}function V$(){if(!(0,ar.existsSync)(xi))return{};let t=(0,ar.readFileSync)(xi,"utf-8");try{return JSON.parse(t)}catch{throw new Error(`Corrupt JSON in ${xi}, refusing to overwrite user settings`)}}function yF(t){(0,ar.mkdirSync)(Yv,{recursive:!0}),(0,ar.writeFileSync)(xi,JSON.stringify(t,null,2)+` +`)}function Mle(t,e){let r={...t};r.hooks||(r.hooks={});for(let[n,i]of Object.entries(e)){let s=r.hooks[n]??[];for(let o of i){let a=s.findIndex(c=>c.hooks.some(u=>u.name===rf));if(a>=0){let c=s[a],u=c.hooks.findIndex(l=>l.name===rf);u>=0?c.hooks[u]=o.hooks[0]:c.hooks.push(o.hooks[0])}else s.push(o)}r.hooks[n]=s}return r}function Dle(){let t="",r=`${t} +# Memory Context from Past Sessions + +*No context yet. Complete your first session and context will appear here.* +`,n="";if((0,ar.existsSync)(Si)&&(n=(0,ar.readFileSync)(Si,"utf-8")),n.includes(t))return;let i=n.length>0&&!n.endsWith(` +`)?` + +`:n.length>0?` +`:"",s=n+i+r+` +`;(0,ar.mkdirSync)(Yv,{recursive:!0}),(0,ar.writeFileSync)(Si,s)}async function jle(){console.log(` +Installing Claude-Mem Gemini CLI hooks... +`);let t=G$();if(!t)return console.error("Could not find worker-service.cjs"),console.error(" Expected at: ~/.claude/plugins/marketplaces/thedotmack/plugin/scripts/worker-service.cjs"),1;let e=W$();console.log(` Using Bun runtime: ${e}`),console.log(` Worker service: ${t}`);try{let r={};for(let o of Object.keys(Tu)){let a=Ale(e,t,o);r[o]=[Nle(a)]}let n=V$(),i=Mle(n,r);yF(i),console.log(` Merged hooks into ${xi}`),Dle(),console.log(` Setup context injection in ${Si}`);let s=Object.keys(Tu);console.log(` Registered ${s.length} hook events:`);for(let o of s){let a=Tu[o];console.log(` ${o} \u2192 ${a}`)}return console.log(` +Installation complete! + +Hooks installed to: ${xi} +Using unified CLI: bun worker-service.cjs hook gemini-cli + +Next steps: + 1. Start claude-mem worker: claude-mem start + 2. Restart Gemini CLI to load the hooks + 3. Memory will be captured automatically during sessions + +Context Injection: + Context from past sessions is injected via ~/.gemini/GEMINI.md + and automatically included in Gemini CLI conversations. +`),0}catch(r){return console.error(` +Installation failed: ${r.message}`),1}}function zle(){console.log(` +Uninstalling Claude-Mem Gemini CLI hooks... +`);try{if(!(0,ar.existsSync)(xi))return console.log(" No Gemini CLI settings found \u2014 nothing to uninstall."),0;let t=V$();if(!t.hooks)return console.log(" No hooks found in Gemini CLI settings \u2014 nothing to uninstall."),0;let e=0;for(let[r,n]of Object.entries(t.hooks)){let i=n.map(s=>{let o=s.hooks.filter(a=>a.name!==rf);return e+=s.hooks.length-o.length,{...s,hooks:o}}).filter(s=>s.hooks.length>0);i.length>0?t.hooks[r]=i:delete t.hooks[r]}if(Object.keys(t.hooks).length===0&&delete t.hooks,yF(t),console.log(` Removed ${e} claude-mem hook(s) from ${xi}`),(0,ar.existsSync)(Si)){let r=(0,ar.readFileSync)(Si,"utf-8"),n=/\n?[\s\S]*?<\/claude-mem-context>\n?/;n.test(r)&&(r=r.replace(n,""),(0,ar.writeFileSync)(Si,r),console.log(` Removed context section from ${Si}`))}return console.log(` +Uninstallation complete! +`),console.log("Restart Gemini CLI to apply changes."),0}catch(t){return console.error(` +Uninstallation failed: ${t.message}`),1}}function Lle(){if(console.log(` +Claude-Mem Gemini CLI Hooks Status +`),!(0,ar.existsSync)(xi))return console.log("Gemini CLI settings: Not found"),console.log(` Expected at: ${xi} +`),console.log(`No hooks installed. Run: claude-mem install --ide gemini-cli +`),0;let t;try{t=V$()}catch(r){return console.log(`Gemini CLI settings: ${r.message} +`),0}if(!t.hooks)return console.log(`Gemini CLI settings: Found, but no hooks configured +`),console.log(`No hooks installed. Run: claude-mem install --ide gemini-cli +`),0;let e=[];for(let[r,n]of Object.entries(t.hooks))n.some(s=>s.hooks.some(o=>o.name===rf))&&e.push(r);if(e.length===0)return console.log(`Gemini CLI settings: Found, but no claude-mem hooks +`),console.log(`Run: claude-mem install --ide gemini-cli +`),0;console.log(`Settings: ${xi}`),console.log("Mode: Unified CLI (bun worker-service.cjs hook gemini-cli)"),console.log(`Events: ${e.length} of ${Object.keys(Tu).length} mapped`);for(let r of e){let n=Tu[r]??"unknown";console.log(` ${r} \u2192 ${n}`)}return(0,ar.existsSync)(Si)?(0,ar.readFileSync)(Si,"utf-8").includes("")?console.log(`Context: Active (${Si})`):console.log("Context: GEMINI.md exists but missing claude-mem section"):console.log("Context: No GEMINI.md found"),console.log(""),0}async function _F(t,e){switch(t){case"install":return jle();case"uninstall":return zle();case"status":return Lle();default:return console.log(` +Claude-Mem Gemini CLI Integration + +Usage: claude-mem gemini-cli + +Commands: + install Install hooks into ~/.gemini/settings.json + uninstall Remove claude-mem hooks (preserves other hooks) + status Check installation status + +Examples: + claude-mem gemini-cli install # Install hooks + claude-mem gemini-cli status # Check if installed + claude-mem gemini-cli uninstall # Remove hooks + +For more info: https://docs.claude-mem.ai/usage/gemini-provider + `),0}}Fg();var SF=require("bun:sqlite");It();te();K$();var Qv=class t{db;static MISSING_SEARCH_INPUT_MESSAGE="Either query or filters required for search";constructor(e){e||(Lr(pr),e=up),this.db=new SF.Database(e),this.db.run("PRAGMA journal_mode = WAL"),this.ensureFTSTables()}ensureFTSTables(){if(!this.db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name LIKE '%_fts'").all().some(n=>n.name==="observations_fts"||n.name==="session_summaries_fts")){if(!this.isFts5Available()){_.warn("DB","FTS5 not available on this platform \u2014 skipping FTS table creation (search uses ChromaDB)");return}_.info("DB","Creating FTS5 tables");try{this.db.run(` + CREATE VIRTUAL TABLE IF NOT EXISTS observations_fts USING fts5( + title, + subtitle, + narrative, + text, + facts, + concepts, + content='observations', + content_rowid='id' + ); + `),this.db.run(` + INSERT INTO observations_fts(rowid, title, subtitle, narrative, text, facts, concepts) + SELECT id, title, subtitle, narrative, text, facts, concepts + FROM observations; + `),this.db.run(` + CREATE TRIGGER IF NOT EXISTS observations_ai AFTER INSERT ON observations BEGIN + INSERT INTO observations_fts(rowid, title, subtitle, narrative, text, facts, concepts) + VALUES (new.id, new.title, new.subtitle, new.narrative, new.text, new.facts, new.concepts); + END; + + CREATE TRIGGER IF NOT EXISTS observations_ad AFTER DELETE ON observations BEGIN + INSERT INTO observations_fts(observations_fts, rowid, title, subtitle, narrative, text, facts, concepts) + VALUES('delete', old.id, old.title, old.subtitle, old.narrative, old.text, old.facts, old.concepts); + END; + + CREATE TRIGGER IF NOT EXISTS observations_au AFTER UPDATE ON observations BEGIN + INSERT INTO observations_fts(observations_fts, rowid, title, subtitle, narrative, text, facts, concepts) + VALUES('delete', old.id, old.title, old.subtitle, old.narrative, old.text, old.facts, old.concepts); + INSERT INTO observations_fts(rowid, title, subtitle, narrative, text, facts, concepts) + VALUES (new.id, new.title, new.subtitle, new.narrative, new.text, new.facts, new.concepts); + END; + `),this.db.run(` + CREATE VIRTUAL TABLE IF NOT EXISTS session_summaries_fts USING fts5( + request, + investigated, + learned, + completed, + next_steps, + notes, + content='session_summaries', + content_rowid='id' + ); + `),this.db.run(` + INSERT INTO session_summaries_fts(rowid, request, investigated, learned, completed, next_steps, notes) + SELECT id, request, investigated, learned, completed, next_steps, notes + FROM session_summaries; + `),this.db.run(` + CREATE TRIGGER IF NOT EXISTS session_summaries_ai AFTER INSERT ON session_summaries BEGIN + INSERT INTO session_summaries_fts(rowid, request, investigated, learned, completed, next_steps, notes) + VALUES (new.id, new.request, new.investigated, new.learned, new.completed, new.next_steps, new.notes); + END; + + CREATE TRIGGER IF NOT EXISTS session_summaries_ad AFTER DELETE ON session_summaries BEGIN + INSERT INTO session_summaries_fts(session_summaries_fts, rowid, request, investigated, learned, completed, next_steps, notes) + VALUES('delete', old.id, old.request, old.investigated, old.learned, old.completed, old.next_steps, old.notes); + END; + + CREATE TRIGGER IF NOT EXISTS session_summaries_au AFTER UPDATE ON session_summaries BEGIN + INSERT INTO session_summaries_fts(session_summaries_fts, rowid, request, investigated, learned, completed, next_steps, notes) + VALUES('delete', old.id, old.request, old.investigated, old.learned, old.completed, old.next_steps, old.notes); + INSERT INTO session_summaries_fts(rowid, request, investigated, learned, completed, next_steps, notes) + VALUES (new.id, new.request, new.investigated, new.learned, new.completed, new.next_steps, new.notes); + END; + `),_.info("DB","FTS5 tables created successfully")}catch(n){_.warn("DB","FTS5 table creation failed \u2014 search will use ChromaDB and LIKE queries",{},n)}}}isFts5Available(){try{return this.db.run("CREATE VIRTUAL TABLE _fts5_probe USING fts5(test_column)"),this.db.run("DROP TABLE _fts5_probe"),!0}catch{return!1}}buildFilterClause(e,r,n="o"){let i=[];if(e.project&&(i.push(`${n}.project = ?`),r.push(e.project)),e.type)if(Array.isArray(e.type)){let s=e.type.map(()=>"?").join(",");i.push(`${n}.type IN (${s})`),r.push(...e.type)}else i.push(`${n}.type = ?`),r.push(e.type);if(e.dateRange){let{start:s,end:o}=e.dateRange;if(s){let a=typeof s=="number"?s:new Date(s).getTime();i.push(`${n}.created_at_epoch >= ?`),r.push(a)}if(o){let a=typeof o=="number"?o:new Date(o).getTime();i.push(`${n}.created_at_epoch <= ?`),r.push(a)}}if(e.concepts){let s=Array.isArray(e.concepts)?e.concepts:[e.concepts],o=s.map(()=>`EXISTS (SELECT 1 FROM json_each(${n}.concepts) WHERE value = ?)`);o.length>0&&(i.push(`(${o.join(" OR ")})`),r.push(...s))}if(e.files){let s=Array.isArray(e.files)?e.files:[e.files],o=s.map(()=>`( + EXISTS (SELECT 1 FROM json_each(${n}.files_read) WHERE value LIKE ?) + OR EXISTS (SELECT 1 FROM json_each(${n}.files_modified) WHERE value LIKE ?) + )`);o.length>0&&(i.push(`(${o.join(" OR ")})`),s.forEach(a=>{r.push(`%${a}%`,`%${a}%`)}))}return i.length>0?i.join(" AND "):""}buildOrderClause(e="relevance",r=!0,n="observations_fts"){switch(e){case"relevance":return r?`ORDER BY ${n}.rank ASC`:"ORDER BY o.created_at_epoch DESC";case"date_desc":return"ORDER BY o.created_at_epoch DESC";case"date_asc":return"ORDER BY o.created_at_epoch ASC";default:return"ORDER BY o.created_at_epoch DESC"}}searchObservations(e,r={}){let n=[],{limit:i=50,offset:s=0,orderBy:o="relevance",...a}=r;if(!e){let c=this.buildFilterClause(a,n,"o");if(!c)throw new Sn(t.MISSING_SEARCH_INPUT_MESSAGE,400,"INVALID_SEARCH_REQUEST");let u=this.buildOrderClause(o,!1),l=` + SELECT o.*, o.discovery_tokens + FROM observations o + WHERE ${c} + ${u} + LIMIT ? OFFSET ? + `;return n.push(i,s),this.db.prepare(l).all(...n)}return _.warn("DB","Text search not supported - use ChromaDB for vector search"),[]}searchSessions(e,r={}){let n=[],{limit:i=50,offset:s=0,orderBy:o="relevance",...a}=r;if(!e){let c={...a};delete c.type;let u=this.buildFilterClause(c,n,"s");if(!u)throw new Sn(t.MISSING_SEARCH_INPUT_MESSAGE,400,"INVALID_SEARCH_REQUEST");let d=` + SELECT s.*, s.discovery_tokens + FROM session_summaries s + WHERE ${u} + ${o==="date_asc"?"ORDER BY s.created_at_epoch ASC":"ORDER BY s.created_at_epoch DESC"} + LIMIT ? OFFSET ? + `;return n.push(i,s),this.db.prepare(d).all(...n)}return _.warn("DB","Text search not supported - use ChromaDB for vector search"),[]}findByConcept(e,r={}){let n=[],{limit:i=50,offset:s=0,orderBy:o="date_desc",...a}=r,c={...a,concepts:e},u=this.buildFilterClause(c,n,"o"),l=this.buildOrderClause(o,!1),d=` + SELECT o.*, o.discovery_tokens + FROM observations o + WHERE ${u} + ${l} + LIMIT ? OFFSET ? + `;return n.push(i,s),this.db.prepare(d).all(...n)}hasDirectChildFile(e,r){let n=i=>{if(!i)return!1;try{let s=JSON.parse(i);if(Array.isArray(s))return s.some(o=>Ra(o,r))}catch{}return!1};return n(e.files_modified)||n(e.files_read)}hasDirectChildFileSession(e,r){let n=i=>{if(!i)return!1;try{let s=JSON.parse(i);if(Array.isArray(s))return s.some(o=>Ra(o,r))}catch{}return!1};return n(e.files_read)||n(e.files_edited)}findByFile(e,r={}){let n=[],{limit:i=50,offset:s=0,orderBy:o="date_desc",isFolder:a=!1,...c}=r,u=a?i*3:i,l={...c,files:e},d=this.buildFilterClause(l,n,"o"),p=this.buildOrderClause(o,!1),f=` + SELECT o.*, o.discovery_tokens + FROM observations o + WHERE ${d} + ${p} + LIMIT ? OFFSET ? + `;n.push(u,s);let m=this.db.prepare(f).all(...n);a&&(m=m.filter(S=>this.hasDirectChildFile(S,e)).slice(0,i));let h=[],g={...c};delete g.type;let v=[];if(g.project&&(v.push("s.project = ?"),h.push(g.project)),g.dateRange){let{start:S,end:x}=g.dateRange;if(S){let w=typeof S=="number"?S:new Date(S).getTime();v.push("s.created_at_epoch >= ?"),h.push(w)}if(x){let w=typeof x=="number"?x:new Date(x).getTime();v.push("s.created_at_epoch <= ?"),h.push(w)}}v.push(`( + EXISTS (SELECT 1 FROM json_each(s.files_read) WHERE value LIKE ?) + OR EXISTS (SELECT 1 FROM json_each(s.files_edited) WHERE value LIKE ?) + )`),h.push(`%${e}%`,`%${e}%`);let y=` + SELECT s.*, s.discovery_tokens + FROM session_summaries s + WHERE ${v.join(" AND ")} + ORDER BY s.created_at_epoch DESC + LIMIT ? OFFSET ? + `;h.push(u,s);let b=this.db.prepare(y).all(...h);return a&&(b=b.filter(S=>this.hasDirectChildFileSession(S,e)).slice(0,i)),{observations:m,sessions:b}}findByType(e,r={}){let n=[],{limit:i=50,offset:s=0,orderBy:o="date_desc",...a}=r,c={...a,type:e},u=this.buildFilterClause(c,n,"o"),l=this.buildOrderClause(o,!1),d=` + SELECT o.*, o.discovery_tokens + FROM observations o + WHERE ${u} + ${l} + LIMIT ? OFFSET ? + `;return n.push(i,s),this.db.prepare(d).all(...n)}searchUserPrompts(e,r={}){let n=[],{limit:i=20,offset:s=0,orderBy:o="relevance",...a}=r,c=[];if(a.project&&(c.push("s.project = ?"),n.push(a.project)),a.dateRange){let{start:u,end:l}=a.dateRange;if(u){let d=typeof u=="number"?u:new Date(u).getTime();c.push("up.created_at_epoch >= ?"),n.push(d)}if(l){let d=typeof l=="number"?l:new Date(l).getTime();c.push("up.created_at_epoch <= ?"),n.push(d)}}if(!e){if(c.length===0)throw new Sn(t.MISSING_SEARCH_INPUT_MESSAGE,400,"INVALID_SEARCH_REQUEST");let d=` + SELECT up.* + FROM user_prompts up + JOIN sdk_sessions s ON up.content_session_id = s.content_session_id + ${`WHERE ${c.join(" AND ")}`} + ${o==="date_asc"?"ORDER BY up.created_at_epoch ASC":"ORDER BY up.created_at_epoch DESC"} + LIMIT ? OFFSET ? + `;return n.push(i,s),this.db.prepare(d).all(...n)}return _.warn("DB","Text search not supported - use ChromaDB for vector search"),[]}getUserPromptsBySession(e){return this.db.prepare(` + SELECT + id, + content_session_id, + prompt_number, + prompt_text, + created_at, + created_at_epoch + FROM user_prompts + WHERE content_session_id = ? + ORDER BY prompt_number ASC + `).all(e)}close(){this.db.close()}};tr();It();te();var ey=class{sessionStore=null;sessionSearch=null;chromaSync=null;async initialize(){this.sessionStore=new Ps,this.sessionSearch=new Qv,ye.loadFromFile(vt).CLAUDE_MEM_CHROMA_ENABLED!=="false"?this.chromaSync=new Jc("claude-mem"):_.info("DB","Chroma disabled via CLAUDE_MEM_CHROMA_ENABLED=false, using SQLite-only search"),_.info("DB","Database initialized")}async close(){this.chromaSync&&(await this.chromaSync.close(),this.chromaSync=null),this.sessionStore&&(this.sessionStore.close(),this.sessionStore=null),this.sessionSearch&&(this.sessionSearch.close(),this.sessionSearch=null),_.info("DB","Database closed")}getSessionStore(){if(!this.sessionStore)throw new Error("Database not initialized");return this.sessionStore}getSessionSearch(){if(!this.sessionSearch)throw new Error("Database not initialized");return this.sessionSearch}getChromaSync(){return this.chromaSync}getSessionById(e){let r=this.getSessionStore().getSessionById(e);if(!r)throw new Error(`Session ${e} not found`);return r}};var OF=require("events");te();Oa();te();var ty=180*1e3,ry=class{constructor(e,r){this.store=e;this.events=r}async*createIterator(e){let{sessionDbId:r,signal:n,onIdleTimeout:i}=e,s=Date.now();for(;!n.aborted;)try{let o=this.store.claimNextMessage(r);if(o)s=Date.now(),yield this.toPendingMessageWithId(o);else if(!await this.waitForMessage(n,ty)&&!n.aborted){let c=Date.now()-s;if(c>=ty){_.info("SESSION","Idle timeout reached, triggering abort to kill subprocess",{sessionDbId:r,idleDurationMs:c,thresholdMs:ty}),i?.();return}s=Date.now()}}catch(o){if(n.aborted)return;_.error("SESSION","Error in queue processor loop",{sessionDbId:r},o),await new Promise(a=>setTimeout(a,1e3))}}toPendingMessageWithId(e){return{...this.store.toPendingMessage(e),_persistentId:e.id,_originalTimestamp:e.created_at_epoch}}waitForMessage(e,r=ty){return new Promise(n=>{let i,s=()=>{c(),n(!0)},o=()=>{c(),n(!1)},a=()=>{c(),n(!1)},c=()=>{i!==void 0&&clearTimeout(i),this.events.off("message",s),e.removeEventListener("abort",o)};this.events.once("message",s),e.addEventListener("abort",o,{once:!0}),i=setTimeout(a,r)})}};var of=require("child_process"),EF=require("util");te();var kF=(0,EF.promisify)(of.exec);function Fle(){return yt().getRegistry().getAll().filter(t=>t.type==="sdk").map(t=>{let e=yt().getRegistry().getRuntimeProcess(t.id);return e?{pid:t.pid,sessionDbId:Number(t.sessionId),spawnedAt:Date.parse(t.startedAt),process:e}:null}).filter(t=>t!==null)}function qle(t,e,r){yt().registerProcess(`sdk:${e}:${t}`,{pid:t,type:"sdk",sessionId:e,startedAt:new Date().toISOString()},r),_.info("PROCESS",`Registered PID ${t} for session ${e}`,{pid:t,sessionDbId:e})}function ny(t){for(let e of yt().getRegistry().getByPid(t))e.type==="sdk"&&yt().unregisterProcess(e.id);_.debug("PROCESS",`Unregistered PID ${t}`,{pid:t}),TF()}function Ao(t){let e=Fle().filter(r=>r.sessionDbId===t);return e.length>1&&_.warn("PROCESS",`Multiple processes found for session ${t}`,{count:e.length,pids:e.map(r=>r.pid)}),e[0]}function xF(){return yt().getRegistry().getAll().filter(t=>t.type==="sdk").length}var sf=[];function TF(){let t=sf.shift();t&&t()}var wF=10;async function $F(t,e=6e4){let r=xF();if(r>=wF)throw new Error(`Hard cap exceeded: ${r} processes in registry (cap=${wF}). Refusing to spawn more.`);if(!(r{let s=setTimeout(()=>{let a=sf.indexOf(o);a>=0&&sf.splice(a,1),i(new Error(`Timed out waiting for agent pool slot after ${e}ms`))},e),o=()=>{clearTimeout(s),xF(){n.once("exit",()=>c())}),s=new Promise(c=>{setTimeout(c,e)});if(await Promise.race([i,s]),n.exitCode!==null){ny(r);return}_.warn("PROCESS",`PID ${r} did not exit after ${e}ms, sending SIGKILL`,{pid:r,timeoutMs:e});try{n.kill("SIGKILL")}catch{}let o=new Promise(c=>{n.once("exit",()=>c())}),a=new Promise(c=>{setTimeout(c,1e3)});await Promise.race([o,a]),ny(r)}async function Hle(){if(process.platform==="win32")return 0;let t=process.pid,e=0;try{let{stdout:r}=await kF('ps -eo pid,ppid,%cpu,etime,comm 2>/dev/null | grep "claude$" || true');for(let n of r.trim().split(` +`)){if(!n)continue;let i=n.trim().split(/\s+/);if(i.length<5)continue;let[s,o,a,c]=i,u=parseInt(s,10),l=parseInt(o,10),d=parseFloat(a);if(l!==t||d>0)continue;let p=0,f=c.match(/^(\d+)-(\d+):(\d+):(\d+)$/),m=c.match(/^(\d+):(\d+):(\d+)$/),h=c.match(/^(\d+):(\d+)$/);if(f?p=parseInt(f[1],10)*24*60+parseInt(f[2],10)*60+parseInt(f[3],10):m?p=parseInt(m[1],10)*60+parseInt(m[2],10):h&&(p=parseInt(h[1],10)),p>=1){_.info("PROCESS",`Killing idle daemon child PID ${u} (idle ${p}m)`,{pid:u,minutes:p});try{process.kill(u,"SIGKILL"),e++}catch{}}}}catch{}return e}async function Zle(){if(process.platform==="win32")return 0;try{let{stdout:t}=await kF('ps -eo pid,ppid,args 2>/dev/null | grep -E "claude.*haiku|claude.*output-format" | grep -v grep'),e=0;for(let r of t.trim().split(` +`)){if(!r)continue;let n=r.trim().match(/^(\d+)\s+(\d+)/);if(n&&parseInt(n[2])===1){let i=parseInt(n[1]);_.warn("PROCESS",`Killing system orphan PID ${i}`,{pid:i});try{process.kill(i,"SIGKILL"),e++}catch{}}}return e}catch{return 0}}async function Ble(t){let e=0;for(let r of yt().getRegistry().getAll().filter(n=>n.type==="sdk")){let n=r.pid,i=Number(r.sessionId),s=yt().getRegistry().getRuntimeProcess(r.id);if(!t.has(i)){_.warn("PROCESS",`Killing orphan PID ${n} (session ${i} gone)`,{pid:n,sessionDbId:i});try{s?s.kill("SIGKILL"):process.kill(n,"SIGKILL"),e++}catch{}yt().unregisterProcess(r.id),TF()}}return e+=await Zle(),e+=await Hle(),e}function IF(t){return e=>{yt().assertCanSpawn("claude sdk");let r=process.platform==="win32"&&e.command.endsWith(".cmd"),n=Wi(e.env??process.env),i=r?(0,of.spawn)("cmd.exe",["/d","/c",e.command,...e.args],{cwd:e.cwd,env:n,stdio:["pipe","pipe","pipe"],signal:e.signal,windowsHide:!0}):(0,of.spawn)(e.command,e.args,{cwd:e.cwd,env:n,stdio:["pipe","pipe","pipe"],signal:e.signal,windowsHide:!0});return i.stderr&&i.stderr.on("data",s=>{_.debug("SDK_SPAWN",`[session-${t}] stderr: ${s.toString().trim()}`)}),i.pid&&(qle(i.pid,t,i),i.on("exit",(s,o)=>{s!==0&&_.warn("SDK_SPAWN",`[session-${t}] Claude process exited`,{code:s,signal:o,pid:i.pid}),i.pid&&ny(i.pid)})),{stdin:i.stdin,stdout:i.stdout,stderr:i.stderr,get killed(){return i.killed},get exitCode(){return i.exitCode},kill:i.kill.bind(i),on:i.on.bind(i),once:i.once.bind(i),off:i.off.bind(i)}}}function RF(t,e=30*1e3){let r=setInterval(async()=>{try{let n=t(),i=await Ble(n);i>0&&_.info("PROCESS",`Reaper cleaned up ${i} orphaned processes`,{killed:i})}catch(n){_.error("PROCESS","Reaper error",{},n)}},e);return()=>clearInterval(r)}var iy=class t{dbManager;sessions=new Map;sessionQueues=new Map;onSessionDeletedCallback;pendingStore=null;constructor(e){this.dbManager=e}getPendingStore(){if(!this.pendingStore){let e=this.dbManager.getSessionStore();this.pendingStore=new nf(e.db,3)}return this.pendingStore}setOnSessionDeleted(e){this.onSessionDeletedCallback=e}initializeSession(e,r,n){_.debug("SESSION","initializeSession called",{sessionDbId:e,promptNumber:n,has_currentUserPrompt:!!r});let i=this.sessions.get(e);if(i){_.debug("SESSION","Returning cached session",{sessionDbId:e,contentSessionId:i.contentSessionId,lastPromptNumber:i.lastPromptNumber});let c=this.dbManager.getSessionById(e);return c.project&&c.project!==i.project&&(_.debug("SESSION","Updating project from database",{sessionDbId:e,oldProject:i.project,newProject:c.project}),i.project=c.project),c.platform_source&&c.platform_source!==i.platformSource&&(i.platformSource=c.platform_source),r?(_.debug("SESSION","Updating userPrompt for continuation",{sessionDbId:e,promptNumber:n,oldPrompt:i.userPrompt.substring(0,80),newPrompt:r.substring(0,80)}),i.userPrompt=r,i.lastPromptNumber=n||i.lastPromptNumber):_.debug("SESSION","No currentUserPrompt provided for existing session",{sessionDbId:e,promptNumber:n,usingCachedPrompt:i.userPrompt.substring(0,80)}),i}let s=this.dbManager.getSessionById(e);_.debug("SESSION","Fetched session from database",{sessionDbId:e,content_session_id:s.content_session_id,memory_session_id:s.memory_session_id}),s.memory_session_id&&_.warn("SESSION","Discarding stale memory_session_id from previous worker instance (Issue #817)",{sessionDbId:e,staleMemorySessionId:s.memory_session_id,reason:"SDK context lost on worker restart - will capture new ID"});let o=r||s.user_prompt;r?_.debug("SESSION","Initializing session with fresh userPrompt",{sessionDbId:e,promptNumber:n,userPrompt:r.substring(0,80)}):_.debug("SESSION","No currentUserPrompt provided for new session, using database",{sessionDbId:e,promptNumber:n,dbPrompt:s.user_prompt.substring(0,80)}),i={sessionDbId:e,contentSessionId:s.content_session_id,memorySessionId:null,project:s.project,platformSource:s.platform_source,userPrompt:o,pendingMessages:[],abortController:new AbortController,generatorPromise:null,lastPromptNumber:n||this.dbManager.getSessionStore().getPromptNumberFromUserPrompts(s.content_session_id),startTime:Date.now(),cumulativeInputTokens:0,cumulativeOutputTokens:0,earliestPendingTimestamp:null,conversationHistory:[],currentProvider:null,consecutiveRestarts:0,processingMessageIds:[],lastGeneratorActivity:Date.now()},_.debug("SESSION","Creating new session object (memorySessionId cleared to prevent stale resume)",{sessionDbId:e,contentSessionId:s.content_session_id,dbMemorySessionId:s.memory_session_id||"(none in DB)",memorySessionId:"(cleared - will capture fresh from SDK)",lastPromptNumber:n||this.dbManager.getSessionStore().getPromptNumberFromUserPrompts(s.content_session_id)}),this.sessions.set(e,i);let a=new OF.EventEmitter;return this.sessionQueues.set(e,a),_.info("SESSION","Session initialized",{sessionId:e,project:i.project,contentSessionId:i.contentSessionId,queueDepth:0,hasGenerator:!1}),i}getSession(e){return this.sessions.get(e)}queueObservation(e,r){let n=this.sessions.get(e);n||(n=this.initializeSession(e));let i={type:"observation",tool_name:r.tool_name,tool_input:r.tool_input,tool_response:r.tool_response,prompt_number:r.prompt_number,cwd:r.cwd};try{let o=this.getPendingStore().enqueue(e,n.contentSessionId,i),a=this.getPendingStore().getPendingCount(e),c=_.formatTool(r.tool_name,r.tool_input);_.info("QUEUE",`ENQUEUED | sessionDbId=${e} | messageId=${o} | type=observation | tool=${c} | depth=${a}`,{sessionId:e})}catch(o){throw _.error("SESSION","Failed to persist observation to DB",{sessionId:e,tool:r.tool_name},o),o}this.sessionQueues.get(e)?.emit("message")}queueSummarize(e,r){let n=this.sessions.get(e);n||(n=this.initializeSession(e));let i={type:"summarize",last_assistant_message:r};try{let o=this.getPendingStore().enqueue(e,n.contentSessionId,i),a=this.getPendingStore().getPendingCount(e);_.info("QUEUE",`ENQUEUED | sessionDbId=${e} | messageId=${o} | type=summarize | depth=${a}`,{sessionId:e})}catch(o){throw _.error("SESSION","Failed to persist summarize to DB",{sessionId:e},o),o}this.sessionQueues.get(e)?.emit("message")}async deleteSession(e){let r=this.sessions.get(e);if(!r)return;let n=Date.now()-r.startTime;if(r.abortController.abort(),r.generatorPromise){let s=r.generatorPromise.catch(()=>{_.debug("SYSTEM","Generator already failed, cleaning up",{sessionId:r.sessionDbId})}),o=new Promise(a=>{AbortSignal.timeout(3e4).addEventListener("abort",()=>a(),{once:!0})});await Promise.race([s,o]).then(()=>{},()=>{_.warn("SESSION","Generator did not exit within 30s after abort, forcing cleanup (#1099)",{sessionDbId:e})})}let i=Ao(e);i&&i.process.exitCode===null&&(_.debug("SESSION",`Waiting for subprocess PID ${i.pid} to exit`,{sessionId:e,pid:i.pid}),await No(i,5e3));try{await yt().getRegistry().reapSession(e)}catch(s){_.warn("SESSION","Supervisor reapSession failed (non-blocking)",{sessionId:e},s)}this.sessions.delete(e),this.sessionQueues.delete(e),_.info("SESSION","Session deleted",{sessionId:e,duration:`${(n/1e3).toFixed(1)}s`,project:r.project}),this.onSessionDeletedCallback&&this.onSessionDeletedCallback()}removeSessionImmediate(e){let r=this.sessions.get(e);r&&(this.sessions.delete(e),this.sessionQueues.delete(e),_.info("SESSION","Session removed from active sessions",{sessionId:e,project:r.project}),this.onSessionDeletedCallback&&this.onSessionDeletedCallback())}static MAX_SESSION_IDLE_MS=900*1e3;async reapStaleSessions(){let e=Date.now(),r=[];for(let[n,i]of this.sessions){if(i.generatorPromise||this.getPendingStore().getPendingCount(n)>0)continue;e-i.startTime>t.MAX_SESSION_IDLE_MS&&r.push(n)}for(let n of r)_.warn("SESSION",`Reaping stale session ${n} (no activity for >${Math.round(t.MAX_SESSION_IDLE_MS/6e4)}m)`,{sessionDbId:n}),await this.deleteSession(n);return r.length}async shutdownAll(){let e=Array.from(this.sessions.keys());await Promise.all(e.map(r=>this.deleteSession(r)))}hasPendingMessages(){return this.getTotalQueueDepth()>0}getActiveSessionCount(){return this.sessions.size}getTotalQueueDepth(){let e=0;for(let r of this.sessions.values())e+=this.getPendingStore().getPendingCount(r.sessionDbId);return e}getTotalActiveWork(){return this.getTotalQueueDepth()}isAnySessionProcessing(){return this.getTotalQueueDepth()>0}async*getMessageIterator(e){let r=this.sessions.get(e);r||(r=this.initializeSession(e));let n=this.sessionQueues.get(e);if(!n)throw new Error(`No emitter for session ${e}`);let i=new ry(this.getPendingStore(),n);for await(let s of i.createIterator({sessionDbId:e,signal:r.abortController.signal,onIdleTimeout:()=>{_.info("SESSION","Triggering abort due to idle timeout to kill subprocess",{sessionDbId:e}),r.idleTimedOut=!0,r.abortController.abort()}}))r.earliestPendingTimestamp===null?r.earliestPendingTimestamp=s._originalTimestamp:r.earliestPendingTimestamp=Math.min(r.earliestPendingTimestamp,s._originalTimestamp),r.lastGeneratorActivity=Date.now(),yield s}getPendingMessageStore(){return this.getPendingStore()}};te();var sy=class{sseClients=new Set;addClient(e){this.sseClients.add(e),_.debug("WORKER","Client connected",{total:this.sseClients.size}),e.on("close",()=>{this.removeClient(e)}),this.sendToClient(e,{type:"connected",timestamp:Date.now()})}removeClient(e){this.sseClients.delete(e),_.debug("WORKER","Client disconnected",{total:this.sseClients.size})}broadcast(e){if(this.sseClients.size===0){_.debug("WORKER","SSE broadcast skipped (no clients)",{eventType:e.type});return}let r={...e,timestamp:Date.now()},n=`data: ${JSON.stringify(r)} + +`;_.debug("WORKER","SSE broadcast sent",{eventType:e.type,clients:this.sseClients.size});for(let i of this.sseClients)i.write(n)}getClientCount(){return this.sseClients.size}sendToClient(e,r){let n=`data: ${JSON.stringify(r)} + +`;e.write(n)}};var GI=require("child_process"),m8=require("os"),h8=Pe(require("path"),1);te();te();function Iu(t,e,r,n){return`${n.prompts.system_identity} + + + ${r} + ${new Date().toISOString().split("T")[0]} + + +${n.prompts.observer_role} + +${n.prompts.spatial_awareness} + +${n.prompts.recording_focus} + +${n.prompts.skip_guidance} + +${n.prompts.output_format_header} + +\`\`\`xml + + [ ${n.observation_types.map(i=>i.id).join(" | ")} ] + + ${n.prompts.xml_title_placeholder} + ${n.prompts.xml_subtitle_placeholder} + + ${n.prompts.xml_fact_placeholder} + ${n.prompts.xml_fact_placeholder} + ${n.prompts.xml_fact_placeholder} + + + ${n.prompts.xml_narrative_placeholder} + + ${n.prompts.xml_concept_placeholder} + ${n.prompts.xml_concept_placeholder} + + + + ${n.prompts.xml_file_placeholder} + ${n.prompts.xml_file_placeholder} + + + ${n.prompts.xml_file_placeholder} + ${n.prompts.xml_file_placeholder} + + +\`\`\` +${n.prompts.format_examples} + +${n.prompts.footer} + +${n.prompts.header_memory_start}`}function Ru(t){let e,r;try{e=typeof t.tool_input=="string"?JSON.parse(t.tool_input):t.tool_input}catch(n){_.debug("SDK","Tool input is plain string, using as-is",{toolName:t.tool_name},n),e=t.tool_input}try{r=typeof t.tool_output=="string"?JSON.parse(t.tool_output):t.tool_output}catch(n){_.debug("SDK","Tool output is plain string, using as-is",{toolName:t.tool_name},n),r=t.tool_output}return` + ${t.tool_name} + ${new Date(t.created_at_epoch).toISOString()}${t.cwd?` + ${t.cwd}`:""} + ${JSON.stringify(e,null,2)} + ${JSON.stringify(r,null,2)} + + +Return either one or more ... blocks, or an empty response if this tool use should be skipped. +Concrete debugging findings from logs, queue state, database rows, session routing, or code-path inspection count as durable discoveries and should be recorded. +Never reply with prose such as "Skipping", "No substantive tool executions", or any explanation outside XML. Non-XML text is discarded.`}function Ou(t,e){let r=t.last_assistant_message||(_.error("SDK","Missing last_assistant_message in session for summary prompt",{sessionId:t.id}),"");return`--- MODE SWITCH: PROGRESS SUMMARY --- +Do NOT output tags. This is a summary request, not an observation request. +Your response MUST use tags ONLY. Any output will be discarded. + +${e.prompts.header_summary_checkpoint} +${e.prompts.summary_instruction} + +${e.prompts.summary_context_label} +${r} + +${e.prompts.summary_format_instruction} + + ${e.prompts.xml_summary_request_placeholder} + ${e.prompts.xml_summary_investigated_placeholder} + ${e.prompts.xml_summary_learned_placeholder} + ${e.prompts.xml_summary_completed_placeholder} + ${e.prompts.xml_summary_next_steps_placeholder} + ${e.prompts.xml_summary_notes_placeholder} + + +${e.prompts.summary_footer}`}function Cu(t,e,r,n){return`${n.prompts.continuation_greeting} + + + ${t} + ${new Date().toISOString().split("T")[0]} + + +${n.prompts.system_identity} + +${n.prompts.observer_role} + +${n.prompts.spatial_awareness} + +${n.prompts.recording_focus} + +${n.prompts.skip_guidance} + +${n.prompts.continuation_instruction} + +${n.prompts.output_format_header} + +\`\`\`xml + + [ ${n.observation_types.map(i=>i.id).join(" | ")} ] + + ${n.prompts.xml_title_placeholder} + ${n.prompts.xml_subtitle_placeholder} + + ${n.prompts.xml_fact_placeholder} + ${n.prompts.xml_fact_placeholder} + ${n.prompts.xml_fact_placeholder} + + + ${n.prompts.xml_narrative_placeholder} + + ${n.prompts.xml_concept_placeholder} + ${n.prompts.xml_concept_placeholder} + + + + ${n.prompts.xml_file_placeholder} + ${n.prompts.xml_file_placeholder} + + + ${n.prompts.xml_file_placeholder} + ${n.prompts.xml_file_placeholder} + + +\`\`\` +${n.prompts.format_examples} + +${n.prompts.footer} + +${n.prompts.header_memory_continued}`}tr();It();sn();var J$=["429","500","502","503","ECONNREFUSED","ETIMEDOUT","fetch failed"];te();te();sn();function PF(t,e){let r=[],n=/([\s\S]*?)<\/observation>/g,i;for(;(i=n.exec(t))!==null;){let s=i[1],o=is(s,"type"),a=is(s,"title"),c=is(s,"subtitle"),u=is(s,"narrative"),l=ay(s,"facts","fact"),d=ay(s,"concepts","concept"),p=ay(s,"files_read","file"),f=ay(s,"files_modified","file"),h=He.getInstance().getActiveMode().observation_types.map(b=>b.id),g=h[0],v=g;o?h.includes(o.trim())?v=o.trim():_.error("PARSER",`Invalid observation type: ${o}, using "${g}"`,{correlationId:e}):_.error("PARSER",`Observation missing type field, using "${g}"`,{correlationId:e});let y=d.filter(b=>b!==v);y.length!==d.length&&_.debug("PARSER","Removed observation type from concepts array",{correlationId:e,type:v,originalConcepts:d,cleanedConcepts:y}),r.push({type:v,title:a,subtitle:c,facts:l,narrative:u,concepts:y,files_read:p,files_modified:f})}return r}function AF(t,e){let n=//.exec(t);if(n)return _.info("PARSER","Summary skipped",{sessionId:e,reason:n[1]}),null;let s=/([\s\S]*?)<\/summary>/.exec(t);if(!s)return//.test(t)&&_.warn("PARSER","Summary response contained tags instead of \u2014 prompt conditioning may need strengthening",{sessionId:e}),null;let o=s[1],a=is(o,"request"),c=is(o,"investigated"),u=is(o,"learned"),l=is(o,"completed"),d=is(o,"next_steps"),p=is(o,"notes");return!a&&!c&&!u&&!l&&!d?(_.warn("PARSER","Summary match has no sub-tags \u2014 skipping false positive",{sessionId:e}),null):{request:a,investigated:c,learned:u,completed:l,next_steps:d,notes:p}}function is(t,e){let n=new RegExp(`<${e}>([\\s\\S]*?)`).exec(t);if(!n)return null;let i=n[1].trim();return i===""?null:i}function ay(t,e,r){let n=[],s=new RegExp(`<${e}>([\\s\\S]*?)`).exec(t);if(!s)return n;let o=s[1],a=new RegExp(`<${r}>([\\s\\S]*?)`,"g"),c;for(;(c=a.exec(o))!==null;){let u=c[1].trim();u&&n.push(u)}return n}var Ei=require("fs"),Bt=Pe(require("path"),1),MF=Pe(require("os"),1);te();Fs();tr();fr();var DF=Bt.default.join(MF.default.homedir(),".claude-mem","settings.json"),jF="CLAUDE.md",zF="CLAUDE.local.md";function LF(t){return(t??ye.loadFromFile(DF)).CLAUDE_MEM_FOLDER_USE_LOCAL_MD==="true"?zF:jF}function Gle(t){let e=t.split(Bt.default.sep).filter(r=>r&&r!=="."&&r!=="..");for(let r=1;rnew Date(a.epoch).toISOString());for(let[a,c]of o){e.push(`### ${a}`),e.push(""),e.push("| ID | Time | T | Title | Read |"),e.push("|----|------|---|-------|------|");let u="";for(let l of c){let d=l.time===u?'"':l.time;u=l.time,e.push(`| ${l.id} | ${d} | ${l.typeEmoji} | ${l.title} | ${l.tokens} |`)}e.push("")}return e.join(` +`).trim()}var Jle=new Set(["res",".git","build","node_modules","__pycache__"]);function Xle(t){return Bt.default.normalize(t).split(Bt.default.sep).some(n=>Jle.has(n))}function Yle(t){let e=Bt.default.join(t,".git");return(0,Ei.existsSync)(e)}function Qle(t,e){let r=Bt.default.resolve(t);for(let n of e){let i=Bt.default.resolve(n);if(r===i||r.startsWith(i+Bt.default.sep))return!0}return!1}async function UF(t,e,r,n){let i=ye.loadFromFile(DF),s=parseInt(i.CLAUDE_MEM_CONTEXT_OBSERVATIONS,10)||50,o=LF(i),a=[];try{let l=JSON.parse(i.CLAUDE_MEM_FOLDER_MD_EXCLUDE||"[]");Array.isArray(l)&&(a=l.filter(d=>typeof d=="string"))}catch{_.warn("FOLDER_INDEX","Failed to parse CLAUDE_MEM_FOLDER_MD_EXCLUDE setting")}let c=new Set;for(let l of t){if(!l)continue;let d=Bt.default.basename(l);if(d===jF||d===zF){let p=l;n&&!Bt.default.isAbsolute(l)&&(p=Bt.default.join(n,l));let f=Bt.default.dirname(p);c.add(f),_.debug("FOLDER_INDEX","Detected active context file, will skip folder",{folderPath:f,basename:d})}}let u=new Set;for(let l of t){if(!l||l==="")continue;if(!Wle(l,n)){_.debug("FOLDER_INDEX","Skipping invalid file path",{filePath:l,reason:"Failed path validation"});continue}let d=l;n&&!Bt.default.isAbsolute(l)&&(d=Bt.default.join(n,l));let p=Bt.default.dirname(d);if(p&&p!=="."&&p!=="/"){if(Yle(p)){_.debug("FOLDER_INDEX","Skipping project root CLAUDE.md",{folderPath:p});continue}if(Xle(p)){_.debug("FOLDER_INDEX","Skipping unsafe directory for CLAUDE.md",{folderPath:p});continue}if(c.has(p)){_.debug("FOLDER_INDEX","Skipping folder with active CLAUDE.md to avoid race condition",{folderPath:p});continue}if(a.length>0&&Qle(p,a)){_.debug("FOLDER_INDEX","Skipping excluded folder",{folderPath:p});continue}u.add(p)}}if(u.size!==0){_.debug("FOLDER_INDEX","Updating CLAUDE.md files",{project:e,folderCount:u.size});for(let l of u)try{let d=await Qe(`/api/search/by-file?filePath=${encodeURIComponent(l)}&limit=${s}&project=${encodeURIComponent(e)}&isFolder=true`);if(!d.ok){_.error("FOLDER_INDEX","Failed to fetch timeline",{folderPath:l,status:d.status});continue}let p=await d.json();if(!p.content?.[0]?.text){_.debug("FOLDER_INDEX","No content for folder",{folderPath:l});continue}let f=Kle(p.content[0].text),m=Bt.default.join(l,o),h=f.includes("*No recent activity*"),g=(0,Ei.existsSync)(m);if(h&&!g){_.debug("FOLDER_INDEX","Skipping empty context file creation",{folderPath:l,targetFilename:o});continue}Vle(l,f,o),_.debug("FOLDER_INDEX","Updated context file",{folderPath:l,targetFilename:o})}catch(d){let p=d;_.error("FOLDER_INDEX",`Failed to update ${o}`,{folderPath:l,errorMessage:p.message,errorStack:p.stack})}}}fr();tr();It();function Q$(t,e){t?.sseBroadcaster&&t.sseBroadcaster.broadcast({type:"new_observation",observation:e})}function eI(t,e){t?.sseBroadcaster&&t.sseBroadcaster.broadcast({type:"new_summary",summary:e})}function tI(t,e){t.earliestPendingTimestamp=null,e&&typeof e.broadcastProcessingStatus=="function"&&e.broadcastProcessingStatus()}async function ki(t,e,r,n,i,s,o,a,c,u){e.lastGeneratorActivity=Date.now(),t&&e.conversationHistory.push({role:"assistant",content:t});let l=PF(t,e.contentSessionId),d=AF(t,e.sessionDbId);if(t.trim()&&l.length===0&&!d&&!/||200?`${t.slice(0,200)}...`:t;_.warn("PARSER",`${a} returned non-XML response; observation content was discarded`,{sessionId:e.sessionDbId,preview:g})}let p=ede(d),f=r.getSessionStore();if(!e.memorySessionId)throw new Error("Cannot store observations: memorySessionId not yet captured");f.ensureMemorySessionIdRegistered(e.sessionDbId,e.memorySessionId),_.info("DB",`STORING | sessionDbId=${e.sessionDbId} | memorySessionId=${e.memorySessionId} | obsCount=${l.length} | hasSummary=${!!p}`,{sessionId:e.sessionDbId,memorySessionId:e.memorySessionId});let m=f.storeObservations(e.memorySessionId,e.project,l,p,e.lastPromptNumber,s,o??void 0,u);_.info("DB",`STORED | sessionDbId=${e.sessionDbId} | memorySessionId=${e.memorySessionId} | obsCount=${m.observationIds.length} | obsIds=[${m.observationIds.join(",")}] | summaryId=${m.summaryId||"none"}`,{sessionId:e.sessionDbId,memorySessionId:e.memorySessionId});let h=n.getPendingMessageStore();for(let g of e.processingMessageIds)h.confirmProcessed(g);e.processingMessageIds.length>0&&_.debug("QUEUE",`CONFIRMED_BATCH | sessionDbId=${e.sessionDbId} | count=${e.processingMessageIds.length} | ids=[${e.processingMessageIds.join(",")}]`),e.processingMessageIds=[],await tde(l,m,e,r,i,s,a,c),await rde(d,p,m,e,r,i,s,a),tI(e,i)}function ede(t){return t?{request:t.request||"",investigated:t.investigated||"",learned:t.learned||"",completed:t.completed||"",next_steps:t.next_steps||"",notes:t.notes}:null}async function tde(t,e,r,n,i,s,o,a){for(let d=0;d{let h=Date.now()-m;_.debug("CHROMA","Observation synced",{obsId:p,duration:`${h}ms`,type:f.type,title:f.title||"(untitled)"})}).catch(h=>{_.error("CHROMA",`${o} chroma sync failed, continuing without vector search`,{obsId:p,type:f.type,title:f.title||"(untitled)"},h)}),Q$(i,{id:p,memory_session_id:r.memorySessionId,session_id:r.contentSessionId,platform_source:r.platformSource,type:f.type,title:f.title,subtitle:f.subtitle,text:null,narrative:f.narrative||null,facts:JSON.stringify(f.facts||[]),concepts:JSON.stringify(f.concepts||[]),files_read:JSON.stringify(f.files_read||[]),files_modified:JSON.stringify(f.files_modified||[]),project:r.project,prompt_number:r.lastPromptNumber,created_at_epoch:e.createdAtEpoch})}let u=ye.loadFromFile(vt).CLAUDE_MEM_FOLDER_CLAUDEMD_ENABLED;if(u==="true"||u===!0){let d=[];for(let p of t)d.push(...p.files_modified||[]),d.push(...p.files_read||[]);d.length>0&&UF(d,r.project,Rr(),a).catch(p=>{_.warn("FOLDER_INDEX","CLAUDE.md update failed (non-critical)",{project:r.project},p)})}}async function rde(t,e,r,n,i,s,o,a){if(!e||!r.summaryId)return;let c=Date.now();i.getChromaSync()?.syncSummary(r.summaryId,n.contentSessionId,n.project,e,n.lastPromptNumber,r.createdAtEpoch,o).then(()=>{let u=Date.now()-c;_.debug("CHROMA","Summary synced",{summaryId:r.summaryId,duration:`${u}ms`,request:e.request||"(no request)"})}).catch(u=>{_.error("CHROMA",`${a} chroma sync failed, continuing without vector search`,{summaryId:r.summaryId,request:e.request||"(no request)"},u)}),eI(s,{id:r.summaryId,session_id:n.contentSessionId,platform_source:n.platformSource,request:t.request,investigated:t.investigated,learned:t.learned,completed:t.completed,next_steps:t.next_steps,notes:t.notes,project:n.project,prompt_number:n.lastPromptNumber,created_at_epoch:r.createdAtEpoch}),mF(n.project,Rr()).catch(u=>{_.warn("CURSOR","Context update failed (non-critical)",{project:n.project},u)})}function cf(t){let e=nde(t);return J$.some(r=>e.includes(r))}function nde(t){return t==null?"":typeof t=="string"?t:t instanceof Error?t.message:typeof t=="object"&&"message"in t?String(t.message):String(t)}function uf(t){return t==null?!1:t instanceof Error&&t.name==="AbortError"?!0:typeof t=="object"&&"name"in t?t.name==="AbortError":!1}var cI=require("path"),$q=require("url"),Iq=require("events"),Oq=require("child_process"),Cq=require("readline"),Re=Pe(require("fs"),1),Pq=require("fs/promises"),jq=require("path"),zq=require("os"),Na=require("path"),Uq=require("process"),Fq=require("fs"),qq=require("crypto"),Jq=require("crypto"),Yu=require("fs"),uI=require("path"),Xq=require("crypto");var kbe={},ide=Object.create,sde=Object.getPrototypeOf,aI=Object.defineProperty,ode=Object.getOwnPropertyNames,ade=Object.prototype.hasOwnProperty,yq=(t,e,r)=>{r=t!=null?ide(sde(t)):{};let n=e||!t||!t.__esModule?aI(r,"default",{value:t,enumerable:!0}):r;for(let i of ode(t))ade.call(n,i)||aI(n,i,{get:()=>t[i],enumerable:!0});return n},ne=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),_q=(t,e)=>{for(var r in e)aI(t,r,{get:e[r],enumerable:!0,configurable:!0,set:n=>e[r]=()=>n})};var my=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.regexpCode=t.getEsmExportName=t.getProperty=t.safeStringify=t.stringify=t.strConcat=t.addCodeArg=t.str=t._=t.nil=t._Code=t.Name=t.IDENTIFIER=t._CodeOrName=void 0;class e{}t._CodeOrName=e,t.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class r extends e{constructor(y){if(super(),!t.IDENTIFIER.test(y))throw new Error("CodeGen: name must be a valid identifier");this.str=y}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}t.Name=r;class n extends e{constructor(y){super(),this._items=typeof y=="string"?[y]:y}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let y=this._items[0];return y===""||y==='""'}get str(){var y;return(y=this._str)!==null&&y!==void 0?y:this._str=this._items.reduce((b,S)=>`${b}${S}`,"")}get names(){var y;return(y=this._names)!==null&&y!==void 0?y:this._names=this._items.reduce((b,S)=>(S instanceof r&&(b[S.str]=(b[S.str]||0)+1),b),{})}}t._Code=n,t.nil=new n("");function i(v,...y){let b=[v[0]],S=0;for(;S{Object.defineProperty(t,"__esModule",{value:!0}),t.ValueScope=t.ValueScopeName=t.Scope=t.varKinds=t.UsedValueState=void 0;var e=my();class r extends Error{constructor(u){super(`CodeGen: "code" for ${u} not defined`),this.value=u.value}}var n;(function(c){c[c.Started=0]="Started",c[c.Completed=1]="Completed"})(n||(t.UsedValueState=n={})),t.varKinds={const:new e.Name("const"),let:new e.Name("let"),var:new e.Name("var")};class i{constructor({prefixes:u,parent:l}={}){this._names={},this._prefixes=u,this._parent=l}toName(u){return u instanceof e.Name?u:this.name(u)}name(u){return new e.Name(this._newName(u))}_newName(u){let l=this._names[u]||this._nameGroup(u);return`${u}${l.index++}`}_nameGroup(u){var l,d;if(!((d=(l=this._parent)===null||l===void 0?void 0:l._prefixes)===null||d===void 0)&&d.has(u)||this._prefixes&&!this._prefixes.has(u))throw new Error(`CodeGen: prefix "${u}" is not allowed in this scope`);return this._names[u]={prefix:u,index:0}}}t.Scope=i;class s extends e.Name{constructor(u,l){super(l),this.prefix=u}setValue(u,{property:l,itemIndex:d}){this.value=u,this.scopePath=(0,e._)`.${new e.Name(l)}[${d}]`}}t.ValueScopeName=s;var o=(0,e._)`\n`;class a extends i{constructor(u){super(u),this._values={},this._scope=u.scope,this.opts={...u,_n:u.lines?o:e.nil}}get(){return this._scope}name(u){return new s(u,this._newName(u))}value(u,l){var d;if(l.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let p=this.toName(u),{prefix:f}=p,m=(d=l.key)!==null&&d!==void 0?d:l.ref,h=this._values[f];if(h){let y=h.get(m);if(y)return y}else h=this._values[f]=new Map;h.set(m,p);let g=this._scope[f]||(this._scope[f]=[]),v=g.length;return g[v]=l.ref,p.setValue(l,{property:f,itemIndex:v}),p}getValue(u,l){let d=this._values[u];if(d)return d.get(l)}scopeRefs(u,l=this._values){return this._reduceValues(l,d=>{if(d.scopePath===void 0)throw new Error(`CodeGen: name "${d}" has no value`);return(0,e._)`${u}${d.scopePath}`})}scopeCode(u=this._values,l,d){return this._reduceValues(u,p=>{if(p.value===void 0)throw new Error(`CodeGen: name "${p}" has no value`);return p.value.code},l,d)}_reduceValues(u,l,d={},p){let f=e.nil;for(let m in u){let h=u[m];if(!h)continue;let g=d[m]=d[m]||new Map;h.forEach(v=>{if(g.has(v))return;g.set(v,n.Started);let y=l(v);if(y){let b=this.opts.es5?t.varKinds.var:t.varKinds.const;f=(0,e._)`${f}${b} ${v} = ${y};${this.opts._n}`}else if(y=p?.(v))f=(0,e._)`${f}${y}${this.opts._n}`;else throw new r(v);g.set(v,n.Completed)})}return f}}t.ValueScope=a}),Ze=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.or=t.and=t.not=t.CodeGen=t.operators=t.varKinds=t.ValueScopeName=t.ValueScope=t.Scope=t.Name=t.regexpCode=t.stringify=t.getProperty=t.nil=t.strConcat=t.str=t._=void 0;var e=my(),r=FF(),n=my();Object.defineProperty(t,"_",{enumerable:!0,get:function(){return n._}}),Object.defineProperty(t,"str",{enumerable:!0,get:function(){return n.str}}),Object.defineProperty(t,"strConcat",{enumerable:!0,get:function(){return n.strConcat}}),Object.defineProperty(t,"nil",{enumerable:!0,get:function(){return n.nil}}),Object.defineProperty(t,"getProperty",{enumerable:!0,get:function(){return n.getProperty}}),Object.defineProperty(t,"stringify",{enumerable:!0,get:function(){return n.stringify}}),Object.defineProperty(t,"regexpCode",{enumerable:!0,get:function(){return n.regexpCode}}),Object.defineProperty(t,"Name",{enumerable:!0,get:function(){return n.Name}});var i=FF();Object.defineProperty(t,"Scope",{enumerable:!0,get:function(){return i.Scope}}),Object.defineProperty(t,"ValueScope",{enumerable:!0,get:function(){return i.ValueScope}}),Object.defineProperty(t,"ValueScopeName",{enumerable:!0,get:function(){return i.ValueScopeName}}),Object.defineProperty(t,"varKinds",{enumerable:!0,get:function(){return i.varKinds}}),t.operators={GT:new e._Code(">"),GTE:new e._Code(">="),LT:new e._Code("<"),LTE:new e._Code("<="),EQ:new e._Code("==="),NEQ:new e._Code("!=="),NOT:new e._Code("!"),OR:new e._Code("||"),AND:new e._Code("&&"),ADD:new e._Code("+")};class s{optimizeNodes(){return this}optimizeNames(k,R){return this}}class o extends s{constructor(k,R,F){super(),this.varKind=k,this.name=R,this.rhs=F}render({es5:k,_n:R}){let F=k?r.varKinds.var:this.varKind,le=this.rhs===void 0?"":` = ${this.rhs}`;return`${F} ${this.name}${le};`+R}optimizeNames(k,R){if(k[this.name.str])return this.rhs&&(this.rhs=j(this.rhs,k,R)),this}get names(){return this.rhs instanceof e._CodeOrName?this.rhs.names:{}}}class a extends s{constructor(k,R,F){super(),this.lhs=k,this.rhs=R,this.sideEffects=F}render({_n:k}){return`${this.lhs} = ${this.rhs};`+k}optimizeNames(k,R){if(!(this.lhs instanceof e.Name&&!k[this.lhs.str]&&!this.sideEffects))return this.rhs=j(this.rhs,k,R),this}get names(){let k=this.lhs instanceof e.Name?{}:{...this.lhs.names};return G(k,this.rhs)}}class c extends a{constructor(k,R,F,le){super(k,F,le),this.op=R}render({_n:k}){return`${this.lhs} ${this.op}= ${this.rhs};`+k}}class u extends s{constructor(k){super(),this.label=k,this.names={}}render({_n:k}){return`${this.label}:`+k}}class l extends s{constructor(k){super(),this.label=k,this.names={}}render({_n:k}){return`break${this.label?` ${this.label}`:""};`+k}}class d extends s{constructor(k){super(),this.error=k}render({_n:k}){return`throw ${this.error};`+k}get names(){return this.error.names}}class p extends s{constructor(k){super(),this.code=k}render({_n:k}){return`${this.code};`+k}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(k,R){return this.code=j(this.code,k,R),this}get names(){return this.code instanceof e._CodeOrName?this.code.names:{}}}class f extends s{constructor(k=[]){super(),this.nodes=k}render(k){return this.nodes.reduce((R,F)=>R+F.render(k),"")}optimizeNodes(){let{nodes:k}=this,R=k.length;for(;R--;){let F=k[R].optimizeNodes();Array.isArray(F)?k.splice(R,1,...F):F?k[R]=F:k.splice(R,1)}return k.length>0?this:void 0}optimizeNames(k,R){let{nodes:F}=this,le=F.length;for(;le--;){let ce=F[le];ce.optimizeNames(k,R)||(ae(k,ce.names),F.splice(le,1))}return F.length>0?this:void 0}get names(){return this.nodes.reduce((k,R)=>L(k,R.names),{})}}class m extends f{render(k){return"{"+k._n+super.render(k)+"}"+k._n}}class h extends f{}class g extends m{}g.kind="else";class v extends m{constructor(k,R){super(R),this.condition=k}render(k){let R=`if(${this.condition})`+super.render(k);return this.else&&(R+="else "+this.else.render(k)),R}optimizeNodes(){super.optimizeNodes();let k=this.condition;if(k===!0)return this.nodes;let R=this.else;if(R){let F=R.optimizeNodes();R=this.else=Array.isArray(F)?new g(F):F}if(R)return k===!1?R instanceof v?R:R.nodes:this.nodes.length?this:new v(Me(k),R instanceof v?[R]:R.nodes);if(!(k===!1||!this.nodes.length))return this}optimizeNames(k,R){var F;if(this.else=(F=this.else)===null||F===void 0?void 0:F.optimizeNames(k,R),!!(super.optimizeNames(k,R)||this.else))return this.condition=j(this.condition,k,R),this}get names(){let k=super.names;return G(k,this.condition),this.else&&L(k,this.else.names),k}}v.kind="if";class y extends m{}y.kind="for";class b extends y{constructor(k){super(),this.iteration=k}render(k){return`for(${this.iteration})`+super.render(k)}optimizeNames(k,R){if(super.optimizeNames(k,R))return this.iteration=j(this.iteration,k,R),this}get names(){return L(super.names,this.iteration.names)}}class S extends y{constructor(k,R,F,le){super(),this.varKind=k,this.name=R,this.from=F,this.to=le}render(k){let R=k.es5?r.varKinds.var:this.varKind,{name:F,from:le,to:ce}=this;return`for(${R} ${F}=${le}; ${F}<${ce}; ${F}++)`+super.render(k)}get names(){let k=G(super.names,this.from);return G(k,this.to)}}class x extends y{constructor(k,R,F,le){super(),this.loop=k,this.varKind=R,this.name=F,this.iterable=le}render(k){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(k)}optimizeNames(k,R){if(super.optimizeNames(k,R))return this.iterable=j(this.iterable,k,R),this}get names(){return L(super.names,this.iterable.names)}}class w extends m{constructor(k,R,F){super(),this.name=k,this.args=R,this.async=F}render(k){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(k)}}w.kind="func";class E extends f{render(k){return"return "+super.render(k)}}E.kind="return";class T extends m{render(k){let R="try"+super.render(k);return this.catch&&(R+=this.catch.render(k)),this.finally&&(R+=this.finally.render(k)),R}optimizeNodes(){var k,R;return super.optimizeNodes(),(k=this.catch)===null||k===void 0||k.optimizeNodes(),(R=this.finally)===null||R===void 0||R.optimizeNodes(),this}optimizeNames(k,R){var F,le;return super.optimizeNames(k,R),(F=this.catch)===null||F===void 0||F.optimizeNames(k,R),(le=this.finally)===null||le===void 0||le.optimizeNames(k,R),this}get names(){let k=super.names;return this.catch&&L(k,this.catch.names),this.finally&&L(k,this.finally.names),k}}class I extends m{constructor(k){super(),this.error=k}render(k){return`catch(${this.error})`+super.render(k)}}I.kind="catch";class P extends m{render(k){return"finally"+super.render(k)}}P.kind="finally";class N{constructor(k,R={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...R,_n:R.lines?` +`:""},this._extScope=k,this._scope=new r.Scope({parent:k}),this._nodes=[new h]}toString(){return this._root.render(this.opts)}name(k){return this._scope.name(k)}scopeName(k){return this._extScope.name(k)}scopeValue(k,R){let F=this._extScope.value(k,R);return(this._values[F.prefix]||(this._values[F.prefix]=new Set)).add(F),F}getScopeValue(k,R){return this._extScope.getValue(k,R)}scopeRefs(k){return this._extScope.scopeRefs(k,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(k,R,F,le){let ce=this._scope.toName(R);return F!==void 0&&le&&(this._constants[ce.str]=F),this._leafNode(new o(k,ce,F)),ce}const(k,R,F){return this._def(r.varKinds.const,k,R,F)}let(k,R,F){return this._def(r.varKinds.let,k,R,F)}var(k,R,F){return this._def(r.varKinds.var,k,R,F)}assign(k,R,F){return this._leafNode(new a(k,R,F))}add(k,R){return this._leafNode(new c(k,t.operators.ADD,R))}code(k){return typeof k=="function"?k():k!==e.nil&&this._leafNode(new p(k)),this}object(...k){let R=["{"];for(let[F,le]of k)R.length>1&&R.push(","),R.push(F),(F!==le||this.opts.es5)&&(R.push(":"),(0,e.addCodeArg)(R,le));return R.push("}"),new e._Code(R)}if(k,R,F){if(this._blockNode(new v(k)),R&&F)this.code(R).else().code(F).endIf();else if(R)this.code(R).endIf();else if(F)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(k){return this._elseNode(new v(k))}else(){return this._elseNode(new g)}endIf(){return this._endBlockNode(v,g)}_for(k,R){return this._blockNode(k),R&&this.code(R).endFor(),this}for(k,R){return this._for(new b(k),R)}forRange(k,R,F,le,ce=this.opts.es5?r.varKinds.var:r.varKinds.let){let et=this._scope.toName(k);return this._for(new S(ce,et,R,F),()=>le(et))}forOf(k,R,F,le=r.varKinds.const){let ce=this._scope.toName(k);if(this.opts.es5){let et=R instanceof e.Name?R:this.var("_arr",R);return this.forRange("_i",0,(0,e._)`${et}.length`,Xe=>{this.var(ce,(0,e._)`${et}[${Xe}]`),F(ce)})}return this._for(new x("of",le,ce,R),()=>F(ce))}forIn(k,R,F,le=this.opts.es5?r.varKinds.var:r.varKinds.const){if(this.opts.ownProperties)return this.forOf(k,(0,e._)`Object.keys(${R})`,F);let ce=this._scope.toName(k);return this._for(new x("in",le,ce,R),()=>F(ce))}endFor(){return this._endBlockNode(y)}label(k){return this._leafNode(new u(k))}break(k){return this._leafNode(new l(k))}return(k){let R=new E;if(this._blockNode(R),this.code(k),R.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(E)}try(k,R,F){if(!R&&!F)throw new Error('CodeGen: "try" without "catch" and "finally"');let le=new T;if(this._blockNode(le),this.code(k),R){let ce=this.name("e");this._currNode=le.catch=new I(ce),R(ce)}return F&&(this._currNode=le.finally=new P,this.code(F)),this._endBlockNode(I,P)}throw(k){return this._leafNode(new d(k))}block(k,R){return this._blockStarts.push(this._nodes.length),k&&this.code(k).endBlock(R),this}endBlock(k){let R=this._blockStarts.pop();if(R===void 0)throw new Error("CodeGen: not in self-balancing block");let F=this._nodes.length-R;if(F<0||k!==void 0&&F!==k)throw new Error(`CodeGen: wrong number of nodes: ${F} vs ${k} expected`);return this._nodes.length=R,this}func(k,R=e.nil,F,le){return this._blockNode(new w(k,R,F)),le&&this.code(le).endFunc(),this}endFunc(){return this._endBlockNode(w)}optimize(k=1){for(;k-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(k){return this._currNode.nodes.push(k),this}_blockNode(k){this._currNode.nodes.push(k),this._nodes.push(k)}_endBlockNode(k,R){let F=this._currNode;if(F instanceof k||R&&F instanceof R)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${R?`${k.kind}/${R.kind}`:k.kind}"`)}_elseNode(k){let R=this._currNode;if(!(R instanceof v))throw new Error('CodeGen: "else" without "if"');return this._currNode=R.else=k,this}get _root(){return this._nodes[0]}get _currNode(){let k=this._nodes;return k[k.length-1]}set _currNode(k){let R=this._nodes;R[R.length-1]=k}}t.CodeGen=N;function L(M,k){for(let R in k)M[R]=(M[R]||0)+(k[R]||0);return M}function G(M,k){return k instanceof e._CodeOrName?L(M,k.names):M}function j(M,k,R){if(M instanceof e.Name)return F(M);if(!le(M))return M;return new e._Code(M._items.reduce((ce,et)=>(et instanceof e.Name&&(et=F(et)),et instanceof e._Code?ce.push(...et._items):ce.push(et),ce),[]));function F(ce){let et=R[ce.str];return et===void 0||k[ce.str]!==1?ce:(delete k[ce.str],et)}function le(ce){return ce instanceof e._Code&&ce._items.some(et=>et instanceof e.Name&&k[et.str]===1&&R[et.str]!==void 0)}}function ae(M,k){for(let R in k)M[R]=(M[R]||0)-(k[R]||0)}function Me(M){return typeof M=="boolean"||typeof M=="number"||M===null?!M:(0,e._)`!${H(M)}`}t.not=Me;var Le=C(t.operators.AND);function kt(...M){return M.reduce(Le)}t.and=kt;var Ge=C(t.operators.OR);function K(...M){return M.reduce(Ge)}t.or=K;function C(M){return(k,R)=>k===e.nil?R:R===e.nil?k:(0,e._)`${H(k)} ${M} ${H(R)}`}function H(M){return M instanceof e.Name?M:(0,e._)`(${M})`}}),ct=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.checkStrictMode=t.getErrorPath=t.Type=t.useFunc=t.setEvaluated=t.evaluatedPropsToName=t.mergeEvaluated=t.eachItem=t.unescapeJsonPointer=t.escapeJsonPointer=t.escapeFragment=t.unescapeFragment=t.schemaRefOrVal=t.schemaHasRulesButRef=t.schemaHasRules=t.checkUnknownRules=t.alwaysValidSchema=t.toHash=void 0;var e=Ze(),r=my();function n(w){let E={};for(let T of w)E[T]=!0;return E}t.toHash=n;function i(w,E){return typeof E=="boolean"?E:Object.keys(E).length===0?!0:(s(w,E),!o(E,w.self.RULES.all))}t.alwaysValidSchema=i;function s(w,E=w.schema){let{opts:T,self:I}=w;if(!T.strictSchema||typeof E=="boolean")return;let P=I.RULES.keywords;for(let N in E)P[N]||x(w,`unknown keyword: "${N}"`)}t.checkUnknownRules=s;function o(w,E){if(typeof w=="boolean")return!w;for(let T in w)if(E[T])return!0;return!1}t.schemaHasRules=o;function a(w,E){if(typeof w=="boolean")return!w;for(let T in w)if(T!=="$ref"&&E.all[T])return!0;return!1}t.schemaHasRulesButRef=a;function c({topSchemaRef:w,schemaPath:E},T,I,P){if(!P){if(typeof T=="number"||typeof T=="boolean")return T;if(typeof T=="string")return(0,e._)`${T}`}return(0,e._)`${w}${E}${(0,e.getProperty)(I)}`}t.schemaRefOrVal=c;function u(w){return p(decodeURIComponent(w))}t.unescapeFragment=u;function l(w){return encodeURIComponent(d(w))}t.escapeFragment=l;function d(w){return typeof w=="number"?`${w}`:w.replace(/~/g,"~0").replace(/\//g,"~1")}t.escapeJsonPointer=d;function p(w){return w.replace(/~1/g,"/").replace(/~0/g,"~")}t.unescapeJsonPointer=p;function f(w,E){if(Array.isArray(w))for(let T of w)E(T);else E(w)}t.eachItem=f;function m({mergeNames:w,mergeToName:E,mergeValues:T,resultToName:I}){return(P,N,L,G)=>{let j=L===void 0?N:L instanceof e.Name?(N instanceof e.Name?w(P,N,L):E(P,N,L),L):N instanceof e.Name?(E(P,L,N),N):T(N,L);return G===e.Name&&!(j instanceof e.Name)?I(P,j):j}}t.mergeEvaluated={props:m({mergeNames:(w,E,T)=>w.if((0,e._)`${T} !== true && ${E} !== undefined`,()=>{w.if((0,e._)`${E} === true`,()=>w.assign(T,!0),()=>w.assign(T,(0,e._)`${T} || {}`).code((0,e._)`Object.assign(${T}, ${E})`))}),mergeToName:(w,E,T)=>w.if((0,e._)`${T} !== true`,()=>{E===!0?w.assign(T,!0):(w.assign(T,(0,e._)`${T} || {}`),g(w,T,E))}),mergeValues:(w,E)=>w===!0?!0:{...w,...E},resultToName:h}),items:m({mergeNames:(w,E,T)=>w.if((0,e._)`${T} !== true && ${E} !== undefined`,()=>w.assign(T,(0,e._)`${E} === true ? true : ${T} > ${E} ? ${T} : ${E}`)),mergeToName:(w,E,T)=>w.if((0,e._)`${T} !== true`,()=>w.assign(T,E===!0?!0:(0,e._)`${T} > ${E} ? ${T} : ${E}`)),mergeValues:(w,E)=>w===!0?!0:Math.max(w,E),resultToName:(w,E)=>w.var("items",E)})};function h(w,E){if(E===!0)return w.var("props",!0);let T=w.var("props",(0,e._)`{}`);return E!==void 0&&g(w,T,E),T}t.evaluatedPropsToName=h;function g(w,E,T){Object.keys(T).forEach(I=>w.assign((0,e._)`${E}${(0,e.getProperty)(I)}`,!0))}t.setEvaluated=g;var v={};function y(w,E){return w.scopeValue("func",{ref:E,code:v[E.code]||(v[E.code]=new r._Code(E.code))})}t.useFunc=y;var b;(function(w){w[w.Num=0]="Num",w[w.Str=1]="Str"})(b||(t.Type=b={}));function S(w,E,T){if(w instanceof e.Name){let I=E===b.Num;return T?I?(0,e._)`"[" + ${w} + "]"`:(0,e._)`"['" + ${w} + "']"`:I?(0,e._)`"/" + ${w}`:(0,e._)`"/" + ${w}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return T?(0,e.getProperty)(w).toString():"/"+d(w)}t.getErrorPath=S;function x(w,E,T=w.opts.strictSchema){if(T){if(E=`strict mode: ${E}`,T===!0)throw new Error(E);w.self.logger.warn(E)}}t.checkStrictMode=x}),Lo=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r={data:new e.Name("data"),valCxt:new e.Name("valCxt"),instancePath:new e.Name("instancePath"),parentData:new e.Name("parentData"),parentDataProperty:new e.Name("parentDataProperty"),rootData:new e.Name("rootData"),dynamicAnchors:new e.Name("dynamicAnchors"),vErrors:new e.Name("vErrors"),errors:new e.Name("errors"),this:new e.Name("this"),self:new e.Name("self"),scope:new e.Name("scope"),json:new e.Name("json"),jsonPos:new e.Name("jsonPos"),jsonLen:new e.Name("jsonLen"),jsonPart:new e.Name("jsonPart")};t.default=r}),xy=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.extendErrors=t.resetErrorsCount=t.reportExtraError=t.reportError=t.keyword$DataError=t.keywordError=void 0;var e=Ze(),r=ct(),n=Lo();t.keywordError={message:({keyword:g})=>(0,e.str)`must pass "${g}" keyword validation`},t.keyword$DataError={message:({keyword:g,schemaType:v})=>v?(0,e.str)`"${g}" keyword must be ${v} ($data)`:(0,e.str)`"${g}" keyword is invalid ($data)`};function i(g,v=t.keywordError,y,b){let{it:S}=g,{gen:x,compositeRule:w,allErrors:E}=S,T=d(g,v,y);b??(w||E)?c(x,T):u(S,(0,e._)`[${T}]`)}t.reportError=i;function s(g,v=t.keywordError,y){let{it:b}=g,{gen:S,compositeRule:x,allErrors:w}=b,E=d(g,v,y);c(S,E),x||w||u(b,n.default.vErrors)}t.reportExtraError=s;function o(g,v){g.assign(n.default.errors,v),g.if((0,e._)`${n.default.vErrors} !== null`,()=>g.if(v,()=>g.assign((0,e._)`${n.default.vErrors}.length`,v),()=>g.assign(n.default.vErrors,null)))}t.resetErrorsCount=o;function a({gen:g,keyword:v,schemaValue:y,data:b,errsCount:S,it:x}){if(S===void 0)throw new Error("ajv implementation error");let w=g.name("err");g.forRange("i",S,n.default.errors,E=>{g.const(w,(0,e._)`${n.default.vErrors}[${E}]`),g.if((0,e._)`${w}.instancePath === undefined`,()=>g.assign((0,e._)`${w}.instancePath`,(0,e.strConcat)(n.default.instancePath,x.errorPath))),g.assign((0,e._)`${w}.schemaPath`,(0,e.str)`${x.errSchemaPath}/${v}`),x.opts.verbose&&(g.assign((0,e._)`${w}.schema`,y),g.assign((0,e._)`${w}.data`,b))})}t.extendErrors=a;function c(g,v){let y=g.const("err",v);g.if((0,e._)`${n.default.vErrors} === null`,()=>g.assign(n.default.vErrors,(0,e._)`[${y}]`),(0,e._)`${n.default.vErrors}.push(${y})`),g.code((0,e._)`${n.default.errors}++`)}function u(g,v){let{gen:y,validateName:b,schemaEnv:S}=g;S.$async?y.throw((0,e._)`new ${g.ValidationError}(${v})`):(y.assign((0,e._)`${b}.errors`,v),y.return(!1))}var l={keyword:new e.Name("keyword"),schemaPath:new e.Name("schemaPath"),params:new e.Name("params"),propertyName:new e.Name("propertyName"),message:new e.Name("message"),schema:new e.Name("schema"),parentSchema:new e.Name("parentSchema")};function d(g,v,y){let{createErrors:b}=g.it;return b===!1?(0,e._)`{}`:p(g,v,y)}function p(g,v,y={}){let{gen:b,it:S}=g,x=[f(S,y),m(g,y)];return h(g,v,x),b.object(...x)}function f({errorPath:g},{instancePath:v}){let y=v?(0,e.str)`${g}${(0,r.getErrorPath)(v,r.Type.Str)}`:g;return[n.default.instancePath,(0,e.strConcat)(n.default.instancePath,y)]}function m({keyword:g,it:{errSchemaPath:v}},{schemaPath:y,parentSchema:b}){let S=b?v:(0,e.str)`${v}/${g}`;return y&&(S=(0,e.str)`${S}${(0,r.getErrorPath)(y,r.Type.Str)}`),[l.schemaPath,S]}function h(g,{params:v,message:y},b){let{keyword:S,data:x,schemaValue:w,it:E}=g,{opts:T,propertyName:I,topSchemaRef:P,schemaPath:N}=E;b.push([l.keyword,S],[l.params,typeof v=="function"?v(g):v||(0,e._)`{}`]),T.messages&&b.push([l.message,typeof y=="function"?y(g):y]),T.verbose&&b.push([l.schema,w],[l.parentSchema,(0,e._)`${P}${N}`],[n.default.data,x]),I&&b.push([l.propertyName,I])}}),cde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.boolOrEmptySchema=t.topBoolOrEmptySchema=void 0;var e=xy(),r=Ze(),n=Lo(),i={message:"boolean schema is false"};function s(c){let{gen:u,schema:l,validateName:d}=c;l===!1?a(c,!1):typeof l=="object"&&l.$async===!0?u.return(n.default.data):(u.assign((0,r._)`${d}.errors`,null),u.return(!0))}t.topBoolOrEmptySchema=s;function o(c,u){let{gen:l,schema:d}=c;d===!1?(l.var(u,!1),a(c)):l.var(u,!0)}t.boolOrEmptySchema=o;function a(c,u){let{gen:l,data:d}=c,p={gen:l,keyword:"false schema",data:d,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:c};(0,e.reportError)(p,i,void 0,u)}}),bq=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getRules=t.isJSONType=void 0;var e=["string","number","integer","boolean","null","object","array"],r=new Set(e);function n(s){return typeof s=="string"&&r.has(s)}t.isJSONType=n;function i(){let s={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...s,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},s.number,s.string,s.array,s.object],post:{rules:[]},all:{},keywords:{}}}t.getRules=i}),Sq=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.shouldUseRule=t.shouldUseGroup=t.schemaHasRulesForType=void 0;function e({schema:i,self:s},o){let a=s.RULES.types[o];return a&&a!==!0&&r(i,a)}t.schemaHasRulesForType=e;function r(i,s){return s.rules.some(o=>n(i,o))}t.shouldUseGroup=r;function n(i,s){var o;return i[s.keyword]!==void 0||((o=s.definition.implements)===null||o===void 0?void 0:o.some(a=>i[a]!==void 0))}t.shouldUseRule=n}),hy=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.reportTypeError=t.checkDataTypes=t.checkDataType=t.coerceAndCheckDataType=t.getJSONTypes=t.getSchemaTypes=t.DataType=void 0;var e=bq(),r=Sq(),n=xy(),i=Ze(),s=ct(),o;(function(b){b[b.Correct=0]="Correct",b[b.Wrong=1]="Wrong"})(o||(t.DataType=o={}));function a(b){let S=c(b.type);if(S.includes("null")){if(b.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!S.length&&b.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');b.nullable===!0&&S.push("null")}return S}t.getSchemaTypes=a;function c(b){let S=Array.isArray(b)?b:b?[b]:[];if(S.every(e.isJSONType))return S;throw new Error("type must be JSONType or JSONType[]: "+S.join(","))}t.getJSONTypes=c;function u(b,S){let{gen:x,data:w,opts:E}=b,T=d(S,E.coerceTypes),I=S.length>0&&!(T.length===0&&S.length===1&&(0,r.schemaHasRulesForType)(b,S[0]));if(I){let P=h(S,w,E.strictNumbers,o.Wrong);x.if(P,()=>{T.length?p(b,S,T):v(b)})}return I}t.coerceAndCheckDataType=u;var l=new Set(["string","number","integer","boolean","null"]);function d(b,S){return S?b.filter(x=>l.has(x)||S==="array"&&x==="array"):[]}function p(b,S,x){let{gen:w,data:E,opts:T}=b,I=w.let("dataType",(0,i._)`typeof ${E}`),P=w.let("coerced",(0,i._)`undefined`);T.coerceTypes==="array"&&w.if((0,i._)`${I} == 'object' && Array.isArray(${E}) && ${E}.length == 1`,()=>w.assign(E,(0,i._)`${E}[0]`).assign(I,(0,i._)`typeof ${E}`).if(h(S,E,T.strictNumbers),()=>w.assign(P,E))),w.if((0,i._)`${P} !== undefined`);for(let L of x)(l.has(L)||L==="array"&&T.coerceTypes==="array")&&N(L);w.else(),v(b),w.endIf(),w.if((0,i._)`${P} !== undefined`,()=>{w.assign(E,P),f(b,P)});function N(L){switch(L){case"string":w.elseIf((0,i._)`${I} == "number" || ${I} == "boolean"`).assign(P,(0,i._)`"" + ${E}`).elseIf((0,i._)`${E} === null`).assign(P,(0,i._)`""`);return;case"number":w.elseIf((0,i._)`${I} == "boolean" || ${E} === null + || (${I} == "string" && ${E} && ${E} == +${E})`).assign(P,(0,i._)`+${E}`);return;case"integer":w.elseIf((0,i._)`${I} === "boolean" || ${E} === null + || (${I} === "string" && ${E} && ${E} == +${E} && !(${E} % 1))`).assign(P,(0,i._)`+${E}`);return;case"boolean":w.elseIf((0,i._)`${E} === "false" || ${E} === 0 || ${E} === null`).assign(P,!1).elseIf((0,i._)`${E} === "true" || ${E} === 1`).assign(P,!0);return;case"null":w.elseIf((0,i._)`${E} === "" || ${E} === 0 || ${E} === false`),w.assign(P,null);return;case"array":w.elseIf((0,i._)`${I} === "string" || ${I} === "number" + || ${I} === "boolean" || ${E} === null`).assign(P,(0,i._)`[${E}]`)}}}function f({gen:b,parentData:S,parentDataProperty:x},w){b.if((0,i._)`${S} !== undefined`,()=>b.assign((0,i._)`${S}[${x}]`,w))}function m(b,S,x,w=o.Correct){let E=w===o.Correct?i.operators.EQ:i.operators.NEQ,T;switch(b){case"null":return(0,i._)`${S} ${E} null`;case"array":T=(0,i._)`Array.isArray(${S})`;break;case"object":T=(0,i._)`${S} && typeof ${S} == "object" && !Array.isArray(${S})`;break;case"integer":T=I((0,i._)`!(${S} % 1) && !isNaN(${S})`);break;case"number":T=I();break;default:return(0,i._)`typeof ${S} ${E} ${b}`}return w===o.Correct?T:(0,i.not)(T);function I(P=i.nil){return(0,i.and)((0,i._)`typeof ${S} == "number"`,P,x?(0,i._)`isFinite(${S})`:i.nil)}}t.checkDataType=m;function h(b,S,x,w){if(b.length===1)return m(b[0],S,x,w);let E,T=(0,s.toHash)(b);if(T.array&&T.object){let I=(0,i._)`typeof ${S} != "object"`;E=T.null?I:(0,i._)`!${S} || ${I}`,delete T.null,delete T.array,delete T.object}else E=i.nil;T.number&&delete T.integer;for(let I in T)E=(0,i.and)(E,m(I,S,x,w));return E}t.checkDataTypes=h;var g={message:({schema:b})=>`must be ${b}`,params:({schema:b,schemaValue:S})=>typeof b=="string"?(0,i._)`{type: ${b}}`:(0,i._)`{type: ${S}}`};function v(b){let S=y(b);(0,n.reportError)(S,g)}t.reportTypeError=v;function y(b){let{gen:S,data:x,schema:w}=b,E=(0,s.schemaRefOrVal)(b,w,"type");return{gen:S,keyword:"type",data:x,schema:w.type,schemaCode:E,schemaValue:E,parentSchema:w,params:{},it:b}}}),ude=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.assignDefaults=void 0;var e=Ze(),r=ct();function n(s,o){let{properties:a,items:c}=s.schema;if(o==="object"&&a)for(let u in a)i(s,u,a[u].default);else o==="array"&&Array.isArray(c)&&c.forEach((u,l)=>i(s,l,u.default))}t.assignDefaults=n;function i(s,o,a){let{gen:c,compositeRule:u,data:l,opts:d}=s;if(a===void 0)return;let p=(0,e._)`${l}${(0,e.getProperty)(o)}`;if(u){(0,r.checkStrictMode)(s,`default is ignored for: ${p}`);return}let f=(0,e._)`${p} === undefined`;d.useDefaults==="empty"&&(f=(0,e._)`${f} || ${p} === null || ${p} === ""`),c.if(f,(0,e._)`${p} = ${(0,e.stringify)(a)}`)}}),Ri=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateUnion=t.validateArray=t.usePattern=t.callValidateCode=t.schemaProperties=t.allSchemaProperties=t.noPropertyInData=t.propertyInData=t.isOwnProperty=t.hasPropFunc=t.reportMissingProp=t.checkMissingProp=t.checkReportMissingProp=void 0;var e=Ze(),r=ct(),n=Lo(),i=ct();function s(b,S){let{gen:x,data:w,it:E}=b;x.if(d(x,w,S,E.opts.ownProperties),()=>{b.setParams({missingProperty:(0,e._)`${S}`},!0),b.error()})}t.checkReportMissingProp=s;function o({gen:b,data:S,it:{opts:x}},w,E){return(0,e.or)(...w.map(T=>(0,e.and)(d(b,S,T,x.ownProperties),(0,e._)`${E} = ${T}`)))}t.checkMissingProp=o;function a(b,S){b.setParams({missingProperty:S},!0),b.error()}t.reportMissingProp=a;function c(b){return b.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,e._)`Object.prototype.hasOwnProperty`})}t.hasPropFunc=c;function u(b,S,x){return(0,e._)`${c(b)}.call(${S}, ${x})`}t.isOwnProperty=u;function l(b,S,x,w){let E=(0,e._)`${S}${(0,e.getProperty)(x)} !== undefined`;return w?(0,e._)`${E} && ${u(b,S,x)}`:E}t.propertyInData=l;function d(b,S,x,w){let E=(0,e._)`${S}${(0,e.getProperty)(x)} === undefined`;return w?(0,e.or)(E,(0,e.not)(u(b,S,x))):E}t.noPropertyInData=d;function p(b){return b?Object.keys(b).filter(S=>S!=="__proto__"):[]}t.allSchemaProperties=p;function f(b,S){return p(S).filter(x=>!(0,r.alwaysValidSchema)(b,S[x]))}t.schemaProperties=f;function m({schemaCode:b,data:S,it:{gen:x,topSchemaRef:w,schemaPath:E,errorPath:T},it:I},P,N,L){let G=L?(0,e._)`${b}, ${S}, ${w}${E}`:S,j=[[n.default.instancePath,(0,e.strConcat)(n.default.instancePath,T)],[n.default.parentData,I.parentData],[n.default.parentDataProperty,I.parentDataProperty],[n.default.rootData,n.default.rootData]];I.opts.dynamicRef&&j.push([n.default.dynamicAnchors,n.default.dynamicAnchors]);let ae=(0,e._)`${G}, ${x.object(...j)}`;return N!==e.nil?(0,e._)`${P}.call(${N}, ${ae})`:(0,e._)`${P}(${ae})`}t.callValidateCode=m;var h=(0,e._)`new RegExp`;function g({gen:b,it:{opts:S}},x){let w=S.unicodeRegExp?"u":"",{regExp:E}=S.code,T=E(x,w);return b.scopeValue("pattern",{key:T.toString(),ref:T,code:(0,e._)`${E.code==="new RegExp"?h:(0,i.useFunc)(b,E)}(${x}, ${w})`})}t.usePattern=g;function v(b){let{gen:S,data:x,keyword:w,it:E}=b,T=S.name("valid");if(E.allErrors){let P=S.let("valid",!0);return I(()=>S.assign(P,!1)),P}return S.var(T,!0),I(()=>S.break()),T;function I(P){let N=S.const("len",(0,e._)`${x}.length`);S.forRange("i",0,N,L=>{b.subschema({keyword:w,dataProp:L,dataPropType:r.Type.Num},T),S.if((0,e.not)(T),P)})}}t.validateArray=v;function y(b){let{gen:S,schema:x,keyword:w,it:E}=b;if(!Array.isArray(x))throw new Error("ajv implementation error");if(x.some(N=>(0,r.alwaysValidSchema)(E,N))&&!E.opts.unevaluated)return;let I=S.let("valid",!1),P=S.name("_valid");S.block(()=>x.forEach((N,L)=>{let G=b.subschema({keyword:w,schemaProp:L,compositeRule:!0},P);S.assign(I,(0,e._)`${I} || ${P}`),b.mergeValidEvaluated(G,P)||S.if((0,e.not)(I))})),b.result(I,()=>b.reset(),()=>b.error(!0))}t.validateUnion=y}),lde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateKeywordUsage=t.validSchemaType=t.funcKeywordCode=t.macroKeywordCode=void 0;var e=Ze(),r=Lo(),n=Ri(),i=xy();function s(f,m){let{gen:h,keyword:g,schema:v,parentSchema:y,it:b}=f,S=m.macro.call(b.self,v,y,b),x=l(h,g,S);b.opts.validateSchema!==!1&&b.self.validateSchema(S,!0);let w=h.name("valid");f.subschema({schema:S,schemaPath:e.nil,errSchemaPath:`${b.errSchemaPath}/${g}`,topSchemaRef:x,compositeRule:!0},w),f.pass(w,()=>f.error(!0))}t.macroKeywordCode=s;function o(f,m){var h;let{gen:g,keyword:v,schema:y,parentSchema:b,$data:S,it:x}=f;u(x,m);let w=!S&&m.compile?m.compile.call(x.self,y,b,x):m.validate,E=l(g,v,w),T=g.let("valid");f.block$data(T,I),f.ok((h=m.valid)!==null&&h!==void 0?h:T);function I(){if(m.errors===!1)L(),m.modifying&&a(f),G(()=>f.error());else{let j=m.async?P():N();m.modifying&&a(f),G(()=>c(f,j))}}function P(){let j=g.let("ruleErrs",null);return g.try(()=>L((0,e._)`await `),ae=>g.assign(T,!1).if((0,e._)`${ae} instanceof ${x.ValidationError}`,()=>g.assign(j,(0,e._)`${ae}.errors`),()=>g.throw(ae))),j}function N(){let j=(0,e._)`${E}.errors`;return g.assign(j,null),L(e.nil),j}function L(j=m.async?(0,e._)`await `:e.nil){let ae=x.opts.passContext?r.default.this:r.default.self,Me=!("compile"in m&&!S||m.schema===!1);g.assign(T,(0,e._)`${j}${(0,n.callValidateCode)(f,E,ae,Me)}`,m.modifying)}function G(j){var ae;g.if((0,e.not)((ae=m.valid)!==null&&ae!==void 0?ae:T),j)}}t.funcKeywordCode=o;function a(f){let{gen:m,data:h,it:g}=f;m.if(g.parentData,()=>m.assign(h,(0,e._)`${g.parentData}[${g.parentDataProperty}]`))}function c(f,m){let{gen:h}=f;h.if((0,e._)`Array.isArray(${m})`,()=>{h.assign(r.default.vErrors,(0,e._)`${r.default.vErrors} === null ? ${m} : ${r.default.vErrors}.concat(${m})`).assign(r.default.errors,(0,e._)`${r.default.vErrors}.length`),(0,i.extendErrors)(f)},()=>f.error())}function u({schemaEnv:f},m){if(m.async&&!f.$async)throw new Error("async keyword in sync schema")}function l(f,m,h){if(h===void 0)throw new Error(`keyword "${m}" failed to compile`);return f.scopeValue("keyword",typeof h=="function"?{ref:h}:{ref:h,code:(0,e.stringify)(h)})}function d(f,m,h=!1){return!m.length||m.some(g=>g==="array"?Array.isArray(f):g==="object"?f&&typeof f=="object"&&!Array.isArray(f):typeof f==g||h&&typeof f>"u")}t.validSchemaType=d;function p({schema:f,opts:m,self:h,errSchemaPath:g},v,y){if(Array.isArray(v.keyword)?!v.keyword.includes(y):v.keyword!==y)throw new Error("ajv implementation error");let b=v.dependencies;if(b?.some(S=>!Object.prototype.hasOwnProperty.call(f,S)))throw new Error(`parent schema must have dependencies of ${y}: ${b.join(",")}`);if(v.validateSchema&&!v.validateSchema(f[y])){let x=`keyword "${y}" value is invalid at path "${g}": `+h.errorsText(v.validateSchema.errors);if(m.validateSchema==="log")h.logger.error(x);else throw new Error(x)}}t.validateKeywordUsage=p}),dde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.extendSubschemaMode=t.extendSubschemaData=t.getSubschema=void 0;var e=Ze(),r=ct();function n(o,{keyword:a,schemaProp:c,schema:u,schemaPath:l,errSchemaPath:d,topSchemaRef:p}){if(a!==void 0&&u!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(a!==void 0){let f=o.schema[a];return c===void 0?{schema:f,schemaPath:(0,e._)`${o.schemaPath}${(0,e.getProperty)(a)}`,errSchemaPath:`${o.errSchemaPath}/${a}`}:{schema:f[c],schemaPath:(0,e._)`${o.schemaPath}${(0,e.getProperty)(a)}${(0,e.getProperty)(c)}`,errSchemaPath:`${o.errSchemaPath}/${a}/${(0,r.escapeFragment)(c)}`}}if(u!==void 0){if(l===void 0||d===void 0||p===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:u,schemaPath:l,topSchemaRef:p,errSchemaPath:d}}throw new Error('either "keyword" or "schema" must be passed')}t.getSubschema=n;function i(o,a,{dataProp:c,dataPropType:u,data:l,dataTypes:d,propertyName:p}){if(l!==void 0&&c!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:f}=a;if(c!==void 0){let{errorPath:h,dataPathArr:g,opts:v}=a,y=f.let("data",(0,e._)`${a.data}${(0,e.getProperty)(c)}`,!0);m(y),o.errorPath=(0,e.str)`${h}${(0,r.getErrorPath)(c,u,v.jsPropertySyntax)}`,o.parentDataProperty=(0,e._)`${c}`,o.dataPathArr=[...g,o.parentDataProperty]}if(l!==void 0){let h=l instanceof e.Name?l:f.let("data",l,!0);m(h),p!==void 0&&(o.propertyName=p)}d&&(o.dataTypes=d);function m(h){o.data=h,o.dataLevel=a.dataLevel+1,o.dataTypes=[],a.definedProperties=new Set,o.parentData=a.data,o.dataNames=[...a.dataNames,h]}}t.extendSubschemaData=i;function s(o,{jtdDiscriminator:a,jtdMetadata:c,compositeRule:u,createErrors:l,allErrors:d}){u!==void 0&&(o.compositeRule=u),l!==void 0&&(o.createErrors=l),d!==void 0&&(o.allErrors=d),o.jtdDiscriminator=a,o.jtdMetadata=c}t.extendSubschemaMode=s}),xq=ne((t,e)=>{e.exports=function r(n,i){if(n===i)return!0;if(n&&i&&typeof n=="object"&&typeof i=="object"){if(n.constructor!==i.constructor)return!1;var s,o,a;if(Array.isArray(n)){if(s=n.length,s!=i.length)return!1;for(o=s;o--!==0;)if(!r(n[o],i[o]))return!1;return!0}if(n.constructor===RegExp)return n.source===i.source&&n.flags===i.flags;if(n.valueOf!==Object.prototype.valueOf)return n.valueOf()===i.valueOf();if(n.toString!==Object.prototype.toString)return n.toString()===i.toString();if(a=Object.keys(n),s=a.length,s!==Object.keys(i).length)return!1;for(o=s;o--!==0;)if(!Object.prototype.hasOwnProperty.call(i,a[o]))return!1;for(o=s;o--!==0;){var c=a[o];if(!r(n[c],i[c]))return!1}return!0}return n!==n&&i!==i}}),pde=ne((t,e)=>{var r=e.exports=function(s,o,a){typeof o=="function"&&(a=o,o={}),a=o.cb||a;var c=typeof a=="function"?a:a.pre||function(){},u=a.post||function(){};n(o,c,u,s,"",s)};r.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0},r.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0},r.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0},r.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function n(s,o,a,c,u,l,d,p,f,m){if(c&&typeof c=="object"&&!Array.isArray(c)){o(c,u,l,d,p,f,m);for(var h in c){var g=c[h];if(Array.isArray(g)){if(h in r.arrayKeywords)for(var v=0;v{Object.defineProperty(t,"__esModule",{value:!0}),t.getSchemaRefs=t.resolveUrl=t.normalizeId=t._getFullPath=t.getFullPath=t.inlineRef=void 0;var e=ct(),r=xq(),n=pde(),i=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function s(g,v=!0){return typeof g=="boolean"?!0:v===!0?!a(g):v?c(g)<=v:!1}t.inlineRef=s;var o=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function a(g){for(let v in g){if(o.has(v))return!0;let y=g[v];if(Array.isArray(y)&&y.some(a)||typeof y=="object"&&a(y))return!0}return!1}function c(g){let v=0;for(let y in g){if(y==="$ref")return 1/0;if(v++,!i.has(y)&&(typeof g[y]=="object"&&(0,e.eachItem)(g[y],b=>v+=c(b)),v===1/0))return 1/0}return v}function u(g,v="",y){y!==!1&&(v=p(v));let b=g.parse(v);return l(g,b)}t.getFullPath=u;function l(g,v){return g.serialize(v).split("#")[0]+"#"}t._getFullPath=l;var d=/#\/?$/;function p(g){return g?g.replace(d,""):""}t.normalizeId=p;function f(g,v,y){return y=p(y),g.resolve(v,y)}t.resolveUrl=f;var m=/^[a-z_][-a-z0-9._]*$/i;function h(g,v){if(typeof g=="boolean")return{};let{schemaId:y,uriResolver:b}=this.opts,S=p(g[y]||v),x={"":S},w=u(b,S,!1),E={},T=new Set;return n(g,{allKeys:!0},(N,L,G,j)=>{if(j===void 0)return;let ae=w+L,Me=x[j];typeof N[y]=="string"&&(Me=Le.call(this,N[y])),kt.call(this,N.$anchor),kt.call(this,N.$dynamicAnchor),x[L]=Me;function Le(Ge){let K=this.opts.uriResolver.resolve;if(Ge=p(Me?K(Me,Ge):Ge),T.has(Ge))throw P(Ge);T.add(Ge);let C=this.refs[Ge];return typeof C=="string"&&(C=this.refs[C]),typeof C=="object"?I(N,C.schema,Ge):Ge!==p(ae)&&(Ge[0]==="#"?(I(N,E[Ge],Ge),E[Ge]=N):this.refs[Ge]=ae),Ge}function kt(Ge){if(typeof Ge=="string"){if(!m.test(Ge))throw new Error(`invalid anchor "${Ge}"`);Le.call(this,`#${Ge}`)}}}),E;function I(N,L,G){if(L!==void 0&&!r(N,L))throw P(G)}function P(N){return new Error(`reference "${N}" resolves to more than one schema`)}}t.getSchemaRefs=h}),Ey=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getData=t.KeywordCxt=t.validateFunctionCode=void 0;var e=cde(),r=hy(),n=Sq(),i=hy(),s=ude(),o=lde(),a=dde(),c=Ze(),u=Lo(),l=wy(),d=ct(),p=xy();function f(A){if(w(A)&&(T(A),x(A))){v(A);return}m(A,()=>(0,e.topBoolOrEmptySchema)(A))}t.validateFunctionCode=f;function m({gen:A,validateName:D,schema:Z,schemaEnv:J,opts:ue},We){ue.code.es5?A.func(D,(0,c._)`${u.default.data}, ${u.default.valCxt}`,J.$async,()=>{A.code((0,c._)`"use strict"; ${b(Z,ue)}`),g(A,ue),A.code(We)}):A.func(D,(0,c._)`${u.default.data}, ${h(ue)}`,J.$async,()=>A.code(b(Z,ue)).code(We))}function h(A){return(0,c._)`{${u.default.instancePath}="", ${u.default.parentData}, ${u.default.parentDataProperty}, ${u.default.rootData}=${u.default.data}${A.dynamicRef?(0,c._)`, ${u.default.dynamicAnchors}={}`:c.nil}}={}`}function g(A,D){A.if(u.default.valCxt,()=>{A.var(u.default.instancePath,(0,c._)`${u.default.valCxt}.${u.default.instancePath}`),A.var(u.default.parentData,(0,c._)`${u.default.valCxt}.${u.default.parentData}`),A.var(u.default.parentDataProperty,(0,c._)`${u.default.valCxt}.${u.default.parentDataProperty}`),A.var(u.default.rootData,(0,c._)`${u.default.valCxt}.${u.default.rootData}`),D.dynamicRef&&A.var(u.default.dynamicAnchors,(0,c._)`${u.default.valCxt}.${u.default.dynamicAnchors}`)},()=>{A.var(u.default.instancePath,(0,c._)`""`),A.var(u.default.parentData,(0,c._)`undefined`),A.var(u.default.parentDataProperty,(0,c._)`undefined`),A.var(u.default.rootData,u.default.data),D.dynamicRef&&A.var(u.default.dynamicAnchors,(0,c._)`{}`)})}function v(A){let{schema:D,opts:Z,gen:J}=A;m(A,()=>{Z.$comment&&D.$comment&&j(A),N(A),J.let(u.default.vErrors,null),J.let(u.default.errors,0),Z.unevaluated&&y(A),I(A),ae(A)})}function y(A){let{gen:D,validateName:Z}=A;A.evaluated=D.const("evaluated",(0,c._)`${Z}.evaluated`),D.if((0,c._)`${A.evaluated}.dynamicProps`,()=>D.assign((0,c._)`${A.evaluated}.props`,(0,c._)`undefined`)),D.if((0,c._)`${A.evaluated}.dynamicItems`,()=>D.assign((0,c._)`${A.evaluated}.items`,(0,c._)`undefined`))}function b(A,D){let Z=typeof A=="object"&&A[D.schemaId];return Z&&(D.code.source||D.code.process)?(0,c._)`/*# sourceURL=${Z} */`:c.nil}function S(A,D){if(w(A)&&(T(A),x(A))){E(A,D);return}(0,e.boolOrEmptySchema)(A,D)}function x({schema:A,self:D}){if(typeof A=="boolean")return!A;for(let Z in A)if(D.RULES.all[Z])return!0;return!1}function w(A){return typeof A.schema!="boolean"}function E(A,D){let{schema:Z,gen:J,opts:ue}=A;ue.$comment&&Z.$comment&&j(A),L(A),G(A);let We=J.const("_errs",u.default.errors);I(A,We),J.var(D,(0,c._)`${We} === ${u.default.errors}`)}function T(A){(0,d.checkUnknownRules)(A),P(A)}function I(A,D){if(A.opts.jtd)return Le(A,[],!1,D);let Z=(0,r.getSchemaTypes)(A.schema),J=(0,r.coerceAndCheckDataType)(A,Z);Le(A,Z,!J,D)}function P(A){let{schema:D,errSchemaPath:Z,opts:J,self:ue}=A;D.$ref&&J.ignoreKeywordsWithRef&&(0,d.schemaHasRulesButRef)(D,ue.RULES)&&ue.logger.warn(`$ref: keywords ignored in schema at path "${Z}"`)}function N(A){let{schema:D,opts:Z}=A;D.default!==void 0&&Z.useDefaults&&Z.strictSchema&&(0,d.checkStrictMode)(A,"default is ignored in the schema root")}function L(A){let D=A.schema[A.opts.schemaId];D&&(A.baseId=(0,l.resolveUrl)(A.opts.uriResolver,A.baseId,D))}function G(A){if(A.schema.$async&&!A.schemaEnv.$async)throw new Error("async schema in sync schema")}function j({gen:A,schemaEnv:D,schema:Z,errSchemaPath:J,opts:ue}){let We=Z.$comment;if(ue.$comment===!0)A.code((0,c._)`${u.default.self}.logger.log(${We})`);else if(typeof ue.$comment=="function"){let br=(0,c.str)`${J}/$comment`,ui=A.scopeValue("root",{ref:D.root});A.code((0,c._)`${u.default.self}.opts.$comment(${We}, ${br}, ${ui}.schema)`)}}function ae(A){let{gen:D,schemaEnv:Z,validateName:J,ValidationError:ue,opts:We}=A;Z.$async?D.if((0,c._)`${u.default.errors} === 0`,()=>D.return(u.default.data),()=>D.throw((0,c._)`new ${ue}(${u.default.vErrors})`)):(D.assign((0,c._)`${J}.errors`,u.default.vErrors),We.unevaluated&&Me(A),D.return((0,c._)`${u.default.errors} === 0`))}function Me({gen:A,evaluated:D,props:Z,items:J}){Z instanceof c.Name&&A.assign((0,c._)`${D}.props`,Z),J instanceof c.Name&&A.assign((0,c._)`${D}.items`,J)}function Le(A,D,Z,J){let{gen:ue,schema:We,data:br,allErrors:ui,opts:un,self:ln}=A,{RULES:Sr}=ln;if(We.$ref&&(un.ignoreKeywordsWithRef||!(0,d.schemaHasRulesButRef)(We,Sr))){ue.block(()=>ce(A,"$ref",Sr.all.$ref.definition));return}un.jtd||Ge(A,D),ue.block(()=>{for(let Un of Sr.rules)Ka(Un);Ka(Sr.post)});function Ka(Un){(0,n.shouldUseGroup)(We,Un)&&(Un.type?(ue.if((0,i.checkDataType)(Un.type,br,un.strictNumbers)),kt(A,Un),D.length===1&&D[0]===Un.type&&Z&&(ue.else(),(0,i.reportTypeError)(A)),ue.endIf()):kt(A,Un),ui||ue.if((0,c._)`${u.default.errors} === ${J||0}`))}}function kt(A,D){let{gen:Z,schema:J,opts:{useDefaults:ue}}=A;ue&&(0,s.assignDefaults)(A,D.type),Z.block(()=>{for(let We of D.rules)(0,n.shouldUseRule)(J,We)&&ce(A,We.keyword,We.definition,D.type)})}function Ge(A,D){A.schemaEnv.meta||!A.opts.strictTypes||(K(A,D),A.opts.allowUnionTypes||C(A,D),H(A,A.dataTypes))}function K(A,D){if(D.length){if(!A.dataTypes.length){A.dataTypes=D;return}D.forEach(Z=>{k(A.dataTypes,Z)||F(A,`type "${Z}" not allowed by context "${A.dataTypes.join(",")}"`)}),R(A,D)}}function C(A,D){D.length>1&&!(D.length===2&&D.includes("null"))&&F(A,"use allowUnionTypes to allow union type keyword")}function H(A,D){let Z=A.self.RULES.all;for(let J in Z){let ue=Z[J];if(typeof ue=="object"&&(0,n.shouldUseRule)(A.schema,ue)){let{type:We}=ue.definition;We.length&&!We.some(br=>M(D,br))&&F(A,`missing type "${We.join(",")}" for keyword "${J}"`)}}}function M(A,D){return A.includes(D)||D==="number"&&A.includes("integer")}function k(A,D){return A.includes(D)||D==="integer"&&A.includes("number")}function R(A,D){let Z=[];for(let J of A.dataTypes)k(D,J)?Z.push(J):D.includes("integer")&&J==="number"&&Z.push("integer");A.dataTypes=Z}function F(A,D){let Z=A.schemaEnv.baseId+A.errSchemaPath;D+=` at "${Z}" (strictTypes)`,(0,d.checkStrictMode)(A,D,A.opts.strictTypes)}class le{constructor(D,Z,J){if((0,o.validateKeywordUsage)(D,Z,J),this.gen=D.gen,this.allErrors=D.allErrors,this.keyword=J,this.data=D.data,this.schema=D.schema[J],this.$data=Z.$data&&D.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,d.schemaRefOrVal)(D,this.schema,J,this.$data),this.schemaType=Z.schemaType,this.parentSchema=D.schema,this.params={},this.it=D,this.def=Z,this.$data)this.schemaCode=D.gen.const("vSchema",qt(this.$data,D));else if(this.schemaCode=this.schemaValue,!(0,o.validSchemaType)(this.schema,Z.schemaType,Z.allowUndefined))throw new Error(`${J} value must be ${JSON.stringify(Z.schemaType)}`);("code"in Z?Z.trackErrors:Z.errors!==!1)&&(this.errsCount=D.gen.const("_errs",u.default.errors))}result(D,Z,J){this.failResult((0,c.not)(D),Z,J)}failResult(D,Z,J){this.gen.if(D),J?J():this.error(),Z?(this.gen.else(),Z(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(D,Z){this.failResult((0,c.not)(D),void 0,Z)}fail(D){if(D===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(D),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(D){if(!this.$data)return this.fail(D);let{schemaCode:Z}=this;this.fail((0,c._)`${Z} !== undefined && (${(0,c.or)(this.invalid$data(),D)})`)}error(D,Z,J){if(Z){this.setParams(Z),this._error(D,J),this.setParams({});return}this._error(D,J)}_error(D,Z){(D?p.reportExtraError:p.reportError)(this,this.def.error,Z)}$dataError(){(0,p.reportError)(this,this.def.$dataError||p.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,p.resetErrorsCount)(this.gen,this.errsCount)}ok(D){this.allErrors||this.gen.if(D)}setParams(D,Z){Z?Object.assign(this.params,D):this.params=D}block$data(D,Z,J=c.nil){this.gen.block(()=>{this.check$data(D,J),Z()})}check$data(D=c.nil,Z=c.nil){if(!this.$data)return;let{gen:J,schemaCode:ue,schemaType:We,def:br}=this;J.if((0,c.or)((0,c._)`${ue} === undefined`,Z)),D!==c.nil&&J.assign(D,!0),(We.length||br.validateSchema)&&(J.elseIf(this.invalid$data()),this.$dataError(),D!==c.nil&&J.assign(D,!1)),J.else()}invalid$data(){let{gen:D,schemaCode:Z,schemaType:J,def:ue,it:We}=this;return(0,c.or)(br(),ui());function br(){if(J.length){if(!(Z instanceof c.Name))throw new Error("ajv implementation error");let un=Array.isArray(J)?J:[J];return(0,c._)`${(0,i.checkDataTypes)(un,Z,We.opts.strictNumbers,i.DataType.Wrong)}`}return c.nil}function ui(){if(ue.validateSchema){let un=D.scopeValue("validate$data",{ref:ue.validateSchema});return(0,c._)`!${un}(${Z})`}return c.nil}}subschema(D,Z){let J=(0,a.getSubschema)(this.it,D);(0,a.extendSubschemaData)(J,this.it,D),(0,a.extendSubschemaMode)(J,D);let ue={...this.it,...J,items:void 0,props:void 0};return S(ue,Z),ue}mergeEvaluated(D,Z){let{it:J,gen:ue}=this;J.opts.unevaluated&&(J.props!==!0&&D.props!==void 0&&(J.props=d.mergeEvaluated.props(ue,D.props,J.props,Z)),J.items!==!0&&D.items!==void 0&&(J.items=d.mergeEvaluated.items(ue,D.items,J.items,Z)))}mergeValidEvaluated(D,Z){let{it:J,gen:ue}=this;if(J.opts.unevaluated&&(J.props!==!0||J.items!==!0))return ue.if(Z,()=>this.mergeEvaluated(D,c.Name)),!0}}t.KeywordCxt=le;function ce(A,D,Z,J){let ue=new le(A,Z,D);"code"in Z?Z.code(ue,J):ue.$data&&Z.validate?(0,o.funcKeywordCode)(ue,Z):"macro"in Z?(0,o.macroKeywordCode)(ue,Z):(Z.compile||Z.validate)&&(0,o.funcKeywordCode)(ue,Z)}var et=/^\/(?:[^~]|~0|~1)*$/,Xe=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function qt(A,{dataLevel:D,dataNames:Z,dataPathArr:J}){let ue,We;if(A==="")return u.default.rootData;if(A[0]==="/"){if(!et.test(A))throw new Error(`Invalid JSON-pointer: ${A}`);ue=A,We=u.default.rootData}else{let ln=Xe.exec(A);if(!ln)throw new Error(`Invalid JSON-pointer: ${A}`);let Sr=+ln[1];if(ue=ln[2],ue==="#"){if(Sr>=D)throw new Error(un("property/index",Sr));return J[D-Sr]}if(Sr>D)throw new Error(un("data",Sr));if(We=Z[D-Sr],!ue)return We}let br=We,ui=ue.split("/");for(let ln of ui)ln&&(We=(0,c._)`${We}${(0,c.getProperty)((0,d.unescapeJsonPointer)(ln))}`,br=(0,c._)`${br} && ${We}`);return br;function un(ln,Sr){return`Cannot access ${ln} ${Sr} levels up, current level is ${D}`}}t.getData=qt}),II=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});class e extends Error{constructor(n){super("validation failed"),this.errors=n,this.ajv=this.validation=!0}}t.default=e}),ky=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=wy();class r extends Error{constructor(i,s,o,a){super(a||`can't resolve reference ${o} from id ${s}`),this.missingRef=(0,e.resolveUrl)(i,s,o),this.missingSchema=(0,e.normalizeId)((0,e.getFullPath)(i,this.missingRef))}}t.default=r}),RI=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.resolveSchema=t.getCompilingSchema=t.resolveRef=t.compileSchema=t.SchemaEnv=void 0;var e=Ze(),r=II(),n=Lo(),i=wy(),s=ct(),o=Ey();class a{constructor(y){var b;this.refs={},this.dynamicAnchors={};let S;typeof y.schema=="object"&&(S=y.schema),this.schema=y.schema,this.schemaId=y.schemaId,this.root=y.root||this,this.baseId=(b=y.baseId)!==null&&b!==void 0?b:(0,i.normalizeId)(S?.[y.schemaId||"$id"]),this.schemaPath=y.schemaPath,this.localRefs=y.localRefs,this.meta=y.meta,this.$async=S?.$async,this.refs={}}}t.SchemaEnv=a;function c(v){let y=d.call(this,v);if(y)return y;let b=(0,i.getFullPath)(this.opts.uriResolver,v.root.baseId),{es5:S,lines:x}=this.opts.code,{ownProperties:w}=this.opts,E=new e.CodeGen(this.scope,{es5:S,lines:x,ownProperties:w}),T;v.$async&&(T=E.scopeValue("Error",{ref:r.default,code:(0,e._)`require("ajv/dist/runtime/validation_error").default`}));let I=E.scopeName("validate");v.validateName=I;let P={gen:E,allErrors:this.opts.allErrors,data:n.default.data,parentData:n.default.parentData,parentDataProperty:n.default.parentDataProperty,dataNames:[n.default.data],dataPathArr:[e.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:E.scopeValue("schema",this.opts.code.source===!0?{ref:v.schema,code:(0,e.stringify)(v.schema)}:{ref:v.schema}),validateName:I,ValidationError:T,schema:v.schema,schemaEnv:v,rootId:b,baseId:v.baseId||b,schemaPath:e.nil,errSchemaPath:v.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,e._)`""`,opts:this.opts,self:this},N;try{this._compilations.add(v),(0,o.validateFunctionCode)(P),E.optimize(this.opts.code.optimize);let L=E.toString();N=`${E.scopeRefs(n.default.scope)}return ${L}`,this.opts.code.process&&(N=this.opts.code.process(N,v));let j=new Function(`${n.default.self}`,`${n.default.scope}`,N)(this,this.scope.get());if(this.scope.value(I,{ref:j}),j.errors=null,j.schema=v.schema,j.schemaEnv=v,v.$async&&(j.$async=!0),this.opts.code.source===!0&&(j.source={validateName:I,validateCode:L,scopeValues:E._values}),this.opts.unevaluated){let{props:ae,items:Me}=P;j.evaluated={props:ae instanceof e.Name?void 0:ae,items:Me instanceof e.Name?void 0:Me,dynamicProps:ae instanceof e.Name,dynamicItems:Me instanceof e.Name},j.source&&(j.source.evaluated=(0,e.stringify)(j.evaluated))}return v.validate=j,v}catch(L){throw delete v.validate,delete v.validateName,N&&this.logger.error("Error compiling schema, function code:",N),L}finally{this._compilations.delete(v)}}t.compileSchema=c;function u(v,y,b){var S;b=(0,i.resolveUrl)(this.opts.uriResolver,y,b);let x=v.refs[b];if(x)return x;let w=f.call(this,v,b);if(w===void 0){let E=(S=v.localRefs)===null||S===void 0?void 0:S[b],{schemaId:T}=this.opts;E&&(w=new a({schema:E,schemaId:T,root:v,baseId:y}))}if(w!==void 0)return v.refs[b]=l.call(this,w)}t.resolveRef=u;function l(v){return(0,i.inlineRef)(v.schema,this.opts.inlineRefs)?v.schema:v.validate?v:c.call(this,v)}function d(v){for(let y of this._compilations)if(p(y,v))return y}t.getCompilingSchema=d;function p(v,y){return v.schema===y.schema&&v.root===y.root&&v.baseId===y.baseId}function f(v,y){let b;for(;typeof(b=this.refs[y])=="string";)y=b;return b||this.schemas[y]||m.call(this,v,y)}function m(v,y){let b=this.opts.uriResolver.parse(y),S=(0,i._getFullPath)(this.opts.uriResolver,b),x=(0,i.getFullPath)(this.opts.uriResolver,v.baseId,void 0);if(Object.keys(v.schema).length>0&&S===x)return g.call(this,b,v);let w=(0,i.normalizeId)(S),E=this.refs[w]||this.schemas[w];if(typeof E=="string"){let T=m.call(this,v,E);return typeof T?.schema!="object"?void 0:g.call(this,b,T)}if(typeof E?.schema=="object"){if(E.validate||c.call(this,E),w===(0,i.normalizeId)(y)){let{schema:T}=E,{schemaId:I}=this.opts,P=T[I];return P&&(x=(0,i.resolveUrl)(this.opts.uriResolver,x,P)),new a({schema:T,schemaId:I,root:v,baseId:x})}return g.call(this,b,E)}}t.resolveSchema=m;var h=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function g(v,{baseId:y,schema:b,root:S}){var x;if(((x=v.fragment)===null||x===void 0?void 0:x[0])!=="/")return;for(let T of v.fragment.slice(1).split("/")){if(typeof b=="boolean")return;let I=b[(0,s.unescapeFragment)(T)];if(I===void 0)return;b=I;let P=typeof b=="object"&&b[this.opts.schemaId];!h.has(T)&&P&&(y=(0,i.resolveUrl)(this.opts.uriResolver,y,P))}let w;if(typeof b!="boolean"&&b.$ref&&!(0,s.schemaHasRulesButRef)(b,this.RULES)){let T=(0,i.resolveUrl)(this.opts.uriResolver,y,b.$ref);w=m.call(this,S,T)}let{schemaId:E}=this.opts;if(w=w||new a({schema:b,schemaId:E,root:S,baseId:y}),w.schema!==w.root.schema)return w}}),fde=ne((t,e)=>{e.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}}),mde=ne((t,e)=>{var r={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};e.exports={HEX:r}}),hde=ne((t,e)=>{var{HEX:r}=mde(),n=/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u;function i(v){if(u(v,".")<3)return{host:v,isIPV4:!1};let y=v.match(n)||[],[b]=y;return b?{host:c(b,"."),isIPV4:!0}:{host:v,isIPV4:!1}}function s(v,y=!1){let b="",S=!0;for(let x of v){if(r[x]===void 0)return;x!=="0"&&S===!0&&(S=!1),S||(b+=x)}return y&&b.length===0&&(b="0"),b}function o(v){let y=0,b={error:!1,address:"",zone:""},S=[],x=[],w=!1,E=!1,T=!1;function I(){if(x.length){if(w===!1){let P=s(x);if(P!==void 0)S.push(P);else return b.error=!0,!1}x.length=0}return!0}for(let P=0;P7){b.error=!0;break}P-1>=0&&v[P-1]===":"&&(E=!0);continue}else if(N==="%"){if(!I())break;w=!0}else{x.push(N);continue}}return x.length&&(w?b.zone=x.join(""):T?S.push(x.join("")):S.push(s(x))),b.address=S.join(""),b}function a(v){if(u(v,":")<2)return{host:v,isIPV6:!1};let y=o(v);if(y.error)return{host:v,isIPV6:!1};{let b=y.address,S=y.address;return y.zone&&(b+="%"+y.zone,S+="%25"+y.zone),{host:b,escapedHost:S,isIPV6:!0}}}function c(v,y){let b="",S=!0,x=v.length;for(let w=0;w{var r=/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu,n=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function i(S){return typeof S.secure=="boolean"?S.secure:String(S.scheme).toLowerCase()==="wss"}function s(S){return S.host||(S.error=S.error||"HTTP URIs must have a host."),S}function o(S){let x=String(S.scheme).toLowerCase()==="https";return(S.port===(x?443:80)||S.port==="")&&(S.port=void 0),S.path||(S.path="/"),S}function a(S){return S.secure=i(S),S.resourceName=(S.path||"/")+(S.query?"?"+S.query:""),S.path=void 0,S.query=void 0,S}function c(S){if((S.port===(i(S)?443:80)||S.port==="")&&(S.port=void 0),typeof S.secure=="boolean"&&(S.scheme=S.secure?"wss":"ws",S.secure=void 0),S.resourceName){let[x,w]=S.resourceName.split("?");S.path=x&&x!=="/"?x:void 0,S.query=w,S.resourceName=void 0}return S.fragment=void 0,S}function u(S,x){if(!S.path)return S.error="URN can not be parsed",S;let w=S.path.match(n);if(w){let E=x.scheme||S.scheme||"urn";S.nid=w[1].toLowerCase(),S.nss=w[2];let T=`${E}:${x.nid||S.nid}`,I=b[T];S.path=void 0,I&&(S=I.parse(S,x))}else S.error=S.error||"URN can not be parsed.";return S}function l(S,x){let w=x.scheme||S.scheme||"urn",E=S.nid.toLowerCase(),T=`${w}:${x.nid||E}`,I=b[T];I&&(S=I.serialize(S,x));let P=S,N=S.nss;return P.path=`${E||x.nid}:${N}`,x.skipEscape=!0,P}function d(S,x){let w=S;return w.uuid=w.nss,w.nss=void 0,!x.tolerant&&(!w.uuid||!r.test(w.uuid))&&(w.error=w.error||"UUID is not valid."),w}function p(S){let x=S;return x.nss=(S.uuid||"").toLowerCase(),x}var f={scheme:"http",domainHost:!0,parse:s,serialize:o},m={scheme:"https",domainHost:f.domainHost,parse:s,serialize:o},h={scheme:"ws",domainHost:!0,parse:a,serialize:c},g={scheme:"wss",domainHost:h.domainHost,parse:h.parse,serialize:h.serialize},v={scheme:"urn",parse:u,serialize:l,skipNormalize:!0},y={scheme:"urn:uuid",parse:d,serialize:p,skipNormalize:!0},b={http:f,https:m,ws:h,wss:g,urn:v,"urn:uuid":y};e.exports=b}),vde=ne((t,e)=>{var{normalizeIPv6:r,normalizeIPv4:n,removeDotSegments:i,recomposeAuthority:s,normalizeComponentEncoding:o}=hde(),a=gde();function c(y,b){return typeof y=="string"?y=p(g(y,b),b):typeof y=="object"&&(y=g(p(y,b),b)),y}function u(y,b,S){let x=Object.assign({scheme:"null"},S),w=l(g(y,x),g(b,x),x,!0);return p(w,{...x,skipEscape:!0})}function l(y,b,S,x){let w={};return x||(y=g(p(y,S),S),b=g(p(b,S),S)),S=S||{},!S.tolerant&&b.scheme?(w.scheme=b.scheme,w.userinfo=b.userinfo,w.host=b.host,w.port=b.port,w.path=i(b.path||""),w.query=b.query):(b.userinfo!==void 0||b.host!==void 0||b.port!==void 0?(w.userinfo=b.userinfo,w.host=b.host,w.port=b.port,w.path=i(b.path||""),w.query=b.query):(b.path?(b.path.charAt(0)==="/"?w.path=i(b.path):((y.userinfo!==void 0||y.host!==void 0||y.port!==void 0)&&!y.path?w.path="/"+b.path:y.path?w.path=y.path.slice(0,y.path.lastIndexOf("/")+1)+b.path:w.path=b.path,w.path=i(w.path)),w.query=b.query):(w.path=y.path,b.query!==void 0?w.query=b.query:w.query=y.query),w.userinfo=y.userinfo,w.host=y.host,w.port=y.port),w.scheme=y.scheme),w.fragment=b.fragment,w}function d(y,b,S){return typeof y=="string"?(y=unescape(y),y=p(o(g(y,S),!0),{...S,skipEscape:!0})):typeof y=="object"&&(y=p(o(y,!0),{...S,skipEscape:!0})),typeof b=="string"?(b=unescape(b),b=p(o(g(b,S),!0),{...S,skipEscape:!0})):typeof b=="object"&&(b=p(o(b,!0),{...S,skipEscape:!0})),y.toLowerCase()===b.toLowerCase()}function p(y,b){let S={host:y.host,scheme:y.scheme,userinfo:y.userinfo,port:y.port,path:y.path,query:y.query,nid:y.nid,nss:y.nss,uuid:y.uuid,fragment:y.fragment,reference:y.reference,resourceName:y.resourceName,secure:y.secure,error:""},x=Object.assign({},b),w=[],E=a[(x.scheme||S.scheme||"").toLowerCase()];E&&E.serialize&&E.serialize(S,x),S.path!==void 0&&(x.skipEscape?S.path=unescape(S.path):(S.path=escape(S.path),S.scheme!==void 0&&(S.path=S.path.split("%3A").join(":")))),x.reference!=="suffix"&&S.scheme&&w.push(S.scheme,":");let T=s(S);if(T!==void 0&&(x.reference!=="suffix"&&w.push("//"),w.push(T),S.path&&S.path.charAt(0)!=="/"&&w.push("/")),S.path!==void 0){let I=S.path;!x.absolutePath&&(!E||!E.absolutePath)&&(I=i(I)),T===void 0&&(I=I.replace(/^\/\//u,"/%2F")),w.push(I)}return S.query!==void 0&&w.push("?",S.query),S.fragment!==void 0&&w.push("#",S.fragment),w.join("")}var f=Array.from({length:127},(y,b)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(b)));function m(y){let b=0;for(let S=0,x=y.length;S126||f[b])return!0;return!1}var h=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function g(y,b){let S=Object.assign({},b),x={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},w=y.indexOf("%")!==-1,E=!1;S.reference==="suffix"&&(y=(S.scheme?S.scheme+":":"")+"//"+y);let T=y.match(h);if(T){if(x.scheme=T[1],x.userinfo=T[3],x.host=T[4],x.port=parseInt(T[5],10),x.path=T[6]||"",x.query=T[7],x.fragment=T[8],isNaN(x.port)&&(x.port=T[5]),x.host){let P=n(x.host);if(P.isIPV4===!1){let N=r(P.host);x.host=N.host.toLowerCase(),E=N.isIPV6}else x.host=P.host,E=!0}x.scheme===void 0&&x.userinfo===void 0&&x.host===void 0&&x.port===void 0&&x.query===void 0&&!x.path?x.reference="same-document":x.scheme===void 0?x.reference="relative":x.fragment===void 0?x.reference="absolute":x.reference="uri",S.reference&&S.reference!=="suffix"&&S.reference!==x.reference&&(x.error=x.error||"URI is not a "+S.reference+" reference.");let I=a[(S.scheme||x.scheme||"").toLowerCase()];if(!S.unicodeSupport&&(!I||!I.unicodeSupport)&&x.host&&(S.domainHost||I&&I.domainHost)&&E===!1&&m(x.host))try{x.host=URL.domainToASCII(x.host.toLowerCase())}catch(P){x.error=x.error||"Host's domain name can not be converted to ASCII: "+P}(!I||I&&!I.skipNormalize)&&(w&&x.scheme!==void 0&&(x.scheme=unescape(x.scheme)),w&&x.host!==void 0&&(x.host=unescape(x.host)),x.path&&(x.path=escape(unescape(x.path))),x.fragment&&(x.fragment=encodeURI(decodeURIComponent(x.fragment)))),I&&I.parse&&I.parse(x,S)}else x.error=x.error||"URI can not be parsed.";return x}var v={SCHEMES:a,normalize:c,resolve:u,resolveComponents:l,equal:d,serialize:p,parse:g};e.exports=v,e.exports.default=v,e.exports.fastUri=v}),yde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=vde();e.code='require("ajv/dist/runtime/uri").default',t.default=e}),_de=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CodeGen=t.Name=t.nil=t.stringify=t.str=t._=t.KeywordCxt=void 0;var e=Ey();Object.defineProperty(t,"KeywordCxt",{enumerable:!0,get:function(){return e.KeywordCxt}});var r=Ze();Object.defineProperty(t,"_",{enumerable:!0,get:function(){return r._}}),Object.defineProperty(t,"str",{enumerable:!0,get:function(){return r.str}}),Object.defineProperty(t,"stringify",{enumerable:!0,get:function(){return r.stringify}}),Object.defineProperty(t,"nil",{enumerable:!0,get:function(){return r.nil}}),Object.defineProperty(t,"Name",{enumerable:!0,get:function(){return r.Name}}),Object.defineProperty(t,"CodeGen",{enumerable:!0,get:function(){return r.CodeGen}});var n=II(),i=ky(),s=bq(),o=RI(),a=Ze(),c=wy(),u=hy(),l=ct(),d=fde(),p=yde(),f=(K,C)=>new RegExp(K,C);f.code="new RegExp";var m=["removeAdditional","useDefaults","coerceTypes"],h=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),g={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},v={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},y=200;function b(K){var C,H,M,k,R,F,le,ce,et,Xe,qt,A,D,Z,J,ue,We,br,ui,un,ln,Sr,Ka,Un,X_;let Sl=K.strict,Y_=(C=K.code)===null||C===void 0?void 0:C.optimize,nO=Y_===!0||Y_===void 0?1:Y_||0,iO=(M=(H=K.code)===null||H===void 0?void 0:H.regExp)!==null&&M!==void 0?M:f,C3=(k=K.uriResolver)!==null&&k!==void 0?k:p.default;return{strictSchema:(F=(R=K.strictSchema)!==null&&R!==void 0?R:Sl)!==null&&F!==void 0?F:!0,strictNumbers:(ce=(le=K.strictNumbers)!==null&&le!==void 0?le:Sl)!==null&&ce!==void 0?ce:!0,strictTypes:(Xe=(et=K.strictTypes)!==null&&et!==void 0?et:Sl)!==null&&Xe!==void 0?Xe:"log",strictTuples:(A=(qt=K.strictTuples)!==null&&qt!==void 0?qt:Sl)!==null&&A!==void 0?A:"log",strictRequired:(Z=(D=K.strictRequired)!==null&&D!==void 0?D:Sl)!==null&&Z!==void 0?Z:!1,code:K.code?{...K.code,optimize:nO,regExp:iO}:{optimize:nO,regExp:iO},loopRequired:(J=K.loopRequired)!==null&&J!==void 0?J:y,loopEnum:(ue=K.loopEnum)!==null&&ue!==void 0?ue:y,meta:(We=K.meta)!==null&&We!==void 0?We:!0,messages:(br=K.messages)!==null&&br!==void 0?br:!0,inlineRefs:(ui=K.inlineRefs)!==null&&ui!==void 0?ui:!0,schemaId:(un=K.schemaId)!==null&&un!==void 0?un:"$id",addUsedSchema:(ln=K.addUsedSchema)!==null&&ln!==void 0?ln:!0,validateSchema:(Sr=K.validateSchema)!==null&&Sr!==void 0?Sr:!0,validateFormats:(Ka=K.validateFormats)!==null&&Ka!==void 0?Ka:!0,unicodeRegExp:(Un=K.unicodeRegExp)!==null&&Un!==void 0?Un:!0,int32range:(X_=K.int32range)!==null&&X_!==void 0?X_:!0,uriResolver:C3}}class S{constructor(C={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,C=this.opts={...C,...b(C)};let{es5:H,lines:M}=this.opts.code;this.scope=new a.ValueScope({scope:{},prefixes:h,es5:H,lines:M}),this.logger=L(C.logger);let k=C.validateFormats;C.validateFormats=!1,this.RULES=(0,s.getRules)(),x.call(this,g,C,"NOT SUPPORTED"),x.call(this,v,C,"DEPRECATED","warn"),this._metaOpts=P.call(this),C.formats&&T.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),C.keywords&&I.call(this,C.keywords),typeof C.meta=="object"&&this.addMetaSchema(C.meta),E.call(this),C.validateFormats=k}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:C,meta:H,schemaId:M}=this.opts,k=d;M==="id"&&(k={...d},k.id=k.$id,delete k.$id),H&&C&&this.addMetaSchema(k,k[M],!1)}defaultMeta(){let{meta:C,schemaId:H}=this.opts;return this.opts.defaultMeta=typeof C=="object"?C[H]||C:void 0}validate(C,H){let M;if(typeof C=="string"){if(M=this.getSchema(C),!M)throw new Error(`no schema with key or ref "${C}"`)}else M=this.compile(C);let k=M(H);return"$async"in M||(this.errors=M.errors),k}compile(C,H){let M=this._addSchema(C,H);return M.validate||this._compileSchemaEnv(M)}compileAsync(C,H){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:M}=this.opts;return k.call(this,C,H);async function k(Xe,qt){await R.call(this,Xe.$schema);let A=this._addSchema(Xe,qt);return A.validate||F.call(this,A)}async function R(Xe){Xe&&!this.getSchema(Xe)&&await k.call(this,{$ref:Xe},!0)}async function F(Xe){try{return this._compileSchemaEnv(Xe)}catch(qt){if(!(qt instanceof i.default))throw qt;return le.call(this,qt),await ce.call(this,qt.missingSchema),F.call(this,Xe)}}function le({missingSchema:Xe,missingRef:qt}){if(this.refs[Xe])throw new Error(`AnySchema ${Xe} is loaded but ${qt} cannot be resolved`)}async function ce(Xe){let qt=await et.call(this,Xe);this.refs[Xe]||await R.call(this,qt.$schema),this.refs[Xe]||this.addSchema(qt,Xe,H)}async function et(Xe){let qt=this._loading[Xe];if(qt)return qt;try{return await(this._loading[Xe]=M(Xe))}finally{delete this._loading[Xe]}}}addSchema(C,H,M,k=this.opts.validateSchema){if(Array.isArray(C)){for(let F of C)this.addSchema(F,void 0,M,k);return this}let R;if(typeof C=="object"){let{schemaId:F}=this.opts;if(R=C[F],R!==void 0&&typeof R!="string")throw new Error(`schema ${F} must be string`)}return H=(0,c.normalizeId)(H||R),this._checkUnique(H),this.schemas[H]=this._addSchema(C,M,H,k,!0),this}addMetaSchema(C,H,M=this.opts.validateSchema){return this.addSchema(C,H,!0,M),this}validateSchema(C,H){if(typeof C=="boolean")return!0;let M;if(M=C.$schema,M!==void 0&&typeof M!="string")throw new Error("$schema must be a string");if(M=M||this.opts.defaultMeta||this.defaultMeta(),!M)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let k=this.validate(M,C);if(!k&&H){let R="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(R);else throw new Error(R)}return k}getSchema(C){let H;for(;typeof(H=w.call(this,C))=="string";)C=H;if(H===void 0){let{schemaId:M}=this.opts,k=new o.SchemaEnv({schema:{},schemaId:M});if(H=o.resolveSchema.call(this,k,C),!H)return;this.refs[C]=H}return H.validate||this._compileSchemaEnv(H)}removeSchema(C){if(C instanceof RegExp)return this._removeAllSchemas(this.schemas,C),this._removeAllSchemas(this.refs,C),this;switch(typeof C){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let H=w.call(this,C);return typeof H=="object"&&this._cache.delete(H.schema),delete this.schemas[C],delete this.refs[C],this}case"object":{let H=C;this._cache.delete(H);let M=C[this.opts.schemaId];return M&&(M=(0,c.normalizeId)(M),delete this.schemas[M],delete this.refs[M]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(C){for(let H of C)this.addKeyword(H);return this}addKeyword(C,H){let M;if(typeof C=="string")M=C,typeof H=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),H.keyword=M);else if(typeof C=="object"&&H===void 0){if(H=C,M=H.keyword,Array.isArray(M)&&!M.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(j.call(this,M,H),!H)return(0,l.eachItem)(M,R=>ae.call(this,R)),this;Le.call(this,H);let k={...H,type:(0,u.getJSONTypes)(H.type),schemaType:(0,u.getJSONTypes)(H.schemaType)};return(0,l.eachItem)(M,k.type.length===0?R=>ae.call(this,R,k):R=>k.type.forEach(F=>ae.call(this,R,k,F))),this}getKeyword(C){let H=this.RULES.all[C];return typeof H=="object"?H.definition:!!H}removeKeyword(C){let{RULES:H}=this;delete H.keywords[C],delete H.all[C];for(let M of H.rules){let k=M.rules.findIndex(R=>R.keyword===C);k>=0&&M.rules.splice(k,1)}return this}addFormat(C,H){return typeof H=="string"&&(H=new RegExp(H)),this.formats[C]=H,this}errorsText(C=this.errors,{separator:H=", ",dataVar:M="data"}={}){return!C||C.length===0?"No errors":C.map(k=>`${M}${k.instancePath} ${k.message}`).reduce((k,R)=>k+H+R)}$dataMetaSchema(C,H){let M=this.RULES.all;C=JSON.parse(JSON.stringify(C));for(let k of H){let R=k.split("/").slice(1),F=C;for(let le of R)F=F[le];for(let le in M){let ce=M[le];if(typeof ce!="object")continue;let{$data:et}=ce.definition,Xe=F[le];et&&Xe&&(F[le]=Ge(Xe))}}return C}_removeAllSchemas(C,H){for(let M in C){let k=C[M];(!H||H.test(M))&&(typeof k=="string"?delete C[M]:k&&!k.meta&&(this._cache.delete(k.schema),delete C[M]))}}_addSchema(C,H,M,k=this.opts.validateSchema,R=this.opts.addUsedSchema){let F,{schemaId:le}=this.opts;if(typeof C=="object")F=C[le];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof C!="boolean")throw new Error("schema must be object or boolean")}let ce=this._cache.get(C);if(ce!==void 0)return ce;M=(0,c.normalizeId)(F||M);let et=c.getSchemaRefs.call(this,C,M);return ce=new o.SchemaEnv({schema:C,schemaId:le,meta:H,baseId:M,localRefs:et}),this._cache.set(ce.schema,ce),R&&!M.startsWith("#")&&(M&&this._checkUnique(M),this.refs[M]=ce),k&&this.validateSchema(C,!0),ce}_checkUnique(C){if(this.schemas[C]||this.refs[C])throw new Error(`schema with key or id "${C}" already exists`)}_compileSchemaEnv(C){if(C.meta?this._compileMetaSchema(C):o.compileSchema.call(this,C),!C.validate)throw new Error("ajv implementation error");return C.validate}_compileMetaSchema(C){let H=this.opts;this.opts=this._metaOpts;try{o.compileSchema.call(this,C)}finally{this.opts=H}}}S.ValidationError=n.default,S.MissingRefError=i.default,t.default=S;function x(K,C,H,M="error"){for(let k in K){let R=k;R in C&&this.logger[M](`${H}: option ${k}. ${K[R]}`)}}function w(K){return K=(0,c.normalizeId)(K),this.schemas[K]||this.refs[K]}function E(){let K=this.opts.schemas;if(K)if(Array.isArray(K))this.addSchema(K);else for(let C in K)this.addSchema(K[C],C)}function T(){for(let K in this.opts.formats){let C=this.opts.formats[K];C&&this.addFormat(K,C)}}function I(K){if(Array.isArray(K)){this.addVocabulary(K);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let C in K){let H=K[C];H.keyword||(H.keyword=C),this.addKeyword(H)}}function P(){let K={...this.opts};for(let C of m)delete K[C];return K}var N={log(){},warn(){},error(){}};function L(K){if(K===!1)return N;if(K===void 0)return console;if(K.log&&K.warn&&K.error)return K;throw new Error("logger must implement log, warn and error methods")}var G=/^[a-z_$][a-z0-9_$:-]*$/i;function j(K,C){let{RULES:H}=this;if((0,l.eachItem)(K,M=>{if(H.keywords[M])throw new Error(`Keyword ${M} is already defined`);if(!G.test(M))throw new Error(`Keyword ${M} has invalid name`)}),!!C&&C.$data&&!("code"in C||"validate"in C))throw new Error('$data keyword must have "code" or "validate" function')}function ae(K,C,H){var M;let k=C?.post;if(H&&k)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:R}=this,F=k?R.post:R.rules.find(({type:ce})=>ce===H);if(F||(F={type:H,rules:[]},R.rules.push(F)),R.keywords[K]=!0,!C)return;let le={keyword:K,definition:{...C,type:(0,u.getJSONTypes)(C.type),schemaType:(0,u.getJSONTypes)(C.schemaType)}};C.before?Me.call(this,F,le,C.before):F.rules.push(le),R.all[K]=le,(M=C.implements)===null||M===void 0||M.forEach(ce=>this.addKeyword(ce))}function Me(K,C,H){let M=K.rules.findIndex(k=>k.keyword===H);M>=0?K.rules.splice(M,0,C):(K.rules.push(C),this.logger.warn(`rule ${H} is not defined`))}function Le(K){let{metaSchema:C}=K;C!==void 0&&(K.$data&&this.opts.$data&&(C=Ge(C)),K.validateSchema=this.compile(C,!0))}var kt={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Ge(K){return{anyOf:[K,kt]}}}),bde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};t.default=e}),Sde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.callRef=t.getValidate=void 0;var e=ky(),r=Ri(),n=Ze(),i=Lo(),s=RI(),o=ct(),a={keyword:"$ref",schemaType:"string",code(l){let{gen:d,schema:p,it:f}=l,{baseId:m,schemaEnv:h,validateName:g,opts:v,self:y}=f,{root:b}=h;if((p==="#"||p==="#/")&&m===b.baseId)return x();let S=s.resolveRef.call(y,b,m,p);if(S===void 0)throw new e.default(f.opts.uriResolver,m,p);if(S instanceof s.SchemaEnv)return w(S);return E(S);function x(){if(h===b)return u(l,g,h,h.$async);let T=d.scopeValue("root",{ref:b});return u(l,(0,n._)`${T}.validate`,b,b.$async)}function w(T){let I=c(l,T);u(l,I,T,T.$async)}function E(T){let I=d.scopeValue("schema",v.code.source===!0?{ref:T,code:(0,n.stringify)(T)}:{ref:T}),P=d.name("valid"),N=l.subschema({schema:T,dataTypes:[],schemaPath:n.nil,topSchemaRef:I,errSchemaPath:p},P);l.mergeEvaluated(N),l.ok(P)}}};function c(l,d){let{gen:p}=l;return d.validate?p.scopeValue("validate",{ref:d.validate}):(0,n._)`${p.scopeValue("wrapper",{ref:d})}.validate`}t.getValidate=c;function u(l,d,p,f){let{gen:m,it:h}=l,{allErrors:g,schemaEnv:v,opts:y}=h,b=y.passContext?i.default.this:n.nil;f?S():x();function S(){if(!v.$async)throw new Error("async schema referenced by sync schema");let T=m.let("valid");m.try(()=>{m.code((0,n._)`await ${(0,r.callValidateCode)(l,d,b)}`),E(d),g||m.assign(T,!0)},I=>{m.if((0,n._)`!(${I} instanceof ${h.ValidationError})`,()=>m.throw(I)),w(I),g||m.assign(T,!1)}),l.ok(T)}function x(){l.result((0,r.callValidateCode)(l,d,b),()=>E(d),()=>w(d))}function w(T){let I=(0,n._)`${T}.errors`;m.assign(i.default.vErrors,(0,n._)`${i.default.vErrors} === null ? ${I} : ${i.default.vErrors}.concat(${I})`),m.assign(i.default.errors,(0,n._)`${i.default.vErrors}.length`)}function E(T){var I;if(!h.opts.unevaluated)return;let P=(I=p?.validate)===null||I===void 0?void 0:I.evaluated;if(h.props!==!0)if(P&&!P.dynamicProps)P.props!==void 0&&(h.props=o.mergeEvaluated.props(m,P.props,h.props));else{let N=m.var("props",(0,n._)`${T}.evaluated.props`);h.props=o.mergeEvaluated.props(m,N,h.props,n.Name)}if(h.items!==!0)if(P&&!P.dynamicItems)P.items!==void 0&&(h.items=o.mergeEvaluated.items(m,P.items,h.items));else{let N=m.var("items",(0,n._)`${T}.evaluated.items`);h.items=o.mergeEvaluated.items(m,N,h.items,n.Name)}}}t.callRef=u,t.default=a}),xde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=bde(),r=Sde(),n=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",e.default,r.default];t.default=n}),wde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=e.operators,n={maximum:{okStr:"<=",ok:r.LTE,fail:r.GT},minimum:{okStr:">=",ok:r.GTE,fail:r.LT},exclusiveMaximum:{okStr:"<",ok:r.LT,fail:r.GTE},exclusiveMinimum:{okStr:">",ok:r.GT,fail:r.LTE}},i={message:({keyword:o,schemaCode:a})=>(0,e.str)`must be ${n[o].okStr} ${a}`,params:({keyword:o,schemaCode:a})=>(0,e._)`{comparison: ${n[o].okStr}, limit: ${a}}`},s={keyword:Object.keys(n),type:"number",schemaType:"number",$data:!0,error:i,code(o){let{keyword:a,data:c,schemaCode:u}=o;o.fail$data((0,e._)`${c} ${n[a].fail} ${u} || isNaN(${c})`)}};t.default=s}),Ede=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r={message:({schemaCode:i})=>(0,e.str)`must be multiple of ${i}`,params:({schemaCode:i})=>(0,e._)`{multipleOf: ${i}}`},n={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:r,code(i){let{gen:s,data:o,schemaCode:a,it:c}=i,u=c.opts.multipleOfPrecision,l=s.let("res"),d=u?(0,e._)`Math.abs(Math.round(${l}) - ${l}) > 1e-${u}`:(0,e._)`${l} !== parseInt(${l})`;i.fail$data((0,e._)`(${a} === 0 || (${l} = ${o}/${a}, ${d}))`)}};t.default=n}),kde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});function e(r){let n=r.length,i=0,s=0,o;for(;s=55296&&o<=56319&&s{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=ct(),n=kde(),i={message({keyword:o,schemaCode:a}){let c=o==="maxLength"?"more":"fewer";return(0,e.str)`must NOT have ${c} than ${a} characters`},params:({schemaCode:o})=>(0,e._)`{limit: ${o}}`},s={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:i,code(o){let{keyword:a,data:c,schemaCode:u,it:l}=o,d=a==="maxLength"?e.operators.GT:e.operators.LT,p=l.opts.unicode===!1?(0,e._)`${c}.length`:(0,e._)`${(0,r.useFunc)(o.gen,n.default)}(${c})`;o.fail$data((0,e._)`${p} ${d} ${u}`)}};t.default=s}),$de=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ri(),r=Ze(),n={message:({schemaCode:s})=>(0,r.str)`must match pattern "${s}"`,params:({schemaCode:s})=>(0,r._)`{pattern: ${s}}`},i={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:n,code(s){let{data:o,$data:a,schema:c,schemaCode:u,it:l}=s,d=l.opts.unicodeRegExp?"u":"",p=a?(0,r._)`(new RegExp(${u}, ${d}))`:(0,e.usePattern)(s,c);s.fail$data((0,r._)`!${p}.test(${o})`)}};t.default=i}),Ide=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r={message({keyword:i,schemaCode:s}){let o=i==="maxProperties"?"more":"fewer";return(0,e.str)`must NOT have ${o} than ${s} properties`},params:({schemaCode:i})=>(0,e._)`{limit: ${i}}`},n={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:r,code(i){let{keyword:s,data:o,schemaCode:a}=i,c=s==="maxProperties"?e.operators.GT:e.operators.LT;i.fail$data((0,e._)`Object.keys(${o}).length ${c} ${a}`)}};t.default=n}),Rde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ri(),r=Ze(),n=ct(),i={message:({params:{missingProperty:o}})=>(0,r.str)`must have required property '${o}'`,params:({params:{missingProperty:o}})=>(0,r._)`{missingProperty: ${o}}`},s={keyword:"required",type:"object",schemaType:"array",$data:!0,error:i,code(o){let{gen:a,schema:c,schemaCode:u,data:l,$data:d,it:p}=o,{opts:f}=p;if(!d&&c.length===0)return;let m=c.length>=f.loopRequired;if(p.allErrors?h():g(),f.strictRequired){let b=o.parentSchema.properties,{definedProperties:S}=o.it;for(let x of c)if(b?.[x]===void 0&&!S.has(x)){let w=p.schemaEnv.baseId+p.errSchemaPath,E=`required property "${x}" is not defined at "${w}" (strictRequired)`;(0,n.checkStrictMode)(p,E,p.opts.strictRequired)}}function h(){if(m||d)o.block$data(r.nil,v);else for(let b of c)(0,e.checkReportMissingProp)(o,b)}function g(){let b=a.let("missing");if(m||d){let S=a.let("valid",!0);o.block$data(S,()=>y(b,S)),o.ok(S)}else a.if((0,e.checkMissingProp)(o,c,b)),(0,e.reportMissingProp)(o,b),a.else()}function v(){a.forOf("prop",u,b=>{o.setParams({missingProperty:b}),a.if((0,e.noPropertyInData)(a,l,b,f.ownProperties),()=>o.error())})}function y(b,S){o.setParams({missingProperty:b}),a.forOf(b,u,()=>{a.assign(S,(0,e.propertyInData)(a,l,b,f.ownProperties)),a.if((0,r.not)(S),()=>{o.error(),a.break()})},r.nil)}}};t.default=s}),Ode=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r={message({keyword:i,schemaCode:s}){let o=i==="maxItems"?"more":"fewer";return(0,e.str)`must NOT have ${o} than ${s} items`},params:({schemaCode:i})=>(0,e._)`{limit: ${i}}`},n={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:r,code(i){let{keyword:s,data:o,schemaCode:a}=i,c=s==="maxItems"?e.operators.GT:e.operators.LT;i.fail$data((0,e._)`${o}.length ${c} ${a}`)}};t.default=n}),OI=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=xq();e.code='require("ajv/dist/runtime/equal").default',t.default=e}),Cde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=hy(),r=Ze(),n=ct(),i=OI(),s={message:({params:{i:a,j:c}})=>(0,r.str)`must NOT have duplicate items (items ## ${c} and ${a} are identical)`,params:({params:{i:a,j:c}})=>(0,r._)`{i: ${a}, j: ${c}}`},o={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:s,code(a){let{gen:c,data:u,$data:l,schema:d,parentSchema:p,schemaCode:f,it:m}=a;if(!l&&!d)return;let h=c.let("valid"),g=p.items?(0,e.getSchemaTypes)(p.items):[];a.block$data(h,v,(0,r._)`${f} === false`),a.ok(h);function v(){let x=c.let("i",(0,r._)`${u}.length`),w=c.let("j");a.setParams({i:x,j:w}),c.assign(h,!0),c.if((0,r._)`${x} > 1`,()=>(y()?b:S)(x,w))}function y(){return g.length>0&&!g.some(x=>x==="object"||x==="array")}function b(x,w){let E=c.name("item"),T=(0,e.checkDataTypes)(g,E,m.opts.strictNumbers,e.DataType.Wrong),I=c.const("indices",(0,r._)`{}`);c.for((0,r._)`;${x}--;`,()=>{c.let(E,(0,r._)`${u}[${x}]`),c.if(T,(0,r._)`continue`),g.length>1&&c.if((0,r._)`typeof ${E} == "string"`,(0,r._)`${E} += "_"`),c.if((0,r._)`typeof ${I}[${E}] == "number"`,()=>{c.assign(w,(0,r._)`${I}[${E}]`),a.error(),c.assign(h,!1).break()}).code((0,r._)`${I}[${E}] = ${x}`)})}function S(x,w){let E=(0,n.useFunc)(c,i.default),T=c.name("outer");c.label(T).for((0,r._)`;${x}--;`,()=>c.for((0,r._)`${w} = ${x}; ${w}--;`,()=>c.if((0,r._)`${E}(${u}[${x}], ${u}[${w}])`,()=>{a.error(),c.assign(h,!1).break(T)})))}}};t.default=o}),Pde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=ct(),n=OI(),i={message:"must be equal to constant",params:({schemaCode:o})=>(0,e._)`{allowedValue: ${o}}`},s={keyword:"const",$data:!0,error:i,code(o){let{gen:a,data:c,$data:u,schemaCode:l,schema:d}=o;u||d&&typeof d=="object"?o.fail$data((0,e._)`!${(0,r.useFunc)(a,n.default)}(${c}, ${l})`):o.fail((0,e._)`${d} !== ${c}`)}};t.default=s}),Ade=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=ct(),n=OI(),i={message:"must be equal to one of the allowed values",params:({schemaCode:o})=>(0,e._)`{allowedValues: ${o}}`},s={keyword:"enum",schemaType:"array",$data:!0,error:i,code(o){let{gen:a,data:c,$data:u,schema:l,schemaCode:d,it:p}=o;if(!u&&l.length===0)throw new Error("enum must have non-empty array");let f=l.length>=p.opts.loopEnum,m,h=()=>m??(m=(0,r.useFunc)(a,n.default)),g;if(f||u)g=a.let("valid"),o.block$data(g,v);else{if(!Array.isArray(l))throw new Error("ajv implementation error");let b=a.const("vSchema",d);g=(0,e.or)(...l.map((S,x)=>y(b,x)))}o.pass(g);function v(){a.assign(g,!1),a.forOf("v",d,b=>a.if((0,e._)`${h()}(${c}, ${b})`,()=>a.assign(g,!0).break()))}function y(b,S){let x=l[S];return typeof x=="object"&&x!==null?(0,e._)`${h()}(${c}, ${b}[${S}])`:(0,e._)`${c} === ${x}`}}};t.default=s}),Nde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=wde(),r=Ede(),n=Tde(),i=$de(),s=Ide(),o=Rde(),a=Ode(),c=Cde(),u=Pde(),l=Ade(),d=[e.default,r.default,n.default,i.default,s.default,o.default,a.default,c.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},u.default,l.default];t.default=d}),wq=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateAdditionalItems=void 0;var e=Ze(),r=ct(),n={message:({params:{len:o}})=>(0,e.str)`must NOT have more than ${o} items`,params:({params:{len:o}})=>(0,e._)`{limit: ${o}}`},i={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:n,code(o){let{parentSchema:a,it:c}=o,{items:u}=a;if(!Array.isArray(u)){(0,r.checkStrictMode)(c,'"additionalItems" is ignored when "items" is not an array of schemas');return}s(o,u)}};function s(o,a){let{gen:c,schema:u,data:l,keyword:d,it:p}=o;p.items=!0;let f=c.const("len",(0,e._)`${l}.length`);if(u===!1)o.setParams({len:a.length}),o.pass((0,e._)`${f} <= ${a.length}`);else if(typeof u=="object"&&!(0,r.alwaysValidSchema)(p,u)){let h=c.var("valid",(0,e._)`${f} <= ${a.length}`);c.if((0,e.not)(h),()=>m(h)),o.ok(h)}function m(h){c.forRange("i",a.length,f,g=>{o.subschema({keyword:d,dataProp:g,dataPropType:r.Type.Num},h),p.allErrors||c.if((0,e.not)(h),()=>c.break())})}}t.validateAdditionalItems=s,t.default=i}),Eq=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateTuple=void 0;var e=Ze(),r=ct(),n=Ri(),i={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(o){let{schema:a,it:c}=o;if(Array.isArray(a))return s(o,"additionalItems",a);c.items=!0,!(0,r.alwaysValidSchema)(c,a)&&o.ok((0,n.validateArray)(o))}};function s(o,a,c=o.schema){let{gen:u,parentSchema:l,data:d,keyword:p,it:f}=o;g(l),f.opts.unevaluated&&c.length&&f.items!==!0&&(f.items=r.mergeEvaluated.items(u,c.length,f.items));let m=u.name("valid"),h=u.const("len",(0,e._)`${d}.length`);c.forEach((v,y)=>{(0,r.alwaysValidSchema)(f,v)||(u.if((0,e._)`${h} > ${y}`,()=>o.subschema({keyword:p,schemaProp:y,dataProp:y},m)),o.ok(m))});function g(v){let{opts:y,errSchemaPath:b}=f,S=c.length,x=S===v.minItems&&(S===v.maxItems||v[a]===!1);if(y.strictTuples&&!x){let w=`"${p}" is ${S}-tuple, but minItems or maxItems/${a} are not specified or different at path "${b}"`;(0,r.checkStrictMode)(f,w,y.strictTuples)}}}t.validateTuple=s,t.default=i}),Mde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Eq(),r={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:n=>(0,e.validateTuple)(n,"items")};t.default=r}),Dde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=ct(),n=Ri(),i=wq(),s={message:({params:{len:a}})=>(0,e.str)`must NOT have more than ${a} items`,params:({params:{len:a}})=>(0,e._)`{limit: ${a}}`},o={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:s,code(a){let{schema:c,parentSchema:u,it:l}=a,{prefixItems:d}=u;l.items=!0,!(0,r.alwaysValidSchema)(l,c)&&(d?(0,i.validateAdditionalItems)(a,d):a.ok((0,n.validateArray)(a)))}};t.default=o}),jde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=ct(),n={message:({params:{min:s,max:o}})=>o===void 0?(0,e.str)`must contain at least ${s} valid item(s)`:(0,e.str)`must contain at least ${s} and no more than ${o} valid item(s)`,params:({params:{min:s,max:o}})=>o===void 0?(0,e._)`{minContains: ${s}}`:(0,e._)`{minContains: ${s}, maxContains: ${o}}`},i={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:n,code(s){let{gen:o,schema:a,parentSchema:c,data:u,it:l}=s,d,p,{minContains:f,maxContains:m}=c;l.opts.next?(d=f===void 0?1:f,p=m):d=1;let h=o.const("len",(0,e._)`${u}.length`);if(s.setParams({min:d,max:p}),p===void 0&&d===0){(0,r.checkStrictMode)(l,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(p!==void 0&&d>p){(0,r.checkStrictMode)(l,'"minContains" > "maxContains" is always invalid'),s.fail();return}if((0,r.alwaysValidSchema)(l,a)){let S=(0,e._)`${h} >= ${d}`;p!==void 0&&(S=(0,e._)`${S} && ${h} <= ${p}`),s.pass(S);return}l.items=!0;let g=o.name("valid");p===void 0&&d===1?y(g,()=>o.if(g,()=>o.break())):d===0?(o.let(g,!0),p!==void 0&&o.if((0,e._)`${u}.length > 0`,v)):(o.let(g,!1),v()),s.result(g,()=>s.reset());function v(){let S=o.name("_valid"),x=o.let("count",0);y(S,()=>o.if(S,()=>b(x)))}function y(S,x){o.forRange("i",0,h,w=>{s.subschema({keyword:"contains",dataProp:w,dataPropType:r.Type.Num,compositeRule:!0},S),x()})}function b(S){o.code((0,e._)`${S}++`),p===void 0?o.if((0,e._)`${S} >= ${d}`,()=>o.assign(g,!0).break()):(o.if((0,e._)`${S} > ${p}`,()=>o.assign(g,!1).break()),d===1?o.assign(g,!0):o.if((0,e._)`${S} >= ${d}`,()=>o.assign(g,!0)))}}};t.default=i}),zde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateSchemaDeps=t.validatePropertyDeps=t.error=void 0;var e=Ze(),r=ct(),n=Ri();t.error={message:({params:{property:c,depsCount:u,deps:l}})=>{let d=u===1?"property":"properties";return(0,e.str)`must have ${d} ${l} when property ${c} is present`},params:({params:{property:c,depsCount:u,deps:l,missingProperty:d}})=>(0,e._)`{property: ${c}, + missingProperty: ${d}, + depsCount: ${u}, + deps: ${l}}`};var i={keyword:"dependencies",type:"object",schemaType:"object",error:t.error,code(c){let[u,l]=s(c);o(c,u),a(c,l)}};function s({schema:c}){let u={},l={};for(let d in c){if(d==="__proto__")continue;let p=Array.isArray(c[d])?u:l;p[d]=c[d]}return[u,l]}function o(c,u=c.schema){let{gen:l,data:d,it:p}=c;if(Object.keys(u).length===0)return;let f=l.let("missing");for(let m in u){let h=u[m];if(h.length===0)continue;let g=(0,n.propertyInData)(l,d,m,p.opts.ownProperties);c.setParams({property:m,depsCount:h.length,deps:h.join(", ")}),p.allErrors?l.if(g,()=>{for(let v of h)(0,n.checkReportMissingProp)(c,v)}):(l.if((0,e._)`${g} && (${(0,n.checkMissingProp)(c,h,f)})`),(0,n.reportMissingProp)(c,f),l.else())}}t.validatePropertyDeps=o;function a(c,u=c.schema){let{gen:l,data:d,keyword:p,it:f}=c,m=l.name("valid");for(let h in u)(0,r.alwaysValidSchema)(f,u[h])||(l.if((0,n.propertyInData)(l,d,h,f.opts.ownProperties),()=>{let g=c.subschema({keyword:p,schemaProp:h},m);c.mergeValidEvaluated(g,m)},()=>l.var(m,!0)),c.ok(m))}t.validateSchemaDeps=a,t.default=i}),Lde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=ct(),n={message:"property name must be valid",params:({params:s})=>(0,e._)`{propertyName: ${s.propertyName}}`},i={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:n,code(s){let{gen:o,schema:a,data:c,it:u}=s;if((0,r.alwaysValidSchema)(u,a))return;let l=o.name("valid");o.forIn("key",c,d=>{s.setParams({propertyName:d}),s.subschema({keyword:"propertyNames",data:d,dataTypes:["string"],propertyName:d,compositeRule:!0},l),o.if((0,e.not)(l),()=>{s.error(!0),u.allErrors||o.break()})}),s.ok(l)}};t.default=i}),kq=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ri(),r=Ze(),n=Lo(),i=ct(),s={message:"must NOT have additional properties",params:({params:a})=>(0,r._)`{additionalProperty: ${a.additionalProperty}}`},o={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:s,code(a){let{gen:c,schema:u,parentSchema:l,data:d,errsCount:p,it:f}=a;if(!p)throw new Error("ajv implementation error");let{allErrors:m,opts:h}=f;if(f.props=!0,h.removeAdditional!=="all"&&(0,i.alwaysValidSchema)(f,u))return;let g=(0,e.allSchemaProperties)(l.properties),v=(0,e.allSchemaProperties)(l.patternProperties);y(),a.ok((0,r._)`${p} === ${n.default.errors}`);function y(){c.forIn("key",d,E=>{!g.length&&!v.length?x(E):c.if(b(E),()=>x(E))})}function b(E){let T;if(g.length>8){let I=(0,i.schemaRefOrVal)(f,l.properties,"properties");T=(0,e.isOwnProperty)(c,I,E)}else g.length?T=(0,r.or)(...g.map(I=>(0,r._)`${E} === ${I}`)):T=r.nil;return v.length&&(T=(0,r.or)(T,...v.map(I=>(0,r._)`${(0,e.usePattern)(a,I)}.test(${E})`))),(0,r.not)(T)}function S(E){c.code((0,r._)`delete ${d}[${E}]`)}function x(E){if(h.removeAdditional==="all"||h.removeAdditional&&u===!1){S(E);return}if(u===!1){a.setParams({additionalProperty:E}),a.error(),m||c.break();return}if(typeof u=="object"&&!(0,i.alwaysValidSchema)(f,u)){let T=c.name("valid");h.removeAdditional==="failing"?(w(E,T,!1),c.if((0,r.not)(T),()=>{a.reset(),S(E)})):(w(E,T),m||c.if((0,r.not)(T),()=>c.break()))}}function w(E,T,I){let P={keyword:"additionalProperties",dataProp:E,dataPropType:i.Type.Str};I===!1&&Object.assign(P,{compositeRule:!0,createErrors:!1,allErrors:!1}),a.subschema(P,T)}}};t.default=o}),Ude=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ey(),r=Ri(),n=ct(),i=kq(),s={keyword:"properties",type:"object",schemaType:"object",code(o){let{gen:a,schema:c,parentSchema:u,data:l,it:d}=o;d.opts.removeAdditional==="all"&&u.additionalProperties===void 0&&i.default.code(new e.KeywordCxt(d,i.default,"additionalProperties"));let p=(0,r.allSchemaProperties)(c);for(let v of p)d.definedProperties.add(v);d.opts.unevaluated&&p.length&&d.props!==!0&&(d.props=n.mergeEvaluated.props(a,(0,n.toHash)(p),d.props));let f=p.filter(v=>!(0,n.alwaysValidSchema)(d,c[v]));if(f.length===0)return;let m=a.name("valid");for(let v of f)h(v)?g(v):(a.if((0,r.propertyInData)(a,l,v,d.opts.ownProperties)),g(v),d.allErrors||a.else().var(m,!0),a.endIf()),o.it.definedProperties.add(v),o.ok(m);function h(v){return d.opts.useDefaults&&!d.compositeRule&&c[v].default!==void 0}function g(v){o.subschema({keyword:"properties",schemaProp:v,dataProp:v},m)}}};t.default=s}),Fde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ri(),r=Ze(),n=ct(),i=ct(),s={keyword:"patternProperties",type:"object",schemaType:"object",code(o){let{gen:a,schema:c,data:u,parentSchema:l,it:d}=o,{opts:p}=d,f=(0,e.allSchemaProperties)(c),m=f.filter(x=>(0,n.alwaysValidSchema)(d,c[x]));if(f.length===0||m.length===f.length&&(!d.opts.unevaluated||d.props===!0))return;let h=p.strictSchema&&!p.allowMatchingProperties&&l.properties,g=a.name("valid");d.props!==!0&&!(d.props instanceof r.Name)&&(d.props=(0,i.evaluatedPropsToName)(a,d.props));let{props:v}=d;y();function y(){for(let x of f)h&&b(x),d.allErrors?S(x):(a.var(g,!0),S(x),a.if(g))}function b(x){for(let w in h)new RegExp(x).test(w)&&(0,n.checkStrictMode)(d,`property ${w} matches pattern ${x} (use allowMatchingProperties)`)}function S(x){a.forIn("key",u,w=>{a.if((0,r._)`${(0,e.usePattern)(o,x)}.test(${w})`,()=>{let E=m.includes(x);E||o.subschema({keyword:"patternProperties",schemaProp:x,dataProp:w,dataPropType:i.Type.Str},g),d.opts.unevaluated&&v!==!0?a.assign((0,r._)`${v}[${w}]`,!0):!E&&!d.allErrors&&a.if((0,r.not)(g),()=>a.break())})})}}};t.default=s}),qde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=ct(),r={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(n){let{gen:i,schema:s,it:o}=n;if((0,e.alwaysValidSchema)(o,s)){n.fail();return}let a=i.name("valid");n.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},a),n.failResult(a,()=>n.reset(),()=>n.error())},error:{message:"must NOT be valid"}};t.default=r}),Hde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ri(),r={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:e.validateUnion,error:{message:"must match a schema in anyOf"}};t.default=r}),Zde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=ct(),n={message:"must match exactly one schema in oneOf",params:({params:s})=>(0,e._)`{passingSchemas: ${s.passing}}`},i={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:n,code(s){let{gen:o,schema:a,parentSchema:c,it:u}=s;if(!Array.isArray(a))throw new Error("ajv implementation error");if(u.opts.discriminator&&c.discriminator)return;let l=a,d=o.let("valid",!1),p=o.let("passing",null),f=o.name("_valid");s.setParams({passing:p}),o.block(m),s.result(d,()=>s.reset(),()=>s.error(!0));function m(){l.forEach((h,g)=>{let v;(0,r.alwaysValidSchema)(u,h)?o.var(f,!0):v=s.subschema({keyword:"oneOf",schemaProp:g,compositeRule:!0},f),g>0&&o.if((0,e._)`${f} && ${d}`).assign(d,!1).assign(p,(0,e._)`[${p}, ${g}]`).else(),o.if(f,()=>{o.assign(d,!0),o.assign(p,g),v&&s.mergeEvaluated(v,e.Name)})})}}};t.default=i}),Bde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=ct(),r={keyword:"allOf",schemaType:"array",code(n){let{gen:i,schema:s,it:o}=n;if(!Array.isArray(s))throw new Error("ajv implementation error");let a=i.name("valid");s.forEach((c,u)=>{if((0,e.alwaysValidSchema)(o,c))return;let l=n.subschema({keyword:"allOf",schemaProp:u},a);n.ok(a),n.mergeEvaluated(l)})}};t.default=r}),Gde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=ct(),n={message:({params:o})=>(0,e.str)`must match "${o.ifClause}" schema`,params:({params:o})=>(0,e._)`{failingKeyword: ${o.ifClause}}`},i={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:n,code(o){let{gen:a,parentSchema:c,it:u}=o;c.then===void 0&&c.else===void 0&&(0,r.checkStrictMode)(u,'"if" without "then" and "else" is ignored');let l=s(u,"then"),d=s(u,"else");if(!l&&!d)return;let p=a.let("valid",!0),f=a.name("_valid");if(m(),o.reset(),l&&d){let g=a.let("ifClause");o.setParams({ifClause:g}),a.if(f,h("then",g),h("else",g))}else l?a.if(f,h("then")):a.if((0,e.not)(f),h("else"));o.pass(p,()=>o.error(!0));function m(){let g=o.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},f);o.mergeEvaluated(g)}function h(g,v){return()=>{let y=o.subschema({keyword:g},f);a.assign(p,f),o.mergeValidEvaluated(y,p),v?a.assign(v,(0,e._)`${g}`):o.setParams({ifClause:g})}}}};function s(o,a){let c=o.schema[a];return c!==void 0&&!(0,r.alwaysValidSchema)(o,c)}t.default=i}),Wde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=ct(),r={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:n,parentSchema:i,it:s}){i.if===void 0&&(0,e.checkStrictMode)(s,`"${n}" without "if" is ignored`)}};t.default=r}),Vde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=wq(),r=Mde(),n=Eq(),i=Dde(),s=jde(),o=zde(),a=Lde(),c=kq(),u=Ude(),l=Fde(),d=qde(),p=Hde(),f=Zde(),m=Bde(),h=Gde(),g=Wde();function v(y=!1){let b=[d.default,p.default,f.default,m.default,h.default,g.default,a.default,c.default,o.default,u.default,l.default];return y?b.push(r.default,i.default):b.push(e.default,n.default),b.push(s.default),b}t.default=v}),Kde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r={message:({schemaCode:i})=>(0,e.str)`must match format "${i}"`,params:({schemaCode:i})=>(0,e._)`{format: ${i}}`},n={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:r,code(i,s){let{gen:o,data:a,$data:c,schema:u,schemaCode:l,it:d}=i,{opts:p,errSchemaPath:f,schemaEnv:m,self:h}=d;if(!p.validateFormats)return;c?g():v();function g(){let y=o.scopeValue("formats",{ref:h.formats,code:p.code.formats}),b=o.const("fDef",(0,e._)`${y}[${l}]`),S=o.let("fType"),x=o.let("format");o.if((0,e._)`typeof ${b} == "object" && !(${b} instanceof RegExp)`,()=>o.assign(S,(0,e._)`${b}.type || "string"`).assign(x,(0,e._)`${b}.validate`),()=>o.assign(S,(0,e._)`"string"`).assign(x,b)),i.fail$data((0,e.or)(w(),E()));function w(){return p.strictSchema===!1?e.nil:(0,e._)`${l} && !${x}`}function E(){let T=m.$async?(0,e._)`(${b}.async ? await ${x}(${a}) : ${x}(${a}))`:(0,e._)`${x}(${a})`,I=(0,e._)`(typeof ${x} == "function" ? ${T} : ${x}.test(${a}))`;return(0,e._)`${x} && ${x} !== true && ${S} === ${s} && !${I}`}}function v(){let y=h.formats[u];if(!y){w();return}if(y===!0)return;let[b,S,x]=E(y);b===s&&i.pass(T());function w(){if(p.strictSchema===!1){h.logger.warn(I());return}throw new Error(I());function I(){return`unknown format "${u}" ignored in schema at path "${f}"`}}function E(I){let P=I instanceof RegExp?(0,e.regexpCode)(I):p.code.formats?(0,e._)`${p.code.formats}${(0,e.getProperty)(u)}`:void 0,N=o.scopeValue("formats",{key:u,ref:I,code:P});return typeof I=="object"&&!(I instanceof RegExp)?[I.type||"string",I.validate,(0,e._)`${N}.validate`]:["string",I,N]}function T(){if(typeof y=="object"&&!(y instanceof RegExp)&&y.async){if(!m.$async)throw new Error("async format in sync schema");return(0,e._)`await ${x}(${a})`}return typeof S=="function"?(0,e._)`${x}(${a})`:(0,e._)`${x}.test(${a})`}}}};t.default=n}),Jde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Kde(),r=[e.default];t.default=r}),Xde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.contentVocabulary=t.metadataVocabulary=void 0,t.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"],t.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]}),Yde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=xde(),r=Nde(),n=Vde(),i=Jde(),s=Xde(),o=[e.default,r.default,(0,n.default)(),i.default,s.metadataVocabulary,s.contentVocabulary];t.default=o}),Qde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DiscrError=void 0;var e;(function(r){r.Tag="tag",r.Mapping="mapping"})(e||(t.DiscrError=e={}))}),epe=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=Qde(),n=RI(),i=ky(),s=ct(),o={message:({params:{discrError:c,tagName:u}})=>c===r.DiscrError.Tag?`tag "${u}" must be string`:`value of tag "${u}" must be in oneOf`,params:({params:{discrError:c,tag:u,tagName:l}})=>(0,e._)`{error: ${c}, tag: ${l}, tagValue: ${u}}`},a={keyword:"discriminator",type:"object",schemaType:"object",error:o,code(c){let{gen:u,data:l,schema:d,parentSchema:p,it:f}=c,{oneOf:m}=p;if(!f.opts.discriminator)throw new Error("discriminator: requires discriminator option");let h=d.propertyName;if(typeof h!="string")throw new Error("discriminator: requires propertyName");if(d.mapping)throw new Error("discriminator: mapping is not supported");if(!m)throw new Error("discriminator: requires oneOf keyword");let g=u.let("valid",!1),v=u.const("tag",(0,e._)`${l}${(0,e.getProperty)(h)}`);u.if((0,e._)`typeof ${v} == "string"`,()=>y(),()=>c.error(!1,{discrError:r.DiscrError.Tag,tag:v,tagName:h})),c.ok(g);function y(){let x=S();u.if(!1);for(let w in x)u.elseIf((0,e._)`${v} === ${w}`),u.assign(g,b(x[w]));u.else(),c.error(!1,{discrError:r.DiscrError.Mapping,tag:v,tagName:h}),u.endIf()}function b(x){let w=u.name("valid"),E=c.subschema({keyword:"oneOf",schemaProp:x},w);return c.mergeEvaluated(E,e.Name),w}function S(){var x;let w={},E=I(p),T=!0;for(let L=0;L{e.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}}),Tq=ne((t,e)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.MissingRefError=t.ValidationError=t.CodeGen=t.Name=t.nil=t.stringify=t.str=t._=t.KeywordCxt=t.Ajv=void 0;var r=_de(),n=Yde(),i=epe(),s=tpe(),o=["/properties"],a="http://json-schema.org/draft-07/schema";class c extends r.default{_addVocabularies(){super._addVocabularies(),n.default.forEach(m=>this.addVocabulary(m)),this.opts.discriminator&&this.addKeyword(i.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let m=this.opts.$data?this.$dataMetaSchema(s,o):s;this.addMetaSchema(m,a,!1),this.refs["http://json-schema.org/schema"]=a}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(a)?a:void 0)}}t.Ajv=c,e.exports=t=c,e.exports.Ajv=c,Object.defineProperty(t,"__esModule",{value:!0}),t.default=c;var u=Ey();Object.defineProperty(t,"KeywordCxt",{enumerable:!0,get:function(){return u.KeywordCxt}});var l=Ze();Object.defineProperty(t,"_",{enumerable:!0,get:function(){return l._}}),Object.defineProperty(t,"str",{enumerable:!0,get:function(){return l.str}}),Object.defineProperty(t,"stringify",{enumerable:!0,get:function(){return l.stringify}}),Object.defineProperty(t,"nil",{enumerable:!0,get:function(){return l.nil}}),Object.defineProperty(t,"Name",{enumerable:!0,get:function(){return l.Name}}),Object.defineProperty(t,"CodeGen",{enumerable:!0,get:function(){return l.CodeGen}});var d=II();Object.defineProperty(t,"ValidationError",{enumerable:!0,get:function(){return d.default}});var p=ky();Object.defineProperty(t,"MissingRefError",{enumerable:!0,get:function(){return p.default}})}),rpe=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.formatNames=t.fastFormats=t.fullFormats=void 0;function e(N,L){return{validate:N,compare:L}}t.fullFormats={date:e(s,o),time:e(c(!0),u),"date-time":e(p(!0),f),"iso-time":e(c(),l),"iso-date-time":e(p(),m),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:v,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:P,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:b,int32:{type:"number",validate:w},int64:{type:"number",validate:E},float:{type:"number",validate:T},double:{type:"number",validate:T},password:!0,binary:!0},t.fastFormats={...t.fullFormats,date:e(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,o),time:e(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,u),"date-time":e(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,f),"iso-time":e(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,l),"iso-date-time":e(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,m),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i},t.formatNames=Object.keys(t.fullFormats);function r(N){return N%4===0&&(N%100!==0||N%400===0)}var n=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,i=[0,31,28,31,30,31,30,31,31,30,31,30,31];function s(N){let L=n.exec(N);if(!L)return!1;let G=+L[1],j=+L[2],ae=+L[3];return j>=1&&j<=12&&ae>=1&&ae<=(j===2&&r(G)?29:i[j])}function o(N,L){if(N&&L)return N>L?1:N23||C>59||N&&!kt)return!1;if(ae<=23&&Me<=59&&Le<60)return!0;let H=Me-C*Ge,M=ae-K*Ge-(H<0?1:0);return(M===23||M===-1)&&(H===59||H===-1)&&Le<61}}function u(N,L){if(!(N&&L))return;let G=new Date("2020-01-01T"+N).valueOf(),j=new Date("2020-01-01T"+L).valueOf();if(G&&j)return G-j}function l(N,L){if(!(N&&L))return;let G=a.exec(N),j=a.exec(L);if(G&&j)return N=G[1]+G[2]+G[3],L=j[1]+j[2]+j[3],N>L?1:N=S}function E(N){return Number.isInteger(N)}function T(){return!0}var I=/[^\\]\\Z/;function P(N){if(I.test(N))return!1;try{return new RegExp(N),!0}catch{return!1}}}),npe=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.formatLimitDefinition=void 0;var e=Tq(),r=Ze(),n=r.operators,i={formatMaximum:{okStr:"<=",ok:n.LTE,fail:n.GT},formatMinimum:{okStr:">=",ok:n.GTE,fail:n.LT},formatExclusiveMaximum:{okStr:"<",ok:n.LT,fail:n.GTE},formatExclusiveMinimum:{okStr:">",ok:n.GT,fail:n.LTE}},s={message:({keyword:a,schemaCode:c})=>(0,r.str)`should be ${i[a].okStr} ${c}`,params:({keyword:a,schemaCode:c})=>(0,r._)`{comparison: ${i[a].okStr}, limit: ${c}}`};t.formatLimitDefinition={keyword:Object.keys(i),type:"string",schemaType:"string",$data:!0,error:s,code(a){let{gen:c,data:u,schemaCode:l,keyword:d,it:p}=a,{opts:f,self:m}=p;if(!f.validateFormats)return;let h=new e.KeywordCxt(p,m.RULES.all.format.definition,"format");h.$data?g():v();function g(){let b=c.scopeValue("formats",{ref:m.formats,code:f.code.formats}),S=c.const("fmt",(0,r._)`${b}[${h.schemaCode}]`);a.fail$data((0,r.or)((0,r._)`typeof ${S} != "object"`,(0,r._)`${S} instanceof RegExp`,(0,r._)`typeof ${S}.compare != "function"`,y(S)))}function v(){let b=h.schema,S=m.formats[b];if(!S||S===!0)return;if(typeof S!="object"||S instanceof RegExp||typeof S.compare!="function")throw new Error(`"${d}": format "${b}" does not define "compare" function`);let x=c.scopeValue("formats",{key:b,ref:S,code:f.code.formats?(0,r._)`${f.code.formats}${(0,r.getProperty)(b)}`:void 0});a.fail$data(y(x))}function y(b){return(0,r._)`${b}.compare(${u}, ${l}) ${i[d].fail} 0`}},dependencies:["format"]};var o=a=>(a.addKeyword(t.formatLimitDefinition),a);t.default=o}),ipe=ne((t,e)=>{Object.defineProperty(t,"__esModule",{value:!0});var r=rpe(),n=npe(),i=Ze(),s=new i.Name("fullFormats"),o=new i.Name("fastFormats"),a=(u,l={keywords:!0})=>{if(Array.isArray(l))return c(u,l,r.fullFormats,s),u;let[d,p]=l.mode==="fast"?[r.fastFormats,o]:[r.fullFormats,s],f=l.formats||r.formatNames;return c(u,f,d,p),l.keywords&&(0,n.default)(u),u};a.get=(u,l="full")=>{let p=(l==="fast"?r.fastFormats:r.fullFormats)[u];if(!p)throw new Error(`Unknown format "${u}"`);return p};function c(u,l,d,p){var f,m;(f=(m=u.opts.code).formats)!==null&&f!==void 0||(m.formats=(0,i._)`require("ajv-formats/dist/formats").${p}`);for(let h of l)u.addFormat(h,d[h])}e.exports=t=a,Object.defineProperty(t,"__esModule",{value:!0}),t.default=a}),spe=50;function Rq(t=spe){let e=new AbortController;return(0,Iq.setMaxListeners)(t,e.signal),e}var ope=typeof global=="object"&&global&&global.Object===Object&&global,ape=ope,cpe=typeof self=="object"&&self&&self.Object===Object&&self,upe=ape||cpe||Function("return this")(),CI=upe,lpe=CI.Symbol,gy=lpe,Aq=Object.prototype,dpe=Aq.hasOwnProperty,ppe=Aq.toString,lf=gy?gy.toStringTag:void 0;function fpe(t){var e=dpe.call(t,lf),r=t[lf];try{t[lf]=void 0;var n=!0}catch{}var i=ppe.call(t);return n&&(e?t[lf]=r:delete t[lf]),i}var mpe=fpe,hpe=Object.prototype,gpe=hpe.toString;function vpe(t){return gpe.call(t)}var ype=vpe,_pe="[object Null]",bpe="[object Undefined]",qF=gy?gy.toStringTag:void 0;function Spe(t){return t==null?t===void 0?bpe:_pe:qF&&qF in Object(t)?mpe(t):ype(t)}var xpe=Spe;function wpe(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var Nq=wpe,Epe="[object AsyncFunction]",kpe="[object Function]",Tpe="[object GeneratorFunction]",$pe="[object Proxy]";function Ipe(t){if(!Nq(t))return!1;var e=xpe(t);return e==kpe||e==Tpe||e==Epe||e==$pe}var Rpe=Ipe,Ope=CI["__core-js_shared__"],rI=Ope,HF=(function(){var t=/[^.]+$/.exec(rI&&rI.keys&&rI.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""})();function Cpe(t){return!!HF&&HF in t}var Ppe=Cpe,Ape=Function.prototype,Npe=Ape.toString;function Mpe(t){if(t!=null){try{return Npe.call(t)}catch{}try{return t+""}catch{}}return""}var Dpe=Mpe,jpe=/[\\^$.*+?()[\]{}|]/g,zpe=/^\[object .+?Constructor\]$/,Lpe=Function.prototype,Upe=Object.prototype,Fpe=Lpe.toString,qpe=Upe.hasOwnProperty,Hpe=RegExp("^"+Fpe.call(qpe).replace(jpe,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Zpe(t){if(!Nq(t)||Ppe(t))return!1;var e=Rpe(t)?Hpe:zpe;return e.test(Dpe(t))}var Bpe=Zpe;function Gpe(t,e){return t?.[e]}var Wpe=Gpe;function Vpe(t,e){var r=Wpe(t,e);return Bpe(r)?r:void 0}var Mq=Vpe,Kpe=Mq(Object,"create"),ff=Kpe;function Jpe(){this.__data__=ff?ff(null):{},this.size=0}var Xpe=Jpe;function Ype(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var Qpe=Ype,efe="__lodash_hash_undefined__",tfe=Object.prototype,rfe=tfe.hasOwnProperty;function nfe(t){var e=this.__data__;if(ff){var r=e[t];return r===efe?void 0:r}return rfe.call(e,t)?e[t]:void 0}var ife=nfe,sfe=Object.prototype,ofe=sfe.hasOwnProperty;function afe(t){var e=this.__data__;return ff?e[t]!==void 0:ofe.call(e,t)}var cfe=afe,ufe="__lodash_hash_undefined__";function lfe(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=ff&&e===void 0?ufe:e,this}var dfe=lfe;function Ku(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e-1}var Efe=wfe;function kfe(t,e){var r=this.__data__,n=Ty(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}var Tfe=kfe;function Ju(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{if(!t||t.trim()==="")return null;let e=t.split(",").map(s=>s.trim()).filter(Boolean);if(e.length===0)return null;let r=e.some(s=>s.startsWith("!")),n=e.some(s=>!s.startsWith("!"));if(r&&n)return null;let i=e.map(s=>s.replace(/^!/,"").toLowerCase());return{include:r?[]:i,exclude:r?i:[],isExclusive:r}});function Gfe(t){let e=[],r=t.match(/^MCP server ["']([^"']+)["']/);if(r&&r[1])e.push("mcp"),e.push(r[1].toLowerCase());else{let s=t.match(/^([^:[]+):/);s&&s[1]&&e.push(s[1].trim().toLowerCase())}let n=t.match(/^\[([^\]]+)]/);n&&n[1]&&e.push(n[1].trim().toLowerCase()),t.toLowerCase().includes("statsig event:")&&e.push("statsig");let i=t.match(/:\s*([^:]+?)(?:\s+(?:type|mode|status|event))?:/);if(i&&i[1]){let s=i[1].trim().toLowerCase();s.length<30&&!s.includes(" ")&&e.push(s)}return Array.from(new Set(e))}function Wfe(t,e){return e?t.length===0?!1:e.isExclusive?!t.some(r=>e.exclude.includes(r)):t.some(r=>e.include.includes(r)):!0}function Vfe(t,e){if(!e)return!0;let r=Gfe(t);return Wfe(r,e)}function Lq(){return process.env.CLAUDE_CONFIG_DIR??(0,jq.join)((0,zq.homedir)(),".claude")}function GF(t){if(!t)return!1;if(typeof t=="boolean")return t;let e=t.toLowerCase().trim();return["1","true","yes","on"].includes(e)}var nI=15e4,cy=3e4;function Hq(t){return{name:t,default:cy,validate:e=>{if(!e)return{effective:cy,status:"valid"};let r=parseInt(e,10);return isNaN(r)||r<=0?{effective:cy,status:"invalid",message:`Invalid value "${e}" (using default: ${cy})`}:r>nI?{effective:nI,status:"capped",message:`Capped from ${r} to ${nI}`}:{effective:r,status:"valid"}}}}var Kfe=Hq("BASH_MAX_OUTPUT_LENGTH"),Mze=Hq("TASK_MAX_OUTPUT_LENGTH"),Jfe={name:"CLAUDE_CODE_MAX_OUTPUT_TOKENS",default:32e3,validate:t=>{if(!t)return{effective:32e3,status:"valid"};let n=parseInt(t,10);return isNaN(n)||n<=0?{effective:32e3,status:"invalid",message:`Invalid value "${t}" (using default: 32000)`}:n>64e3?{effective:64e3,status:"capped",message:`Capped from ${n} to 64000`}:{effective:n,status:"valid"}}};function Xfe(){let t="";return typeof process<"u"&&typeof process.cwd=="function"&&(t=(0,Fq.realpathSync)((0,Uq.cwd)())),{originalCwd:t,totalCostUSD:0,totalAPIDuration:0,totalAPIDurationWithoutRetries:0,totalToolDuration:0,startTime:Date.now(),lastInteractionTime:Date.now(),totalLinesAdded:0,totalLinesRemoved:0,hasUnknownModelCost:!1,cwd:t,modelUsage:{},mainLoopModelOverride:void 0,initialMainLoopModel:null,modelStrings:null,isInteractive:!1,clientType:"cli",sessionIngressToken:void 0,oauthTokenFromFd:void 0,apiKeyFromFd:void 0,flagSettingsPath:void 0,allowedSettingSources:["userSettings","projectSettings","localSettings","flagSettings","policySettings"],meter:null,sessionCounter:null,locCounter:null,prCounter:null,commitCounter:null,costCounter:null,tokenCounter:null,codeEditToolDecisionCounter:null,activeTimeCounter:null,sessionId:(0,qq.randomUUID)(),loggerProvider:null,eventLogger:null,meterProvider:null,tracerProvider:null,agentColorMap:new Map,agentColorIndex:0,envVarValidators:[Kfe,Jfe],lastAPIRequest:null,inMemoryErrorLog:[],inlinePlugins:[],sessionBypassPermissionsMode:!1,sessionPersistenceDisabled:!1,hasExitedPlanMode:!1,needsPlanModeExitAttachment:!1,hasExitedDelegateMode:!1,needsDelegateModeExitAttachment:!1,lspRecommendationShownThisSession:!1,initJsonSchema:null,registeredHooks:null,planSlugCache:new Map,teleportedSessionInfo:null,invokedSkills:new Map,slowOperations:[],sdkBetas:void 0}}var Yfe=Xfe();function Qfe(){return Yfe.sessionId}function eme({writeFn:t,flushIntervalMs:e=1e3,maxBufferSize:r=100,immediateMode:n=!1}){let i=[],s=null;function o(){s&&(clearTimeout(s),s=null)}function a(){i.length!==0&&(t(i.join("")),i=[],o())}function c(){s||(s=setTimeout(a,e))}return{write(u){if(n){t(u);return}i.push(u),c(),i.length>=r&&a()},flush:a,dispose(){a()}}}var WF=new Set;function tme(t){return WF.add(t),()=>WF.delete(t)}var Zq=1/0;function rme(t){return t===null?"null":t===void 0?"undefined":Array.isArray(t)?`Array[${t.length}]`:typeof t=="object"?`Object{${Object.keys(t).length} keys}`:typeof t=="string"?`string(${t.length} chars)`:typeof t}function Bq(t,e){let r=performance.now();try{return e()}finally{let n=performance.now()-r;n>Zq&&(Hs(`[SLOW OPERATION DETECTED] ${t} (${n.toFixed(1)}ms)`),void 0)}}function ss(t,e,r){let n=rme(t);return Bq(`JSON.stringify(${n})`,()=>JSON.stringify(t,e,r))}var Gq=(t,e)=>{let r=typeof t=="string"?t.length:0;return Bq(`JSON.parse(${r} chars)`,()=>JSON.parse(t,e))},nme=$f(()=>GF(process.env.DEBUG)||GF(process.env.DEBUG_SDK)||process.argv.includes("--debug")||process.argv.includes("-d")||Wq()||process.argv.some(t=>t.startsWith("--debug="))),ime=$f(()=>{let t=process.argv.find(r=>r.startsWith("--debug="));if(!t)return null;let e=t.substring(8);return Bfe(e)}),Wq=$f(()=>process.argv.includes("--debug-to-stderr")||process.argv.includes("-d2e"));function sme(t){if(typeof process>"u"||typeof process.versions>"u"||typeof process.versions.node>"u")return!1;let e=ime();return Vfe(t,e)}var ome=!1,uy=null;function ame(){return uy||(uy=eme({writeFn:t=>{let e=Vq();Zs().existsSync((0,Na.dirname)(e))||Zs().mkdirSync((0,Na.dirname)(e)),Zs().appendFileSync(e,t),cme()},flushIntervalMs:1e3,maxBufferSize:100,immediateMode:nme()}),tme(async()=>uy?.dispose())),uy}function Hs(t,{level:e}={level:"debug"}){if(!sme(t))return;ome&&t.includes(` +`)&&(t=ss(t));let n=`${new Date().toISOString()} [${e.toUpperCase()}] ${t.trim()} +`;if(Wq()){Zfe(n);return}ame().write(n)}function Vq(){return process.env.CLAUDE_CODE_DEBUG_LOGS_DIR??(0,Na.join)(Lq(),"debug",`${Qfe()}.txt`)}var cme=$f(()=>{if(process.argv[2]!=="--ripgrep")try{let t=Vq(),e=(0,Na.dirname)(t),r=(0,Na.join)(e,"latest");if(Zs().existsSync(e)||Zs().mkdirSync(e),Zs().existsSync(r))try{Zs().unlinkSync(r)}catch{}Zs().symlinkSync(t,r)}catch{}});function nr(t,e){let r=performance.now();try{return e()}finally{let n=performance.now()-r;n>Zq&&(Hs(`[SLOW OPERATION DETECTED] fs.${t} (${n.toFixed(1)}ms)`),`${t}`,void 0)}}var ume={cwd(){return process.cwd()},existsSync(t){return nr(`existsSync(${t})`,()=>Re.existsSync(t))},async stat(t){return(0,Pq.stat)(t)},statSync(t){return nr(`statSync(${t})`,()=>Re.statSync(t))},lstatSync(t){return nr(`lstatSync(${t})`,()=>Re.lstatSync(t))},readFileSync(t,e){return nr(`readFileSync(${t})`,()=>Re.readFileSync(t,{encoding:e.encoding}))},readFileBytesSync(t){return nr(`readFileBytesSync(${t})`,()=>Re.readFileSync(t))},readSync(t,e){return nr(`readSync(${t}, ${e.length} bytes)`,()=>{let r;try{r=Re.openSync(t,"r");let n=Buffer.alloc(e.length),i=Re.readSync(r,n,0,e.length,0);return{buffer:n,bytesRead:i}}finally{r&&Re.closeSync(r)}})},appendFileSync(t,e,r){return nr(`appendFileSync(${t}, ${e.length} chars)`,()=>{if(!Re.existsSync(t)&&r?.mode!==void 0){let n=Re.openSync(t,"a",r.mode);try{Re.appendFileSync(n,e)}finally{Re.closeSync(n)}}else Re.appendFileSync(t,e)})},copyFileSync(t,e){return nr(`copyFileSync(${t} \u2192 ${e})`,()=>Re.copyFileSync(t,e))},unlinkSync(t){return nr(`unlinkSync(${t})`,()=>Re.unlinkSync(t))},renameSync(t,e){return nr(`renameSync(${t} \u2192 ${e})`,()=>Re.renameSync(t,e))},linkSync(t,e){return nr(`linkSync(${t} \u2192 ${e})`,()=>Re.linkSync(t,e))},symlinkSync(t,e){return nr(`symlinkSync(${t} \u2192 ${e})`,()=>Re.symlinkSync(t,e))},readlinkSync(t){return nr(`readlinkSync(${t})`,()=>Re.readlinkSync(t))},realpathSync(t){return nr(`realpathSync(${t})`,()=>Re.realpathSync(t))},mkdirSync(t,e){return nr(`mkdirSync(${t})`,()=>{if(!Re.existsSync(t)){let r={recursive:!0};e?.mode!==void 0&&(r.mode=e.mode),Re.mkdirSync(t,r)}})},readdirSync(t){return nr(`readdirSync(${t})`,()=>Re.readdirSync(t,{withFileTypes:!0}))},readdirStringSync(t){return nr(`readdirStringSync(${t})`,()=>Re.readdirSync(t))},isDirEmptySync(t){return nr(`isDirEmptySync(${t})`,()=>this.readdirSync(t).length===0)},rmdirSync(t){return nr(`rmdirSync(${t})`,()=>Re.rmdirSync(t))},rmSync(t,e){return nr(`rmSync(${t})`,()=>Re.rmSync(t,e))},createWriteStream(t){return Re.createWriteStream(t)}},lme=ume;function Zs(){return lme}var Aa=class extends Error{};function Kq(){return process.versions.bun!==void 0}var ly=null,VF=!1;function dme(){if(VF)return ly;if(VF=!0,!process.env.DEBUG_CLAUDE_AGENT_SDK)return null;let t=(0,uI.join)(Lq(),"debug");return ly=(0,uI.join)(t,`sdk-${(0,Jq.randomUUID)()}.txt`),(0,Yu.existsSync)(t)||(0,Yu.mkdirSync)(t,{recursive:!0}),process.stderr.write(`SDK debug logs: ${ly} +`),ly}function Pa(t){let e=dme();if(!e)return;let n=`${new Date().toISOString()} ${t} +`;(0,Yu.appendFileSync)(e,n)}function pme(t,e){let r={...t};if(e){let n={sandbox:e};if(r.settings)try{n={...Gq(r.settings),sandbox:e}}catch{}r.settings=ss(n)}return r}var lI=class{options;process;processStdin;processStdout;ready=!1;abortController;exitError;exitListeners=[];processExitHandler;abortHandler;constructor(e){this.options=e,this.abortController=e.abortController||Rq(),this.initialize()}getDefaultExecutable(){return Kq()?"bun":"node"}spawnLocalProcess(e){let{command:r,args:n,cwd:i,env:s,signal:o}=e,a=s.DEBUG_CLAUDE_AGENT_SDK||this.options.stderr?"pipe":"ignore",c=(0,Oq.spawn)(r,n,{cwd:i,stdio:["pipe","pipe",a],signal:o,env:s,windowsHide:!0});return(s.DEBUG_CLAUDE_AGENT_SDK||this.options.stderr)&&c.stderr.on("data",l=>{let d=l.toString();Pa(d),this.options.stderr&&this.options.stderr(d)}),{stdin:c.stdin,stdout:c.stdout,get killed(){return c.killed},get exitCode(){return c.exitCode},kill:c.kill.bind(c),on:c.on.bind(c),once:c.once.bind(c),off:c.off.bind(c)}}initialize(){try{let{additionalDirectories:e=[],betas:r,cwd:n,executable:i=this.getDefaultExecutable(),executableArgs:s=[],extraArgs:o={},pathToClaudeCodeExecutable:a,env:c={...process.env},maxThinkingTokens:u,maxTurns:l,maxBudgetUsd:d,model:p,fallbackModel:f,jsonSchema:m,permissionMode:h,allowDangerouslySkipPermissions:g,permissionPromptToolName:v,continueConversation:y,resume:b,settingSources:S,allowedTools:x=[],disallowedTools:w=[],tools:E,mcpServers:T,strictMcpConfig:I,canUseTool:P,includePartialMessages:N,plugins:L,sandbox:G}=this.options,j=["--output-format","stream-json","--verbose","--input-format","stream-json"];if(u!==void 0&&j.push("--max-thinking-tokens",u.toString()),l&&j.push("--max-turns",l.toString()),d!==void 0&&j.push("--max-budget-usd",d.toString()),p&&j.push("--model",p),r&&r.length>0&&j.push("--betas",r.join(",")),m&&j.push("--json-schema",ss(m)),c.DEBUG_CLAUDE_AGENT_SDK&&j.push("--debug-to-stderr"),P){if(v)throw new Error("canUseTool callback cannot be used with permissionPromptToolName. Please use one or the other.");j.push("--permission-prompt-tool","stdio")}else v&&j.push("--permission-prompt-tool",v);if(y&&j.push("--continue"),b&&j.push("--resume",b),x.length>0&&j.push("--allowedTools",x.join(",")),w.length>0&&j.push("--disallowedTools",w.join(",")),E!==void 0&&(Array.isArray(E)?E.length===0?j.push("--tools",""):j.push("--tools",E.join(",")):j.push("--tools","default")),T&&Object.keys(T).length>0&&j.push("--mcp-config",ss({mcpServers:T})),S&&j.push("--setting-sources",S.join(",")),I&&j.push("--strict-mcp-config"),h&&j.push("--permission-mode",h),g&&j.push("--allow-dangerously-skip-permissions"),f){if(p&&f===p)throw new Error("Fallback model cannot be the same as the main model. Please specify a different model for fallbackModel option.");j.push("--fallback-model",f)}N&&j.push("--include-partial-messages");for(let C of e)j.push("--add-dir",C);if(L&&L.length>0)for(let C of L)if(C.type==="local")j.push("--plugin-dir",C.path);else throw new Error(`Unsupported plugin type: ${C.type}`);this.options.forkSession&&j.push("--fork-session"),this.options.resumeSessionAt&&j.push("--resume-session-at",this.options.resumeSessionAt),this.options.persistSession===!1&&j.push("--no-session-persistence");let ae=pme(o??{},G);for(let[C,H]of Object.entries(ae))H===null?j.push(`--${C}`):j.push(`--${C}`,H);c.CLAUDE_CODE_ENTRYPOINT||(c.CLAUDE_CODE_ENTRYPOINT="sdk-ts"),delete c.NODE_OPTIONS,c.DEBUG_CLAUDE_AGENT_SDK?c.DEBUG="1":delete c.DEBUG;let Me=fme(a),Le=Me?a:i,kt=Me?[...s,...j]:[...s,a,...j],Ge={command:Le,args:kt,cwd:n,env:c,signal:this.abortController.signal};if(this.options.spawnClaudeCodeProcess)Pa(`Spawning Claude Code (custom): ${Le} ${kt.join(" ")}`),this.process=this.options.spawnClaudeCodeProcess(Ge);else{if(!Zs().existsSync(a)){let H=Me?`Claude Code native binary not found at ${a}. Please ensure Claude Code is installed via native installer or specify a valid path with options.pathToClaudeCodeExecutable.`:`Claude Code executable not found at ${a}. Is options.pathToClaudeCodeExecutable set?`;throw new ReferenceError(H)}Pa(`Spawning Claude Code: ${Le} ${kt.join(" ")}`),this.process=this.spawnLocalProcess(Ge)}this.processStdin=this.process.stdin,this.processStdout=this.process.stdout;let K=()=>{this.process&&!this.process.killed&&this.process.kill("SIGTERM")};this.processExitHandler=K,this.abortHandler=K,process.on("exit",this.processExitHandler),this.abortController.signal.addEventListener("abort",this.abortHandler),this.process.on("error",C=>{this.ready=!1,this.abortController.signal.aborted?this.exitError=new Aa("Claude Code process aborted by user"):(this.exitError=new Error(`Failed to spawn Claude Code process: ${C.message}`),Pa(this.exitError.message))}),this.process.on("exit",(C,H)=>{if(this.ready=!1,this.abortController.signal.aborted)this.exitError=new Aa("Claude Code process aborted by user");else{let M=this.getProcessExitError(C,H);M&&(this.exitError=M,Pa(M.message))}}),this.ready=!0}catch(e){throw this.ready=!1,e}}getProcessExitError(e,r){if(e!==0&&e!==null)return new Error(`Claude Code process exited with code ${e}`);if(r)return new Error(`Claude Code process terminated by signal ${r}`)}write(e){if(this.abortController.signal.aborted)throw new Aa("Operation aborted");if(!this.ready||!this.processStdin)throw new Error("ProcessTransport is not ready for writing");if(this.process?.killed||this.process?.exitCode!==null)throw new Error("Cannot write to terminated process");if(this.exitError)throw new Error(`Cannot write to process that exited with error: ${this.exitError.message}`);Pa(`[ProcessTransport] Writing to stdin: ${e.substring(0,100)}`);try{this.processStdin.write(e)||Pa("[ProcessTransport] Write buffer full, data queued")}catch(r){throw this.ready=!1,new Error(`Failed to write to process stdin: ${r.message}`)}}close(){this.processStdin&&(this.processStdin.end(),this.processStdin=void 0),this.abortHandler&&(this.abortController.signal.removeEventListener("abort",this.abortHandler),this.abortHandler=void 0);for(let{handler:e}of this.exitListeners)this.process?.off("exit",e);this.exitListeners=[],this.process&&!this.process.killed&&(this.process.kill("SIGTERM"),setTimeout(()=>{this.process&&!this.process.killed&&this.process.kill("SIGKILL")},5e3)),this.ready=!1,this.processExitHandler&&(process.off("exit",this.processExitHandler),this.processExitHandler=void 0)}isReady(){return this.ready}async*readMessages(){if(!this.processStdout)throw new Error("ProcessTransport output stream not available");let e=(0,Cq.createInterface)({input:this.processStdout});try{for await(let r of e)r.trim()&&(yield Gq(r));await this.waitForExit()}catch(r){throw r}finally{e.close()}}endInput(){this.processStdin&&this.processStdin.end()}getInputStream(){return this.processStdin}onExit(e){if(!this.process)return()=>{};let r=(n,i)=>{let s=this.getProcessExitError(n,i);e(s)};return this.process.on("exit",r),this.exitListeners.push({callback:e,handler:r}),()=>{this.process&&this.process.off("exit",r);let n=this.exitListeners.findIndex(i=>i.handler===r);n!==-1&&this.exitListeners.splice(n,1)}}async waitForExit(){if(!this.process){if(this.exitError)throw this.exitError;return}if(this.process.exitCode!==null||this.process.killed){if(this.exitError)throw this.exitError;return}return new Promise((e,r)=>{let n=(s,o)=>{if(this.abortController.signal.aborted){r(new Aa("Operation aborted"));return}let a=this.getProcessExitError(s,o);a?r(a):e()};this.process.once("exit",n);let i=s=>{this.process.off("exit",n),r(s)};this.process.once("error",i),this.process.once("exit",()=>{this.process.off("error",i)})})}};function fme(t){return![".js",".mjs",".tsx",".ts",".jsx"].some(r=>t.endsWith(r))}var dI=class{returned;queue=[];readResolve;readReject;isDone=!1;hasError;started=!1;constructor(e){this.returned=e}[Symbol.asyncIterator](){if(this.started)throw new Error("Stream can only be iterated once");return this.started=!0,this}next(){return this.queue.length>0?Promise.resolve({done:!1,value:this.queue.shift()}):this.isDone?Promise.resolve({done:!0,value:void 0}):this.hasError?Promise.reject(this.hasError):new Promise((e,r)=>{this.readResolve=e,this.readReject=r})}enqueue(e){if(this.readResolve){let r=this.readResolve;this.readResolve=void 0,this.readReject=void 0,r({done:!1,value:e})}else this.queue.push(e)}done(){if(this.isDone=!0,this.readResolve){let e=this.readResolve;this.readResolve=void 0,this.readReject=void 0,e({done:!0,value:void 0})}}error(e){if(this.hasError=e,this.readReject){let r=this.readReject;this.readResolve=void 0,this.readReject=void 0,r(e)}}return(){return this.isDone=!0,this.returned&&this.returned(),Promise.resolve({done:!0,value:void 0})}},pI=class{sendMcpMessage;isClosed=!1;constructor(e){this.sendMcpMessage=e}onclose;onerror;onmessage;async start(){}async send(e){if(this.isClosed)throw new Error("Transport is closed");this.sendMcpMessage(e)}async close(){this.isClosed||(this.isClosed=!0,this.onclose?.())}},fI=class{transport;isSingleUserTurn;canUseTool;hooks;abortController;jsonSchema;initConfig;pendingControlResponses=new Map;cleanupPerformed=!1;sdkMessages;inputStream=new dI;initialization;cancelControllers=new Map;hookCallbacks=new Map;nextCallbackId=0;sdkMcpTransports=new Map;sdkMcpServerInstances=new Map;pendingMcpResponses=new Map;firstResultReceivedResolve;firstResultReceived=!1;hasBidirectionalNeeds(){return this.sdkMcpTransports.size>0||this.hooks!==void 0&&Object.keys(this.hooks).length>0||this.canUseTool!==void 0}constructor(e,r,n,i,s,o=new Map,a,c){this.transport=e,this.isSingleUserTurn=r,this.canUseTool=n,this.hooks=i,this.abortController=s,this.jsonSchema=a,this.initConfig=c;for(let[u,l]of o)this.connectSdkMcpServer(u,l);this.sdkMessages=this.readSdkMessages(),this.readMessages(),this.initialization=this.initialize(),this.initialization.catch(()=>{})}setError(e){this.inputStream.error(e)}cleanup(e){if(!this.cleanupPerformed){this.cleanupPerformed=!0;try{this.transport.close(),this.pendingControlResponses.clear(),this.pendingMcpResponses.clear(),this.cancelControllers.clear(),this.hookCallbacks.clear();for(let r of this.sdkMcpTransports.values())try{r.close()}catch{}this.sdkMcpTransports.clear(),e?this.inputStream.error(e):this.inputStream.done()}catch{}}}next(...[e]){return this.sdkMessages.next(e)}return(e){return this.sdkMessages.return(e)}throw(e){return this.sdkMessages.throw(e)}[Symbol.asyncIterator](){return this.sdkMessages}[Symbol.asyncDispose](){return this.sdkMessages[Symbol.asyncDispose]()}async readMessages(){try{for await(let e of this.transport.readMessages()){if(e.type==="control_response"){let r=this.pendingControlResponses.get(e.response.request_id);r&&r(e.response);continue}else if(e.type==="control_request"){this.handleControlRequest(e);continue}else if(e.type==="control_cancel_request"){this.handleControlCancelRequest(e);continue}else if(e.type==="keep_alive")continue;e.type==="result"&&(this.firstResultReceived=!0,this.firstResultReceivedResolve&&this.firstResultReceivedResolve(),this.isSingleUserTurn&&(Hs("[Query.readMessages] First result received for single-turn query, closing stdin"),this.transport.endInput())),this.inputStream.enqueue(e)}this.firstResultReceivedResolve&&this.firstResultReceivedResolve(),this.inputStream.done(),this.cleanup()}catch(e){this.firstResultReceivedResolve&&this.firstResultReceivedResolve(),this.inputStream.error(e),this.cleanup(e)}}async handleControlRequest(e){let r=new AbortController;this.cancelControllers.set(e.request_id,r);try{let n=await this.processControlRequest(e,r.signal),i={type:"control_response",response:{subtype:"success",request_id:e.request_id,response:n}};await Promise.resolve(this.transport.write(ss(i)+` +`))}catch(n){let i={type:"control_response",response:{subtype:"error",request_id:e.request_id,error:n.message||String(n)}};await Promise.resolve(this.transport.write(ss(i)+` +`))}finally{this.cancelControllers.delete(e.request_id)}}handleControlCancelRequest(e){let r=this.cancelControllers.get(e.request_id);r&&(r.abort(),this.cancelControllers.delete(e.request_id))}async processControlRequest(e,r){if(e.request.subtype==="can_use_tool"){if(!this.canUseTool)throw new Error("canUseTool callback is not provided.");return{...await this.canUseTool(e.request.tool_name,e.request.input,{signal:r,suggestions:e.request.permission_suggestions,blockedPath:e.request.blocked_path,decisionReason:e.request.decision_reason,toolUseID:e.request.tool_use_id,agentID:e.request.agent_id}),toolUseID:e.request.tool_use_id}}else{if(e.request.subtype==="hook_callback")return await this.handleHookCallbacks(e.request.callback_id,e.request.input,e.request.tool_use_id,r);if(e.request.subtype==="mcp_message"){let n=e.request,i=this.sdkMcpTransports.get(n.server_name);if(!i)throw new Error(`SDK MCP server not found: ${n.server_name}`);return"method"in n.message&&"id"in n.message&&n.message.id!==null?{mcp_response:await this.handleMcpControlRequest(n.server_name,n,i)}:(i.onmessage&&i.onmessage(n.message),{mcp_response:{jsonrpc:"2.0",result:{},id:0}})}}throw new Error("Unsupported control request subtype: "+e.request.subtype)}async*readSdkMessages(){for await(let e of this.inputStream)yield e}async initialize(){let e;if(this.hooks){e={};for(let[s,o]of Object.entries(this.hooks))o.length>0&&(e[s]=o.map(a=>{let c=[];for(let u of a.hooks){let l=`hook_${this.nextCallbackId++}`;this.hookCallbacks.set(l,u),c.push(l)}return{matcher:a.matcher,hookCallbackIds:c,timeout:a.timeout}}))}let r=this.sdkMcpTransports.size>0?Array.from(this.sdkMcpTransports.keys()):void 0,n={subtype:"initialize",hooks:e,sdkMcpServers:r,jsonSchema:this.jsonSchema,systemPrompt:this.initConfig?.systemPrompt,appendSystemPrompt:this.initConfig?.appendSystemPrompt,agents:this.initConfig?.agents};return(await this.request(n)).response}async interrupt(){await this.request({subtype:"interrupt"})}async setPermissionMode(e){await this.request({subtype:"set_permission_mode",mode:e})}async setModel(e){await this.request({subtype:"set_model",model:e})}async setMaxThinkingTokens(e){await this.request({subtype:"set_max_thinking_tokens",max_thinking_tokens:e})}async rewindFiles(e,r){return(await this.request({subtype:"rewind_files",user_message_id:e,dry_run:r?.dryRun})).response}async processPendingPermissionRequests(e){for(let r of e)r.request.subtype==="can_use_tool"&&this.handleControlRequest(r).catch(()=>{})}request(e){let r=Math.random().toString(36).substring(2,15),n={request_id:r,type:"control_request",request:e};return new Promise((i,s)=>{this.pendingControlResponses.set(r,o=>{o.subtype==="success"?i(o):(s(new Error(o.error)),o.pending_permission_requests&&this.processPendingPermissionRequests(o.pending_permission_requests))}),Promise.resolve(this.transport.write(ss(n)+` +`))})}async supportedCommands(){return(await this.initialization).commands}async supportedModels(){return(await this.initialization).models}async mcpServerStatus(){return(await this.request({subtype:"mcp_status"})).response.mcpServers}async setMcpServers(e){let r={},n={};for(let[c,u]of Object.entries(e))u.type==="sdk"&&"instance"in u?r[c]=u.instance:n[c]=u;let i=new Set(this.sdkMcpServerInstances.keys()),s=new Set(Object.keys(r));for(let c of i)s.has(c)||await this.disconnectSdkMcpServer(c);for(let[c,u]of Object.entries(r))i.has(c)||this.connectSdkMcpServer(c,u);let o={};for(let c of Object.keys(r))o[c]={type:"sdk",name:c};return(await this.request({subtype:"mcp_set_servers",servers:{...n,...o}})).response}async accountInfo(){return(await this.initialization).account}async streamInput(e){Hs("[Query.streamInput] Starting to process input stream");try{let r=0;for await(let n of e){if(r++,Hs(`[Query.streamInput] Processing message ${r}: ${n.type}`),this.abortController?.signal.aborted)break;await Promise.resolve(this.transport.write(ss(n)+` +`))}Hs(`[Query.streamInput] Finished processing ${r} messages from input stream`),r>0&&this.hasBidirectionalNeeds()&&(Hs("[Query.streamInput] Has bidirectional needs, waiting for first result"),await this.waitForFirstResult()),Hs("[Query] Calling transport.endInput() to close stdin to CLI process"),this.transport.endInput()}catch(r){if(!(r instanceof Aa))throw r}}waitForFirstResult(){return this.firstResultReceived?(Hs("[Query.waitForFirstResult] Result already received, returning immediately"),Promise.resolve()):new Promise(e=>{if(this.abortController?.signal.aborted){e();return}this.abortController?.signal.addEventListener("abort",()=>e(),{once:!0}),this.firstResultReceivedResolve=e})}handleHookCallbacks(e,r,n,i){let s=this.hookCallbacks.get(e);if(!s)throw new Error(`No hook callback found for ID: ${e}`);return s(r,n,{signal:i})}connectSdkMcpServer(e,r){let n=new pI(i=>this.sendMcpServerMessageToCli(e,i));this.sdkMcpTransports.set(e,n),this.sdkMcpServerInstances.set(e,r),r.connect(n)}async disconnectSdkMcpServer(e){let r=this.sdkMcpTransports.get(e);r&&(await r.close(),this.sdkMcpTransports.delete(e)),this.sdkMcpServerInstances.delete(e)}sendMcpServerMessageToCli(e,r){if("id"in r&&r.id!==null&&r.id!==void 0){let i=`${e}:${r.id}`,s=this.pendingMcpResponses.get(i);if(s){s.resolve(r),this.pendingMcpResponses.delete(i);return}}let n={type:"control_request",request_id:(0,Xq.randomUUID)(),request:{subtype:"mcp_message",server_name:e,message:r}};this.transport.write(ss(n)+` +`)}handleMcpControlRequest(e,r,n){let i="id"in r.message?r.message.id:null,s=`${e}:${i}`;return new Promise((o,a)=>{let c=()=>{this.pendingMcpResponses.delete(s)},u=d=>{c(),o(d)},l=d=>{c(),a(d)};if(this.pendingMcpResponses.set(s,{resolve:u,reject:l}),n.onmessage)n.onmessage(r.message);else{c(),a(new Error("No message handler registered"));return}})}};var at;(function(t){t.assertEqual=i=>{};function e(i){}t.assertIs=e;function r(i){throw new Error}t.assertNever=r,t.arrayToEnum=i=>{let s={};for(let o of i)s[o]=o;return s},t.getValidEnumValues=i=>{let s=t.objectKeys(i).filter(a=>typeof i[i[a]]!="number"),o={};for(let a of s)o[a]=i[a];return t.objectValues(o)},t.objectValues=i=>t.objectKeys(i).map(function(s){return i[s]}),t.objectKeys=typeof Object.keys=="function"?i=>Object.keys(i):i=>{let s=[];for(let o in i)Object.prototype.hasOwnProperty.call(i,o)&&s.push(o);return s},t.find=(i,s)=>{for(let o of i)if(s(o))return o},t.isInteger=typeof Number.isInteger=="function"?i=>Number.isInteger(i):i=>typeof i=="number"&&Number.isFinite(i)&&Math.floor(i)===i;function n(i,s=" | "){return i.map(o=>typeof o=="string"?`'${o}'`:o).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(i,s)=>typeof s=="bigint"?s.toString():s})(at||(at={}));var KF;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(KF||(KF={}));var oe=at.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Mo=t=>{switch(typeof t){case"undefined":return oe.undefined;case"string":return oe.string;case"number":return Number.isNaN(t)?oe.nan:oe.number;case"boolean":return oe.boolean;case"function":return oe.function;case"bigint":return oe.bigint;case"symbol":return oe.symbol;case"object":return Array.isArray(t)?oe.array:t===null?oe.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?oe.promise:typeof Map<"u"&&t instanceof Map?oe.map:typeof Set<"u"&&t instanceof Set?oe.set:typeof Date<"u"&&t instanceof Date?oe.date:oe.object;default:return oe.unknown}},V=at.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),ri=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},i=s=>{for(let o of s.issues)if(o.code==="invalid_union")o.unionErrors.map(i);else if(o.code==="invalid_return_type")i(o.returnTypeError);else if(o.code==="invalid_arguments")i(o.argumentsError);else if(o.path.length===0)n._errors.push(r(o));else{let a=n,c=0;for(;cr.message){let r={},n=[];for(let i of this.issues)if(i.path.length>0){let s=i.path[0];r[s]=r[s]||[],r[s].push(e(i))}else n.push(e(i));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};ri.create=t=>new ri(t);var mme=(t,e)=>{let r;switch(t.code){case V.invalid_type:t.received===oe.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case V.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,at.jsonStringifyReplacer)}`;break;case V.unrecognized_keys:r=`Unrecognized key(s) in object: ${at.joinValues(t.keys,", ")}`;break;case V.invalid_union:r="Invalid input";break;case V.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${at.joinValues(t.options)}`;break;case V.invalid_enum_value:r=`Invalid enum value. Expected ${at.joinValues(t.options)}, received '${t.received}'`;break;case V.invalid_arguments:r="Invalid function arguments";break;case V.invalid_return_type:r="Invalid function return type";break;case V.invalid_date:r="Invalid date";break;case V.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:at.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case V.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case V.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case V.custom:r="Invalid input";break;case V.invalid_intersection_types:r="Intersection results could not be merged";break;case V.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case V.not_finite:r="Number must be finite";break;default:r=e.defaultError,at.assertNever(t)}return{message:r}},mf=mme,hme=mf;function mI(){return hme}var hI=t=>{let{data:e,path:r,errorMaps:n,issueData:i}=t,s=[...r,...i.path||[]],o={...i,path:s};if(i.message!==void 0)return{...i,path:s,message:i.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(o,{data:e,defaultError:a}).message;return{...i,path:s,message:a}};function re(t,e){let r=mI(),n=hI({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===mf?void 0:mf].filter(i=>!!i)});t.common.issues.push(n)}var on=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let i of r){if(i.status==="aborted")return $e;i.status==="dirty"&&e.dirty(),n.push(i.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let i of r){let s=await i.key,o=await i.value;n.push({key:s,value:o})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let i of r){let{key:s,value:o}=i;if(s.status==="aborted"||o.status==="aborted")return $e;s.status==="dirty"&&e.dirty(),o.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof o.value<"u"||i.alwaysSet)&&(n[s.value]=o.value)}return{status:e.value,value:n}}},$e=Object.freeze({status:"aborted"}),df=t=>({status:"dirty",value:t}),xn=t=>({status:"valid",value:t}),JF=t=>t.status==="aborted",XF=t=>t.status==="dirty",Mu=t=>t.status==="valid",vy=t=>typeof Promise<"u"&&t instanceof Promise,fe;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(fe||(fe={}));var ni=class{constructor(e,r,n,i){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=i}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},YF=(t,e)=>{if(Mu(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new ri(t.common.issues);return this._error=r,this._error}}};function Ne(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:i}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:i}:{errorMap:(o,a)=>{let{message:c}=t;return o.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:o.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:i}}var Be=class{get description(){return this._def.description}_getType(e){return Mo(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Mo(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new on,ctx:{common:e.parent.common,data:e.data,parsedType:Mo(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(vy(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Mo(e)},i=this._parseSync({data:e,path:n.path,parent:n});return YF(n,i)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Mo(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Mu(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>Mu(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Mo(e)},i=this._parse({data:e,path:n.path,parent:n}),s=await(vy(i)?i:Promise.resolve(i));return YF(n,s)}refine(e,r){let n=i=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(i):r;return this._refinement((i,s)=>{let o=e(i),a=()=>s.addIssue({code:V.custom,...n(i)});return typeof Promise<"u"&&o instanceof Promise?o.then(c=>c?!0:(a(),!1)):o?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,i)=>e(n)?!0:(i.addIssue(typeof r=="function"?r(n,i):r),!1))}_refinement(e){return new $i({schema:this,typeName:Ie.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return Ti.create(this,this._def)}nullable(){return Gs.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return zo.create(this)}promise(){return Ma.create(this,this._def)}or(e){return Lu.create([this,e],this._def)}and(e){return Uu.create(this,e,this._def)}transform(e){return new $i({...Ne(this._def),schema:this,typeName:Ie.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Bu({...Ne(this._def),innerType:this,defaultValue:r,typeName:Ie.ZodDefault})}brand(){return new yy({typeName:Ie.ZodBranded,type:this,...Ne(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Gu({...Ne(this._def),innerType:this,catchValue:r,typeName:Ie.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return _y.create(this,e)}readonly(){return Wu.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},gme=/^c[^\s-]{8,}$/i,vme=/^[0-9a-z]+$/,yme=/^[0-9A-HJKMNP-TV-Z]{26}$/i,_me=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,bme=/^[a-z0-9_-]{21}$/i,Sme=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,xme=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,wme=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Eme="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",iI,kme=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Tme=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,$me=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,Ime=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Rme=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Ome=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Yq="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Cme=new RegExp(`^${Yq}$`);function Qq(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function Pme(t){return new RegExp(`^${Qq(t)}$`)}function Ame(t){let e=`${Yq}T${Qq(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function Nme(t,e){return!!((e==="v4"||!e)&&kme.test(t)||(e==="v6"||!e)&&$me.test(t))}function Mme(t,e){if(!Sme.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),i=JSON.parse(atob(n));return!(typeof i!="object"||i===null||"typ"in i&&i?.typ!=="JWT"||!i.alg||e&&i.alg!==e)}catch{return!1}}function Dme(t,e){return!!((e==="v4"||!e)&&Tme.test(t)||(e==="v6"||!e)&&Ime.test(t))}var Du=class t extends Be{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==oe.string){let s=this._getOrReturnCtx(e);return re(s,{code:V.invalid_type,expected:oe.string,received:s.parsedType}),$e}let n=new on,i;for(let s of this._def.checks)if(s.kind==="min")e.data.lengths.value&&(i=this._getOrReturnCtx(e,i),re(i,{code:V.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let o=e.data.length>s.value,a=e.data.lengthe.test(i),{validation:r,code:V.invalid_string,...fe.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...fe.errToObj(e)})}url(e){return this._addCheck({kind:"url",...fe.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...fe.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...fe.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...fe.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...fe.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...fe.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...fe.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...fe.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...fe.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...fe.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...fe.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...fe.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...fe.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...fe.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...fe.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...fe.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...fe.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...fe.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...fe.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...fe.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...fe.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...fe.errToObj(r)})}nonempty(e){return this.min(1,fe.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew Du({checks:[],typeName:Ie.ZodString,coerce:t?.coerce??!1,...Ne(t)});function jme(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,i=r>n?r:n,s=Number.parseInt(t.toFixed(i).replace(".","")),o=Number.parseInt(e.toFixed(i).replace(".",""));return s%o/10**i}var hf=class t extends Be{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==oe.number){let s=this._getOrReturnCtx(e);return re(s,{code:V.invalid_type,expected:oe.number,received:s.parsedType}),$e}let n,i=new on;for(let s of this._def.checks)s.kind==="int"?at.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),re(n,{code:V.invalid_type,expected:"integer",received:"float",message:s.message}),i.dirty()):s.kind==="min"?(s.inclusive?e.datas.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),re(n,{code:V.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),i.dirty()):s.kind==="multipleOf"?jme(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),re(n,{code:V.not_multiple_of,multipleOf:s.value,message:s.message}),i.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),re(n,{code:V.not_finite,message:s.message}),i.dirty()):at.assertNever(s);return{status:i.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,fe.toString(r))}gt(e,r){return this.setLimit("min",e,!1,fe.toString(r))}lte(e,r){return this.setLimit("max",e,!0,fe.toString(r))}lt(e,r){return this.setLimit("max",e,!1,fe.toString(r))}setLimit(e,r,n,i){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:fe.toString(i)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:fe.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:fe.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:fe.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:fe.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:fe.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:fe.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:fe.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:fe.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:fe.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuee.kind==="int"||e.kind==="multipleOf"&&at.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.valuenew hf({checks:[],typeName:Ie.ZodNumber,coerce:t?.coerce||!1,...Ne(t)});var gf=class t extends Be{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==oe.bigint)return this._getInvalidInput(e);let n,i=new on;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.datas.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),re(n,{code:V.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),i.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),re(n,{code:V.not_multiple_of,multipleOf:s.value,message:s.message}),i.dirty()):at.assertNever(s);return{status:i.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return re(r,{code:V.invalid_type,expected:oe.bigint,received:r.parsedType}),$e}gte(e,r){return this.setLimit("min",e,!0,fe.toString(r))}gt(e,r){return this.setLimit("min",e,!1,fe.toString(r))}lte(e,r){return this.setLimit("max",e,!0,fe.toString(r))}lt(e,r){return this.setLimit("max",e,!1,fe.toString(r))}setLimit(e,r,n,i){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:fe.toString(i)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:fe.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:fe.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:fe.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:fe.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:fe.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew gf({checks:[],typeName:Ie.ZodBigInt,coerce:t?.coerce??!1,...Ne(t)});var vf=class extends Be{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==oe.boolean){let n=this._getOrReturnCtx(e);return re(n,{code:V.invalid_type,expected:oe.boolean,received:n.parsedType}),$e}return xn(e.data)}};vf.create=t=>new vf({typeName:Ie.ZodBoolean,coerce:t?.coerce||!1,...Ne(t)});var yf=class t extends Be{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==oe.date){let s=this._getOrReturnCtx(e);return re(s,{code:V.invalid_type,expected:oe.date,received:s.parsedType}),$e}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return re(s,{code:V.invalid_date}),$e}let n=new on,i;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()s.value&&(i=this._getOrReturnCtx(e,i),re(i,{code:V.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):at.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:fe.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:fe.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew yf({checks:[],coerce:t?.coerce||!1,typeName:Ie.ZodDate,...Ne(t)});var _f=class extends Be{_parse(e){if(this._getType(e)!==oe.symbol){let n=this._getOrReturnCtx(e);return re(n,{code:V.invalid_type,expected:oe.symbol,received:n.parsedType}),$e}return xn(e.data)}};_f.create=t=>new _f({typeName:Ie.ZodSymbol,...Ne(t)});var ju=class extends Be{_parse(e){if(this._getType(e)!==oe.undefined){let n=this._getOrReturnCtx(e);return re(n,{code:V.invalid_type,expected:oe.undefined,received:n.parsedType}),$e}return xn(e.data)}};ju.create=t=>new ju({typeName:Ie.ZodUndefined,...Ne(t)});var zu=class extends Be{_parse(e){if(this._getType(e)!==oe.null){let n=this._getOrReturnCtx(e);return re(n,{code:V.invalid_type,expected:oe.null,received:n.parsedType}),$e}return xn(e.data)}};zu.create=t=>new zu({typeName:Ie.ZodNull,...Ne(t)});var bf=class extends Be{constructor(){super(...arguments),this._any=!0}_parse(e){return xn(e.data)}};bf.create=t=>new bf({typeName:Ie.ZodAny,...Ne(t)});var jo=class extends Be{constructor(){super(...arguments),this._unknown=!0}_parse(e){return xn(e.data)}};jo.create=t=>new jo({typeName:Ie.ZodUnknown,...Ne(t)});var as=class extends Be{_parse(e){let r=this._getOrReturnCtx(e);return re(r,{code:V.invalid_type,expected:oe.never,received:r.parsedType}),$e}};as.create=t=>new as({typeName:Ie.ZodNever,...Ne(t)});var Sf=class extends Be{_parse(e){if(this._getType(e)!==oe.undefined){let n=this._getOrReturnCtx(e);return re(n,{code:V.invalid_type,expected:oe.void,received:n.parsedType}),$e}return xn(e.data)}};Sf.create=t=>new Sf({typeName:Ie.ZodVoid,...Ne(t)});var zo=class t extends Be{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),i=this._def;if(r.parsedType!==oe.array)return re(r,{code:V.invalid_type,expected:oe.array,received:r.parsedType}),$e;if(i.exactLength!==null){let o=r.data.length>i.exactLength.value,a=r.data.lengthi.maxLength.value&&(re(r,{code:V.too_big,maximum:i.maxLength.value,type:"array",inclusive:!0,exact:!1,message:i.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((o,a)=>i.type._parseAsync(new ni(r,o,r.path,a)))).then(o=>on.mergeArray(n,o));let s=[...r.data].map((o,a)=>i.type._parseSync(new ni(r,o,r.path,a)));return on.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:fe.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:fe.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:fe.toString(r)}})}nonempty(e){return this.min(1,e)}};zo.create=(t,e)=>new zo({type:t,minLength:null,maxLength:null,exactLength:null,typeName:Ie.ZodArray,...Ne(e)});function Pu(t){if(t instanceof Dn){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Ti.create(Pu(n))}return new Dn({...t._def,shape:()=>e})}else return t instanceof zo?new zo({...t._def,type:Pu(t.element)}):t instanceof Ti?Ti.create(Pu(t.unwrap())):t instanceof Gs?Gs.create(Pu(t.unwrap())):t instanceof Bs?Bs.create(t.items.map(e=>Pu(e))):t}var Dn=class t extends Be{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=at.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==oe.object){let u=this._getOrReturnCtx(e);return re(u,{code:V.invalid_type,expected:oe.object,received:u.parsedType}),$e}let{status:n,ctx:i}=this._processInputParams(e),{shape:s,keys:o}=this._getCached(),a=[];if(!(this._def.catchall instanceof as&&this._def.unknownKeys==="strip"))for(let u in i.data)o.includes(u)||a.push(u);let c=[];for(let u of o){let l=s[u],d=i.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new ni(i,d,i.path,u)),alwaysSet:u in i.data})}if(this._def.catchall instanceof as){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:i.data[l]}});else if(u==="strict")a.length>0&&(re(i,{code:V.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=i.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new ni(i,d,i.path,l)),alwaysSet:l in i.data})}}return i.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,p=await l.value;u.push({key:d,value:p,alwaysSet:l.alwaysSet})}return u}).then(u=>on.mergeObjectSync(n,u)):on.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return fe.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let i=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:fe.errToObj(e).message??i}:{message:i}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:Ie.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of at.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of at.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return Pu(this)}partial(e){let r={};for(let n of at.objectKeys(this.shape)){let i=this.shape[n];e&&!e[n]?r[n]=i:r[n]=i.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of at.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Ti;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return e9(at.objectKeys(this.shape))}};Dn.create=(t,e)=>new Dn({shape:()=>t,unknownKeys:"strip",catchall:as.create(),typeName:Ie.ZodObject,...Ne(e)});Dn.strictCreate=(t,e)=>new Dn({shape:()=>t,unknownKeys:"strict",catchall:as.create(),typeName:Ie.ZodObject,...Ne(e)});Dn.lazycreate=(t,e)=>new Dn({shape:t,unknownKeys:"strip",catchall:as.create(),typeName:Ie.ZodObject,...Ne(e)});var Lu=class extends Be{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function i(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let o=s.map(a=>new ri(a.ctx.common.issues));return re(r,{code:V.invalid_union,unionErrors:o}),$e}if(r.common.async)return Promise.all(n.map(async s=>{let o={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:o}),ctx:o}})).then(i);{let s,o=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!s&&(s={result:l,ctx:u}),u.common.issues.length&&o.push(u.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let a=o.map(c=>new ri(c));return re(r,{code:V.invalid_union,unionErrors:a}),$e}}get options(){return this._def.options}};Lu.create=(t,e)=>new Lu({options:t,typeName:Ie.ZodUnion,...Ne(e)});var qs=t=>t instanceof Fu?qs(t.schema):t instanceof $i?qs(t.innerType()):t instanceof qu?[t.value]:t instanceof Hu?t.options:t instanceof Zu?at.objectValues(t.enum):t instanceof Bu?qs(t._def.innerType):t instanceof ju?[void 0]:t instanceof zu?[null]:t instanceof Ti?[void 0,...qs(t.unwrap())]:t instanceof Gs?[null,...qs(t.unwrap())]:t instanceof yy||t instanceof Wu?qs(t.unwrap()):t instanceof Gu?qs(t._def.innerType):[],gI=class t extends Be{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==oe.object)return re(r,{code:V.invalid_type,expected:oe.object,received:r.parsedType}),$e;let n=this.discriminator,i=r.data[n],s=this.optionsMap.get(i);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(re(r,{code:V.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),$e)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let i=new Map;for(let s of r){let o=qs(s.shape[e]);if(!o.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of o){if(i.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);i.set(a,s)}}return new t({typeName:Ie.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:i,...Ne(n)})}};function vI(t,e){let r=Mo(t),n=Mo(e);if(t===e)return{valid:!0,data:t};if(r===oe.object&&n===oe.object){let i=at.objectKeys(e),s=at.objectKeys(t).filter(a=>i.indexOf(a)!==-1),o={...t,...e};for(let a of s){let c=vI(t[a],e[a]);if(!c.valid)return{valid:!1};o[a]=c.data}return{valid:!0,data:o}}else if(r===oe.array&&n===oe.array){if(t.length!==e.length)return{valid:!1};let i=[];for(let s=0;s{if(JF(s)||JF(o))return $e;let a=vI(s.value,o.value);return a.valid?((XF(s)||XF(o))&&r.dirty(),{status:r.value,value:a.data}):(re(n,{code:V.invalid_intersection_types}),$e)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,o])=>i(s,o)):i(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};Uu.create=(t,e,r)=>new Uu({left:t,right:e,typeName:Ie.ZodIntersection,...Ne(r)});var Bs=class t extends Be{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==oe.array)return re(n,{code:V.invalid_type,expected:oe.array,received:n.parsedType}),$e;if(n.data.lengththis._def.items.length&&(re(n,{code:V.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((o,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new ni(n,o,n.path,a)):null}).filter(o=>!!o);return n.common.async?Promise.all(s).then(o=>on.mergeArray(r,o)):on.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Bs.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Bs({items:t,typeName:Ie.ZodTuple,rest:null,...Ne(e)})};var yI=class t extends Be{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==oe.object)return re(n,{code:V.invalid_type,expected:oe.object,received:n.parsedType}),$e;let i=[],s=this._def.keyType,o=this._def.valueType;for(let a in n.data)i.push({key:s._parse(new ni(n,a,n.path,a)),value:o._parse(new ni(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?on.mergeObjectAsync(r,i):on.mergeObjectSync(r,i)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof Be?new t({keyType:e,valueType:r,typeName:Ie.ZodRecord,...Ne(n)}):new t({keyType:Du.create(),valueType:e,typeName:Ie.ZodRecord,...Ne(r)})}},xf=class extends Be{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==oe.map)return re(n,{code:V.invalid_type,expected:oe.map,received:n.parsedType}),$e;let i=this._def.keyType,s=this._def.valueType,o=[...n.data.entries()].map(([a,c],u)=>({key:i._parse(new ni(n,a,n.path,[u,"key"])),value:s._parse(new ni(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of o){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return $e;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of o){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return $e;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};xf.create=(t,e,r)=>new xf({valueType:e,keyType:t,typeName:Ie.ZodMap,...Ne(r)});var wf=class t extends Be{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==oe.set)return re(n,{code:V.invalid_type,expected:oe.set,received:n.parsedType}),$e;let i=this._def;i.minSize!==null&&n.data.sizei.maxSize.value&&(re(n,{code:V.too_big,maximum:i.maxSize.value,type:"set",inclusive:!0,exact:!1,message:i.maxSize.message}),r.dirty());let s=this._def.valueType;function o(c){let u=new Set;for(let l of c){if(l.status==="aborted")return $e;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new ni(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>o(c)):o(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:fe.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:fe.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};wf.create=(t,e)=>new wf({valueType:t,minSize:null,maxSize:null,typeName:Ie.ZodSet,...Ne(e)});var _I=class t extends Be{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==oe.function)return re(r,{code:V.invalid_type,expected:oe.function,received:r.parsedType}),$e;function n(a,c){return hI({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,mI(),mf].filter(u=>!!u),issueData:{code:V.invalid_arguments,argumentsError:c}})}function i(a,c){return hI({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,mI(),mf].filter(u=>!!u),issueData:{code:V.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},o=r.data;if(this._def.returns instanceof Ma){let a=this;return xn(async function(...c){let u=new ri([]),l=await a._def.args.parseAsync(c,s).catch(f=>{throw u.addIssue(n(c,f)),u}),d=await Reflect.apply(o,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(f=>{throw u.addIssue(i(d,f)),u})})}else{let a=this;return xn(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new ri([n(c,u.error)]);let l=Reflect.apply(o,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new ri([i(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Bs.create(e).rest(jo.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||Bs.create([]).rest(jo.create()),returns:r||jo.create(),typeName:Ie.ZodFunction,...Ne(n)})}},Fu=class extends Be{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Fu.create=(t,e)=>new Fu({getter:t,typeName:Ie.ZodLazy,...Ne(e)});var qu=class extends Be{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return re(r,{received:r.data,code:V.invalid_literal,expected:this._def.value}),$e}return{status:"valid",value:e.data}}get value(){return this._def.value}};qu.create=(t,e)=>new qu({value:t,typeName:Ie.ZodLiteral,...Ne(e)});function e9(t,e){return new Hu({values:t,typeName:Ie.ZodEnum,...Ne(e)})}var Hu=class t extends Be{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return re(r,{expected:at.joinValues(n),received:r.parsedType,code:V.invalid_type}),$e}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return re(r,{received:r.data,code:V.invalid_enum_value,options:n}),$e}return xn(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};Hu.create=e9;var Zu=class extends Be{_parse(e){let r=at.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==oe.string&&n.parsedType!==oe.number){let i=at.objectValues(r);return re(n,{expected:at.joinValues(i),received:n.parsedType,code:V.invalid_type}),$e}if(this._cache||(this._cache=new Set(at.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let i=at.objectValues(r);return re(n,{received:n.data,code:V.invalid_enum_value,options:i}),$e}return xn(e.data)}get enum(){return this._def.values}};Zu.create=(t,e)=>new Zu({values:t,typeName:Ie.ZodNativeEnum,...Ne(e)});var Ma=class extends Be{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==oe.promise&&r.common.async===!1)return re(r,{code:V.invalid_type,expected:oe.promise,received:r.parsedType}),$e;let n=r.parsedType===oe.promise?r.data:Promise.resolve(r.data);return xn(n.then(i=>this._def.type.parseAsync(i,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Ma.create=(t,e)=>new Ma({type:t,typeName:Ie.ZodPromise,...Ne(e)});var $i=class extends Be{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===Ie.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),i=this._def.effect||null,s={addIssue:o=>{re(n,o),o.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),i.type==="preprocess"){let o=i.transform(n.data,s);if(n.common.async)return Promise.resolve(o).then(async a=>{if(r.value==="aborted")return $e;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?$e:c.status==="dirty"||r.value==="dirty"?df(c.value):c});{if(r.value==="aborted")return $e;let a=this._def.schema._parseSync({data:o,path:n.path,parent:n});return a.status==="aborted"?$e:a.status==="dirty"||r.value==="dirty"?df(a.value):a}}if(i.type==="refinement"){let o=a=>{let c=i.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?$e:(a.status==="dirty"&&r.dirty(),o(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?$e:(a.status==="dirty"&&r.dirty(),o(a.value).then(()=>({status:r.value,value:a.value}))))}if(i.type==="transform")if(n.common.async===!1){let o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!Mu(o))return $e;let a=i.transform(o.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>Mu(o)?Promise.resolve(i.transform(o.value,s)).then(a=>({status:r.value,value:a})):$e);at.assertNever(i)}};$i.create=(t,e,r)=>new $i({schema:t,typeName:Ie.ZodEffects,effect:e,...Ne(r)});$i.createWithPreprocess=(t,e,r)=>new $i({schema:e,effect:{type:"preprocess",transform:t},typeName:Ie.ZodEffects,...Ne(r)});var Ti=class extends Be{_parse(e){return this._getType(e)===oe.undefined?xn(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ti.create=(t,e)=>new Ti({innerType:t,typeName:Ie.ZodOptional,...Ne(e)});var Gs=class extends Be{_parse(e){return this._getType(e)===oe.null?xn(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Gs.create=(t,e)=>new Gs({innerType:t,typeName:Ie.ZodNullable,...Ne(e)});var Bu=class extends Be{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===oe.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Bu.create=(t,e)=>new Bu({innerType:t,typeName:Ie.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Ne(e)});var Gu=class extends Be{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},i=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return vy(i)?i.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new ri(n.common.issues)},input:n.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new ri(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Gu.create=(t,e)=>new Gu({innerType:t,typeName:Ie.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Ne(e)});var Ef=class extends Be{_parse(e){if(this._getType(e)!==oe.nan){let n=this._getOrReturnCtx(e);return re(n,{code:V.invalid_type,expected:oe.nan,received:n.parsedType}),$e}return{status:"valid",value:e.data}}};Ef.create=t=>new Ef({typeName:Ie.ZodNaN,...Ne(t)});var yy=class extends Be{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},_y=class t extends Be{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?$e:s.status==="dirty"?(r.dirty(),df(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let i=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?$e:i.status==="dirty"?(r.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:Ie.ZodPipeline})}},Wu=class extends Be{_parse(e){let r=this._def.innerType._parse(e),n=i=>(Mu(i)&&(i.value=Object.freeze(i.value)),i);return vy(r)?r.then(i=>n(i)):n(r)}unwrap(){return this._def.innerType}};Wu.create=(t,e)=>new Wu({innerType:t,typeName:Ie.ZodReadonly,...Ne(e)});var Dze={object:Dn.lazycreate},Ie;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(Ie||(Ie={}));var jze=Du.create,zze=hf.create,Lze=Ef.create,Uze=gf.create,Fze=vf.create,qze=yf.create,Hze=_f.create,Zze=ju.create,Bze=zu.create,Gze=bf.create,Wze=jo.create,Vze=as.create,Kze=Sf.create,Jze=zo.create,Xze=Dn.create,Yze=Dn.strictCreate,Qze=Lu.create,e4e=gI.create,t4e=Uu.create,r4e=Bs.create,n4e=yI.create,i4e=xf.create,s4e=wf.create,o4e=_I.create,a4e=Fu.create,c4e=qu.create,u4e=Hu.create,l4e=Zu.create,d4e=Ma.create,p4e=$i.create,f4e=Ti.create,m4e=Gs.create,h4e=$i.createWithPreprocess,g4e=_y.create,v4e=Object.freeze({status:"aborted"});function q(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in o.prototype)l in a||Object.defineProperty(a,l,{value:o.prototype[l].bind(a)});a._zod.constr=o,a._zod.def=c}let i=r?.Parent??Object;class s extends i{}Object.defineProperty(s,"name",{value:t});function o(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(o,"init",{value:n}),Object.defineProperty(o,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(o,"name",{value:t}),o}var Da=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},bI={};function Ws(t){return t&&Object.assign(bI,t),bI}var Dt={};_q(Dt,{unwrapMessage:()=>pf,stringifyPrimitive:()=>MI,required:()=>rhe,randomString:()=>Bme,propertyKeyTypes:()=>s9,promiseAllObject:()=>Zme,primitiveTypes:()=>Vme,prefixIssues:()=>Do,pick:()=>Xme,partial:()=>the,optionalKeys:()=>o9,omit:()=>Yme,numKeys:()=>Gme,nullish:()=>Ry,normalizeParams:()=>we,merge:()=>ehe,jsonStringifyReplacer:()=>r9,joinValues:()=>SI,issue:()=>c9,isPlainObject:()=>Tf,isObject:()=>kf,getSizableOrigin:()=>nhe,getParsedType:()=>Wme,getLengthableOrigin:()=>Cy,getEnumValues:()=>t9,getElementAtPath:()=>Hme,floatSafeRemainder:()=>n9,finalizeIssue:()=>Vs,extend:()=>Qme,escapeRegex:()=>Qu,esc:()=>Au,defineLazy:()=>jt,createTransparentProxy:()=>Kme,clone:()=>Uo,cleanRegex:()=>Oy,cleanEnum:()=>ihe,captureStackTrace:()=>NI,cached:()=>Iy,assignProp:()=>AI,assertNotEqual:()=>Lme,assertNever:()=>Fme,assertIs:()=>Ume,assertEqual:()=>zme,assert:()=>qme,allowsEval:()=>i9,aborted:()=>Nu,NUMBER_FORMAT_RANGES:()=>a9,Class:()=>xI,BIGINT_FORMAT_RANGES:()=>Jme});function zme(t){return t}function Lme(t){return t}function Ume(t){}function Fme(t){throw new Error}function qme(t){}function t9(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,i])=>e.indexOf(+n)===-1).map(([n,i])=>i)}function SI(t,e="|"){return t.map(r=>MI(r)).join(e)}function r9(t,e){return typeof e=="bigint"?e.toString():e}function Iy(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Ry(t){return t==null}function Oy(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function n9(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,i=r>n?r:n,s=Number.parseInt(t.toFixed(i).replace(".","")),o=Number.parseInt(e.toFixed(i).replace(".",""));return s%o/10**i}function jt(t,e,r){Object.defineProperty(t,e,{get(){{let i=r();return t[e]=i,i}throw new Error("cached value already set")},set(i){Object.defineProperty(t,e,{value:i})},configurable:!0})}function AI(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Hme(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function Zme(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let i={};for(let s=0;s{};function kf(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var i9=Iy(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function Tf(t){if(kf(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(kf(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function Gme(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var Wme=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},s9=new Set(["string","number","symbol"]),Vme=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Qu(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Uo(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function we(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function Kme(t){let e;return new Proxy({},{get(r,n,i){return e??(e=t()),Reflect.get(e,n,i)},set(r,n,i,s){return e??(e=t()),Reflect.set(e,n,i,s)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,i){return e??(e=t()),Reflect.defineProperty(e,n,i)}})}function MI(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function o9(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var a9={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},Jme={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Xme(t,e){let r={},n=t._zod.def;for(let i in e){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);e[i]&&(r[i]=n.shape[i])}return Uo(t,{...t._zod.def,shape:r,checks:[]})}function Yme(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let i in e){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);e[i]&&delete r[i]}return Uo(t,{...t._zod.def,shape:r,checks:[]})}function Qme(t,e){if(!Tf(e))throw new Error("Invalid input to extend: expected a plain object");let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return AI(this,"shape",n),n},checks:[]};return Uo(t,r)}function ehe(t,e){return Uo(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return AI(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function the(t,e,r){let n=e._zod.def.shape,i={...n};if(r)for(let s in r){if(!(s in n))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(i[s]=t?new t({type:"optional",innerType:n[s]}):n[s])}else for(let s in n)i[s]=t?new t({type:"optional",innerType:n[s]}):n[s];return Uo(e,{...e._zod.def,shape:i,checks:[]})}function rhe(t,e,r){let n=e._zod.def.shape,i={...n};if(r)for(let s in r){if(!(s in i))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(i[s]=new t({type:"nonoptional",innerType:n[s]}))}else for(let s in n)i[s]=new t({type:"nonoptional",innerType:n[s]});return Uo(e,{...e._zod.def,shape:i,checks:[]})}function Nu(t,e=0){for(let r=e;r{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function pf(t){return typeof t=="string"?t:t?.message}function Vs(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let i=pf(t.inst?._zod.def?.error?.(t))??pf(e?.error?.(t))??pf(r.customError?.(t))??pf(r.localeError?.(t))??"Invalid input";n.message=i}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function nhe(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Cy(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function c9(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function ihe(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var xI=class{constructor(...e){}},u9=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),Object.defineProperty(t,"message",{get(){return JSON.stringify(e,r9,2)},enumerable:!0})},l9=q("$ZodError",u9),d9=q("$ZodError",u9,{Parent:Error});function she(t,e=r=>r.message){let r={},n=[];for(let i of t.issues)i.path.length>0?(r[i.path[0]]=r[i.path[0]]||[],r[i.path[0]].push(e(i))):n.push(e(i));return{formErrors:n,fieldErrors:r}}function ohe(t,e){let r=e||function(s){return s.message},n={_errors:[]},i=s=>{for(let o of s.issues)if(o.code==="invalid_union"&&o.errors.length)o.errors.map(a=>i({issues:a}));else if(o.code==="invalid_key")i({issues:o.issues});else if(o.code==="invalid_element")i({issues:o.issues});else if(o.path.length===0)n._errors.push(r(o));else{let a=n,c=0;for(;c(e,r,n,i)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},o=e._zod.run({value:r,issues:[]},s);if(o instanceof Promise)throw new Da;if(o.issues.length){let a=new(i?.Err??t)(o.issues.map(c=>Vs(c,s,Ws())));throw NI(a,i?.callee),a}return o.value};var che=t=>async(e,r,n,i)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},o=e._zod.run({value:r,issues:[]},s);if(o instanceof Promise&&(o=await o),o.issues.length){let a=new(i?.Err??t)(o.issues.map(c=>Vs(c,s,Ws())));throw NI(a,i?.callee),a}return o.value};var p9=t=>(e,r,n)=>{let i=n?{...n,async:!1}:{async:!1},s=e._zod.run({value:r,issues:[]},i);if(s instanceof Promise)throw new Da;return s.issues.length?{success:!1,error:new(t??l9)(s.issues.map(o=>Vs(o,i,Ws())))}:{success:!0,data:s.value}},uhe=p9(d9),f9=t=>async(e,r,n)=>{let i=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},i);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(o=>Vs(o,i,Ws())))}:{success:!0,data:s.value}},lhe=f9(d9),dhe=/^[cC][^\s-]{8,}$/,phe=/^[0-9a-z]+$/,fhe=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,mhe=/^[0-9a-vA-V]{20}$/,hhe=/^[A-Za-z0-9]{27}$/,ghe=/^[a-zA-Z0-9_-]{21}$/,vhe=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,yhe=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,QF=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/,_he=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,bhe="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function She(){return new RegExp(bhe,"u")}var xhe=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,whe=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,Ehe=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,khe=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,The=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,m9=/^[A-Za-z0-9_-]*$/,$he=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,Ihe=/^\+(?:[0-9]){6,14}[0-9]$/,h9="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",Rhe=new RegExp(`^${h9}$`);function g9(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Ohe(t){return new RegExp(`^${g9(t)}$`)}function Che(t){let e=g9({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-]\\d{2}:\\d{2})");let n=`${e}(?:${r.join("|")})`;return new RegExp(`^${h9}T(?:${n})$`)}var Phe=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},Ahe=/^\d+$/,Nhe=/^-?\d+(?:\.\d+)?/i,Mhe=/true|false/i,Dhe=/null/i,jhe=/^[^A-Z]*$/,zhe=/^[^a-z]*$/,wn=q("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),v9={number:"number",bigint:"bigint",object:"date"},y9=q("$ZodCheckLessThan",(t,e)=>{wn.init(t,e);let r=v9[typeof e.value];t._zod.onattach.push(n=>{let i=n._zod.bag,s=(e.inclusive?i.maximum:i.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value{(e.inclusive?n.value<=e.value:n.value{wn.init(t,e);let r=v9[typeof e.value];t._zod.onattach.push(n=>{let i=n._zod.bag,s=(e.inclusive?i.minimum:i.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>s&&(e.inclusive?i.minimum=e.value:i.exclusiveMinimum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value>=e.value:n.value>e.value)||n.issues.push({origin:r,code:"too_small",minimum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Lhe=q("$ZodCheckMultipleOf",(t,e)=>{wn.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):n9(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),Uhe=q("$ZodCheckNumberFormat",(t,e)=>{wn.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[i,s]=a9[e.format];t._zod.onattach.push(o=>{let a=o._zod.bag;a.format=e.format,a.minimum=i,a.maximum=s,r&&(a.pattern=Ahe)}),t._zod.check=o=>{let a=o.value;if(r){if(!Number.isInteger(a)){o.issues.push({expected:n,format:e.format,code:"invalid_type",input:a,inst:t});return}if(!Number.isSafeInteger(a)){a>0?o.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort}):o.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort});return}}as&&o.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inst:t})}}),Fhe=q("$ZodCheckMaxLength",(t,e)=>{wn.init(t,e),t._zod.when=r=>{let n=r.value;return!Ry(n)&&n.length!==void 0},t._zod.onattach.push(r=>{let n=r._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum{let n=r.value;if(n.length<=e.maximum)return;let s=Cy(n);r.issues.push({origin:s,code:"too_big",maximum:e.maximum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),qhe=q("$ZodCheckMinLength",(t,e)=>{wn.init(t,e),t._zod.when=r=>{let n=r.value;return!Ry(n)&&n.length!==void 0},t._zod.onattach.push(r=>{let n=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>n&&(r._zod.bag.minimum=e.minimum)}),t._zod.check=r=>{let n=r.value;if(n.length>=e.minimum)return;let s=Cy(n);r.issues.push({origin:s,code:"too_small",minimum:e.minimum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),Hhe=q("$ZodCheckLengthEquals",(t,e)=>{wn.init(t,e),t._zod.when=r=>{let n=r.value;return!Ry(n)&&n.length!==void 0},t._zod.onattach.push(r=>{let n=r._zod.bag;n.minimum=e.length,n.maximum=e.length,n.length=e.length}),t._zod.check=r=>{let n=r.value,i=n.length;if(i===e.length)return;let s=Cy(n),o=i>e.length;r.issues.push({origin:s,...o?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:r.value,inst:t,continue:!e.abort})}}),Py=q("$ZodCheckStringFormat",(t,e)=>{var r,n;wn.init(t,e),t._zod.onattach.push(i=>{let s=i._zod.bag;s.format=e.format,e.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=i=>{e.pattern.lastIndex=0,!e.pattern.test(i.value)&&i.issues.push({origin:"string",code:"invalid_format",format:e.format,input:i.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),Zhe=q("$ZodCheckRegex",(t,e)=>{Py.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),Bhe=q("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=jhe),Py.init(t,e)}),Ghe=q("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=zhe),Py.init(t,e)}),Whe=q("$ZodCheckIncludes",(t,e)=>{wn.init(t,e);let r=Qu(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(i=>{let s=i._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=i=>{i.value.includes(e.includes,e.position)||i.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:i.value,inst:t,continue:!e.abort})}}),Vhe=q("$ZodCheckStartsWith",(t,e)=>{wn.init(t,e);let r=new RegExp(`^${Qu(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let i=n._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),Khe=q("$ZodCheckEndsWith",(t,e)=>{wn.init(t,e);let r=new RegExp(`.*${Qu(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let i=n._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}}),Jhe=q("$ZodCheckOverwrite",(t,e)=>{wn.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}}),wI=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(` +`).filter(o=>o),i=Math.min(...n.map(o=>o.length-o.trimStart().length)),s=n.map(o=>o.slice(i)).map(o=>" ".repeat(this.indent*2)+o);for(let o of s)this.content.push(o)}compile(){let e=Function,r=this?.args,i=[...(this?.content??[""]).map(s=>` ${s}`)];return new e(...r,i.join(` +`))}},Xhe={major:4,minor:0,patch:0},zt=q("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Xhe;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let i of n)for(let s of i._zod.onattach)s(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let i=(s,o,a)=>{let c=Nu(s),u;for(let l of o){if(l._zod.when){if(!l._zod.when(s))continue}else if(c)continue;let d=s.issues.length,p=l._zod.check(s);if(p instanceof Promise&&a?.async===!1)throw new Da;if(u||p instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await p,s.issues.length!==d&&(c||(c=Nu(s,d)))});else{if(s.issues.length===d)continue;c||(c=Nu(s,d))}}return u?u.then(()=>s):s};t._zod.run=(s,o)=>{let a=t._zod.parse(s,o);if(a instanceof Promise){if(o.async===!1)throw new Da;return a.then(c=>i(c,n,o))}return i(a,n,o)}}t["~standard"]={validate:i=>{try{let s=uhe(t,i);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return lhe(t,i).then(o=>o.success?{value:o.data}:{issues:o.error?.issues})}},vendor:"zod",version:1}}),DI=q("$ZodString",(t,e)=>{zt.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Phe(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),Ut=q("$ZodStringFormat",(t,e)=>{Py.init(t,e),DI.init(t,e)}),Yhe=q("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=yhe),Ut.init(t,e)}),Qhe=q("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=QF(n))}else e.pattern??(e.pattern=QF());Ut.init(t,e)}),ege=q("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=_he),Ut.init(t,e)}),tge=q("$ZodURL",(t,e)=>{Ut.init(t,e),t._zod.check=r=>{try{let n=r.value,i=new URL(n),s=i.href;e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(i.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:$he.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:r.value,inst:t,continue:!e.abort})),!n.endsWith("/")&&s.endsWith("/")?r.value=s.slice(0,-1):r.value=s;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),rge=q("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=She()),Ut.init(t,e)}),nge=q("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=ghe),Ut.init(t,e)}),ige=q("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=dhe),Ut.init(t,e)}),sge=q("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=phe),Ut.init(t,e)}),oge=q("$ZodULID",(t,e)=>{e.pattern??(e.pattern=fhe),Ut.init(t,e)}),age=q("$ZodXID",(t,e)=>{e.pattern??(e.pattern=mhe),Ut.init(t,e)}),cge=q("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=hhe),Ut.init(t,e)}),uge=q("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Che(e)),Ut.init(t,e)}),lge=q("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Rhe),Ut.init(t,e)}),dge=q("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Ohe(e)),Ut.init(t,e)}),pge=q("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=vhe),Ut.init(t,e)}),fge=q("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=xhe),Ut.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),mge=q("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=whe),Ut.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv6"}),t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),hge=q("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Ehe),Ut.init(t,e)}),gge=q("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=khe),Ut.init(t,e),t._zod.check=r=>{let[n,i]=r.value.split("/");try{if(!i)throw new Error;let s=Number(i);if(`${s}`!==i)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function b9(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var vge=q("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=The),Ut.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{b9(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function yge(t){if(!m9.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return b9(r)}var _ge=q("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=m9),Ut.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{yge(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),bge=q("$ZodE164",(t,e)=>{e.pattern??(e.pattern=Ihe),Ut.init(t,e)});function Sge(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let i=JSON.parse(atob(n));return!("typ"in i&&i?.typ!=="JWT"||!i.alg||e&&(!("alg"in i)||i.alg!==e))}catch{return!1}}var xge=q("$ZodJWT",(t,e)=>{Ut.init(t,e),t._zod.check=r=>{Sge(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),S9=q("$ZodNumber",(t,e)=>{zt.init(t,e),t._zod.pattern=t._zod.bag.pattern??Nhe,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let i=r.value;if(typeof i=="number"&&!Number.isNaN(i)&&Number.isFinite(i))return r;let s=typeof i=="number"?Number.isNaN(i)?"NaN":Number.isFinite(i)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:i,inst:t,...s?{received:s}:{}}),r}}),wge=q("$ZodNumber",(t,e)=>{Uhe.init(t,e),S9.init(t,e)}),Ege=q("$ZodBoolean",(t,e)=>{zt.init(t,e),t._zod.pattern=Mhe,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let i=r.value;return typeof i=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:t}),r}}),kge=q("$ZodNull",(t,e)=>{zt.init(t,e),t._zod.pattern=Dhe,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let i=r.value;return i===null||r.issues.push({expected:"null",code:"invalid_type",input:i,inst:t}),r}}),Tge=q("$ZodUnknown",(t,e)=>{zt.init(t,e),t._zod.parse=r=>r}),$ge=q("$ZodNever",(t,e)=>{zt.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function eq(t,e,r){t.issues.length&&e.issues.push(...Do(r,t.issues)),e.value[r]=t.value}var Ige=q("$ZodArray",(t,e)=>{zt.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;if(!Array.isArray(i))return r.issues.push({expected:"array",code:"invalid_type",input:i,inst:t}),r;r.value=Array(i.length);let s=[];for(let o=0;oeq(u,r,o))):eq(c,r,o)}return s.length?Promise.all(s).then(()=>r):r}});function dy(t,e,r){t.issues.length&&e.issues.push(...Do(r,t.issues)),e.value[r]=t.value}function tq(t,e,r,n){t.issues.length?n[r]===void 0?r in n?e.value[r]=void 0:e.value[r]=t.value:e.issues.push(...Do(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var Rge=q("$ZodObject",(t,e)=>{zt.init(t,e);let r=Iy(()=>{let d=Object.keys(e.shape);for(let f of d)if(!(e.shape[f]instanceof zt))throw new Error(`Invalid element at key "${f}": expected a Zod schema`);let p=o9(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(p)}});jt(t._zod,"propValues",()=>{let d=e.shape,p={};for(let f in d){let m=d[f]._zod;if(m.values){p[f]??(p[f]=new Set);for(let h of m.values)p[f].add(h)}}return p});let n=d=>{let p=new wI(["shape","payload","ctx"]),f=r.value,m=y=>{let b=Au(y);return`shape[${b}]._zod.run({ value: input[${b}], issues: [] }, ctx)`};p.write("const input = payload.value;");let h=Object.create(null),g=0;for(let y of f.keys)h[y]=`key_${g++}`;p.write("const newResult = {}");for(let y of f.keys)if(f.optionalKeys.has(y)){let b=h[y];p.write(`const ${b} = ${m(y)};`);let S=Au(y);p.write(` + if (${b}.issues.length) { + if (input[${S}] === undefined) { + if (${S} in input) { + newResult[${S}] = undefined; + } + } else { + payload.issues = payload.issues.concat( + ${b}.issues.map((iss) => ({ + ...iss, + path: iss.path ? [${S}, ...iss.path] : [${S}], + })) + ); + } + } else if (${b}.value === undefined) { + if (${S} in input) newResult[${S}] = undefined; + } else { + newResult[${S}] = ${b}.value; + } + `)}else{let b=h[y];p.write(`const ${b} = ${m(y)};`),p.write(` + if (${b}.issues.length) payload.issues = payload.issues.concat(${b}.issues.map(iss => ({ + ...iss, + path: iss.path ? [${Au(y)}, ...iss.path] : [${Au(y)}] + })));`),p.write(`newResult[${Au(y)}] = ${b}.value`)}p.write("payload.value = newResult;"),p.write("return payload;");let v=p.compile();return(y,b)=>v(d,y,b)},i,s=kf,o=!bI.jitless,c=o&&i9.value,u=e.catchall,l;t._zod.parse=(d,p)=>{l??(l=r.value);let f=d.value;if(!s(f))return d.issues.push({expected:"object",code:"invalid_type",input:f,inst:t}),d;let m=[];if(o&&c&&p?.async===!1&&p.jitless!==!0)i||(i=n(e.shape)),d=i(d,p);else{d.value={};let b=l.shape;for(let S of l.keys){let x=b[S],w=x._zod.run({value:f[S],issues:[]},p),E=x._zod.optin==="optional"&&x._zod.optout==="optional";w instanceof Promise?m.push(w.then(T=>E?tq(T,d,S,f):dy(T,d,S))):E?tq(w,d,S,f):dy(w,d,S)}}if(!u)return m.length?Promise.all(m).then(()=>d):d;let h=[],g=l.keySet,v=u._zod,y=v.def.type;for(let b of Object.keys(f)){if(g.has(b))continue;if(y==="never"){h.push(b);continue}let S=v.run({value:f[b],issues:[]},p);S instanceof Promise?m.push(S.then(x=>dy(x,d,b))):dy(S,d,b)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:f,inst:t}),m.length?Promise.all(m).then(()=>d):d}});function rq(t,e,r,n){for(let i of t)if(i.issues.length===0)return e.value=i.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(i=>i.issues.map(s=>Vs(s,n,Ws())))}),e}var x9=q("$ZodUnion",(t,e)=>{zt.init(t,e),jt(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),jt(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),jt(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),jt(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>Oy(n.source)).join("|")})$`)}}),t._zod.parse=(r,n)=>{let i=!1,s=[];for(let o of e.options){let a=o._zod.run({value:r.value,issues:[]},n);if(a instanceof Promise)s.push(a),i=!0;else{if(a.issues.length===0)return a;s.push(a)}}return i?Promise.all(s).then(o=>rq(o,r,t,n)):rq(s,r,t,n)}}),Oge=q("$ZodDiscriminatedUnion",(t,e)=>{x9.init(t,e);let r=t._zod.parse;jt(t._zod,"propValues",()=>{let i={};for(let s of e.options){let o=s._zod.propValues;if(!o||Object.keys(o).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(o)){i[a]||(i[a]=new Set);for(let u of c)i[a].add(u)}}return i});let n=Iy(()=>{let i=e.options,s=new Map;for(let o of i){let a=o._zod.propValues[e.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(o)}"`);for(let c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,o)}}return s});t._zod.parse=(i,s)=>{let o=i.value;if(!kf(o))return i.issues.push({code:"invalid_type",expected:"object",input:o,inst:t}),i;let a=n.value.get(o?.[e.discriminator]);return a?a._zod.run(i,s):e.unionFallback?r(i,s):(i.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:o,path:[e.discriminator],inst:t}),i)}}),Cge=q("$ZodIntersection",(t,e)=>{zt.init(t,e),t._zod.parse=(r,n)=>{let i=r.value,s=e.left._zod.run({value:i,issues:[]},n),o=e.right._zod.run({value:i,issues:[]},n);return s instanceof Promise||o instanceof Promise?Promise.all([s,o]).then(([c,u])=>nq(r,c,u)):nq(r,s,o)}});function EI(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(Tf(t)&&Tf(e)){let r=Object.keys(e),n=Object.keys(t).filter(s=>r.indexOf(s)!==-1),i={...t,...e};for(let s of n){let o=EI(t[s],e[s]);if(!o.valid)return{valid:!1,mergeErrorPath:[s,...o.mergeErrorPath]};i[s]=o.data}return{valid:!0,data:i}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n{zt.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;if(!Tf(i))return r.issues.push({expected:"record",code:"invalid_type",input:i,inst:t}),r;let s=[];if(e.keyType._zod.values){let o=e.keyType._zod.values;r.value={};for(let c of o)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let u=e.valueType._zod.run({value:i[c],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...Do(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Do(c,u.issues)),r.value[c]=u.value)}let a;for(let c in i)o.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:i,inst:t,keys:a})}else{r.value={};for(let o of Reflect.ownKeys(i)){if(o==="__proto__")continue;let a=e.keyType._zod.run({value:o,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>Vs(u,n,Ws())),input:o,path:[o],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:i[o],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...Do(o,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Do(o,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}}),Age=q("$ZodEnum",(t,e)=>{zt.init(t,e);let r=t9(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>s9.has(typeof n)).map(n=>typeof n=="string"?Qu(n):n.toString()).join("|")})$`),t._zod.parse=(n,i)=>{let s=n.value;return t._zod.values.has(s)||n.issues.push({code:"invalid_value",values:r,input:s,inst:t}),n}}),Nge=q("$ZodLiteral",(t,e)=>{zt.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?Qu(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,n)=>{let i=r.value;return t._zod.values.has(i)||r.issues.push({code:"invalid_value",values:e.values,input:i,inst:t}),r}}),Mge=q("$ZodTransform",(t,e)=>{zt.init(t,e),t._zod.parse=(r,n)=>{let i=e.transform(r.value,r);if(n.async)return(i instanceof Promise?i:Promise.resolve(i)).then(o=>(r.value=o,r));if(i instanceof Promise)throw new Da;return r.value=i,r}}),Dge=q("$ZodOptional",(t,e)=>{zt.init(t,e),t._zod.optin="optional",t._zod.optout="optional",jt(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),jt(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Oy(r.source)})?$`):void 0}),t._zod.parse=(r,n)=>e.innerType._zod.optin==="optional"?e.innerType._zod.run(r,n):r.value===void 0?r:e.innerType._zod.run(r,n)}),jge=q("$ZodNullable",(t,e)=>{zt.init(t,e),jt(t._zod,"optin",()=>e.innerType._zod.optin),jt(t._zod,"optout",()=>e.innerType._zod.optout),jt(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Oy(r.source)}|null)$`):void 0}),jt(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),zge=q("$ZodDefault",(t,e)=>{zt.init(t,e),t._zod.optin="optional",jt(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>iq(s,e)):iq(i,e)}});function iq(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Lge=q("$ZodPrefault",(t,e)=>{zt.init(t,e),t._zod.optin="optional",jt(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),Uge=q("$ZodNonOptional",(t,e)=>{zt.init(t,e),jt(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>sq(s,t)):sq(i,t)}});function sq(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}var Fge=q("$ZodCatch",(t,e)=>{zt.init(t,e),t._zod.optin="optional",jt(t._zod,"optout",()=>e.innerType._zod.optout),jt(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(o=>Vs(o,n,Ws()))},input:r.value}),r.issues=[]),r)):(r.value=i.value,i.issues.length&&(r.value=e.catchValue({...r,error:{issues:i.issues.map(s=>Vs(s,n,Ws()))},input:r.value}),r.issues=[]),r)}}),qge=q("$ZodPipe",(t,e)=>{zt.init(t,e),jt(t._zod,"values",()=>e.in._zod.values),jt(t._zod,"optin",()=>e.in._zod.optin),jt(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let i=e.in._zod.run(r,n);return i instanceof Promise?i.then(s=>oq(s,e,n)):oq(i,e,n)}});function oq(t,e,r){return Nu(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Hge=q("$ZodReadonly",(t,e)=>{zt.init(t,e),jt(t._zod,"propValues",()=>e.innerType._zod.propValues),jt(t._zod,"values",()=>e.innerType._zod.values),jt(t._zod,"optin",()=>e.innerType._zod.optin),jt(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(aq):aq(i)}});function aq(t){return t.value=Object.freeze(t.value),t}var Zge=q("$ZodCustom",(t,e)=>{wn.init(t,e),zt.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,i=e.fn(n);if(i instanceof Promise)return i.then(s=>cq(s,r,n,t));cq(i,r,n,t)}});function cq(t,e,r,n){if(!t){let i={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(i.params=n._zod.def.params),e.issues.push(c9(i))}}var Bge=t=>{let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"NaN":"number";case"object":{if(Array.isArray(t))return"array";if(t===null)return"null";if(Object.getPrototypeOf(t)!==Object.prototype&&t.constructor)return t.constructor.name}}return e},Gge=()=>{let t={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"}};function e(n){return t[n]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Invalid input: expected ${n.expected}, received ${Bge(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${MI(n.values[0])}`:`Invalid option: expected one of ${SI(n.values,"|")}`;case"too_big":{let i=n.inclusive?"<=":"<",s=e(n.origin);return s?`Too big: expected ${n.origin??"value"} to have ${i}${n.maximum.toString()} ${s.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${i}${n.maximum.toString()}`}case"too_small":{let i=n.inclusive?">=":">",s=e(n.origin);return s?`Too small: expected ${n.origin} to have ${i}${n.minimum.toString()} ${s.unit}`:`Too small: expected ${n.origin} to be ${i}${n.minimum.toString()}`}case"invalid_format":{let i=n;return i.format==="starts_with"?`Invalid string: must start with "${i.prefix}"`:i.format==="ends_with"?`Invalid string: must end with "${i.suffix}"`:i.format==="includes"?`Invalid string: must include "${i.includes}"`:i.format==="regex"?`Invalid string: must match pattern ${i.pattern}`:`Invalid ${r[i.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${SI(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function Wge(){return{localeError:Gge()}}var kI=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...r){let n=r[0];if(this._map.set(e,n),n&&typeof n=="object"&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}remove(e){return this._map.delete(e),this}get(e){let r=e._zod.parent;if(r){let n={...this.get(r)??{}};return delete n.id,{...n,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}};function Vge(){return new kI}var py=Vge();function Kge(t,e){return new t({type:"string",...we(e)})}function Jge(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...we(e)})}function uq(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...we(e)})}function Xge(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...we(e)})}function Yge(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...we(e)})}function Qge(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...we(e)})}function eve(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...we(e)})}function tve(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...we(e)})}function rve(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...we(e)})}function nve(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...we(e)})}function ive(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...we(e)})}function sve(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...we(e)})}function ove(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...we(e)})}function ave(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...we(e)})}function cve(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...we(e)})}function uve(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...we(e)})}function lve(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...we(e)})}function dve(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...we(e)})}function pve(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...we(e)})}function fve(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...we(e)})}function mve(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...we(e)})}function hve(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...we(e)})}function gve(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...we(e)})}function vve(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...we(e)})}function yve(t,e){return new t({type:"string",format:"date",check:"string_format",...we(e)})}function _ve(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...we(e)})}function bve(t,e){return new t({type:"string",format:"duration",check:"string_format",...we(e)})}function Sve(t,e){return new t({type:"number",checks:[],...we(e)})}function xve(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...we(e)})}function wve(t,e){return new t({type:"boolean",...we(e)})}function Eve(t,e){return new t({type:"null",...we(e)})}function kve(t){return new t({type:"unknown"})}function Tve(t,e){return new t({type:"never",...we(e)})}function lq(t,e){return new y9({check:"less_than",...we(e),value:t,inclusive:!1})}function sI(t,e){return new y9({check:"less_than",...we(e),value:t,inclusive:!0})}function dq(t,e){return new _9({check:"greater_than",...we(e),value:t,inclusive:!1})}function oI(t,e){return new _9({check:"greater_than",...we(e),value:t,inclusive:!0})}function pq(t,e){return new Lhe({check:"multiple_of",...we(e),value:t})}function w9(t,e){return new Fhe({check:"max_length",...we(e),maximum:t})}function by(t,e){return new qhe({check:"min_length",...we(e),minimum:t})}function E9(t,e){return new Hhe({check:"length_equals",...we(e),length:t})}function $ve(t,e){return new Zhe({check:"string_format",format:"regex",...we(e),pattern:t})}function Ive(t){return new Bhe({check:"string_format",format:"lowercase",...we(t)})}function Rve(t){return new Ghe({check:"string_format",format:"uppercase",...we(t)})}function Ove(t,e){return new Whe({check:"string_format",format:"includes",...we(e),includes:t})}function Cve(t,e){return new Vhe({check:"string_format",format:"starts_with",...we(e),prefix:t})}function Pve(t,e){return new Khe({check:"string_format",format:"ends_with",...we(e),suffix:t})}function If(t){return new Jhe({check:"overwrite",tx:t})}function Ave(t){return If(e=>e.normalize(t))}function Nve(){return If(t=>t.trim())}function Mve(){return If(t=>t.toLowerCase())}function Dve(){return If(t=>t.toUpperCase())}function jve(t,e,r){return new t({type:"array",element:e,...we(r)})}function zve(t,e,r){let n=we(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Lve(t,e,r){return new t({type:"custom",check:"custom",fn:e,...we(r)})}var k9={};_q(k9,{time:()=>C9,duration:()=>A9,datetime:()=>$9,date:()=>R9,ZodISOTime:()=>O9,ZodISODuration:()=>P9,ZodISODateTime:()=>T9,ZodISODate:()=>I9});var T9=q("ZodISODateTime",(t,e)=>{uge.init(t,e),Wt.init(t,e)});function $9(t){return vve(T9,t)}var I9=q("ZodISODate",(t,e)=>{lge.init(t,e),Wt.init(t,e)});function R9(t){return yve(I9,t)}var O9=q("ZodISOTime",(t,e)=>{dge.init(t,e),Wt.init(t,e)});function C9(t){return _ve(O9,t)}var P9=q("ZodISODuration",(t,e)=>{pge.init(t,e),Wt.init(t,e)});function A9(t){return bve(P9,t)}var N9=(t,e)=>{l9.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>ohe(t,r)},flatten:{value:r=>she(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},y4e=q("ZodError",N9),Ay=q("ZodError",N9,{Parent:Error}),Uve=ahe(Ay),Fve=che(Ay),qve=p9(Ay),Hve=f9(Ay),Gt=q("ZodType",(t,e)=>(zt.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>Uo(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t),t.parse=(r,n)=>Uve(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>qve(t,r,n),t.parseAsync=async(r,n)=>Fve(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Hve(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(Aye(r,n)),t.superRefine=r=>t.check(Nye(r)),t.overwrite=r=>t.check(If(r)),t.optional=()=>ge(t),t.nullable=()=>hq(t),t.nullish=()=>ge(hq(t)),t.nonoptional=r=>kye(t,r),t.array=()=>st(t),t.or=r=>Ft([t,r]),t.and=r=>jI(t,r),t.transform=r=>$I(t,F9(r)),t.default=r=>xye(t,r),t.prefault=r=>Eye(t,r),t.catch=r=>$ye(t,r),t.pipe=r=>$I(t,r),t.readonly=()=>Oye(t),t.describe=r=>{let n=t.clone();return py.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return py.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return py.get(t);let n=t.clone();return py.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),M9=q("_ZodString",(t,e)=>{DI.init(t,e),Gt.init(t,e);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,t.regex=(...n)=>t.check($ve(...n)),t.includes=(...n)=>t.check(Ove(...n)),t.startsWith=(...n)=>t.check(Cve(...n)),t.endsWith=(...n)=>t.check(Pve(...n)),t.min=(...n)=>t.check(by(...n)),t.max=(...n)=>t.check(w9(...n)),t.length=(...n)=>t.check(E9(...n)),t.nonempty=(...n)=>t.check(by(1,...n)),t.lowercase=n=>t.check(Ive(n)),t.uppercase=n=>t.check(Rve(n)),t.trim=()=>t.check(Nve()),t.normalize=(...n)=>t.check(Ave(...n)),t.toLowerCase=()=>t.check(Mve()),t.toUpperCase=()=>t.check(Dve())}),Zve=q("ZodString",(t,e)=>{DI.init(t,e),M9.init(t,e),t.email=r=>t.check(Jge(Bve,r)),t.url=r=>t.check(tve(Gve,r)),t.jwt=r=>t.check(gve(aye,r)),t.emoji=r=>t.check(rve(Wve,r)),t.guid=r=>t.check(uq(fq,r)),t.uuid=r=>t.check(Xge(fy,r)),t.uuidv4=r=>t.check(Yge(fy,r)),t.uuidv6=r=>t.check(Qge(fy,r)),t.uuidv7=r=>t.check(eve(fy,r)),t.nanoid=r=>t.check(nve(Vve,r)),t.guid=r=>t.check(uq(fq,r)),t.cuid=r=>t.check(ive(Kve,r)),t.cuid2=r=>t.check(sve(Jve,r)),t.ulid=r=>t.check(ove(Xve,r)),t.base64=r=>t.check(fve(iye,r)),t.base64url=r=>t.check(mve(sye,r)),t.xid=r=>t.check(ave(Yve,r)),t.ksuid=r=>t.check(cve(Qve,r)),t.ipv4=r=>t.check(uve(eye,r)),t.ipv6=r=>t.check(lve(tye,r)),t.cidrv4=r=>t.check(dve(rye,r)),t.cidrv6=r=>t.check(pve(nye,r)),t.e164=r=>t.check(hve(oye,r)),t.datetime=r=>t.check($9(r)),t.date=r=>t.check(R9(r)),t.time=r=>t.check(C9(r)),t.duration=r=>t.check(A9(r))});function U(t){return Kge(Zve,t)}var Wt=q("ZodStringFormat",(t,e)=>{Ut.init(t,e),M9.init(t,e)}),Bve=q("ZodEmail",(t,e)=>{ege.init(t,e),Wt.init(t,e)}),fq=q("ZodGUID",(t,e)=>{Yhe.init(t,e),Wt.init(t,e)}),fy=q("ZodUUID",(t,e)=>{Qhe.init(t,e),Wt.init(t,e)}),Gve=q("ZodURL",(t,e)=>{tge.init(t,e),Wt.init(t,e)}),Wve=q("ZodEmoji",(t,e)=>{rge.init(t,e),Wt.init(t,e)}),Vve=q("ZodNanoID",(t,e)=>{nge.init(t,e),Wt.init(t,e)}),Kve=q("ZodCUID",(t,e)=>{ige.init(t,e),Wt.init(t,e)}),Jve=q("ZodCUID2",(t,e)=>{sge.init(t,e),Wt.init(t,e)}),Xve=q("ZodULID",(t,e)=>{oge.init(t,e),Wt.init(t,e)}),Yve=q("ZodXID",(t,e)=>{age.init(t,e),Wt.init(t,e)}),Qve=q("ZodKSUID",(t,e)=>{cge.init(t,e),Wt.init(t,e)}),eye=q("ZodIPv4",(t,e)=>{fge.init(t,e),Wt.init(t,e)}),tye=q("ZodIPv6",(t,e)=>{mge.init(t,e),Wt.init(t,e)}),rye=q("ZodCIDRv4",(t,e)=>{hge.init(t,e),Wt.init(t,e)}),nye=q("ZodCIDRv6",(t,e)=>{gge.init(t,e),Wt.init(t,e)}),iye=q("ZodBase64",(t,e)=>{vge.init(t,e),Wt.init(t,e)}),sye=q("ZodBase64URL",(t,e)=>{_ge.init(t,e),Wt.init(t,e)}),oye=q("ZodE164",(t,e)=>{bge.init(t,e),Wt.init(t,e)}),aye=q("ZodJWT",(t,e)=>{xge.init(t,e),Wt.init(t,e)}),D9=q("ZodNumber",(t,e)=>{S9.init(t,e),Gt.init(t,e),t.gt=(n,i)=>t.check(dq(n,i)),t.gte=(n,i)=>t.check(oI(n,i)),t.min=(n,i)=>t.check(oI(n,i)),t.lt=(n,i)=>t.check(lq(n,i)),t.lte=(n,i)=>t.check(sI(n,i)),t.max=(n,i)=>t.check(sI(n,i)),t.int=n=>t.check(mq(n)),t.safe=n=>t.check(mq(n)),t.positive=n=>t.check(dq(0,n)),t.nonnegative=n=>t.check(oI(0,n)),t.negative=n=>t.check(lq(0,n)),t.nonpositive=n=>t.check(sI(0,n)),t.multipleOf=(n,i)=>t.check(pq(n,i)),t.step=(n,i)=>t.check(pq(n,i)),t.finite=()=>t;let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function Pt(t){return Sve(D9,t)}var cye=q("ZodNumberFormat",(t,e)=>{wge.init(t,e),D9.init(t,e)});function mq(t){return xve(cye,t)}var uye=q("ZodBoolean",(t,e)=>{Ege.init(t,e),Gt.init(t,e)});function Fr(t){return wve(uye,t)}var lye=q("ZodNull",(t,e)=>{kge.init(t,e),Gt.init(t,e)});function j9(t){return Eve(lye,t)}var dye=q("ZodUnknown",(t,e)=>{Tge.init(t,e),Gt.init(t,e)});function cr(){return kve(dye)}var pye=q("ZodNever",(t,e)=>{$ge.init(t,e),Gt.init(t,e)});function fye(t){return Tve(pye,t)}var mye=q("ZodArray",(t,e)=>{Ige.init(t,e),Gt.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(by(r,n)),t.nonempty=r=>t.check(by(1,r)),t.max=(r,n)=>t.check(w9(r,n)),t.length=(r,n)=>t.check(E9(r,n)),t.unwrap=()=>t.element});function st(t,e){return jve(mye,t,e)}var z9=q("ZodObject",(t,e)=>{Rge.init(t,e),Gt.init(t,e),Dt.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>qr(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:cr()}),t.loose=()=>t.clone({...t._zod.def,catchall:cr()}),t.strict=()=>t.clone({...t._zod.def,catchall:fye()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>Dt.extend(t,r),t.merge=r=>Dt.merge(t,r),t.pick=r=>Dt.pick(t,r),t.omit=r=>Dt.omit(t,r),t.partial=(...r)=>Dt.partial(q9,t,r[0]),t.required=(...r)=>Dt.required(H9,t,r[0])});function X(t,e){let r={type:"object",get shape(){return Dt.assignProp(this,"shape",{...t}),this.shape},...Dt.normalizeParams(e)};return new z9(r)}function Ii(t,e){return new z9({type:"object",get shape(){return Dt.assignProp(this,"shape",{...t}),this.shape},catchall:cr(),...Dt.normalizeParams(e)})}var L9=q("ZodUnion",(t,e)=>{x9.init(t,e),Gt.init(t,e),t.options=e.options});function Ft(t,e){return new L9({type:"union",options:t,...Dt.normalizeParams(e)})}var hye=q("ZodDiscriminatedUnion",(t,e)=>{L9.init(t,e),Oge.init(t,e)});function U9(t,e,r){return new hye({type:"union",options:e,discriminator:t,...Dt.normalizeParams(r)})}var gye=q("ZodIntersection",(t,e)=>{Cge.init(t,e),Gt.init(t,e)});function jI(t,e){return new gye({type:"intersection",left:t,right:e})}var vye=q("ZodRecord",(t,e)=>{Pge.init(t,e),Gt.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function ur(t,e,r){return new vye({type:"record",keyType:t,valueType:e,...Dt.normalizeParams(r)})}var TI=q("ZodEnum",(t,e)=>{Age.init(t,e),Gt.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,i)=>{let s={};for(let o of n)if(r.has(o))s[o]=e.entries[o];else throw new Error(`Key ${o} not found in enum`);return new TI({...e,checks:[],...Dt.normalizeParams(i),entries:s})},t.exclude=(n,i)=>{let s={...e.entries};for(let o of n)if(r.has(o))delete s[o];else throw new Error(`Key ${o} not found in enum`);return new TI({...e,checks:[],...Dt.normalizeParams(i),entries:s})}});function qr(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new TI({type:"enum",entries:r,...Dt.normalizeParams(e)})}var yye=q("ZodLiteral",(t,e)=>{Nge.init(t,e),Gt.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function ve(t,e){return new yye({type:"literal",values:Array.isArray(t)?t:[t],...Dt.normalizeParams(e)})}var _ye=q("ZodTransform",(t,e)=>{Mge.init(t,e),Gt.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(Dt.issue(s,r.value,e));else{let o=s;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=t),o.continue??(o.continue=!0),r.issues.push(Dt.issue(o))}};let i=e.transform(r.value,r);return i instanceof Promise?i.then(s=>(r.value=s,r)):(r.value=i,r)}});function F9(t){return new _ye({type:"transform",transform:t})}var q9=q("ZodOptional",(t,e)=>{Dge.init(t,e),Gt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ge(t){return new q9({type:"optional",innerType:t})}var bye=q("ZodNullable",(t,e)=>{jge.init(t,e),Gt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function hq(t){return new bye({type:"nullable",innerType:t})}var Sye=q("ZodDefault",(t,e)=>{zge.init(t,e),Gt.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function xye(t,e){return new Sye({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var wye=q("ZodPrefault",(t,e)=>{Lge.init(t,e),Gt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Eye(t,e){return new wye({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var H9=q("ZodNonOptional",(t,e)=>{Uge.init(t,e),Gt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function kye(t,e){return new H9({type:"nonoptional",innerType:t,...Dt.normalizeParams(e)})}var Tye=q("ZodCatch",(t,e)=>{Fge.init(t,e),Gt.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function $ye(t,e){return new Tye({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var Iye=q("ZodPipe",(t,e)=>{qge.init(t,e),Gt.init(t,e),t.in=e.in,t.out=e.out});function $I(t,e){return new Iye({type:"pipe",in:t,out:e})}var Rye=q("ZodReadonly",(t,e)=>{Hge.init(t,e),Gt.init(t,e)});function Oye(t){return new Rye({type:"readonly",innerType:t})}var Z9=q("ZodCustom",(t,e)=>{Zge.init(t,e),Gt.init(t,e)});function Cye(t,e){let r=new wn({check:"custom",...Dt.normalizeParams(e)});return r._zod.check=t,r}function Pye(t,e){return zve(Z9,t??(()=>!0),e)}function Aye(t,e={}){return Lve(Z9,t,e)}function Nye(t,e){let r=Cye(n=>(n.addIssue=i=>{if(typeof i=="string")n.issues.push(Dt.issue(i,n.value,r._zod.def));else{let s=i;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=n.value),s.inst??(s.inst=r),s.continue??(s.continue=!r._zod.def.abort),n.issues.push(Dt.issue(s))}},t(n.value,n)),e);return r}function B9(t,e){return $I(F9(t),e)}Ws(Wge());var zI="io.modelcontextprotocol/related-task",Ny="2.0",os=Pye(t=>t!==null&&(typeof t=="object"||typeof t=="function")),G9=Ft([U(),Pt().int()]),W9=U(),Mye=Ii({ttl:Ft([Pt(),j9()]).optional(),pollInterval:Pt().optional()}),LI=Ii({taskId:U()}),Dye=Ii({progressToken:G9.optional(),[zI]:LI.optional()}),En=Ii({task:Mye.optional(),_meta:Dye.optional()}),Or=X({method:U(),params:En.optional()}),ja=Ii({_meta:X({[zI]:ge(LI)}).passthrough().optional()}),ii=X({method:U(),params:ja.optional()}),Hr=Ii({_meta:Ii({[zI]:LI.optional()}).optional()}),My=Ft([U(),Pt().int()]),jye=X({jsonrpc:ve(Ny),id:My,...Or.shape}).strict();var zye=X({jsonrpc:ve(Ny),...ii.shape}).strict();var Lye=X({jsonrpc:ve(Ny),id:My,result:Hr}).strict();var gq;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(gq||(gq={}));var Uye=X({jsonrpc:ve(Ny),id:My,error:X({code:Pt().int(),message:U(),data:ge(cr())})}).strict();var _4e=Ft([jye,zye,Lye,Uye]),V9=Hr.strict(),Fye=ja.extend({requestId:My,reason:U().optional()}),K9=ii.extend({method:ve("notifications/cancelled"),params:Fye}),qye=X({src:U(),mimeType:U().optional(),sizes:st(U()).optional()}),Rf=X({icons:st(qye).optional()}),Vu=X({name:U(),title:U().optional()}),J9=Vu.extend({...Vu.shape,...Rf.shape,version:U(),websiteUrl:U().optional()}),Hye=jI(X({applyDefaults:Fr().optional()}),ur(U(),cr())),Zye=B9(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,jI(X({form:Hye.optional(),url:os.optional()}),ur(U(),cr()).optional())),Bye=X({list:ge(X({}).passthrough()),cancel:ge(X({}).passthrough()),requests:ge(X({sampling:ge(X({createMessage:ge(X({}).passthrough())}).passthrough()),elicitation:ge(X({create:ge(X({}).passthrough())}).passthrough())}).passthrough())}).passthrough(),Gye=X({list:ge(X({}).passthrough()),cancel:ge(X({}).passthrough()),requests:ge(X({tools:ge(X({call:ge(X({}).passthrough())}).passthrough())}).passthrough())}).passthrough(),Wye=X({experimental:ur(U(),os).optional(),sampling:X({context:os.optional(),tools:os.optional()}).optional(),elicitation:Zye.optional(),roots:X({listChanged:Fr().optional()}).optional(),tasks:ge(Bye)}),Vye=En.extend({protocolVersion:U(),capabilities:Wye,clientInfo:J9}),Kye=Or.extend({method:ve("initialize"),params:Vye}),Jye=X({experimental:ur(U(),os).optional(),logging:os.optional(),completions:os.optional(),prompts:ge(X({listChanged:ge(Fr())})),resources:X({subscribe:Fr().optional(),listChanged:Fr().optional()}).optional(),tools:X({listChanged:Fr().optional()}).optional(),tasks:ge(Gye)}).passthrough(),Xye=Hr.extend({protocolVersion:U(),capabilities:Jye,serverInfo:J9,instructions:U().optional()}),Yye=ii.extend({method:ve("notifications/initialized")}),X9=Or.extend({method:ve("ping")}),Qye=X({progress:Pt(),total:ge(Pt()),message:ge(U())}),e_e=X({...ja.shape,...Qye.shape,progressToken:G9}),Y9=ii.extend({method:ve("notifications/progress"),params:e_e}),t_e=En.extend({cursor:W9.optional()}),Of=Or.extend({params:t_e.optional()}),Cf=Hr.extend({nextCursor:ge(W9)}),Pf=X({taskId:U(),status:qr(["working","input_required","completed","failed","cancelled"]),ttl:Ft([Pt(),j9()]),createdAt:U(),lastUpdatedAt:U(),pollInterval:ge(Pt()),statusMessage:ge(U())}),Q9=Hr.extend({task:Pf}),r_e=ja.merge(Pf),e8=ii.extend({method:ve("notifications/tasks/status"),params:r_e}),t8=Or.extend({method:ve("tasks/get"),params:En.extend({taskId:U()})}),r8=Hr.merge(Pf),n8=Or.extend({method:ve("tasks/result"),params:En.extend({taskId:U()})}),i8=Of.extend({method:ve("tasks/list")}),s8=Cf.extend({tasks:st(Pf)}),b4e=Or.extend({method:ve("tasks/cancel"),params:En.extend({taskId:U()})}),S4e=Hr.merge(Pf),o8=X({uri:U(),mimeType:ge(U()),_meta:ur(U(),cr()).optional()}),a8=o8.extend({text:U()}),UI=U().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),c8=o8.extend({blob:UI}),el=X({audience:st(qr(["user","assistant"])).optional(),priority:Pt().min(0).max(1).optional(),lastModified:k9.datetime({offset:!0}).optional()}),u8=X({...Vu.shape,...Rf.shape,uri:U(),description:ge(U()),mimeType:ge(U()),annotations:el.optional(),_meta:ge(Ii({}))}),n_e=X({...Vu.shape,...Rf.shape,uriTemplate:U(),description:ge(U()),mimeType:ge(U()),annotations:el.optional(),_meta:ge(Ii({}))}),i_e=Of.extend({method:ve("resources/list")}),s_e=Cf.extend({resources:st(u8)}),o_e=Of.extend({method:ve("resources/templates/list")}),a_e=Cf.extend({resourceTemplates:st(n_e)}),FI=En.extend({uri:U()}),c_e=FI,u_e=Or.extend({method:ve("resources/read"),params:c_e}),l_e=Hr.extend({contents:st(Ft([a8,c8]))}),d_e=ii.extend({method:ve("notifications/resources/list_changed")}),p_e=FI,f_e=Or.extend({method:ve("resources/subscribe"),params:p_e}),m_e=FI,h_e=Or.extend({method:ve("resources/unsubscribe"),params:m_e}),g_e=ja.extend({uri:U()}),v_e=ii.extend({method:ve("notifications/resources/updated"),params:g_e}),y_e=X({name:U(),description:ge(U()),required:ge(Fr())}),__e=X({...Vu.shape,...Rf.shape,description:ge(U()),arguments:ge(st(y_e)),_meta:ge(Ii({}))}),b_e=Of.extend({method:ve("prompts/list")}),S_e=Cf.extend({prompts:st(__e)}),x_e=En.extend({name:U(),arguments:ur(U(),U()).optional()}),w_e=Or.extend({method:ve("prompts/get"),params:x_e}),qI=X({type:ve("text"),text:U(),annotations:el.optional(),_meta:ur(U(),cr()).optional()}),HI=X({type:ve("image"),data:UI,mimeType:U(),annotations:el.optional(),_meta:ur(U(),cr()).optional()}),ZI=X({type:ve("audio"),data:UI,mimeType:U(),annotations:el.optional(),_meta:ur(U(),cr()).optional()}),E_e=X({type:ve("tool_use"),name:U(),id:U(),input:X({}).passthrough(),_meta:ge(X({}).passthrough())}).passthrough(),k_e=X({type:ve("resource"),resource:Ft([a8,c8]),annotations:el.optional(),_meta:ur(U(),cr()).optional()}),T_e=u8.extend({type:ve("resource_link")}),BI=Ft([qI,HI,ZI,T_e,k_e]),$_e=X({role:qr(["user","assistant"]),content:BI}),I_e=Hr.extend({description:ge(U()),messages:st($_e)}),R_e=ii.extend({method:ve("notifications/prompts/list_changed")}),O_e=X({title:U().optional(),readOnlyHint:Fr().optional(),destructiveHint:Fr().optional(),idempotentHint:Fr().optional(),openWorldHint:Fr().optional()}),C_e=X({taskSupport:qr(["required","optional","forbidden"]).optional()}),l8=X({...Vu.shape,...Rf.shape,description:U().optional(),inputSchema:X({type:ve("object"),properties:ur(U(),os).optional(),required:st(U()).optional()}).catchall(cr()),outputSchema:X({type:ve("object"),properties:ur(U(),os).optional(),required:st(U()).optional()}).catchall(cr()).optional(),annotations:ge(O_e),execution:ge(C_e),_meta:ur(U(),cr()).optional()}),P_e=Of.extend({method:ve("tools/list")}),A_e=Cf.extend({tools:st(l8)}),d8=Hr.extend({content:st(BI).default([]),structuredContent:ur(U(),cr()).optional(),isError:ge(Fr())}),x4e=d8.or(Hr.extend({toolResult:cr()})),N_e=En.extend({name:U(),arguments:ge(ur(U(),cr()))}),M_e=Or.extend({method:ve("tools/call"),params:N_e}),D_e=ii.extend({method:ve("notifications/tools/list_changed")}),p8=qr(["debug","info","notice","warning","error","critical","alert","emergency"]),j_e=En.extend({level:p8}),z_e=Or.extend({method:ve("logging/setLevel"),params:j_e}),L_e=ja.extend({level:p8,logger:U().optional(),data:cr()}),U_e=ii.extend({method:ve("notifications/message"),params:L_e}),F_e=X({name:U().optional()}),q_e=X({hints:ge(st(F_e)),costPriority:ge(Pt().min(0).max(1)),speedPriority:ge(Pt().min(0).max(1)),intelligencePriority:ge(Pt().min(0).max(1))}),H_e=X({mode:ge(qr(["auto","required","none"]))}),Z_e=X({type:ve("tool_result"),toolUseId:U().describe("The unique identifier for the corresponding tool call."),content:st(BI).default([]),structuredContent:X({}).passthrough().optional(),isError:ge(Fr()),_meta:ge(X({}).passthrough())}).passthrough(),B_e=U9("type",[qI,HI,ZI]),Sy=U9("type",[qI,HI,ZI,E_e,Z_e]),G_e=X({role:qr(["user","assistant"]),content:Ft([Sy,st(Sy)]),_meta:ge(X({}).passthrough())}).passthrough(),W_e=En.extend({messages:st(G_e),modelPreferences:q_e.optional(),systemPrompt:U().optional(),includeContext:qr(["none","thisServer","allServers"]).optional(),temperature:Pt().optional(),maxTokens:Pt().int(),stopSequences:st(U()).optional(),metadata:os.optional(),tools:ge(st(l8)),toolChoice:ge(H_e)}),V_e=Or.extend({method:ve("sampling/createMessage"),params:W_e}),K_e=Hr.extend({model:U(),stopReason:ge(qr(["endTurn","stopSequence","maxTokens"]).or(U())),role:qr(["user","assistant"]),content:B_e}),J_e=Hr.extend({model:U(),stopReason:ge(qr(["endTurn","stopSequence","maxTokens","toolUse"]).or(U())),role:qr(["user","assistant"]),content:Ft([Sy,st(Sy)])}),X_e=X({type:ve("boolean"),title:U().optional(),description:U().optional(),default:Fr().optional()}),Y_e=X({type:ve("string"),title:U().optional(),description:U().optional(),minLength:Pt().optional(),maxLength:Pt().optional(),format:qr(["email","uri","date","date-time"]).optional(),default:U().optional()}),Q_e=X({type:qr(["number","integer"]),title:U().optional(),description:U().optional(),minimum:Pt().optional(),maximum:Pt().optional(),default:Pt().optional()}),ebe=X({type:ve("string"),title:U().optional(),description:U().optional(),enum:st(U()),default:U().optional()}),tbe=X({type:ve("string"),title:U().optional(),description:U().optional(),oneOf:st(X({const:U(),title:U()})),default:U().optional()}),rbe=X({type:ve("string"),title:U().optional(),description:U().optional(),enum:st(U()),enumNames:st(U()).optional(),default:U().optional()}),nbe=Ft([ebe,tbe]),ibe=X({type:ve("array"),title:U().optional(),description:U().optional(),minItems:Pt().optional(),maxItems:Pt().optional(),items:X({type:ve("string"),enum:st(U())}),default:st(U()).optional()}),sbe=X({type:ve("array"),title:U().optional(),description:U().optional(),minItems:Pt().optional(),maxItems:Pt().optional(),items:X({anyOf:st(X({const:U(),title:U()}))}),default:st(U()).optional()}),obe=Ft([ibe,sbe]),abe=Ft([rbe,nbe,obe]),cbe=Ft([abe,X_e,Y_e,Q_e]),ube=En.extend({mode:ve("form").optional(),message:U(),requestedSchema:X({type:ve("object"),properties:ur(U(),cbe),required:st(U()).optional()})}),lbe=En.extend({mode:ve("url"),message:U(),elicitationId:U(),url:U().url()}),dbe=Ft([ube,lbe]),pbe=Or.extend({method:ve("elicitation/create"),params:dbe}),fbe=ja.extend({elicitationId:U()}),mbe=ii.extend({method:ve("notifications/elicitation/complete"),params:fbe}),hbe=Hr.extend({action:qr(["accept","decline","cancel"]),content:B9(t=>t===null?void 0:t,ur(U(),Ft([U(),Pt(),Fr(),st(U())])).optional())}),gbe=X({type:ve("ref/resource"),uri:U()}),vbe=X({type:ve("ref/prompt"),name:U()}),ybe=En.extend({ref:Ft([vbe,gbe]),argument:X({name:U(),value:U()}),context:X({arguments:ur(U(),U()).optional()}).optional()}),_be=Or.extend({method:ve("completion/complete"),params:ybe});var bbe=Hr.extend({completion:Ii({values:st(U()).max(100),total:ge(Pt().int()),hasMore:ge(Fr())})}),Sbe=X({uri:U().startsWith("file://"),name:U().optional(),_meta:ur(U(),cr()).optional()}),xbe=Or.extend({method:ve("roots/list")}),wbe=Hr.extend({roots:st(Sbe)}),Ebe=ii.extend({method:ve("notifications/roots/list_changed")}),w4e=Ft([X9,Kye,_be,z_e,w_e,b_e,i_e,o_e,u_e,f_e,h_e,M_e,P_e,t8,n8,i8]),E4e=Ft([K9,Y9,Yye,Ebe,e8]),k4e=Ft([V9,K_e,J_e,hbe,wbe,r8,s8,Q9]),T4e=Ft([X9,V_e,pbe,xbe,t8,n8,i8]),$4e=Ft([K9,Y9,U_e,v_e,d_e,D_e,R_e,e8,mbe]),I4e=Ft([V9,Xye,bbe,I_e,S_e,s_e,a_e,l_e,d8,A_e,r8,s8,Q9]);var R4e=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");var O4e=yq(Tq(),1),C4e=yq(ipe(),1);var vq;(function(t){t.Completable="McpCompletable"})(vq||(vq={}));function f8({prompt:t,options:e}){let{systemPrompt:r,settingSources:n,sandbox:i,...s}=e??{},o,a;r===void 0?o="":typeof r=="string"?o=r:r.type==="preset"&&(a=r.append);let c=s.pathToClaudeCodeExecutable;if(!c){let J=(0,$q.fileURLToPath)(kbe.url),ue=(0,cI.join)(J,"..");c=(0,cI.join)(ue,"cli.js")}process.env.CLAUDE_AGENT_SDK_VERSION="0.1.77";let{abortController:u=Rq(),additionalDirectories:l=[],agents:d,allowedTools:p=[],betas:f,canUseTool:m,continue:h,cwd:g,disallowedTools:v=[],tools:y,env:b,executable:S=Kq()?"bun":"node",executableArgs:x=[],extraArgs:w={},fallbackModel:E,enableFileCheckpointing:T,forkSession:I,hooks:P,includePartialMessages:N,persistSession:L,maxThinkingTokens:G,maxTurns:j,maxBudgetUsd:ae,mcpServers:Me,model:Le,outputFormat:kt,permissionMode:Ge="default",allowDangerouslySkipPermissions:K=!1,permissionPromptToolName:C,plugins:H,resume:M,resumeSessionAt:k,stderr:R,strictMcpConfig:F}=s,le=kt?.type==="json_schema"?kt.schema:void 0,ce=b;if(ce||(ce={...process.env}),ce.CLAUDE_CODE_ENTRYPOINT||(ce.CLAUDE_CODE_ENTRYPOINT="sdk-ts"),T&&(ce.CLAUDE_CODE_ENABLE_SDK_FILE_CHECKPOINTING="true"),!c)throw new Error("pathToClaudeCodeExecutable is required");let et={},Xe=new Map;if(Me)for(let[J,ue]of Object.entries(Me))ue.type==="sdk"&&"instance"in ue?(Xe.set(J,ue.instance),et[J]={type:"sdk",name:J}):et[J]=ue;let qt=typeof t=="string",A=new lI({abortController:u,additionalDirectories:l,betas:f,cwd:g,executable:S,executableArgs:x,extraArgs:w,pathToClaudeCodeExecutable:c,env:ce,forkSession:I,stderr:R,maxThinkingTokens:G,maxTurns:j,maxBudgetUsd:ae,model:Le,fallbackModel:E,jsonSchema:le,permissionMode:Ge,allowDangerouslySkipPermissions:K,permissionPromptToolName:C,continueConversation:h,resume:M,resumeSessionAt:k,settingSources:n??[],allowedTools:p,disallowedTools:v,tools:y,mcpServers:et,strictMcpConfig:F,canUseTool:!!m,hooks:!!P,includePartialMessages:N,persistSession:L,plugins:H,sandbox:i,spawnClaudeCodeProcess:s.spawnClaudeCodeProcess}),D={systemPrompt:o,appendSystemPrompt:a,agents:d},Z=new fI(A,qt,m,P,u,Xe,le,D);return typeof t=="string"?A.write(ss({type:"user",session_id:"",message:{role:"user",content:[{type:"text",text:t}]},parent_tool_use_id:null})+` +`):Z.streamInput(t),Z}var Dy=class{dbManager;sessionManager;constructor(e,r){this.dbManager=e,this.sessionManager=r}async startSession(e,r){let n={lastCwd:void 0},i=this.findClaudeExecutable(),s=e.modelOverride||this.getModelId(),o=["Bash","Read","Write","Edit","Grep","Glob","WebFetch","WebSearch","Task","NotebookEdit","AskUserQuestion","TodoWrite"],a=this.createMessageGenerator(e,n),c=!!e.memorySessionId,u=c&&e.lastPromptNumber>1&&!e.forceInit;e.forceInit&&(_.info("SDK","forceInit flag set, starting fresh SDK session",{sessionDbId:e.sessionDbId,previousMemorySessionId:e.memorySessionId}),e.forceInit=!1);let l=ye.loadFromFile(vt),d=parseInt(l.CLAUDE_MEM_MAX_CONCURRENT_AGENTS,10)||2;await $F(d);let p=Wi(hD()),f=Mg();if(_.info("SDK","Starting SDK query",{sessionDbId:e.sessionDbId,contentSessionId:e.contentSessionId,memorySessionId:e.memorySessionId,hasRealMemorySessionId:c,shouldResume:u,resume_parameter:u?e.memorySessionId:"(none - fresh start)",lastPromptNumber:e.lastPromptNumber,authMethod:f}),e.lastPromptNumber>1)_.debug("SDK",`[ALIGNMENT] Resume Decision | contentSessionId=${e.contentSessionId} | memorySessionId=${e.memorySessionId} | prompt#=${e.lastPromptNumber} | hasRealMemorySessionId=${c} | shouldResume=${u} | resumeWith=${u?e.memorySessionId:"NONE"}`);else{let g=c;_.debug("SDK",`[ALIGNMENT] First Prompt (INIT) | contentSessionId=${e.contentSessionId} | prompt#=${e.lastPromptNumber} | hasStaleMemoryId=${g} | action=START_FRESH | Will capture new memorySessionId from SDK response`),g&&_.warn("SDK",`Skipping resume for INIT prompt despite existing memorySessionId=${e.memorySessionId} - SDK context was lost (worker restart or crash recovery)`)}Lr(Og);let m=f8({prompt:a,options:{model:s,cwd:Og,...u&&{resume:e.memorySessionId},disallowedTools:o,abortController:e.abortController,pathToClaudeCodeExecutable:i,spawnClaudeCodeProcess:IF(e.sessionDbId),env:p}});try{for await(let g of m){if(g.session_id&&g.session_id!==e.memorySessionId){let v=e.memorySessionId;e.memorySessionId=g.session_id,this.dbManager.getSessionStore().ensureMemorySessionIdRegistered(e.sessionDbId,g.session_id);let y=this.dbManager.getSessionStore().getSessionById(e.sessionDbId),b=y?.memory_session_id===g.session_id,S=v?`MEMORY_ID_CHANGED | sessionDbId=${e.sessionDbId} | from=${v} | to=${g.session_id} | dbVerified=${b}`:`MEMORY_ID_CAPTURED | sessionDbId=${e.sessionDbId} | memorySessionId=${g.session_id} | dbVerified=${b}`;_.info("SESSION",S,{sessionId:e.sessionDbId,memorySessionId:g.session_id,previousId:v}),b||_.error("SESSION",`MEMORY_ID_MISMATCH | sessionDbId=${e.sessionDbId} | expected=${g.session_id} | got=${y?.memory_session_id}`,{sessionId:e.sessionDbId}),_.debug("SDK",`[ALIGNMENT] ${v?"Updated":"Captured"} | contentSessionId=${e.contentSessionId} \u2192 memorySessionId=${g.session_id} | Future prompts will resume with this ID`)}if(g.type==="assistant"){let v=g.message.content,y=Array.isArray(v)?v.filter(T=>T.type==="text").map(T=>T.text).join(` +`):typeof v=="string"?v:"";if(y.includes("prompt is too long")||y.includes("context window")){_.error("SDK","Context overflow detected - terminating session"),e.abortController.abort();return}let b=y.length,S=e.cumulativeInputTokens+e.cumulativeOutputTokens,x=g.message.usage;x&&(e.cumulativeInputTokens+=x.input_tokens||0,e.cumulativeOutputTokens+=x.output_tokens||0,x.cache_creation_input_tokens&&(e.cumulativeInputTokens+=x.cache_creation_input_tokens),_.debug("SDK","Token usage captured",{sessionId:e.sessionDbId,inputTokens:x.input_tokens,outputTokens:x.output_tokens,cacheCreation:x.cache_creation_input_tokens||0,cacheRead:x.cache_read_input_tokens||0,cumulativeInput:e.cumulativeInputTokens,cumulativeOutput:e.cumulativeOutputTokens}));let w=e.cumulativeInputTokens+e.cumulativeOutputTokens-S,E=e.earliestPendingTimestamp;if(b>0){let T=b>100?y.substring(0,100)+"...":y;_.dataOut("SDK",`Response received (${b} chars)`,{sessionId:e.sessionDbId,promptNumber:e.lastPromptNumber},T)}if(typeof y=="string"&&y.includes("Prompt is too long"))throw new Error("Claude session context overflow: prompt is too long");if(typeof y=="string"&&y.includes("Invalid API key"))throw new Error("Invalid API key: check your API key configuration in ~/.claude-mem/settings.json or ~/.claude-mem/.env");await ki(y,e,this.dbManager,this.sessionManager,r,w,E,"SDK",n.lastCwd,s)}g.type==="result"&&g.subtype}}finally{let g=Ao(e.sessionDbId);g&&g.process.exitCode===null&&await No(g,5e3)}let h=Date.now()-e.startTime;_.success("SDK","Agent completed",{sessionId:e.sessionDbId,duration:`${(h/1e3).toFixed(1)}s`})}async*createMessageGenerator(e,r){let n=He.getInstance().getActiveMode(),i=e.lastPromptNumber===1;_.info("SDK","Creating message generator",{sessionDbId:e.sessionDbId,contentSessionId:e.contentSessionId,lastPromptNumber:e.lastPromptNumber,isInitPrompt:i,promptType:i?"INIT":"CONTINUATION"});let s=i?Iu(e.project,e.contentSessionId,e.userPrompt,n):Cu(e.userPrompt,e.lastPromptNumber,e.contentSessionId,n);e.conversationHistory.push({role:"user",content:s}),yield{type:"user",message:{role:"user",content:s},session_id:e.contentSessionId,parent_tool_use_id:null,isSynthetic:!0};for await(let o of this.sessionManager.getMessageIterator(e.sessionDbId))if(e.processingMessageIds.push(o._persistentId),o.cwd&&(r.lastCwd=o.cwd),o.type==="observation"){o.prompt_number!==void 0&&(e.lastPromptNumber=o.prompt_number);let a=Ru({id:0,tool_name:o.tool_name,tool_input:JSON.stringify(o.tool_input),tool_output:JSON.stringify(o.tool_response),created_at_epoch:Date.now(),cwd:o.cwd});e.conversationHistory.push({role:"user",content:a}),yield{type:"user",message:{role:"user",content:a},session_id:e.contentSessionId,parent_tool_use_id:null,isSynthetic:!0}}else if(o.type==="summarize"){let a=Ou({id:e.sessionDbId,memory_session_id:e.memorySessionId,project:e.project,user_prompt:e.userPrompt,last_assistant_message:o.last_assistant_message||""},n);e.conversationHistory.push({role:"user",content:a}),yield{type:"user",message:{role:"user",content:a},session_id:e.contentSessionId,parent_tool_use_id:null,isSynthetic:!0}}}findClaudeExecutable(){let e=ye.loadFromFile(vt);if(e.CLAUDE_CODE_PATH){let{existsSync:r}=require("fs");if(!r(e.CLAUDE_CODE_PATH))throw new Error(`CLAUDE_CODE_PATH is set to "${e.CLAUDE_CODE_PATH}" but the file does not exist.`);return e.CLAUDE_CODE_PATH}if(process.platform==="win32")try{return(0,GI.execSync)("where claude.cmd",{encoding:"utf8",windowsHide:!0,stdio:["ignore","pipe","ignore"]}),"claude.cmd"}catch{}try{let r=(0,GI.execSync)(process.platform==="win32"?"where claude":"which claude",{encoding:"utf8",windowsHide:!0,stdio:["ignore","pipe","ignore"]}).trim().split(` +`)[0].trim();if(r)return r}catch(r){_.debug("SDK","Claude executable auto-detection failed",{},r)}throw new Error(`Claude executable not found. Please either: +1. Add "claude" to your system PATH, or +2. Set CLAUDE_CODE_PATH in ~/.claude-mem/settings.json`)}getModelId(){let e=h8.default.join((0,m8.homedir)(),".claude-mem","settings.json");return ye.loadFromFile(e).CLAUDE_MEM_MODEL}};var zy=Pe(require("path"),1),Ly=require("os");te();tr();It();Fs();sn();var Tbe="https://generativelanguage.googleapis.com/v1/models",$be={"gemini-2.5-flash-lite":10,"gemini-2.5-flash":10,"gemini-2.5-pro":5,"gemini-2.0-flash":15,"gemini-2.0-flash-lite":30,"gemini-3-flash":10,"gemini-3-flash-preview":5},g8=0,Ibe=20,Rbe=1e5;async function Obe(t,e){if(!e)return;let r=$be[t]||5,n=Math.ceil(6e4/r)+100,s=Date.now()-g8;if(ssetTimeout(a,o))}g8=Date.now()}var jy=class{dbManager;sessionManager;fallbackAgent=null;constructor(e,r){this.dbManager=e,this.sessionManager=r}setFallbackAgent(e){this.fallbackAgent=e}async startSession(e,r){try{let{apiKey:n,model:i,rateLimitingEnabled:s}=this.getGeminiConfig();if(!n)throw new Error("Gemini API key not configured. Set CLAUDE_MEM_GEMINI_API_KEY in settings or GEMINI_API_KEY environment variable.");if(!e.memorySessionId){let d=`gemini-${e.contentSessionId}-${Date.now()}`;e.memorySessionId=d,this.dbManager.getSessionStore().updateMemorySessionId(e.sessionDbId,d),_.info("SESSION",`MEMORY_ID_GENERATED | sessionDbId=${e.sessionDbId} | provider=Gemini`)}let o=He.getInstance().getActiveMode(),a=e.lastPromptNumber===1?Iu(e.project,e.contentSessionId,e.userPrompt,o):Cu(e.userPrompt,e.lastPromptNumber,e.contentSessionId,o);e.conversationHistory.push({role:"user",content:a});let c=await this.queryGeminiMultiTurn(e.conversationHistory,n,i,s);if(c.content){e.conversationHistory.push({role:"assistant",content:c.content});let d=c.tokensUsed||0;e.cumulativeInputTokens+=Math.floor(d*.7),e.cumulativeOutputTokens+=Math.floor(d*.3),await ki(c.content,e,this.dbManager,this.sessionManager,r,d,null,"Gemini",void 0,i)}else _.error("SDK","Empty Gemini init response - session may lack context",{sessionId:e.sessionDbId,model:i});let u;for await(let d of this.sessionManager.getMessageIterator(e.sessionDbId)){e.processingMessageIds.push(d._persistentId),d.cwd&&(u=d.cwd);let p=e.earliestPendingTimestamp;if(d.type==="observation"){if(d.prompt_number!==void 0&&(e.lastPromptNumber=d.prompt_number),!e.memorySessionId)throw new Error("Cannot process observations: memorySessionId not yet captured. This session may need to be reinitialized.");let f=Ru({id:0,tool_name:d.tool_name,tool_input:JSON.stringify(d.tool_input),tool_output:JSON.stringify(d.tool_response),created_at_epoch:p??Date.now(),cwd:d.cwd});e.conversationHistory.push({role:"user",content:f});let m=await this.queryGeminiMultiTurn(e.conversationHistory,n,i,s),h=0;m.content&&(e.conversationHistory.push({role:"assistant",content:m.content}),h=m.tokensUsed||0,e.cumulativeInputTokens+=Math.floor(h*.7),e.cumulativeOutputTokens+=Math.floor(h*.3)),m.content?await ki(m.content,e,this.dbManager,this.sessionManager,r,h,p,"Gemini",u,i):_.warn("SDK","Empty Gemini observation response, skipping processing to preserve message",{sessionId:e.sessionDbId,messageId:e.processingMessageIds[e.processingMessageIds.length-1]})}else if(d.type==="summarize"){if(!e.memorySessionId)throw new Error("Cannot process summary: memorySessionId not yet captured. This session may need to be reinitialized.");let f=Ou({id:e.sessionDbId,memory_session_id:e.memorySessionId,project:e.project,user_prompt:e.userPrompt,last_assistant_message:d.last_assistant_message||""},o);e.conversationHistory.push({role:"user",content:f});let m=await this.queryGeminiMultiTurn(e.conversationHistory,n,i,s),h=0;m.content&&(e.conversationHistory.push({role:"assistant",content:m.content}),h=m.tokensUsed||0,e.cumulativeInputTokens+=Math.floor(h*.7),e.cumulativeOutputTokens+=Math.floor(h*.3)),m.content?await ki(m.content,e,this.dbManager,this.sessionManager,r,h,p,"Gemini",u,i):_.warn("SDK","Empty Gemini summary response, skipping processing to preserve message",{sessionId:e.sessionDbId,messageId:e.processingMessageIds[e.processingMessageIds.length-1]})}}let l=Date.now()-e.startTime;_.success("SDK","Gemini agent completed",{sessionId:e.sessionDbId,duration:`${(l/1e3).toFixed(1)}s`,historyLength:e.conversationHistory.length})}catch(n){if(uf(n))throw _.warn("SDK","Gemini agent aborted",{sessionId:e.sessionDbId}),n;if(cf(n)&&this.fallbackAgent)return _.warn("SDK","Gemini API failed, falling back to Claude SDK",{sessionDbId:e.sessionDbId,error:n instanceof Error?n.message:String(n),historyLength:e.conversationHistory.length}),this.fallbackAgent.startSession(e,r);throw _.failure("SDK","Gemini agent error",{sessionDbId:e.sessionDbId},n),n}}truncateHistory(e){let r=ye.loadFromFile(vt),n=parseInt(r.CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES)||Ibe,i=parseInt(r.CLAUDE_MEM_GEMINI_MAX_TOKENS)||Rbe;if(e.length<=n&&e.reduce((c,u)=>c+Ls(u.content),0)<=i)return e;let s=[],o=0;for(let a=e.length-1;a>=0;a--){let c=e[a],u=Ls(c.content);if(s.length>0&&(s.length>=n||o+u>i)){_.warn("SDK","Context window truncated to prevent runaway costs",{originalMessages:e.length,keptMessages:s.length,droppedMessages:a+1,estimatedTokens:o,tokenLimit:i});break}s.unshift(c),o+=u}return s}conversationToGeminiContents(e){return e.map(r=>({role:r.role==="assistant"?"model":"user",parts:[{text:r.content}]}))}async queryGeminiMultiTurn(e,r,n,i){let s=this.truncateHistory(e),o=this.conversationToGeminiContents(s),a=s.reduce((f,m)=>f+m.content.length,0);_.debug("SDK",`Querying Gemini multi-turn (${n})`,{turns:s.length,totalTurns:e.length,totalChars:a});let c=`${Tbe}/${n}:generateContent?key=${r}`;await Obe(n,i);let u=await fetch(c,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contents:o,generationConfig:{temperature:.3,maxOutputTokens:4096}})});if(!u.ok){let f=await u.text();throw new Error(`Gemini API error: ${u.status} - ${f}`)}let l=await u.json();if(!l.candidates?.[0]?.content?.parts?.[0]?.text)return _.error("SDK","Empty response from Gemini"),{content:""};let d=l.candidates[0].content.parts[0].text,p=l.usageMetadata?.totalTokenCount;return{content:d,tokensUsed:p}}getGeminiConfig(){let e=zy.default.join((0,Ly.homedir)(),".claude-mem","settings.json"),r=ye.loadFromFile(e),n=r.CLAUDE_MEM_GEMINI_API_KEY||Wc("GEMINI_API_KEY")||"",i="gemini-2.5-flash",s=r.CLAUDE_MEM_GEMINI_MODEL||i,o=["gemini-2.5-flash-lite","gemini-2.5-flash","gemini-2.5-pro","gemini-2.0-flash","gemini-2.0-flash-lite","gemini-3-flash","gemini-3-flash-preview"],a;o.includes(s)?a=s:(_.warn("SDK",`Invalid Gemini model "${s}", falling back to ${i}`,{configured:s,validModels:o}),a=i);let c=r.CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED!=="false";return{apiKey:n,model:a,rateLimitingEnabled:c}}};function za(){let t=zy.default.join((0,Ly.homedir)(),".claude-mem","settings.json");return!!(ye.loadFromFile(t).CLAUDE_MEM_GEMINI_API_KEY||Wc("GEMINI_API_KEY"))}function tl(){let t=zy.default.join((0,Ly.homedir)(),".claude-mem","settings.json");return ye.loadFromFile(t).CLAUDE_MEM_PROVIDER==="gemini"}tr();It();te();sn();var Cbe="https://openrouter.ai/api/v1/chat/completions",Pbe=20,Abe=1e5,Nbe=4,Uy=class{dbManager;sessionManager;fallbackAgent=null;constructor(e,r){this.dbManager=e,this.sessionManager=r}setFallbackAgent(e){this.fallbackAgent=e}async startSession(e,r){try{let{apiKey:n,model:i,siteUrl:s,appName:o}=this.getOpenRouterConfig();if(!n)throw new Error("OpenRouter API key not configured. Set CLAUDE_MEM_OPENROUTER_API_KEY in settings or OPENROUTER_API_KEY environment variable.");if(!e.memorySessionId){let p=`openrouter-${e.contentSessionId}-${Date.now()}`;e.memorySessionId=p,this.dbManager.getSessionStore().updateMemorySessionId(e.sessionDbId,p),_.info("SESSION",`MEMORY_ID_GENERATED | sessionDbId=${e.sessionDbId} | provider=OpenRouter`)}let a=He.getInstance().getActiveMode(),c=e.lastPromptNumber===1?Iu(e.project,e.contentSessionId,e.userPrompt,a):Cu(e.userPrompt,e.lastPromptNumber,e.contentSessionId,a);e.conversationHistory.push({role:"user",content:c});let u=await this.queryOpenRouterMultiTurn(e.conversationHistory,n,i,s,o);if(u.content){let p=u.tokensUsed||0;e.cumulativeInputTokens+=Math.floor(p*.7),e.cumulativeOutputTokens+=Math.floor(p*.3),await ki(u.content,e,this.dbManager,this.sessionManager,r,p,null,"OpenRouter",void 0,i)}else _.error("SDK","Empty OpenRouter init response - session may lack context",{sessionId:e.sessionDbId,model:i});let l;for await(let p of this.sessionManager.getMessageIterator(e.sessionDbId)){e.processingMessageIds.push(p._persistentId),p.cwd&&(l=p.cwd);let f=e.earliestPendingTimestamp;if(p.type==="observation"){if(p.prompt_number!==void 0&&(e.lastPromptNumber=p.prompt_number),!e.memorySessionId)throw new Error("Cannot process observations: memorySessionId not yet captured. This session may need to be reinitialized.");let m=Ru({id:0,tool_name:p.tool_name,tool_input:JSON.stringify(p.tool_input),tool_output:JSON.stringify(p.tool_response),created_at_epoch:f??Date.now(),cwd:p.cwd});e.conversationHistory.push({role:"user",content:m});let h=await this.queryOpenRouterMultiTurn(e.conversationHistory,n,i,s,o),g=0;h.content&&(g=h.tokensUsed||0,e.cumulativeInputTokens+=Math.floor(g*.7),e.cumulativeOutputTokens+=Math.floor(g*.3)),await ki(h.content||"",e,this.dbManager,this.sessionManager,r,g,f,"OpenRouter",l,i)}else if(p.type==="summarize"){if(!e.memorySessionId)throw new Error("Cannot process summary: memorySessionId not yet captured. This session may need to be reinitialized.");let m=Ou({id:e.sessionDbId,memory_session_id:e.memorySessionId,project:e.project,user_prompt:e.userPrompt,last_assistant_message:p.last_assistant_message||""},a);e.conversationHistory.push({role:"user",content:m});let h=await this.queryOpenRouterMultiTurn(e.conversationHistory,n,i,s,o),g=0;h.content&&(g=h.tokensUsed||0,e.cumulativeInputTokens+=Math.floor(g*.7),e.cumulativeOutputTokens+=Math.floor(g*.3)),await ki(h.content||"",e,this.dbManager,this.sessionManager,r,g,f,"OpenRouter",l,i)}}let d=Date.now()-e.startTime;_.success("SDK","OpenRouter agent completed",{sessionId:e.sessionDbId,duration:`${(d/1e3).toFixed(1)}s`,historyLength:e.conversationHistory.length,model:i})}catch(n){if(uf(n))throw _.warn("SDK","OpenRouter agent aborted",{sessionId:e.sessionDbId}),n;if(cf(n)&&this.fallbackAgent)return _.warn("SDK","OpenRouter API failed, falling back to Claude SDK",{sessionDbId:e.sessionDbId,error:n instanceof Error?n.message:String(n),historyLength:e.conversationHistory.length}),this.fallbackAgent.startSession(e,r);throw _.failure("SDK","OpenRouter agent error",{sessionDbId:e.sessionDbId},n),n}}estimateTokens(e){return Math.ceil(e.length/Nbe)}truncateHistory(e){let r=ye.loadFromFile(vt),n=parseInt(r.CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES)||Pbe,i=parseInt(r.CLAUDE_MEM_OPENROUTER_MAX_TOKENS)||Abe;if(e.length<=n&&e.reduce((c,u)=>c+this.estimateTokens(u.content),0)<=i)return e;let s=[],o=0;for(let a=e.length-1;a>=0;a--){let c=e[a],u=this.estimateTokens(c.content);if(s.length>=n||o+u>i){_.warn("SDK","Context window truncated to prevent runaway costs",{originalMessages:e.length,keptMessages:s.length,droppedMessages:a+1,estimatedTokens:o,tokenLimit:i});break}s.unshift(c),o+=u}return s}conversationToOpenAIMessages(e){return e.map(r=>({role:r.role==="assistant"?"assistant":"user",content:r.content}))}async queryOpenRouterMultiTurn(e,r,n,i,s){let o=this.truncateHistory(e),a=this.conversationToOpenAIMessages(o),c=o.reduce((m,h)=>m+h.content.length,0),u=this.estimateTokens(o.map(m=>m.content).join(""));_.debug("SDK",`Querying OpenRouter multi-turn (${n})`,{turns:o.length,totalChars:c,estimatedTokens:u});let l=await fetch(Cbe,{method:"POST",headers:{Authorization:`Bearer ${r}`,"HTTP-Referer":i||"https://github.com/thedotmack/claude-mem","X-Title":s||"claude-mem","Content-Type":"application/json"},body:JSON.stringify({model:n,messages:a,temperature:.3,max_tokens:4096})});if(!l.ok){let m=await l.text();throw new Error(`OpenRouter API error: ${l.status} - ${m}`)}let d=await l.json();if(d.error)throw new Error(`OpenRouter API error: ${d.error.code} - ${d.error.message}`);if(!d.choices?.[0]?.message?.content)return _.error("SDK","Empty response from OpenRouter"),{content:""};let p=d.choices[0].message.content,f=d.usage?.total_tokens;if(f){let m=d.usage?.prompt_tokens||0,h=d.usage?.completion_tokens||0,g=m/1e6*3+h/1e6*15;_.info("SDK","OpenRouter API usage",{model:n,inputTokens:m,outputTokens:h,totalTokens:f,estimatedCostUSD:g.toFixed(4),messagesInContext:o.length}),f>5e4&&_.warn("SDK","High token usage detected - consider reducing context",{totalTokens:f,estimatedCost:g.toFixed(4)})}return{content:p,tokensUsed:f}}getOpenRouterConfig(){let e=vt,r=ye.loadFromFile(e),n=r.CLAUDE_MEM_OPENROUTER_API_KEY||Wc("OPENROUTER_API_KEY")||"",i=r.CLAUDE_MEM_OPENROUTER_MODEL||"xiaomi/mimo-v2-flash:free",s=r.CLAUDE_MEM_OPENROUTER_SITE_URL||"",o=r.CLAUDE_MEM_OPENROUTER_APP_NAME||"claude-mem";return{apiKey:n,model:i,siteUrl:s,appName:o}}};function La(){let t=vt;return!!(ye.loadFromFile(t).CLAUDE_MEM_OPENROUTER_API_KEY||Wc("OPENROUTER_API_KEY"))}function rl(){let t=vt;return ye.loadFromFile(t).CLAUDE_MEM_PROVIDER==="openrouter"}te();var Fy=class{dbManager;constructor(e){this.dbManager=e}stripProjectPath(e,r){let n=`/${r}/`,i=e.indexOf(n);return i!==-1?e.substring(i+n.length):e}stripProjectPaths(e,r){if(!e)return e;try{let i=JSON.parse(e).map(s=>this.stripProjectPath(s,r));return JSON.stringify(i)}catch(n){return _.debug("WORKER","File paths is plain string, using as-is",{},n),e}}sanitizeObservation(e){return{...e,files_read:this.stripProjectPaths(e.files_read,e.project),files_modified:this.stripProjectPaths(e.files_modified,e.project)}}getObservations(e,r,n,i){let s=this.dbManager.getSessionStore().db,o=` + SELECT + o.id, + o.memory_session_id, + o.project, + COALESCE(s.platform_source, 'claude') as platform_source, + o.type, + o.title, + o.subtitle, + o.narrative, + o.text, + o.facts, + o.concepts, + o.files_read, + o.files_modified, + o.prompt_number, + o.created_at, + o.created_at_epoch + FROM observations o + LEFT JOIN sdk_sessions s ON o.memory_session_id = s.memory_session_id + `,a=[],c=[];n&&(c.push("o.project = ?"),a.push(n)),i&&(c.push("COALESCE(s.platform_source, 'claude') = ?"),a.push(i)),c.length>0&&(o+=` WHERE ${c.join(" AND ")}`),o+=" ORDER BY o.created_at_epoch DESC LIMIT ? OFFSET ?",a.push(r+1,e);let u=s.prepare(o).all(...a),l={items:u.slice(0,r),hasMore:u.length>r,offset:e,limit:r};return{...l,items:l.items.map(d=>this.sanitizeObservation(d))}}getSummaries(e,r,n,i){let s=this.dbManager.getSessionStore().db,o=` + SELECT + ss.id, + s.content_session_id as session_id, + COALESCE(s.platform_source, 'claude') as platform_source, + ss.request, + ss.investigated, + ss.learned, + ss.completed, + ss.next_steps, + ss.project, + ss.created_at, + ss.created_at_epoch + FROM session_summaries ss + JOIN sdk_sessions s ON ss.memory_session_id = s.memory_session_id + `,a=[],c=[];n&&(c.push("ss.project = ?"),a.push(n)),i&&(c.push("COALESCE(s.platform_source, 'claude') = ?"),a.push(i)),c.length>0&&(o+=` WHERE ${c.join(" AND ")}`),o+=" ORDER BY ss.created_at_epoch DESC LIMIT ? OFFSET ?",a.push(r+1,e);let l=s.prepare(o).all(...a);return{items:l.slice(0,r),hasMore:l.length>r,offset:e,limit:r}}getPrompts(e,r,n,i){let s=this.dbManager.getSessionStore().db,o=` + SELECT + up.id, + up.content_session_id, + s.project, + COALESCE(s.platform_source, 'claude') as platform_source, + up.prompt_number, + up.prompt_text, + up.created_at, + up.created_at_epoch + FROM user_prompts up + JOIN sdk_sessions s ON up.content_session_id = s.content_session_id + `,a=[],c=[];n&&(c.push("s.project = ?"),a.push(n)),i&&(c.push("COALESCE(s.platform_source, 'claude') = ?"),a.push(i)),c.length>0&&(o+=` WHERE ${c.join(" AND ")}`),o+=" ORDER BY up.created_at_epoch DESC LIMIT ? OFFSET ?",a.push(r+1,e);let l=s.prepare(o).all(...a);return{items:l.slice(0,r),hasMore:l.length>r,offset:e,limit:r}}paginate(e,r,n,i,s){let o=this.dbManager.getSessionStore().db,a=`SELECT ${r} FROM ${e}`,c=[];s&&(a+=" WHERE project = ?",c.push(s)),a+=" ORDER BY created_at_epoch DESC LIMIT ? OFFSET ?",c.push(i+1,n);let l=o.prepare(a).all(...c);return{items:l.slice(0,i),hasMore:l.length>i,offset:n,limit:i}}};te();var qy=class{dbManager;defaultSettings={sidebarOpen:!0,selectedProject:null,theme:"system"};constructor(e){this.dbManager=e}getSettings(){let e=this.dbManager.getSessionStore().db;try{let n=e.prepare("SELECT key, value FROM viewer_settings").all(),i={...this.defaultSettings};for(let s of n){let o=s.key;o in i&&(i[o]=JSON.parse(s.value))}return i}catch(r){return _.debug("WORKER","Failed to load settings, using defaults",{},r),{...this.defaultSettings}}}updateSettings(e){let n=this.dbManager.getSessionStore().db.prepare(` + INSERT OR REPLACE INTO viewer_settings (key, value) + VALUES (?, ?) + `);for(let[i,s]of Object.entries(e))n.run(i,JSON.stringify(s));return this.getSettings()}};var v8=require("path");te();Fs();sn();var Ks=class{emptyResult(e){return{results:{observations:[],sessions:[],prompts:[]},usedChroma:e==="chroma"||e==="hybrid",fellBack:!1,strategy:e}}};var Lt={RECENCY_WINDOW_DAYS:90,RECENCY_WINDOW_MS:7776e6,DEFAULT_LIMIT:20,CHROMA_BATCH_SIZE:100};te();var Af=class extends Ks{constructor(r,n){super();this.chromaSync=r;this.sessionStore=n}name="chroma";canHandle(r){return!!r.query&&!!this.chromaSync}async search(r){let{query:n,searchType:i="all",obsType:s,concepts:o,files:a,limit:c=Lt.DEFAULT_LIMIT,project:u,orderBy:l="date_desc"}=r;if(!n)return this.emptyResult("chroma");let d=i==="all"||i==="observations",p=i==="all"||i==="sessions",f=i==="all"||i==="prompts",m=[],h=[],g=[];try{let v=this.buildWhereFilter(i,u);_.debug("SEARCH","ChromaSearchStrategy: Querying Chroma",{query:n,searchType:i});let y=await this.chromaSync.queryChroma(n,Lt.CHROMA_BATCH_SIZE,v);if(_.debug("SEARCH","ChromaSearchStrategy: Chroma returned matches",{matchCount:y.ids.length}),y.ids.length===0)return{results:{observations:[],sessions:[],prompts:[]},usedChroma:!0,fellBack:!1,strategy:"chroma"};let b=this.filterByRecency(y);_.debug("SEARCH","ChromaSearchStrategy: Filtered by recency",{count:b.length});let S=this.categorizeByDocType(b,{searchObservations:d,searchSessions:p,searchPrompts:f});if(S.obsIds.length>0){let x={type:s,concepts:o,files:a,orderBy:l,limit:c,project:u};m=this.sessionStore.getObservationsByIds(S.obsIds,x)}return S.sessionIds.length>0&&(h=this.sessionStore.getSessionSummariesByIds(S.sessionIds,{orderBy:l,limit:c,project:u})),S.promptIds.length>0&&(g=this.sessionStore.getUserPromptsByIds(S.promptIds,{orderBy:l,limit:c,project:u})),_.debug("SEARCH","ChromaSearchStrategy: Hydrated results",{observations:m.length,sessions:h.length,prompts:g.length}),{results:{observations:m,sessions:h,prompts:g},usedChroma:!0,fellBack:!1,strategy:"chroma"}}catch(v){return _.error("SEARCH","ChromaSearchStrategy: Search failed",{},v),{results:{observations:[],sessions:[],prompts:[]},usedChroma:!1,fellBack:!1,strategy:"chroma"}}}buildWhereFilter(r,n){let i;switch(r){case"observations":i={doc_type:"observation"};break;case"sessions":i={doc_type:"session_summary"};break;case"prompts":i={doc_type:"user_prompt"};break;default:i=void 0}if(n){let s={project:n};return i?{$and:[i,s]}:s}return i}filterByRecency(r){let n=Date.now()-Lt.RECENCY_WINDOW_MS,i=new Map;for(let s of r.metadatas)s?.sqlite_id!==void 0&&!i.has(s.sqlite_id)&&i.set(s.sqlite_id,s);return r.ids.map(s=>({id:s,meta:i.get(s)})).filter(s=>s.meta&&s.meta.created_at_epoch>n)}categorizeByDocType(r,n){let i=[],s=[],o=[];for(let a of r){let c=a.meta?.doc_type;c==="observation"&&n.searchObservations?i.push(a.id):c==="session_summary"&&n.searchSessions?s.push(a.id):c==="user_prompt"&&n.searchPrompts&&o.push(a.id)}return{obsIds:i,sessionIds:s,promptIds:o}}};te();var Nf=class extends Ks{constructor(r){super();this.sessionSearch=r}name="sqlite";canHandle(r){return!r.query||r.strategyHint==="sqlite"}async search(r){let{searchType:n="all",obsType:i,concepts:s,files:o,limit:a=Lt.DEFAULT_LIMIT,offset:c=0,project:u,dateRange:l,orderBy:d="date_desc"}=r,p=n==="all"||n==="observations",f=n==="all"||n==="sessions",m=n==="all"||n==="prompts",h=[],g=[],v=[],y={limit:a,offset:c,orderBy:d,project:u,dateRange:l};_.debug("SEARCH","SQLiteSearchStrategy: Filter-only query",{searchType:n,hasDateRange:!!l,hasProject:!!u});try{if(p){let b={...y,type:i,concepts:s,files:o};h=this.sessionSearch.searchObservations(void 0,b)}return f&&(g=this.sessionSearch.searchSessions(void 0,y)),m&&(v=this.sessionSearch.searchUserPrompts(void 0,y)),_.debug("SEARCH","SQLiteSearchStrategy: Results",{observations:h.length,sessions:g.length,prompts:v.length}),{results:{observations:h,sessions:g,prompts:v},usedChroma:!1,fellBack:!1,strategy:"sqlite"}}catch(b){return _.error("SEARCH","SQLiteSearchStrategy: Search failed",{},b),this.emptyResult("sqlite")}}findByConcept(r,n){let{limit:i=Lt.DEFAULT_LIMIT,project:s,dateRange:o,orderBy:a="date_desc"}=n;return this.sessionSearch.findByConcept(r,{limit:i,project:s,dateRange:o,orderBy:a})}findByType(r,n){let{limit:i=Lt.DEFAULT_LIMIT,project:s,dateRange:o,orderBy:a="date_desc"}=n;return this.sessionSearch.findByType(r,{limit:i,project:s,dateRange:o,orderBy:a})}findByFile(r,n){let{limit:i=Lt.DEFAULT_LIMIT,project:s,dateRange:o,orderBy:a="date_desc"}=n;return this.sessionSearch.findByFile(r,{limit:i,project:s,dateRange:o,orderBy:a})}};te();var Mf=class extends Ks{constructor(r,n,i){super();this.chromaSync=r;this.sessionStore=n;this.sessionSearch=i}name="hybrid";canHandle(r){return!!this.chromaSync&&(!!r.concepts||!!r.files||!!r.type&&!!r.query||r.strategyHint==="hybrid")}async search(r){let{query:n,limit:i=Lt.DEFAULT_LIMIT,project:s}=r;return n?this.emptyResult("hybrid"):this.emptyResult("hybrid")}async findByConcept(r,n){let{limit:i=Lt.DEFAULT_LIMIT,project:s,dateRange:o,orderBy:a}=n,c={limit:i,project:s,dateRange:o,orderBy:a};try{_.debug("SEARCH","HybridSearchStrategy: findByConcept",{concept:r});let u=this.sessionSearch.findByConcept(r,c);if(_.debug("SEARCH","HybridSearchStrategy: Found metadata matches",{count:u.length}),u.length===0)return this.emptyResult("hybrid");let l=u.map(f=>f.id),d=await this.chromaSync.queryChroma(r,Math.min(l.length,Lt.CHROMA_BATCH_SIZE)),p=this.intersectWithRanking(l,d.ids);if(_.debug("SEARCH","HybridSearchStrategy: Ranked by semantic relevance",{count:p.length}),p.length>0){let f=this.sessionStore.getObservationsByIds(p,{limit:i});return f.sort((m,h)=>p.indexOf(m.id)-p.indexOf(h.id)),{results:{observations:f,sessions:[],prompts:[]},usedChroma:!0,fellBack:!1,strategy:"hybrid"}}return this.emptyResult("hybrid")}catch(u){return _.error("SEARCH","HybridSearchStrategy: findByConcept failed",{},u),{results:{observations:this.sessionSearch.findByConcept(r,c),sessions:[],prompts:[]},usedChroma:!1,fellBack:!0,strategy:"hybrid"}}}async findByType(r,n){let{limit:i=Lt.DEFAULT_LIMIT,project:s,dateRange:o,orderBy:a}=n,c={limit:i,project:s,dateRange:o,orderBy:a},u=Array.isArray(r)?r.join(", "):r;try{_.debug("SEARCH","HybridSearchStrategy: findByType",{type:u});let l=this.sessionSearch.findByType(r,c);if(_.debug("SEARCH","HybridSearchStrategy: Found metadata matches",{count:l.length}),l.length===0)return this.emptyResult("hybrid");let d=l.map(m=>m.id),p=await this.chromaSync.queryChroma(u,Math.min(d.length,Lt.CHROMA_BATCH_SIZE)),f=this.intersectWithRanking(d,p.ids);if(_.debug("SEARCH","HybridSearchStrategy: Ranked by semantic relevance",{count:f.length}),f.length>0){let m=this.sessionStore.getObservationsByIds(f,{limit:i});return m.sort((h,g)=>f.indexOf(h.id)-f.indexOf(g.id)),{results:{observations:m,sessions:[],prompts:[]},usedChroma:!0,fellBack:!1,strategy:"hybrid"}}return this.emptyResult("hybrid")}catch(l){return _.error("SEARCH","HybridSearchStrategy: findByType failed",{},l),{results:{observations:this.sessionSearch.findByType(r,c),sessions:[],prompts:[]},usedChroma:!1,fellBack:!0,strategy:"hybrid"}}}async findByFile(r,n){let{limit:i=Lt.DEFAULT_LIMIT,project:s,dateRange:o,orderBy:a}=n,c={limit:i,project:s,dateRange:o,orderBy:a};try{_.debug("SEARCH","HybridSearchStrategy: findByFile",{filePath:r});let u=this.sessionSearch.findByFile(r,c);_.debug("SEARCH","HybridSearchStrategy: Found file matches",{observations:u.observations.length,sessions:u.sessions.length});let l=u.sessions;if(u.observations.length===0)return{observations:[],sessions:l,usedChroma:!1};let d=u.observations.map(m=>m.id),p=await this.chromaSync.queryChroma(r,Math.min(d.length,Lt.CHROMA_BATCH_SIZE)),f=this.intersectWithRanking(d,p.ids);if(_.debug("SEARCH","HybridSearchStrategy: Ranked observations",{count:f.length}),f.length>0){let m=this.sessionStore.getObservationsByIds(f,{limit:i});return m.sort((h,g)=>f.indexOf(h.id)-f.indexOf(g.id)),{observations:m,sessions:l,usedChroma:!0}}return{observations:[],sessions:l,usedChroma:!1}}catch(u){_.error("SEARCH","HybridSearchStrategy: findByFile failed",{},u);let l=this.sessionSearch.findByFile(r,c);return{observations:l.observations,sessions:l.sessions,usedChroma:!1}}}intersectWithRanking(r,n){let i=new Set(r),s=[];for(let o of n)i.has(o)&&!s.includes(o)&&s.push(o);return s}};sn();Fs();var Mbe=4,Df=class{formatSearchResults(e,r,n=!1){let i=e.observations.length+e.sessions.length+e.prompts.length;if(i===0)return n?this.formatChromaFailureMessage():`No results found matching "${r}"`;let s=this.combineResults(e);s.sort((u,l)=>l.epoch-u.epoch);let o=process.cwd(),a=Us(s,u=>u.created_at),c=[];c.push(`Found ${i} result(s) matching "${r}" (${e.observations.length} obs, ${e.sessions.length} sessions, ${e.prompts.length} prompts)`),c.push("");for(let[u,l]of a){c.push(`### ${u}`),c.push("");let d=new Map;for(let p of l){let f="General";if(p.type==="observation"){let m=p.data;f=wi(m.files_modified,o,m.files_read)}d.has(f)||d.set(f,[]),d.get(f).push(p)}for(let[p,f]of d){c.push(`**${p}**`),c.push(this.formatSearchTableHeader());let m="";for(let h of f)if(h.type==="observation"){let g=this.formatObservationSearchRow(h.data,m);c.push(g.row),m=g.time}else if(h.type==="session"){let g=this.formatSessionSearchRow(h.data,m);c.push(g.row),m=g.time}else{let g=this.formatPromptSearchRow(h.data,m);c.push(g.row),m=g.time}c.push("")}}return c.join(` +`)}combineResults(e){return[...e.observations.map(r=>({type:"observation",data:r,epoch:r.created_at_epoch,created_at:r.created_at})),...e.sessions.map(r=>({type:"session",data:r,epoch:r.created_at_epoch,created_at:r.created_at})),...e.prompts.map(r=>({type:"prompt",data:r,epoch:r.created_at_epoch,created_at:r.created_at}))]}formatSearchTableHeader(){return`| ID | Time | T | Title | Read | +|----|------|---|-------|------|`}formatTableHeader(){return`| ID | Time | T | Title | Read | Work | +|-----|------|---|-------|------|------|`}formatObservationSearchRow(e,r){let n=`#${e.id}`,i=gr(e.created_at_epoch),s=He.getInstance().getTypeIcon(e.type),o=e.title||"Untitled",a=this.estimateReadTokens(e);return{row:`| ${n} | ${i===r?'"':i} | ${s} | ${o} | ~${a} |`,time:i}}formatSessionSearchRow(e,r){let n=`#S${e.id}`,i=gr(e.created_at_epoch),s="\u{1F3AF}",o=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return{row:`| ${n} | ${i===r?'"':i} | ${s} | ${o} | - |`,time:i}}formatPromptSearchRow(e,r){let n=`#P${e.id}`,i=gr(e.created_at_epoch),s="\u{1F4AC}",o=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return{row:`| ${n} | ${i===r?'"':i} | ${s} | ${o} | - |`,time:i}}formatObservationIndex(e,r){let n=`#${e.id}`,i=gr(e.created_at_epoch),s=He.getInstance().getTypeIcon(e.type),o=e.title||"Untitled",a=this.estimateReadTokens(e),c=He.getInstance().getWorkEmoji(e.type),u=e.discovery_tokens||0,l=u>0?`${c} ${u}`:"-";return`| ${n} | ${i} | ${s} | ${o} | ~${a} | ${l} |`}formatSessionIndex(e,r){let n=`#S${e.id}`,i=gr(e.created_at_epoch),s="\u{1F3AF}",o=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return`| ${n} | ${i} | ${s} | ${o} | - | - |`}formatPromptIndex(e,r){let n=`#P${e.id}`,i=gr(e.created_at_epoch),s="\u{1F4AC}",o=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return`| ${n} | ${i} | ${s} | ${o} | - | - |`}estimateReadTokens(e){let r=(e.title?.length||0)+(e.subtitle?.length||0)+(e.narrative?.length||0)+(e.facts?.length||0);return Math.ceil(r/Mbe)}formatChromaFailureMessage(){return`Vector search failed - semantic search unavailable. + +To enable semantic search: +1. Install uv: https://docs.astral.sh/uv/getting-started/installation/ +2. Restart the worker: npm run worker:restart + +Note: You can still use filter-only searches (date ranges, types, files) without a query term.`}formatSearchTips(){return` +--- +Search Strategy: +1. Search with index to see titles, dates, IDs +2. Use timeline to get context around interesting results +3. Batch fetch full details: get_observations(ids=[...]) + +Tips: +- Filter by type: obs_type="bugfix,feature" +- Filter by date: dateStart="2025-01-01" +- Sort: orderBy="date_desc" or "date_asc"`}};sn();Fs();var Ua=class{buildTimeline(e){let r=[...e.observations.map(n=>({type:"observation",data:n,epoch:n.created_at_epoch})),...e.sessions.map(n=>({type:"session",data:n,epoch:n.created_at_epoch})),...e.prompts.map(n=>({type:"prompt",data:n,epoch:n.created_at_epoch}))];return r.sort((n,i)=>n.epoch-i.epoch),r}filterByDepth(e,r,n,i,s){if(e.length===0)return e;let o=this.findAnchorIndex(e,r,n);if(o===-1)return e;let a=Math.max(0,o-i),c=Math.min(e.length,o+s+1);return e.slice(a,c)}findAnchorIndex(e,r,n){if(typeof r=="number")return e.findIndex(s=>s.type==="observation"&&s.data.id===r);if(typeof r=="string"&&r.startsWith("S")){let s=parseInt(r.slice(1),10);return e.findIndex(o=>o.type==="session"&&o.data.id===s)}let i=e.findIndex(s=>s.epoch>=n);return i===-1?e.length-1:i}formatTimeline(e,r,n={}){let{query:i,depthBefore:s,depthAfter:o,cwd:a=process.cwd()}=n;if(e.length===0)return i?`Found observation matching "${i}", but no timeline context available.`:"No timeline items found";let c=[];if(i&&r){let d=e.find(f=>f.type==="observation"&&f.data.id===r),p=d?d.data.title||"Untitled":"Unknown";c.push(`# Timeline for query: "${i}"`),c.push(`**Anchor:** Observation #${r} - ${p}`)}else r?c.push(`# Timeline around anchor: ${r}`):c.push("# Timeline");s!==void 0&&o!==void 0?c.push(`**Window:** ${s} records before -> ${o} records after | **Items:** ${e.length}`):c.push(`**Items:** ${e.length}`),c.push("");let u=this.groupByDay(e),l=this.sortDaysChronologically(u);for(let[d,p]of l){c.push(`### ${d}`),c.push("");let f=null,m="",h=!1;for(let g of p){let v=this.isAnchorItem(g,r);if(g.type==="session"){h&&(c.push(""),h=!1,f=null,m="");let y=g.data,b=y.request||"Session summary",S=v?" <- **ANCHOR**":"";c.push(`**\u{1F3AF} #S${y.id}** ${b} (${Mn(g.epoch)})${S}`),c.push("")}else if(g.type==="prompt"){h&&(c.push(""),h=!1,f=null,m="");let y=g.data,b=y.prompt_text.length>100?y.prompt_text.substring(0,100)+"...":y.prompt_text;c.push(`**\u{1F4AC} User Prompt #${y.prompt_number}** (${Mn(g.epoch)})`),c.push(`> ${b}`),c.push("")}else if(g.type==="observation"){let y=g.data,b=wi(y.files_modified,a,y.files_read);b!==f&&(h&&c.push(""),c.push(`**${b}**`),c.push("| ID | Time | T | Title | Tokens |"),c.push("|----|------|---|-------|--------|"),f=b,h=!0,m="");let S=He.getInstance().getTypeIcon(y.type),x=gr(g.epoch),w=y.title||"Untitled",E=Ls(y.narrative),I=x!==m?x:'"';m=x;let P=v?" <- **ANCHOR**":"";c.push(`| #${y.id} | ${I} | ${S} | ${w}${P} | ~${E} |`)}}h&&c.push("")}return c.join(` +`)}groupByDay(e){let r=new Map;for(let n of e){let i=zs(n.epoch);r.has(i)||r.set(i,[]),r.get(i).push(n)}return r}sortDaysChronologically(e){return Array.from(e.entries()).sort((r,n)=>{let i=new Date(r[0]).getTime(),s=new Date(n[0]).getTime();return i-s})}isAnchorItem(e,r){return r===null?!1:typeof r=="number"&&e.type==="observation"?e.data.id===r:typeof r=="string"&&r.startsWith("S")&&e.type==="session"?`S${e.data.id}`===r:!1}};te();var jf=class{constructor(e,r,n){this.sessionSearch=e;this.sessionStore=r;this.chromaSync=n;this.sqliteStrategy=new Nf(e),n&&(this.chromaStrategy=new Af(n,r),this.hybridStrategy=new Mf(n,r,e)),this.resultFormatter=new Df,this.timelineBuilder=new Ua}chromaStrategy=null;sqliteStrategy;hybridStrategy=null;resultFormatter;timelineBuilder;async search(e){let r=this.normalizeParams(e);return await this.executeWithFallback(r)}async executeWithFallback(e){if(!e.query)return _.debug("SEARCH","Orchestrator: Filter-only query, using SQLite",{}),await this.sqliteStrategy.search(e);if(this.chromaStrategy){_.debug("SEARCH","Orchestrator: Using Chroma semantic search",{});let r=await this.chromaStrategy.search(e);return r.usedChroma?r:(_.debug("SEARCH","Orchestrator: Chroma failed, falling back to SQLite",{}),{...await this.sqliteStrategy.search({...e,query:void 0}),fellBack:!0})}return _.debug("SEARCH","Orchestrator: Chroma not available",{}),{results:{observations:[],sessions:[],prompts:[]},usedChroma:!1,fellBack:!1,strategy:"sqlite"}}async findByConcept(e,r){let n=this.normalizeParams(r);return this.hybridStrategy?await this.hybridStrategy.findByConcept(e,n):{results:{observations:this.sqliteStrategy.findByConcept(e,n),sessions:[],prompts:[]},usedChroma:!1,fellBack:!1,strategy:"sqlite"}}async findByType(e,r){let n=this.normalizeParams(r);return this.hybridStrategy?await this.hybridStrategy.findByType(e,n):{results:{observations:this.sqliteStrategy.findByType(e,n),sessions:[],prompts:[]},usedChroma:!1,fellBack:!1,strategy:"sqlite"}}async findByFile(e,r){let n=this.normalizeParams(r);return this.hybridStrategy?await this.hybridStrategy.findByFile(e,n):{...this.sqliteStrategy.findByFile(e,n),usedChroma:!1}}getTimeline(e,r,n,i,s){let o=this.timelineBuilder.buildTimeline(e);return this.timelineBuilder.filterByDepth(o,r,n,i,s)}formatTimeline(e,r,n={}){return this.timelineBuilder.formatTimeline(e,r,n)}formatSearchResults(e,r,n=!1){return this.resultFormatter.formatSearchResults(e,r,n)}getFormatter(){return this.resultFormatter}getTimelineBuilder(){return this.timelineBuilder}normalizeParams(e){let r={...e};return r.concepts&&typeof r.concepts=="string"&&(r.concepts=r.concepts.split(",").map(n=>n.trim()).filter(Boolean)),r.files&&typeof r.files=="string"&&(r.files=r.files.split(",").map(n=>n.trim()).filter(Boolean)),r.obs_type&&typeof r.obs_type=="string"&&(r.obsType=r.obs_type.split(",").map(n=>n.trim()).filter(Boolean),delete r.obs_type),r.type&&typeof r.type=="string"&&r.type.includes(",")&&(r.type=r.type.split(",").map(n=>n.trim()).filter(Boolean)),r.type&&!r.searchType&&["observations","sessions","prompts"].includes(r.type)&&(r.searchType=r.type,delete r.type),(r.dateStart||r.dateEnd)&&(r.dateRange={start:r.dateStart,end:r.dateEnd},delete r.dateStart,delete r.dateEnd),r}isChromaAvailable(){return!!this.chromaSync}};var Hy=class{constructor(e,r,n,i,s){this.sessionSearch=e;this.sessionStore=r;this.chromaSync=n;this.formatter=i;this.timelineService=s;this.orchestrator=new jf(e,r,n),this.timelineBuilder=new Ua}orchestrator;timelineBuilder;async queryChroma(e,r,n){return this.chromaSync?await this.chromaSync.queryChroma(e,r,n):{ids:[],distances:[],metadatas:[]}}normalizeParams(e){let r={...e};return r.filePath&&!r.files&&(r.files=r.filePath,delete r.filePath),r.concepts&&typeof r.concepts=="string"&&(r.concepts=r.concepts.split(",").map(n=>n.trim()).filter(Boolean)),r.files&&typeof r.files=="string"&&(r.files=r.files.split(",").map(n=>n.trim()).filter(Boolean)),r.obs_type&&typeof r.obs_type=="string"&&(r.obs_type=r.obs_type.split(",").map(n=>n.trim()).filter(Boolean)),r.type&&typeof r.type=="string"&&r.type.includes(",")&&(r.type=r.type.split(",").map(n=>n.trim()).filter(Boolean)),(r.dateStart||r.dateEnd)&&(r.dateRange={start:r.dateStart,end:r.dateEnd},delete r.dateStart,delete r.dateEnd),r.isFolder==="true"?r.isFolder=!0:r.isFolder==="false"&&(r.isFolder=!1),r}async search(e){let r=this.normalizeParams(e),{query:n,type:i,obs_type:s,concepts:o,files:a,format:c,...u}=r,l=[],d=[],p=[],f=!1,m=!i||i==="observations",h=!i||i==="sessions",g=!i||i==="prompts";if(n)if(this.chromaSync){let E=!1;_.debug("SEARCH","Using ChromaDB semantic search",{typeFilter:i||"all"});let T;if(i==="observations"?T={doc_type:"observation"}:i==="sessions"?T={doc_type:"session_summary"}:i==="prompts"&&(T={doc_type:"user_prompt"}),u.project){let P={project:u.project};T=T?{$and:[T,P]}:P}let I=await this.queryChroma(n,100,T);if(E=!0,_.debug("SEARCH","ChromaDB returned semantic matches",{matchCount:I.ids.length}),I.ids.length>0){let{dateRange:P}=u,N,L;P?(P.start&&(N=typeof P.start=="number"?P.start:new Date(P.start).getTime()),P.end&&(L=typeof P.end=="number"?P.end:new Date(P.end).getTime())):N=Date.now()-Lt.RECENCY_WINDOW_MS;let G=I.metadatas.map((Le,kt)=>({id:I.ids[kt],meta:Le,isRecent:Le&&Le.created_at_epoch!=null&&(!N||Le.created_at_epoch>=N)&&(!L||Le.created_at_epoch<=L)})).filter(Le=>Le.isRecent);_.debug("SEARCH",P?"Results within user date range":"Results within 90-day window",{count:G.length});let j=[],ae=[],Me=[];for(let Le of G){let kt=Le.meta?.doc_type;kt==="observation"&&m?j.push(Le.id):kt==="session_summary"&&h?ae.push(Le.id):kt==="user_prompt"&&g&&Me.push(Le.id)}if(_.debug("SEARCH","Categorized results by type",{observations:j.length,sessions:ae.length,prompts:p.length}),j.length>0){let Le={...u,type:s,concepts:o,files:a};l=this.sessionStore.getObservationsByIds(j,Le)}ae.length>0&&(d=this.sessionStore.getSessionSummariesByIds(ae,{orderBy:"date_desc",limit:u.limit,project:u.project})),Me.length>0&&(p=this.sessionStore.getUserPromptsByIds(Me,{orderBy:"date_desc",limit:u.limit,project:u.project})),_.debug("SEARCH","Hydrated results from SQLite",{observations:l.length,sessions:d.length,prompts:p.length})}else _.debug("SEARCH","ChromaDB found no matches (final result, no FTS5 fallback)",{})}else n&&(f=!0,_.debug("SEARCH","ChromaDB not initialized - semantic search unavailable",{}),_.debug("SEARCH","Install UVX/Python to enable vector search",{url:"https://docs.astral.sh/uv/getting-started/installation/"}),l=[],d=[],p=[]);else{_.debug("SEARCH","Filter-only query (no query text), using direct SQLite filtering",{enablesDateFilters:!0});let E={...u,type:s,concepts:o,files:a};m&&(l=this.sessionSearch.searchObservations(void 0,E)),h&&(d=this.sessionSearch.searchSessions(void 0,u)),g&&(p=this.sessionSearch.searchUserPrompts(void 0,u))}let v=l.length+d.length+p.length;if(c==="json")return{observations:l,sessions:d,prompts:p,totalResults:v,query:n||""};if(v===0)return f?{content:[{type:"text",text:`Vector search failed - semantic search unavailable. + +To enable semantic search: +1. Install uv: https://docs.astral.sh/uv/getting-started/installation/ +2. Restart the worker: npm run worker:restart + +Note: You can still use filter-only searches (date ranges, types, files) without a query term.`}]}:{content:[{type:"text",text:`No results found matching "${n}"`}]};let y=[...l.map(E=>({type:"observation",data:E,epoch:E.created_at_epoch,created_at:E.created_at})),...d.map(E=>({type:"session",data:E,epoch:E.created_at_epoch,created_at:E.created_at})),...p.map(E=>({type:"prompt",data:E,epoch:E.created_at_epoch,created_at:E.created_at}))];u.orderBy==="date_desc"?y.sort((E,T)=>T.epoch-E.epoch):u.orderBy==="date_asc"&&y.sort((E,T)=>E.epoch-T.epoch);let b=y.slice(0,u.limit||20),S=process.cwd(),x=Us(b,E=>E.created_at),w=[];w.push(`Found ${v} result(s) matching "${n}" (${l.length} obs, ${d.length} sessions, ${p.length} prompts)`),w.push("");for(let[E,T]of x){w.push(`### ${E}`),w.push("");let I=new Map;for(let P of T){let N="General";P.type==="observation"&&(N=wi(P.data.files_modified,S,P.data.files_read)),I.has(N)||I.set(N,[]),I.get(N).push(P)}for(let[P,N]of I){w.push(`**${P}**`),w.push(this.formatter.formatSearchTableHeader());let L="";for(let G of N)if(G.type==="observation"){let j=this.formatter.formatObservationSearchRow(G.data,L);w.push(j.row),L=j.time}else if(G.type==="session"){let j=this.formatter.formatSessionSearchRow(G.data,L);w.push(j.row),L=j.time}else{let j=this.formatter.formatUserPromptSearchRow(G.data,L);w.push(j.row),L=j.time}w.push("")}}return{content:[{type:"text",text:w.join(` +`)}]}}async timeline(e){let{anchor:r,query:n,depth_before:i=10,depth_after:s=10,project:o}=e,a=process.cwd();if(!r&&!n)return{content:[{type:"text",text:'Error: Must provide either "anchor" or "query" parameter'}],isError:!0};if(r&&n)return{content:[{type:"text",text:'Error: Cannot provide both "anchor" and "query" parameters. Use one or the other.'}],isError:!0};let c,u,l;if(n){let g=[];if(this.chromaSync)try{_.debug("SEARCH","Using hybrid semantic search for timeline query",{});let y=await this.queryChroma(n,100);if(_.debug("SEARCH","Chroma returned semantic matches for timeline",{matchCount:y?.ids?.length??0}),y?.ids&&y.ids.length>0){let b=Date.now()-Lt.RECENCY_WINDOW_MS,S=y.ids.filter((x,w)=>{let E=y.metadatas[w];return E&&E.created_at_epoch>b});S.length>0&&(g=this.sessionStore.getObservationsByIds(S,{orderBy:"date_desc",limit:1}))}}catch(y){_.error("SEARCH","Chroma search failed for timeline, continuing without semantic results",{},y)}if(g.length===0)return{content:[{type:"text",text:`No observations found matching "${n}". Try a different search query.`}]};let v=g[0];c=v.id,u=v.created_at_epoch,_.debug("SEARCH","Query mode: Using observation as timeline anchor",{observationId:v.id}),l=this.sessionStore.getTimelineAroundObservation(v.id,v.created_at_epoch,i,s,o)}else if(typeof r=="number"){let g=this.sessionStore.getObservationById(r);if(!g)return{content:[{type:"text",text:`Observation #${r} not found`}],isError:!0};c=r,u=g.created_at_epoch,l=this.sessionStore.getTimelineAroundObservation(r,u,i,s,o)}else if(typeof r=="string")if(r.startsWith("S")||r.startsWith("#S")){let g=r.replace(/^#?S/,""),v=parseInt(g,10),y=this.sessionStore.getSessionSummariesByIds([v]);if(y.length===0)return{content:[{type:"text",text:`Session #${v} not found`}],isError:!0};u=y[0].created_at_epoch,c=`S${v}`,l=this.sessionStore.getTimelineAroundTimestamp(u,i,s,o)}else{let g=new Date(r);if(isNaN(g.getTime()))return{content:[{type:"text",text:`Invalid timestamp: ${r}`}],isError:!0};u=g.getTime(),c=r,l=this.sessionStore.getTimelineAroundTimestamp(u,i,s,o)}else return{content:[{type:"text",text:'Invalid anchor: must be observation ID (number), session ID (e.g., "S123"), or ISO timestamp'}],isError:!0};let d=[...(l.observations||[]).map(g=>({type:"observation",data:g,epoch:g.created_at_epoch})),...(l.sessions||[]).map(g=>({type:"session",data:g,epoch:g.created_at_epoch})),...(l.prompts||[]).map(g=>({type:"prompt",data:g,epoch:g.created_at_epoch}))];d.sort((g,v)=>g.epoch-v.epoch);let p=this.timelineService.filterByDepth(d,c,u,i,s);if(!p||p.length===0)return{content:[{type:"text",text:n?`Found observation matching "${n}", but no timeline context available (${i} records before, ${s} records after).`:`No context found around anchor (${i} records before, ${s} records after)`}]};let f=[];if(n){let g=p.find(y=>y.type==="observation"&&y.data.id===c),v=g&&g.type==="observation"?g.data.title||"Untitled":"Unknown";f.push(`# Timeline for query: "${n}"`),f.push(`**Anchor:** Observation #${c} - ${v}`)}else f.push(`# Timeline around anchor: ${c}`);f.push(`**Window:** ${i} records before -> ${s} records after | **Items:** ${p?.length??0}`),f.push("");let m=new Map;for(let g of p){let v=zs(g.epoch);m.has(v)||m.set(v,[]),m.get(v).push(g)}let h=Array.from(m.entries()).sort((g,v)=>{let y=new Date(g[0]).getTime(),b=new Date(v[0]).getTime();return y-b});for(let[g,v]of h){f.push(`### ${g}`),f.push("");let y=null,b="",S=!1;for(let x of v){let w=typeof c=="number"&&x.type==="observation"&&x.data.id===c||typeof c=="string"&&c.startsWith("S")&&x.type==="session"&&`S${x.data.id}`===c;if(x.type==="session"){S&&(f.push(""),S=!1,y=null,b="");let E=x.data,T=E.request||"Session summary",I=w?" <- **ANCHOR**":"";f.push(`**\u{1F3AF} #S${E.id}** ${T} (${Mn(x.epoch)})${I}`),f.push("")}else if(x.type==="prompt"){S&&(f.push(""),S=!1,y=null,b="");let E=x.data,T=E.prompt_text.length>100?E.prompt_text.substring(0,100)+"...":E.prompt_text;f.push(`**\u{1F4AC} User Prompt #${E.prompt_number}** (${Mn(x.epoch)})`),f.push(`> ${T}`),f.push("")}else if(x.type==="observation"){let E=x.data,T=wi(E.files_modified,a,E.files_read);T!==y&&(S&&f.push(""),f.push(`**${T}**`),f.push("| ID | Time | T | Title | Tokens |"),f.push("|----|------|---|-------|--------|"),y=T,S=!0,b="");let I=He.getInstance().getTypeIcon(E.type),P=gr(x.epoch),N=E.title||"Untitled",L=Ls(E.narrative),j=P!==b?P:'"';b=P;let ae=w?" <- **ANCHOR**":"";f.push(`| #${E.id} | ${j} | ${I} | ${N}${ae} | ~${L} |`)}}S&&f.push("")}return{content:[{type:"text",text:f.join(` +`)}]}}async decisions(e){let r=this.normalizeParams(e),{query:n,...i}=r,s=[];if(this.chromaSync)try{if(n){_.debug("SEARCH","Using Chroma semantic search with type=decision filter",{});let u=(await this.queryChroma(n,Math.min((i.limit||20)*2,100),{type:"decision"})).ids;u.length>0&&(s=this.sessionStore.getObservationsByIds(u,{...i,type:"decision"}),s.sort((l,d)=>u.indexOf(l.id)-u.indexOf(d.id)))}else{_.debug("SEARCH","Using metadata-first + semantic ranking for decisions",{});let c=this.sessionSearch.findByType("decision",i);if(c.length>0){let u=c.map(p=>p.id),l=await this.queryChroma("decision",Math.min(u.length,100)),d=[];for(let p of l.ids)u.includes(p)&&!d.includes(p)&&d.push(p);d.length>0&&(s=this.sessionStore.getObservationsByIds(d,{limit:i.limit||20}),s.sort((p,f)=>d.indexOf(p.id)-d.indexOf(f.id)))}}}catch(c){_.error("SEARCH","Chroma search failed for decisions, falling back to metadata search",{},c)}if(s.length===0&&(s=this.sessionSearch.findByType("decision",i)),s.length===0)return{content:[{type:"text",text:"No decision observations found"}]};let o=`Found ${s.length} decision(s) + +${this.formatter.formatTableHeader()}`,a=s.map((c,u)=>this.formatter.formatObservationIndex(c,u));return{content:[{type:"text",text:o+` +`+a.join(` +`)}]}}async changes(e){let r=this.normalizeParams(e),{...n}=r,i=[];if(this.chromaSync)try{_.debug("SEARCH","Using hybrid search for change-related observations",{});let a=this.sessionSearch.findByType("change",n),c=this.sessionSearch.findByConcept("change",n),u=this.sessionSearch.findByConcept("what-changed",n),l=new Set;if([...a,...c,...u].forEach(d=>l.add(d.id)),l.size>0){let d=Array.from(l),p=await this.queryChroma("what changed",Math.min(d.length,100)),f=[];for(let m of p.ids)d.includes(m)&&!f.includes(m)&&f.push(m);f.length>0&&(i=this.sessionStore.getObservationsByIds(f,{limit:n.limit||20}),i.sort((m,h)=>f.indexOf(m.id)-f.indexOf(h.id)))}}catch(a){_.error("SEARCH","Chroma search failed for changes, falling back to metadata search",{},a)}if(i.length===0){let a=this.sessionSearch.findByType("change",n),c=this.sessionSearch.findByConcept("change",n),u=this.sessionSearch.findByConcept("what-changed",n),l=new Set;[...a,...c,...u].forEach(d=>l.add(d.id)),i=Array.from(l).map(d=>a.find(p=>p.id===d)||c.find(p=>p.id===d)||u.find(p=>p.id===d)).filter(Boolean),i.sort((d,p)=>p.created_at_epoch-d.created_at_epoch),i=i.slice(0,n.limit||20)}if(i.length===0)return{content:[{type:"text",text:"No change-related observations found"}]};let s=`Found ${i.length} change-related observation(s) + +${this.formatter.formatTableHeader()}`,o=i.map((a,c)=>this.formatter.formatObservationIndex(a,c));return{content:[{type:"text",text:s+` +`+o.join(` +`)}]}}async howItWorks(e){let r=this.normalizeParams(e),{...n}=r,i=[];if(this.chromaSync){_.debug("SEARCH","Using metadata-first + semantic ranking for how-it-works",{});let a=this.sessionSearch.findByConcept("how-it-works",n);if(a.length>0){let c=a.map(d=>d.id),u=await this.queryChroma("how it works architecture",Math.min(c.length,100)),l=[];for(let d of u.ids)c.includes(d)&&!l.includes(d)&&l.push(d);l.length>0&&(i=this.sessionStore.getObservationsByIds(l,{limit:n.limit||20}),i.sort((d,p)=>l.indexOf(d.id)-l.indexOf(p.id)))}}if(i.length===0&&(i=this.sessionSearch.findByConcept("how-it-works",n)),i.length===0)return{content:[{type:"text",text:'No "how it works" observations found'}]};let s=`Found ${i.length} "how it works" observation(s) + +${this.formatter.formatTableHeader()}`,o=i.map((a,c)=>this.formatter.formatObservationIndex(a,c));return{content:[{type:"text",text:s+` +`+o.join(` +`)}]}}async searchObservations(e){let r=this.normalizeParams(e),{query:n,...i}=r,s=[];if(this.chromaSync){_.debug("SEARCH","Using hybrid semantic search (Chroma + SQLite)",{});let c=await this.queryChroma(n,100);if(_.debug("SEARCH","Chroma returned semantic matches",{matchCount:c.ids.length}),c.ids.length>0){let u=Date.now()-Lt.RECENCY_WINDOW_MS,l=c.ids.filter((d,p)=>{let f=c.metadatas[p];return f&&f.created_at_epoch>u});if(_.debug("SEARCH","Results within 90-day window",{count:l.length}),l.length>0){let d=i.limit||20;s=this.sessionStore.getObservationsByIds(l,{orderBy:"date_desc",limit:d}),_.debug("SEARCH","Hydrated observations from SQLite",{count:s.length})}}}if(s.length===0)return{content:[{type:"text",text:`No observations found matching "${n}"`}]};let o=`Found ${s.length} observation(s) matching "${n}" + +${this.formatter.formatTableHeader()}`,a=s.map((c,u)=>this.formatter.formatObservationIndex(c,u));return{content:[{type:"text",text:o+` +`+a.join(` +`)}]}}async searchSessions(e){let r=this.normalizeParams(e),{query:n,...i}=r,s=[];if(this.chromaSync){_.debug("SEARCH","Using hybrid semantic search for sessions",{});let c=await this.queryChroma(n,100,{doc_type:"session_summary"});if(_.debug("SEARCH","Chroma returned semantic matches for sessions",{matchCount:c.ids.length}),c.ids.length>0){let u=Date.now()-Lt.RECENCY_WINDOW_MS,l=c.ids.filter((d,p)=>{let f=c.metadatas[p];return f&&f.created_at_epoch>u});if(_.debug("SEARCH","Results within 90-day window",{count:l.length}),l.length>0){let d=i.limit||20;s=this.sessionStore.getSessionSummariesByIds(l,{orderBy:"date_desc",limit:d}),_.debug("SEARCH","Hydrated sessions from SQLite",{count:s.length})}}}if(s.length===0)return{content:[{type:"text",text:`No sessions found matching "${n}"`}]};let o=`Found ${s.length} session(s) matching "${n}" + +${this.formatter.formatTableHeader()}`,a=s.map((c,u)=>this.formatter.formatSessionIndex(c,u));return{content:[{type:"text",text:o+` +`+a.join(` +`)}]}}async searchUserPrompts(e){let r=this.normalizeParams(e),{query:n,...i}=r,s=[];if(this.chromaSync){_.debug("SEARCH","Using hybrid semantic search for user prompts",{});let c=await this.queryChroma(n,100,{doc_type:"user_prompt"});if(_.debug("SEARCH","Chroma returned semantic matches for prompts",{matchCount:c.ids.length}),c.ids.length>0){let u=Date.now()-Lt.RECENCY_WINDOW_MS,l=c.ids.filter((d,p)=>{let f=c.metadatas[p];return f&&f.created_at_epoch>u});if(_.debug("SEARCH","Results within 90-day window",{count:l.length}),l.length>0){let d=i.limit||20;s=this.sessionStore.getUserPromptsByIds(l,{orderBy:"date_desc",limit:d}),_.debug("SEARCH","Hydrated user prompts from SQLite",{count:s.length})}}}if(s.length===0)return{content:[{type:"text",text:n?`No user prompts found matching "${n}"`:"No user prompts found"}]};let o=`Found ${s.length} user prompt(s) matching "${n}" + +${this.formatter.formatTableHeader()}`,a=s.map((c,u)=>this.formatter.formatUserPromptIndex(c,u));return{content:[{type:"text",text:o+` +`+a.join(` +`)}]}}async findByConcept(e){let r=this.normalizeParams(e),{concepts:n,...i}=r,s=[];if(this.chromaSync){_.debug("SEARCH","Using metadata-first + semantic ranking for concept search",{});let c=this.sessionSearch.findByConcept(n,i);if(_.debug("SEARCH","Found observations with concept",{concept:n,count:c.length}),c.length>0){let u=c.map(p=>p.id),l=await this.queryChroma(n,Math.min(u.length,100)),d=[];for(let p of l.ids)u.includes(p)&&!d.includes(p)&&d.push(p);_.debug("SEARCH","Chroma ranked results by semantic relevance",{count:d.length}),d.length>0&&(s=this.sessionStore.getObservationsByIds(d,{limit:i.limit||20}),s.sort((p,f)=>d.indexOf(p.id)-d.indexOf(f.id)))}}if(s.length===0&&(_.debug("SEARCH","Using SQLite-only concept search",{}),s=this.sessionSearch.findByConcept(n,i)),s.length===0)return{content:[{type:"text",text:`No observations found with concept "${n}"`}]};let o=`Found ${s.length} observation(s) with concept "${n}" + +${this.formatter.formatTableHeader()}`,a=s.map((c,u)=>this.formatter.formatObservationIndex(c,u));return{content:[{type:"text",text:o+` +`+a.join(` +`)}]}}async findByFile(e){let r=this.normalizeParams(e),{files:n,...i}=r,s=Array.isArray(n)?n[0]:n,o=[],a=[];if(this.chromaSync){_.debug("SEARCH","Using metadata-first + semantic ranking for file search",{});let p=this.sessionSearch.findByFile(s,i);if(_.debug("SEARCH","Found results for file",{file:s,observations:p.observations.length,sessions:p.sessions.length}),a=p.sessions,p.observations.length>0){let f=p.observations.map(g=>g.id),m=await this.queryChroma(s,Math.min(f.length,100)),h=[];for(let g of m.ids)f.includes(g)&&!h.includes(g)&&h.push(g);_.debug("SEARCH","Chroma ranked observations by semantic relevance",{count:h.length}),h.length>0&&(o=this.sessionStore.getObservationsByIds(h,{limit:i.limit||20}),o.sort((g,v)=>h.indexOf(g.id)-h.indexOf(v.id)))}}if(o.length===0&&a.length===0){_.debug("SEARCH","Using SQLite-only file search",{});let p=this.sessionSearch.findByFile(s,i);o=p.observations,a=p.sessions}let c=o.length+a.length;if(c===0)return{content:[{type:"text",text:`No results found for file "${s}"`}]};let u=[...o.map(p=>({type:"observation",data:p,epoch:p.created_at_epoch,created_at:p.created_at})),...a.map(p=>({type:"session",data:p,epoch:p.created_at_epoch,created_at:p.created_at}))];u.sort((p,f)=>f.epoch-p.epoch);let l=Us(u,p=>p.created_at),d=[];d.push(`Found ${c} result(s) for file "${s}"`),d.push("");for(let[p,f]of l){d.push(`### ${p}`),d.push(""),d.push(this.formatter.formatTableHeader());for(let m of f)m.type==="observation"?d.push(this.formatter.formatObservationIndex(m.data,0)):d.push(this.formatter.formatSessionIndex(m.data,0));d.push("")}return{content:[{type:"text",text:d.join(` +`)}]}}async findByType(e){let r=this.normalizeParams(e),{type:n,...i}=r,s=Array.isArray(n)?n.join(", "):n,o=[];if(this.chromaSync){_.debug("SEARCH","Using metadata-first + semantic ranking for type search",{});let u=this.sessionSearch.findByType(n,i);if(_.debug("SEARCH","Found observations with type",{type:s,count:u.length}),u.length>0){let l=u.map(f=>f.id),d=await this.queryChroma(s,Math.min(l.length,100)),p=[];for(let f of d.ids)l.includes(f)&&!p.includes(f)&&p.push(f);_.debug("SEARCH","Chroma ranked results by semantic relevance",{count:p.length}),p.length>0&&(o=this.sessionStore.getObservationsByIds(p,{limit:i.limit||20}),o.sort((f,m)=>p.indexOf(f.id)-p.indexOf(m.id)))}}if(o.length===0&&(_.debug("SEARCH","Using SQLite-only type search",{}),o=this.sessionSearch.findByType(n,i)),o.length===0)return{content:[{type:"text",text:`No observations found with type "${s}"`}]};let a=`Found ${o.length} observation(s) with type "${s}" + +${this.formatter.formatTableHeader()}`,c=o.map((u,l)=>this.formatter.formatObservationIndex(u,l));return{content:[{type:"text",text:a+` +`+c.join(` +`)}]}}async getRecentContext(e){let r=e.project||(0,v8.basename)(process.cwd()),n=e.limit||3,i=this.sessionStore.getRecentSessionsWithStatus(r,n);if(i.length===0)return{content:[{type:"text",text:`# Recent Session Context + +No previous sessions found for project "${r}".`}]};let s=[];s.push("# Recent Session Context"),s.push(""),s.push(`Showing last ${i.length} session(s) for **${r}**:`),s.push("");for(let o of i)if(o.memory_session_id){if(s.push("---"),s.push(""),o.has_summary){let a=this.sessionStore.getSummaryForSession(o.memory_session_id);if(a){let c=a.prompt_number?` (Prompt #${a.prompt_number})`:"";if(s.push(`**Summary${c}**`),s.push(""),a.request&&s.push(`**Request:** ${a.request}`),a.completed&&s.push(`**Completed:** ${a.completed}`),a.learned&&s.push(`**Learned:** ${a.learned}`),a.next_steps&&s.push(`**Next Steps:** ${a.next_steps}`),a.files_read)try{let l=JSON.parse(a.files_read);Array.isArray(l)&&l.length>0&&s.push(`**Files Read:** ${l.join(", ")}`)}catch(l){_.debug("WORKER","files_read is plain string, using as-is",{},l),a.files_read.trim()&&s.push(`**Files Read:** ${a.files_read}`)}if(a.files_edited)try{let l=JSON.parse(a.files_edited);Array.isArray(l)&&l.length>0&&s.push(`**Files Edited:** ${l.join(", ")}`)}catch(l){_.debug("WORKER","files_edited is plain string, using as-is",{},l),a.files_edited.trim()&&s.push(`**Files Edited:** ${a.files_edited}`)}let u=new Date(a.created_at).toLocaleString();s.push(`**Date:** ${u}`)}}else if(o.status==="active"){s.push("**In Progress**"),s.push(""),o.user_prompt&&s.push(`**Request:** ${o.user_prompt}`);let a=this.sessionStore.getObservationsForSession(o.memory_session_id);if(a.length>0){s.push(""),s.push(`**Observations (${a.length}):**`);for(let u of a)s.push(`- ${u.title}`)}else s.push(""),s.push("*No observations yet*");s.push(""),s.push("**Status:** Active - summary pending");let c=new Date(o.started_at).toLocaleString();s.push(`**Date:** ${c}`)}else{s.push(`**${o.status.charAt(0).toUpperCase()+o.status.slice(1)}**`),s.push(""),o.user_prompt&&s.push(`**Request:** ${o.user_prompt}`),s.push(""),s.push(`**Status:** ${o.status} - no summary available`);let a=new Date(o.started_at).toLocaleString();s.push(`**Date:** ${a}`)}s.push("")}return{content:[{type:"text",text:s.join(` +`)}]}}async getContextTimeline(e){let{anchor:r,depth_before:n=10,depth_after:i=10,project:s}=e,o=process.cwd(),a,c=r,u;if(typeof r=="number"){let h=this.sessionStore.getObservationById(r);if(!h)return{content:[{type:"text",text:`Observation #${r} not found`}],isError:!0};a=h.created_at_epoch,u=this.sessionStore.getTimelineAroundObservation(r,a,n,i,s)}else if(typeof r=="string")if(r.startsWith("S")||r.startsWith("#S")){let h=r.replace(/^#?S/,""),g=parseInt(h,10),v=this.sessionStore.getSessionSummariesByIds([g]);if(v.length===0)return{content:[{type:"text",text:`Session #${g} not found`}],isError:!0};a=v[0].created_at_epoch,c=`S${g}`,u=this.sessionStore.getTimelineAroundTimestamp(a,n,i,s)}else{let h=new Date(r);if(isNaN(h.getTime()))return{content:[{type:"text",text:`Invalid timestamp: ${r}`}],isError:!0};a=h.getTime(),u=this.sessionStore.getTimelineAroundTimestamp(a,n,i,s)}else return{content:[{type:"text",text:'Invalid anchor: must be observation ID (number), session ID (e.g., "S123"), or ISO timestamp'}],isError:!0};let l=[...u.observations.map(h=>({type:"observation",data:h,epoch:h.created_at_epoch})),...u.sessions.map(h=>({type:"session",data:h,epoch:h.created_at_epoch})),...u.prompts.map(h=>({type:"prompt",data:h,epoch:h.created_at_epoch}))];l.sort((h,g)=>h.epoch-g.epoch);let d=this.timelineService.filterByDepth(l,c,a,n,i);if(!d||d.length===0)return{content:[{type:"text",text:`No context found around ${new Date(a).toLocaleString()} (${n} records before, ${i} records after)`}]};let p=[];p.push(`# Timeline around anchor: ${c}`),p.push(`**Window:** ${n} records before -> ${i} records after | **Items:** ${d?.length??0}`),p.push("");let f=new Map;for(let h of d){let g=zs(h.epoch);f.has(g)||f.set(g,[]),f.get(g).push(h)}let m=Array.from(f.entries()).sort((h,g)=>{let v=new Date(h[0]).getTime(),y=new Date(g[0]).getTime();return v-y});for(let[h,g]of m){p.push(`### ${h}`),p.push("");let v=null,y="",b=!1;for(let S of g){let x=typeof c=="number"&&S.type==="observation"&&S.data.id===c||typeof c=="string"&&c.startsWith("S")&&S.type==="session"&&`S${S.data.id}`===c;if(S.type==="session"){b&&(p.push(""),b=!1,v=null,y="");let w=S.data,E=w.request||"Session summary",T=x?" <- **ANCHOR**":"";p.push(`**\u{1F3AF} #S${w.id}** ${E} (${Mn(S.epoch)})${T}`),p.push("")}else if(S.type==="prompt"){b&&(p.push(""),b=!1,v=null,y="");let w=S.data,E=w.prompt_text.length>100?w.prompt_text.substring(0,100)+"...":w.prompt_text;p.push(`**\u{1F4AC} User Prompt #${w.prompt_number}** (${Mn(S.epoch)})`),p.push(`> ${E}`),p.push("")}else if(S.type==="observation"){let w=S.data,E=wi(w.files_modified,o,w.files_read);E!==v&&(b&&p.push(""),p.push(`**${E}**`),p.push("| ID | Time | T | Title | Tokens |"),p.push("|----|------|---|-------|--------|"),v=E,b=!0,y="");let T=He.getInstance().getTypeIcon(w.type),I=gr(S.epoch),P=w.title||"Untitled",N=Ls(w.narrative),G=I!==y?I:'"';y=I;let j=x?" <- **ANCHOR**":"";p.push(`| #${w.id} | ${G} | ${T} | ${P}${j} | ~${N} |`)}}b&&p.push("")}return{content:[{type:"text",text:p.join(` +`)}]}}async getTimelineByQuery(e){let{query:r,mode:n="auto",depth_before:i=10,depth_after:s=10,limit:o=5,project:a}=e,c=process.cwd(),u=[];if(this.chromaSync){_.debug("SEARCH","Using hybrid semantic search for timeline query",{});let l=await this.queryChroma(r,100);if(_.debug("SEARCH","Chroma returned semantic matches for timeline",{matchCount:l.ids.length}),l.ids.length>0){let d=Date.now()-Lt.RECENCY_WINDOW_MS,p=l.ids.filter((f,m)=>{let h=l.metadatas[m];return h&&h.created_at_epoch>d});_.debug("SEARCH","Results within 90-day window",{count:p.length}),p.length>0&&(u=this.sessionStore.getObservationsByIds(p,{orderBy:"date_desc",limit:n==="auto"?1:o}),_.debug("SEARCH","Hydrated observations from SQLite",{count:u.length}))}}if(u.length===0)return{content:[{type:"text",text:`No observations found matching "${r}". Try a different search query.`}]};if(n==="interactive"){let l=[];l.push("# Timeline Anchor Search Results"),l.push(""),l.push(`Found ${u.length} observation(s) matching "${r}"`),l.push(""),l.push("To get timeline context around any of these observations, use the `get_context_timeline` tool with the observation ID as the anchor."),l.push(""),l.push(`**Top ${u.length} matches:**`),l.push("");for(let d=0;d({type:"observation",data:v,epoch:v.created_at_epoch})),...(d.sessions||[]).map(v=>({type:"session",data:v,epoch:v.created_at_epoch})),...(d.prompts||[]).map(v=>({type:"prompt",data:v,epoch:v.created_at_epoch}))];p.sort((v,y)=>v.epoch-y.epoch);let f=this.timelineService.filterByDepth(p,l.id,0,i,s);if(!f||f.length===0)return{content:[{type:"text",text:`Found observation #${l.id} matching "${r}", but no timeline context available (${i} records before, ${s} records after).`}]};let m=[];m.push(`# Timeline for query: "${r}"`),m.push(`**Anchor:** Observation #${l.id} - ${l.title||"Untitled"}`),m.push(`**Window:** ${i} records before -> ${s} records after | **Items:** ${f?.length??0}`),m.push("");let h=new Map;for(let v of f){let y=zs(v.epoch);h.has(y)||h.set(y,[]),h.get(y).push(v)}let g=Array.from(h.entries()).sort((v,y)=>{let b=new Date(v[0]).getTime(),S=new Date(y[0]).getTime();return b-S});for(let[v,y]of g){m.push(`### ${v}`),m.push("");let b=null,S="",x=!1;for(let w of y){let E=w.type==="observation"&&w.data.id===l.id;if(w.type==="session"){x&&(m.push(""),x=!1,b=null,S="");let T=w.data,I=T.request||"Session summary";m.push(`**\u{1F3AF} #S${T.id}** ${I} (${Mn(w.epoch)})`),m.push("")}else if(w.type==="prompt"){x&&(m.push(""),x=!1,b=null,S="");let T=w.data,I=T.prompt_text.length>100?T.prompt_text.substring(0,100)+"...":T.prompt_text;m.push(`**\u{1F4AC} User Prompt #${T.prompt_number}** (${Mn(w.epoch)})`),m.push(`> ${I}`),m.push("")}else if(w.type==="observation"){let T=w.data,I=wi(T.files_modified,c,T.files_read);I!==b&&(x&&m.push(""),m.push(`**${I}**`),m.push("| ID | Time | T | Title | Tokens |"),m.push("|----|------|---|-------|--------|"),b=I,x=!0,S="");let P=He.getInstance().getTypeIcon(T.type),N=gr(w.epoch),L=T.title||"Untitled",G=Ls(T.narrative),ae=N!==S?N:'"';S=N;let Me=E?" <- **ANCHOR**":"";m.push(`| #${T.id} | ${ae} | ${P} | ${L}${Me} | ~${G} |`)}}x&&m.push("")}return{content:[{type:"text",text:m.join(` +`)}]}}}};sn();var Dbe=4,Zy=class{formatSearchTips(){return` +--- +\u{1F4A1} Search Strategy: +1. Search with index to see titles, dates, IDs +2. Use timeline to get context around interesting results +3. Batch fetch full details: get_observations(ids=[...]) + +Tips: +\u2022 Filter by type: obs_type="bugfix,feature" +\u2022 Filter by date: dateStart="2025-01-01" +\u2022 Sort: orderBy="date_desc" or "date_asc"`}formatTime(e){return new Date(e).toLocaleString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}estimateReadTokens(e){let r=(e.title?.length||0)+(e.subtitle?.length||0)+(e.narrative?.length||0)+(e.facts?.length||0);return Math.ceil(r/Dbe)}formatObservationIndex(e,r){let n=`#${e.id}`,i=this.formatTime(e.created_at_epoch),s=He.getInstance().getTypeIcon(e.type),o=e.title||"Untitled",a=this.estimateReadTokens(e),c=He.getInstance().getWorkEmoji(e.type),u=e.discovery_tokens||0,l=u>0?`${c} ${u}`:"-";return`| ${n} | ${i} | ${s} | ${o} | ~${a} | ${l} |`}formatSessionIndex(e,r){let n=`#S${e.id}`,i=this.formatTime(e.created_at_epoch),s="\u{1F3AF}",o=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return`| ${n} | ${i} | ${s} | ${o} | - | - |`}formatUserPromptIndex(e,r){let n=`#P${e.id}`,i=this.formatTime(e.created_at_epoch),s="\u{1F4AC}",o=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return`| ${n} | ${i} | ${s} | ${o} | - | - |`}formatTableHeader(){return`| ID | Time | T | Title | Read | Work | +|-----|------|---|-------|------|------|`}formatSearchTableHeader(){return`| ID | Time | T | Title | Read | +|----|------|---|-------|------|`}formatObservationSearchRow(e,r){let n=`#${e.id}`,i=this.formatTime(e.created_at_epoch),s=He.getInstance().getTypeIcon(e.type),o=e.title||"Untitled",a=this.estimateReadTokens(e);return{row:`| ${n} | ${i===r?"\u2033":i} | ${s} | ${o} | ~${a} |`,time:i}}formatSessionSearchRow(e,r){let n=`#S${e.id}`,i=this.formatTime(e.created_at_epoch),s="\u{1F3AF}",o=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return{row:`| ${n} | ${i===r?"\u2033":i} | ${s} | ${o} | - |`,time:i}}formatUserPromptSearchRow(e,r){let n=`#P${e.id}`,i=this.formatTime(e.created_at_epoch),s="\u{1F4AC}",o=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return{row:`| ${n} | ${i===r?"\u2033":i} | ${s} | ${o} | - |`,time:i}}};sn();var By=class{buildTimeline(e){let r=[...e.observations.map(n=>({type:"observation",data:n,epoch:n.created_at_epoch})),...e.sessions.map(n=>({type:"session",data:n,epoch:n.created_at_epoch})),...e.prompts.map(n=>({type:"prompt",data:n,epoch:n.created_at_epoch}))];return r.sort((n,i)=>n.epoch-i.epoch),r}filterByDepth(e,r,n,i,s){if(e.length===0)return e;let o=-1;if(typeof r=="number")o=e.findIndex(u=>u.type==="observation"&&u.data.id===r);else if(typeof r=="string"&&r.startsWith("S")){let u=parseInt(r.slice(1),10);o=e.findIndex(l=>l.type==="session"&&l.data.id===u)}else o=e.findIndex(u=>u.epoch>=n),o===-1&&(o=e.length-1);if(o===-1)return e;let a=Math.max(0,o-i),c=Math.min(e.length,o+s+1);return e.slice(a,c)}formatTimeline(e,r,n,i,s){if(e.length===0)return n?`Found observation matching "${n}", but no timeline context available.`:"No timeline items found";let o=[];if(n&&r){let u=e.find(d=>d.type==="observation"&&d.data.id===r),l=u?u.data.title||"Untitled":"Unknown";o.push(`# Timeline for query: "${n}"`),o.push(`**Anchor:** Observation #${r} - ${l}`)}else r?o.push(`# Timeline around anchor: ${r}`):o.push("# Timeline");i!==void 0&&s!==void 0?o.push(`**Window:** ${i} records before \u2192 ${s} records after | **Items:** ${e.length}`):o.push(`**Items:** ${e.length}`),o.push(""),o.push("**Legend:** \u{1F3AF} session-request | \u{1F534} bugfix | \u{1F7E3} feature | \u{1F504} refactor | \u2705 change | \u{1F535} discovery | \u{1F9E0} decision"),o.push("");let a=new Map;for(let u of e){let l=this.formatDate(u.epoch);a.has(l)||a.set(l,[]),a.get(l).push(u)}let c=Array.from(a.entries()).sort((u,l)=>{let d=new Date(u[0]).getTime(),p=new Date(l[0]).getTime();return d-p});for(let[u,l]of c){o.push(`### ${u}`),o.push("");let d=null,p="",f=!1;for(let m of l){let h=typeof r=="number"&&m.type==="observation"&&m.data.id===r||typeof r=="string"&&r.startsWith("S")&&m.type==="session"&&`S${m.data.id}`===r;if(m.type==="session"){f&&(o.push(""),f=!1,d=null,p="");let g=m.data,v=g.request||"Session summary",y=h?" \u2190 **ANCHOR**":"";o.push(`**\u{1F3AF} #S${g.id}** ${v} (${this.formatDateTime(m.epoch)})${y}`),o.push("")}else if(m.type==="prompt"){f&&(o.push(""),f=!1,d=null,p="");let g=m.data,v=g.prompt_text.length>100?g.prompt_text.substring(0,100)+"...":g.prompt_text;o.push(`**\u{1F4AC} User Prompt #${g.prompt_number}** (${this.formatDateTime(m.epoch)})`),o.push(`> ${v}`),o.push("")}else if(m.type==="observation"){let g=m.data,v="General";v!==d&&(f&&o.push(""),o.push(`**${v}**`),o.push("| ID | Time | T | Title | Tokens |"),o.push("|----|------|---|-------|--------|"),d=v,f=!0,p="");let y=this.getTypeIcon(g.type),b=this.formatTime(m.epoch),S=g.title||"Untitled",x=this.estimateTokens(g.narrative),E=b!==p?b:"\u2033";p=b;let T=h?" \u2190 **ANCHOR**":"";o.push(`| #${g.id} | ${E} | ${y} | ${S}${T} | ~${x} |`)}}f&&o.push("")}return o.join(` +`)}getTypeIcon(e){return He.getInstance().getTypeIcon(e)}formatDate(e){return new Date(e).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric"})}formatTime(e){return new Date(e).toLocaleString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}formatDateTime(e){return new Date(e).toLocaleString("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit",hour12:!0})}estimateTokens(e){return e?Math.ceil(e.length/4):0}};var Gy=class{constructor(e,r){this.sseBroadcaster=e;this.workerService=r}broadcastNewPrompt(e){this.sseBroadcaster.broadcast({type:"new_prompt",prompt:e}),this.workerService.broadcastProcessingStatus()}broadcastSessionStarted(e,r){this.sseBroadcaster.broadcast({type:"session_started",sessionDbId:e,project:r}),this.workerService.broadcastProcessingStatus()}broadcastObservationQueued(e){this.sseBroadcaster.broadcast({type:"observation_queued",sessionDbId:e}),this.workerService.broadcastProcessingStatus()}broadcastSessionCompleted(e){this.sseBroadcaster.broadcast({type:"session_completed",timestamp:Date.now(),sessionDbId:e}),this.workerService.broadcastProcessingStatus()}broadcastSummarizeQueued(){this.workerService.broadcastProcessingStatus()}};var Js=require("fs"),Wy=require("os"),nl=require("path"),Vy=(0,nl.join)((0,Wy.homedir)(),".claude-mem","transcript-watch.json"),Ky=(0,nl.join)((0,Wy.homedir)(),".claude-mem","transcript-watch-state.json"),jbe={name:"codex",version:"0.3",description:"Schema for Codex session JSONL files under ~/.codex/sessions.",events:[{name:"session-meta",match:{path:"type",equals:"session_meta"},action:"session_context",fields:{sessionId:"payload.id",cwd:"payload.cwd"}},{name:"turn-context",match:{path:"type",equals:"turn_context"},action:"session_context",fields:{cwd:"payload.cwd"}},{name:"user-message",match:{path:"payload.type",equals:"user_message"},action:"session_init",fields:{prompt:"payload.message"}},{name:"assistant-message",match:{path:"payload.type",equals:"agent_message"},action:"assistant_message",fields:{message:"payload.message"}},{name:"tool-use",match:{path:"payload.type",in:["function_call","custom_tool_call","web_search_call","exec_command"]},action:"tool_use",fields:{toolId:"payload.call_id",toolName:{coalesce:["payload.name","payload.type",{value:"web_search"}]},toolInput:{coalesce:["payload.arguments","payload.input","payload.command","payload.action"]}}},{name:"tool-result",match:{path:"payload.type",in:["function_call_output","custom_tool_call_output","exec_command_output"]},action:"tool_result",fields:{toolId:"payload.call_id",toolResponse:"payload.output"}},{name:"session-end",match:{path:"payload.type",in:["turn_aborted","turn_completed"]},action:"session_end"}]},zbe={version:1,schemas:{codex:jbe},watches:[{name:"codex",path:"~/.codex/sessions/**/*.jsonl",schema:"codex",startAtEnd:!0,context:{mode:"agents",path:"~/.codex/AGENTS.md",updateOn:["session_start","session_end"]}}],stateFile:Ky};function Xs(t){return t&&(t.startsWith("~")?(0,nl.join)((0,Wy.homedir)(),t.slice(1)):t)}function y8(t=Vy){let e=Xs(t);if(!(0,Js.existsSync)(e))throw new Error(`Transcript watch config not found: ${e}`);let r=(0,Js.readFileSync)(e,"utf-8"),n=JSON.parse(r);if(!n.version||!n.watches)throw new Error(`Invalid transcript watch config: ${e}`);return n.stateFile||(n.stateFile=Ky),n}function _8(t=Vy){let e=Xs(t),r=(0,nl.dirname)(e);(0,Js.existsSync)(r)||(0,Js.mkdirSync)(r,{recursive:!0}),(0,Js.writeFileSync)(e,JSON.stringify(zbe,null,2))}var Mi=require("fs"),T_=require("path");var WI=(t,e,r)=>{let n=t instanceof RegExp?b8(t,r):t,i=e instanceof RegExp?b8(e,r):e,s=n!==null&&i!=null&&Lbe(n,i,r);return s&&{start:s[0],end:s[1],pre:r.slice(0,s[0]),body:r.slice(s[0]+n.length,s[1]),post:r.slice(s[1]+i.length)}},b8=(t,e)=>{let r=e.match(t);return r?r[0]:null},Lbe=(t,e,r)=>{let n,i,s,o,a,c=r.indexOf(t),u=r.indexOf(e,c+1),l=c;if(c>=0&&u>0){if(t===e)return[c,u];for(n=[],s=r.length;l>=0&&!a;){if(l===c)n.push(l),c=r.indexOf(t,l+1);else if(n.length===1){let d=n.pop();d!==void 0&&(a=[d,u])}else i=n.pop(),i!==void 0&&i=0?c:u}n.length&&o!==void 0&&(a=[s,o])}return a};var S8="\0SLASH"+Math.random()+"\0",x8="\0OPEN"+Math.random()+"\0",KI="\0CLOSE"+Math.random()+"\0",w8="\0COMMA"+Math.random()+"\0",E8="\0PERIOD"+Math.random()+"\0",Ube=new RegExp(S8,"g"),Fbe=new RegExp(x8,"g"),qbe=new RegExp(KI,"g"),Hbe=new RegExp(w8,"g"),Zbe=new RegExp(E8,"g"),Bbe=/\\\\/g,Gbe=/\\{/g,Wbe=/\\}/g,Vbe=/\\,/g,Kbe=/\\\./g,Jbe=1e5;function VI(t){return isNaN(t)?t.charCodeAt(0):parseInt(t,10)}function Xbe(t){return t.replace(Bbe,S8).replace(Gbe,x8).replace(Wbe,KI).replace(Vbe,w8).replace(Kbe,E8)}function Ybe(t){return t.replace(Ube,"\\").replace(Fbe,"{").replace(qbe,"}").replace(Hbe,",").replace(Zbe,".")}function k8(t){if(!t)return[""];let e=[],r=WI("{","}",t);if(!r)return t.split(",");let{pre:n,body:i,post:s}=r,o=n.split(",");o[o.length-1]+="{"+i+"}";let a=k8(s);return s.length&&(o[o.length-1]+=a.shift(),o.push.apply(o,a)),e.push.apply(e,o),e}function T8(t,e={}){if(!t)return[];let{max:r=Jbe}=e;return t.slice(0,2)==="{}"&&(t="\\{\\}"+t.slice(2)),zf(Xbe(t),r,!0).map(Ybe)}function Qbe(t){return"{"+t+"}"}function eSe(t){return/^-?0\d/.test(t)}function tSe(t,e){return t<=e}function rSe(t,e){return t>=e}function zf(t,e,r){let n=[],i=WI("{","}",t);if(!i)return[t];let s=i.pre,o=i.post.length?zf(i.post,e,!1):[""];if(/\$$/.test(i.pre))for(let a=0;a=0;if(!u&&!l)return i.post.match(/,(?!,).*\}/)?(t=i.pre+"{"+i.body+KI+i.post,zf(t,e,!0)):[t];let d;if(u)d=i.body.split(/\.\./);else if(d=k8(i.body),d.length===1&&d[0]!==void 0&&(d=zf(d[0],e,!1).map(Qbe),d.length===1))return o.map(f=>i.pre+d[0]+f);let p;if(u&&d[0]!==void 0&&d[1]!==void 0){let f=VI(d[0]),m=VI(d[1]),h=Math.max(d[0].length,d[1].length),g=d.length===3&&d[2]!==void 0?Math.abs(VI(d[2])):1,v=tSe;m0){let E=new Array(w+1).join("0");S<0?x="-"+E+x.slice(1):x=E+x}}p.push(x)}}else{p=[];for(let f=0;f{if(typeof t!="string")throw new TypeError("invalid pattern");if(t.length>65536)throw new TypeError("pattern is too long")};var nSe={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},Uf=t=>t.replace(/[[\]\\-]/g,"\\$&"),iSe=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),$8=t=>t.join(""),I8=(t,e)=>{let r=e;if(t.charAt(r)!=="[")throw new Error("not in a brace expression");let n=[],i=[],s=r+1,o=!1,a=!1,c=!1,u=!1,l=r,d="";e:for(;sd?n.push(Uf(d)+"-"+Uf(h)):h===d&&n.push(Uf(h)),d="",s++;continue}if(t.startsWith("-]",s+1)){n.push(Uf(h+"-")),s+=2;continue}if(t.startsWith("-",s+1)){d=h,s+=2;continue}n.push(Uf(h)),s++}if(lr?e?t.replace(/\[([^\/\\])\]/g,"$1"):t.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1"):e?t.replace(/\[([^\/\\{}])\]/g,"$1"):t.replace(/((?!\\).|^)\[([^\/\\{}])\]/g,"$1$2").replace(/\\([^\/{}])/g,"$1");var kn,sSe=new Set(["!","?","+","*","@"]),JI=t=>sSe.has(t),R8=t=>JI(t.type),oSe=new Map([["!",["@"]],["?",["?","@"]],["@",["@"]],["*",["*","+","?","@"]],["+",["+","@"]]]),aSe=new Map([["!",["?"]],["@",["?"]],["+",["?","*"]]]),cSe=new Map([["!",["?","@"]],["?",["?","@"]],["@",["?","@"]],["*",["*","+","?","@"]],["+",["+","@","?","*"]]]),O8=new Map([["!",new Map([["!","@"]])],["?",new Map([["*","*"],["+","*"]])],["@",new Map([["!","!"],["?","?"],["@","@"],["*","*"],["+","+"]])],["+",new Map([["?","*"],["*","*"]])]]),uSe="(?!(?:^|/)\\.\\.?(?:$|/))",Jy="(?!\\.)",lSe=new Set(["[","."]),dSe=new Set(["..","."]),pSe=new Set("().*{}+?[]^$\\!"),fSe=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),XI="[^/]",C8=XI+"*?",P8=XI+"+?",mSe=0,Fa=class{type;#e;#n;#i=!1;#t=[];#o;#w;#y;#d=!1;#a;#p;#l=!1;id=++mSe;get depth(){return(this.#o?.depth??-1)+1}[Symbol.for("nodejs.util.inspect.custom")](){return{"@@type":"AST",id:this.id,type:this.type,root:this.#e.id,parent:this.#o?.id,depth:this.depth,partsLength:this.#t.length,parts:this.#t}}constructor(e,r,n={}){this.type=e,e&&(this.#n=!0),this.#o=r,this.#e=this.#o?this.#o.#e:this,this.#a=this.#e===this?n:this.#e.#a,this.#y=this.#e===this?[]:this.#e.#y,e==="!"&&!this.#e.#d&&this.#y.push(this),this.#w=this.#o?this.#o.#t.length:0}get hasMagic(){if(this.#n!==void 0)return this.#n;for(let e of this.#t)if(typeof e!="string"&&(e.type||e.hasMagic))return this.#n=!0;return this.#n}toString(){return this.#p!==void 0?this.#p:this.type?this.#p=this.type+"("+this.#t.map(e=>String(e)).join("|")+")":this.#p=this.#t.map(e=>String(e)).join("")}#c(){if(this!==this.#e)throw new Error("should only call on root");if(this.#d)return this;this.toString(),this.#d=!0;let e;for(;e=this.#y.pop();){if(e.type!=="!")continue;let r=e,n=r.#o;for(;n;){for(let i=r.#w+1;!n.type&&itypeof r=="string"?r:r.toJSON()):[this.type,...this.#t.map(r=>r.toJSON())];return this.isStart()&&!this.type&&e.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#d&&this.#o?.type==="!")&&e.push({}),e}isStart(){if(this.#e===this)return!0;if(!this.#o?.isStart())return!1;if(this.#w===0)return!0;let e=this.#o;for(let r=0;rtypeof f!="string"),u=this.#t.map(f=>{let[m,h,g,v]=typeof f=="string"?kn.#b(f,this.#n,c):f.toRegExpSource(e);return this.#n=this.#n||g,this.#i=this.#i||v,m}).join(""),l="";if(this.isStart()&&typeof this.#t[0]=="string"&&!(this.#t.length===1&&dSe.has(this.#t[0]))){let m=lSe,h=r&&m.has(u.charAt(0))||u.startsWith("\\.")&&m.has(u.charAt(2))||u.startsWith("\\.\\.")&&m.has(u.charAt(4)),g=!r&&!e&&m.has(u.charAt(0));l=h?uSe:g?Jy:""}let d="";return this.isEnd()&&this.#e.#d&&this.#o?.type==="!"&&(d="(?:$|\\/)"),[l+u+d,Oi(u),this.#n=!!this.#n,this.#i]}let n=this.type==="*"||this.type==="+",i=this.type==="!"?"(?:(?!(?:":"(?:",s=this.#v(r);if(this.isStart()&&this.isEnd()&&!s&&this.type!=="!"){let c=this.toString(),u=this;return u.#t=[c],u.type=null,u.#n=void 0,[c,Oi(this.toString()),!1,!1]}let o=!n||e||r||!Jy?"":this.#v(!0);o===s&&(o=""),o&&(s=`(?:${s})(?:${o})*?`);let a="";if(this.type==="!"&&this.#l)a=(this.isStart()&&!r?Jy:"")+P8;else{let c=this.type==="!"?"))"+(this.isStart()&&!r&&!e?Jy:"")+C8+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&o?")":this.type==="*"&&o?")?":`)${this.type}`;a=i+s+c}return[a,Oi(s),this.#n=!!this.#n,this.#i]}#f(){if(R8(this)){let e=0,r=!1;do{r=!0;for(let n=0;n{if(typeof r=="string")throw new Error("string type in extglob ast??");let[n,i,s,o]=r.toRegExpSource(e);return this.#i=this.#i||o,n}).filter(r=>!(this.isStart()&&this.isEnd())||!!r).join("|")}static#b(e,r,n=!1){let i=!1,s="",o=!1,a=!1;for(let c=0;cr?e?t.replace(/[?*()[\]{}]/g,"[$&]"):t.replace(/[?*()[\]\\{}]/g,"\\$&"):e?t.replace(/[?*()[\]]/g,"[$&]"):t.replace(/[?*()[\]\\]/g,"\\$&");var an=(t,e,r={})=>(Lf(e),!r.nocomment&&e.charAt(0)==="#"?!1:new jn(e,r).match(t)),hSe=/^\*+([^+@!?\*\[\(]*)$/,gSe=t=>e=>!e.startsWith(".")&&e.endsWith(t),vSe=t=>e=>e.endsWith(t),ySe=t=>(t=t.toLowerCase(),e=>!e.startsWith(".")&&e.toLowerCase().endsWith(t)),_Se=t=>(t=t.toLowerCase(),e=>e.toLowerCase().endsWith(t)),bSe=/^\*+\.\*+$/,SSe=t=>!t.startsWith(".")&&t.includes("."),xSe=t=>t!=="."&&t!==".."&&t.includes("."),wSe=/^\.\*+$/,ESe=t=>t!=="."&&t!==".."&&t.startsWith("."),kSe=/^\*+$/,TSe=t=>t.length!==0&&!t.startsWith("."),$Se=t=>t.length!==0&&t!=="."&&t!=="..",ISe=/^\?+([^+@!?\*\[\(]*)?$/,RSe=([t,e=""])=>{let r=M8([t]);return e?(e=e.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(e)):r},OSe=([t,e=""])=>{let r=D8([t]);return e?(e=e.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(e)):r},CSe=([t,e=""])=>{let r=D8([t]);return e?n=>r(n)&&n.endsWith(e):r},PSe=([t,e=""])=>{let r=M8([t]);return e?n=>r(n)&&n.endsWith(e):r},M8=([t])=>{let e=t.length;return r=>r.length===e&&!r.startsWith(".")},D8=([t])=>{let e=t.length;return r=>r.length===e&&r!=="."&&r!==".."},j8=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",A8={win32:{sep:"\\"},posix:{sep:"/"}},ASe=j8==="win32"?A8.win32.sep:A8.posix.sep;an.sep=ASe;var Yt=Symbol("globstar **");an.GLOBSTAR=Yt;var NSe="[^/]",MSe=NSe+"*?",DSe="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",jSe="(?:(?!(?:\\/|^)\\.).)*?",zSe=(t,e={})=>r=>an(r,t,e);an.filter=zSe;var si=(t,e={})=>Object.assign({},t,e),LSe=t=>{if(!t||typeof t!="object"||!Object.keys(t).length)return an;let e=an;return Object.assign((n,i,s={})=>e(n,i,si(t,s)),{Minimatch:class extends e.Minimatch{constructor(i,s={}){super(i,si(t,s))}static defaults(i){return e.defaults(si(t,i)).Minimatch}},AST:class extends e.AST{constructor(i,s,o={}){super(i,s,si(t,o))}static fromGlob(i,s={}){return e.AST.fromGlob(i,si(t,s))}},unescape:(n,i={})=>e.unescape(n,si(t,i)),escape:(n,i={})=>e.escape(n,si(t,i)),filter:(n,i={})=>e.filter(n,si(t,i)),defaults:n=>e.defaults(si(t,n)),makeRe:(n,i={})=>e.makeRe(n,si(t,i)),braceExpand:(n,i={})=>e.braceExpand(n,si(t,i)),match:(n,i,s={})=>e.match(n,i,si(t,s)),sep:e.sep,GLOBSTAR:Yt})};an.defaults=LSe;var z8=(t,e={})=>(Lf(t),e.nobrace||!/\{(?:(?!\{).)*\}/.test(t)?[t]:T8(t,{max:e.braceExpandMax}));an.braceExpand=z8;var USe=(t,e={})=>new jn(t,e).makeRe();an.makeRe=USe;var FSe=(t,e,r={})=>{let n=new jn(e,r);return t=t.filter(i=>n.match(i)),n.options.nonull&&!t.length&&t.push(e),t};an.match=FSe;var N8=/[?*]|[+@!]\(.*?\)|\[|\]/,qSe=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),jn=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;maxGlobstarRecursion;regexp;constructor(e,r={}){Lf(e),r=r||{},this.options=r,this.maxGlobstarRecursion=r.maxGlobstarRecursion??200,this.pattern=e,this.platform=r.platform||j8,this.isWindows=this.platform==="win32";let n="allowWindowsEscape";this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r[n]===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!r.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!r.nonegate,this.comment=!1,this.empty=!1,this.partial=!!r.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=r.windowsNoMagicRoot!==void 0?r.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let e of this.set)for(let r of e)if(typeof r!="string")return!0;return!1}debug(...e){}make(){let e=this.pattern,r=this.options;if(!r.nocomment&&e.charAt(0)==="#"){this.comment=!0;return}if(!e){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],r.debug&&(this.debug=(...s)=>console.error(...s)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(s=>this.slashSplit(s));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let i=this.globParts.map((s,o,a)=>{if(this.isWindows&&this.windowsNoMagicRoot){let c=s[0]===""&&s[1]===""&&(s[2]==="?"||!N8.test(s[2]))&&!N8.test(s[3]),u=/^[a-z]:/i.test(s[0]);if(c)return[...s.slice(0,4),...s.slice(4).map(l=>this.parse(l))];if(u)return[s[0],...s.slice(1).map(l=>this.parse(l))]}return s.map(c=>this.parse(c))});if(this.debug(this.pattern,i),this.set=i.filter(s=>s.indexOf(!1)===-1),this.isWindows)for(let s=0;s=2?(e=this.firstPhasePreProcess(e),e=this.secondPhasePreProcess(e)):r>=1?e=this.levelOneOptimize(e):e=this.adjascentGlobstarOptimize(e),e}adjascentGlobstarOptimize(e){return e.map(r=>{let n=-1;for(;(n=r.indexOf("**",n+1))!==-1;){let i=n;for(;r[i+1]==="**";)i++;i!==n&&r.splice(n,i-n)}return r})}levelOneOptimize(e){return e.map(r=>(r=r.reduce((n,i)=>{let s=n[n.length-1];return i==="**"&&s==="**"?n:i===".."&&s&&s!==".."&&s!=="."&&s!=="**"?(n.pop(),n):(n.push(i),n)},[]),r.length===0?[""]:r))}levelTwoFileOptimize(e){Array.isArray(e)||(e=this.slashSplit(e));let r=!1;do{if(r=!1,!this.preserveMultipleSlashes){for(let i=1;ii&&n.splice(i+1,o-i);let a=n[i+1],c=n[i+2],u=n[i+3];if(a!==".."||!c||c==="."||c===".."||!u||u==="."||u==="..")continue;r=!0,n.splice(i,1);let l=n.slice(0);l[i]="**",e.push(l),i--}if(!this.preserveMultipleSlashes){for(let o=1;or.length)}partsMatch(e,r,n=!1){let i=0,s=0,o=[],a="";for(;i=2&&(e=this.levelTwoFileOptimize(e)),r.includes(Yt)?this.#e(e,r,n,i,s):this.#i(e,r,n,i,s)}#e(e,r,n,i,s){let o=r.indexOf(Yt,s),a=r.lastIndexOf(Yt),[c,u,l]=n?[r.slice(s,o),r.slice(o+1),[]]:[r.slice(s,o),r.slice(o+1,a),r.slice(a+1)];if(c.length){let y=e.slice(i,i+c.length);if(!this.#i(y,c,n,0,0))return!1;i+=c.length,s+=c.length}let d=0;if(l.length){if(l.length+i>e.length)return!1;let y=e.length-l.length;if(this.#i(e,l,n,y,0))d=l.length;else{if(e[e.length-1]!==""||i+l.length===e.length||(y--,!this.#i(e,l,n,y,0)))return!1;d=l.length+1}}if(!u.length){let y=!!d;for(let b=i;b{let u=c.map(d=>{if(d instanceof RegExp)for(let p of d.flags.split(""))i.add(p);return typeof d=="string"?qSe(d):d===Yt?Yt:d._src});u.forEach((d,p)=>{let f=u[p+1],m=u[p-1];d!==Yt||m===Yt||(m===void 0?f!==void 0&&f!==Yt?u[p+1]="(?:\\/|"+n+"\\/)?"+f:u[p]=n:f===void 0?u[p-1]=m+"(?:\\/|\\/"+n+")?":f!==Yt&&(u[p-1]=m+"(?:\\/|\\/"+n+"\\/)"+f,u[p+1]=Yt))});let l=u.filter(d=>d!==Yt);if(this.partial&&l.length>=1){let d=[];for(let p=1;p<=l.length;p++)d.push(l.slice(0,p).join("/"));return"(?:"+d.join("|")+")"}return l.join("/")}).join("|"),[o,a]=e.length>1?["(?:",")"]:["",""];s="^"+o+s+a+"$",this.partial&&(s="^(?:\\/|"+o+s.slice(1,-1)+a+")$"),this.negate&&(s="^(?!"+s+").+$");try{this.regexp=new RegExp(s,[...i].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(e){return this.preserveMultipleSlashes?e.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(e)?["",...e.split(/\/+/)]:e.split(/\/+/)}match(e,r=this.partial){if(this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return e==="";if(e==="/"&&r)return!0;let n=this.options;this.isWindows&&(e=e.split("\\").join("/"));let i=this.slashSplit(e);this.debug(this.pattern,"split",i);let s=this.set;this.debug(this.pattern,"set",s);let o=i[i.length-1];if(!o)for(let a=i.length-2;!o&&a>=0;a--)o=i[a];for(let a=0;a{typeof YI.emitWarning=="function"?YI.emitWarning(t,e,r,n):console.error(`[${r}] ${e}: ${t}`)},Yy=globalThis.AbortController,L8=globalThis.AbortSignal;if(typeof Yy>"u"){L8=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(r,n){this._onabort.push(n)}},Yy=class{constructor(){e()}signal=new L8;abort(r){if(!this.signal.aborted){this.signal.reason=r,this.signal.aborted=!0;for(let n of this.signal._onabort)n(r);this.signal.onabort?.(r)}}};let t=YI.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",e=()=>{t&&(t=!1,F8("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",e))}}var ZSe=t=>!U8.has(t);var Fo=t=>t&&t===Math.floor(t)&&t>0&&isFinite(t),q8=t=>Fo(t)?t<=Math.pow(2,8)?Uint8Array:t<=Math.pow(2,16)?Uint16Array:t<=Math.pow(2,32)?Uint32Array:t<=Number.MAX_SAFE_INTEGER?Xy:null:null,Xy=class extends Array{constructor(t){super(t),this.fill(0)}},BSe=class Ff{heap;length;static#e=!1;static create(e){let r=q8(e);if(!r)return[];Ff.#e=!0;let n=new Ff(e,r);return Ff.#e=!1,n}constructor(e,r){if(!Ff.#e)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new r(e),this.length=0}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}},qf=class H8{#e;#n;#i;#t;#o;#w;#y;#d;get perf(){return this.#d}ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#a;#p;#l;#c;#s;#_;#S;#m;#h;#T;#g;#x;#E;#f;#v;#b;#$;#r;#N;static unsafeExposeInternals(e){return{starts:e.#E,ttls:e.#f,autopurgeTimers:e.#v,sizes:e.#x,keyMap:e.#l,keyList:e.#c,valList:e.#s,next:e.#_,prev:e.#S,get head(){return e.#m},get tail(){return e.#h},free:e.#T,isBackgroundFetch:r=>e.#u(r),backgroundFetch:(r,n,i,s)=>e.#q(r,n,i,s),moveToTail:r=>e.#D(r),indexes:r=>e.#O(r),rindexes:r=>e.#C(r),isStale:r=>e.#k(r)}}get max(){return this.#e}get maxSize(){return this.#n}get calculatedSize(){return this.#p}get size(){return this.#a}get fetchMethod(){return this.#w}get memoMethod(){return this.#y}get dispose(){return this.#i}get onInsert(){return this.#t}get disposeAfter(){return this.#o}constructor(e){let{max:r=0,ttl:n,ttlResolution:i=1,ttlAutopurge:s,updateAgeOnGet:o,updateAgeOnHas:a,allowStale:c,dispose:u,onInsert:l,disposeAfter:d,noDisposeOnSet:p,noUpdateTTL:f,maxSize:m=0,maxEntrySize:h=0,sizeCalculation:g,fetchMethod:v,memoMethod:y,noDeleteOnFetchRejection:b,noDeleteOnStaleGet:S,allowStaleOnFetchRejection:x,allowStaleOnFetchAbort:w,ignoreFetchAbort:E,perf:T}=e;if(T!==void 0&&typeof T?.now!="function")throw new TypeError("perf option must have a now() method if specified");if(this.#d=T??HSe,r!==0&&!Fo(r))throw new TypeError("max option must be a nonnegative integer");let I=r?q8(r):Array;if(!I)throw new Error("invalid max value: "+r);if(this.#e=r,this.#n=m,this.maxEntrySize=h||this.#n,this.sizeCalculation=g,this.sizeCalculation){if(!this.#n&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(y!==void 0&&typeof y!="function")throw new TypeError("memoMethod must be a function if defined");if(this.#y=y,v!==void 0&&typeof v!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#w=v,this.#$=!!v,this.#l=new Map,this.#c=new Array(r).fill(void 0),this.#s=new Array(r).fill(void 0),this.#_=new I(r),this.#S=new I(r),this.#m=0,this.#h=0,this.#T=BSe.create(r),this.#a=0,this.#p=0,typeof u=="function"&&(this.#i=u),typeof l=="function"&&(this.#t=l),typeof d=="function"?(this.#o=d,this.#g=[]):(this.#o=void 0,this.#g=void 0),this.#b=!!this.#i,this.#N=!!this.#t,this.#r=!!this.#o,this.noDisposeOnSet=!!p,this.noUpdateTTL=!!f,this.noDeleteOnFetchRejection=!!b,this.allowStaleOnFetchRejection=!!x,this.allowStaleOnFetchAbort=!!w,this.ignoreFetchAbort=!!E,this.maxEntrySize!==0){if(this.#n!==0&&!Fo(this.#n))throw new TypeError("maxSize must be a positive integer if specified");if(!Fo(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#Z()}if(this.allowStale=!!c,this.noDeleteOnStaleGet=!!S,this.updateAgeOnGet=!!o,this.updateAgeOnHas=!!a,this.ttlResolution=Fo(i)||i===0?i:1,this.ttlAutopurge=!!s,this.ttl=n||0,this.ttl){if(!Fo(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#P()}if(this.#e===0&&this.ttl===0&&this.#n===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#e&&!this.#n){let P="LRU_CACHE_UNBOUNDED";ZSe(P)&&(U8.add(P),F8("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",P,H8))}}getRemainingTTL(e){return this.#l.has(e)?1/0:0}#P(){let e=new Xy(this.#e),r=new Xy(this.#e);this.#f=e,this.#E=r;let n=this.ttlAutopurge?new Array(this.#e):void 0;this.#v=n,this.#z=(a,c,u=this.#d.now())=>{r[a]=c!==0?u:0,e[a]=c,i(a,c)},this.#I=a=>{r[a]=e[a]!==0?this.#d.now():0,i(a,e[a])};let i=this.ttlAutopurge?(a,c)=>{if(n?.[a]&&(clearTimeout(n[a]),n[a]=void 0),c&&c!==0&&n){let u=setTimeout(()=>{this.#k(a)&&this.#R(this.#c[a],"expire")},c+1);u.unref&&u.unref(),n[a]=u}}:()=>{};this.#A=(a,c)=>{if(e[c]){let u=e[c],l=r[c];if(!u||!l)return;a.ttl=u,a.start=l,a.now=s||o();let d=a.now-l;a.remainingTTL=u-d}};let s=0,o=()=>{let a=this.#d.now();if(this.ttlResolution>0){s=a;let c=setTimeout(()=>s=0,this.ttlResolution);c.unref&&c.unref()}return a};this.getRemainingTTL=a=>{let c=this.#l.get(a);if(c===void 0)return 0;let u=e[c],l=r[c];if(!u||!l)return 1/0;let d=(s||o())-l;return u-d},this.#k=a=>{let c=r[a],u=e[a];return!!u&&!!c&&(s||o())-c>u}}#I=()=>{};#A=()=>{};#z=()=>{};#k=()=>!1;#Z(){let e=new Xy(this.#e);this.#p=0,this.#x=e,this.#j=r=>{this.#p-=e[r],e[r]=0},this.#L=(r,n,i,s)=>{if(this.#u(n))return 0;if(!Fo(i))if(s){if(typeof s!="function")throw new TypeError("sizeCalculation must be a function");if(i=s(n,r),!Fo(i))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return i},this.#M=(r,n,i)=>{if(e[r]=n,this.#n){let s=this.#n-e[r];for(;this.#p>s;)this.#F(!0)}this.#p+=e[r],i&&(i.entrySize=n,i.totalCalculatedSize=this.#p)}}#j=e=>{};#M=(e,r,n)=>{};#L=(e,r,n,i)=>{if(n||i)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#O({allowStale:e=this.allowStale}={}){if(this.#a)for(let r=this.#h;!(!this.#U(r)||((e||!this.#k(r))&&(yield r),r===this.#m));)r=this.#S[r]}*#C({allowStale:e=this.allowStale}={}){if(this.#a)for(let r=this.#m;!(!this.#U(r)||((e||!this.#k(r))&&(yield r),r===this.#h));)r=this.#_[r]}#U(e){return e!==void 0&&this.#l.get(this.#c[e])===e}*entries(){for(let e of this.#O())this.#s[e]!==void 0&&this.#c[e]!==void 0&&!this.#u(this.#s[e])&&(yield[this.#c[e],this.#s[e]])}*rentries(){for(let e of this.#C())this.#s[e]!==void 0&&this.#c[e]!==void 0&&!this.#u(this.#s[e])&&(yield[this.#c[e],this.#s[e]])}*keys(){for(let e of this.#O()){let r=this.#c[e];r!==void 0&&!this.#u(this.#s[e])&&(yield r)}}*rkeys(){for(let e of this.#C()){let r=this.#c[e];r!==void 0&&!this.#u(this.#s[e])&&(yield r)}}*values(){for(let e of this.#O())this.#s[e]!==void 0&&!this.#u(this.#s[e])&&(yield this.#s[e])}*rvalues(){for(let e of this.#C())this.#s[e]!==void 0&&!this.#u(this.#s[e])&&(yield this.#s[e])}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(e,r={}){for(let n of this.#O()){let i=this.#s[n],s=this.#u(i)?i.__staleWhileFetching:i;if(s!==void 0&&e(s,this.#c[n],this))return this.get(this.#c[n],r)}}forEach(e,r=this){for(let n of this.#O()){let i=this.#s[n],s=this.#u(i)?i.__staleWhileFetching:i;s!==void 0&&e.call(r,s,this.#c[n],this)}}rforEach(e,r=this){for(let n of this.#C()){let i=this.#s[n],s=this.#u(i)?i.__staleWhileFetching:i;s!==void 0&&e.call(r,s,this.#c[n],this)}}purgeStale(){let e=!1;for(let r of this.#C({allowStale:!0}))this.#k(r)&&(this.#R(this.#c[r],"expire"),e=!0);return e}info(e){let r=this.#l.get(e);if(r===void 0)return;let n=this.#s[r],i=this.#u(n)?n.__staleWhileFetching:n;if(i===void 0)return;let s={value:i};if(this.#f&&this.#E){let o=this.#f[r],a=this.#E[r];if(o&&a){let c=o-(this.#d.now()-a);s.ttl=c,s.start=Date.now()}}return this.#x&&(s.size=this.#x[r]),s}dump(){let e=[];for(let r of this.#O({allowStale:!0})){let n=this.#c[r],i=this.#s[r],s=this.#u(i)?i.__staleWhileFetching:i;if(s===void 0||n===void 0)continue;let o={value:s};if(this.#f&&this.#E){o.ttl=this.#f[r];let a=this.#d.now()-this.#E[r];o.start=Math.floor(Date.now()-a)}this.#x&&(o.size=this.#x[r]),e.unshift([n,o])}return e}load(e){this.clear();for(let[r,n]of e){if(n.start){let i=Date.now()-n.start;n.start=this.#d.now()-i}this.set(r,n.value,n)}}set(e,r,n={}){if(r===void 0)return this.delete(e),this;let{ttl:i=this.ttl,start:s,noDisposeOnSet:o=this.noDisposeOnSet,sizeCalculation:a=this.sizeCalculation,status:c}=n,{noUpdateTTL:u=this.noUpdateTTL}=n,l=this.#L(e,r,n.size||0,a);if(this.maxEntrySize&&l>this.maxEntrySize)return c&&(c.set="miss",c.maxEntrySizeExceeded=!0),this.#R(e,"set"),this;let d=this.#a===0?void 0:this.#l.get(e);if(d===void 0)d=this.#a===0?this.#h:this.#T.length!==0?this.#T.pop():this.#a===this.#e?this.#F(!1):this.#a,this.#c[d]=e,this.#s[d]=r,this.#l.set(e,d),this.#_[this.#h]=d,this.#S[d]=this.#h,this.#h=d,this.#a++,this.#M(d,l,c),c&&(c.set="add"),u=!1,this.#N&&this.#t?.(r,e,"add");else{this.#D(d);let p=this.#s[d];if(r!==p){if(this.#$&&this.#u(p)){p.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:f}=p;f!==void 0&&!o&&(this.#b&&this.#i?.(f,e,"set"),this.#r&&this.#g?.push([f,e,"set"]))}else o||(this.#b&&this.#i?.(p,e,"set"),this.#r&&this.#g?.push([p,e,"set"]));if(this.#j(d),this.#M(d,l,c),this.#s[d]=r,c){c.set="replace";let f=p&&this.#u(p)?p.__staleWhileFetching:p;f!==void 0&&(c.oldValue=f)}}else c&&(c.set="update");this.#N&&this.onInsert?.(r,e,r===p?"update":"replace")}if(i!==0&&!this.#f&&this.#P(),this.#f&&(u||this.#z(d,i,s),c&&this.#A(c,d)),!o&&this.#r&&this.#g){let p=this.#g,f;for(;f=p?.shift();)this.#o?.(...f)}return this}pop(){try{for(;this.#a;){let e=this.#s[this.#m];if(this.#F(!0),this.#u(e)){if(e.__staleWhileFetching)return e.__staleWhileFetching}else if(e!==void 0)return e}}finally{if(this.#r&&this.#g){let e=this.#g,r;for(;r=e?.shift();)this.#o?.(...r)}}}#F(e){let r=this.#m,n=this.#c[r],i=this.#s[r];return this.#$&&this.#u(i)?i.__abortController.abort(new Error("evicted")):(this.#b||this.#r)&&(this.#b&&this.#i?.(i,n,"evict"),this.#r&&this.#g?.push([i,n,"evict"])),this.#j(r),this.#v?.[r]&&(clearTimeout(this.#v[r]),this.#v[r]=void 0),e&&(this.#c[r]=void 0,this.#s[r]=void 0,this.#T.push(r)),this.#a===1?(this.#m=this.#h=0,this.#T.length=0):this.#m=this.#_[r],this.#l.delete(n),this.#a--,r}has(e,r={}){let{updateAgeOnHas:n=this.updateAgeOnHas,status:i}=r,s=this.#l.get(e);if(s!==void 0){let o=this.#s[s];if(this.#u(o)&&o.__staleWhileFetching===void 0)return!1;if(this.#k(s))i&&(i.has="stale",this.#A(i,s));else return n&&this.#I(s),i&&(i.has="hit",this.#A(i,s)),!0}else i&&(i.has="miss");return!1}peek(e,r={}){let{allowStale:n=this.allowStale}=r,i=this.#l.get(e);if(i===void 0||!n&&this.#k(i))return;let s=this.#s[i];return this.#u(s)?s.__staleWhileFetching:s}#q(e,r,n,i){let s=r===void 0?void 0:this.#s[r];if(this.#u(s))return s;let o=new Yy,{signal:a}=n;a?.addEventListener("abort",()=>o.abort(a.reason),{signal:o.signal});let c={signal:o.signal,options:n,context:i},u=(h,g=!1)=>{let{aborted:v}=o.signal,y=n.ignoreFetchAbort&&h!==void 0,b=n.ignoreFetchAbort||!!(n.allowStaleOnFetchAbort&&h!==void 0);if(n.status&&(v&&!g?(n.status.fetchAborted=!0,n.status.fetchError=o.signal.reason,y&&(n.status.fetchAbortIgnored=!0)):n.status.fetchResolved=!0),v&&!y&&!g)return d(o.signal.reason,b);let S=f,x=this.#s[r];return(x===f||y&&g&&x===void 0)&&(h===void 0?S.__staleWhileFetching!==void 0?this.#s[r]=S.__staleWhileFetching:this.#R(e,"fetch"):(n.status&&(n.status.fetchUpdated=!0),this.set(e,h,c.options))),h},l=h=>(n.status&&(n.status.fetchRejected=!0,n.status.fetchError=h),d(h,!1)),d=(h,g)=>{let{aborted:v}=o.signal,y=v&&n.allowStaleOnFetchAbort,b=y||n.allowStaleOnFetchRejection,S=b||n.noDeleteOnFetchRejection,x=f;if(this.#s[r]===f&&(!S||!g&&x.__staleWhileFetching===void 0?this.#R(e,"fetch"):y||(this.#s[r]=x.__staleWhileFetching)),b)return n.status&&x.__staleWhileFetching!==void 0&&(n.status.returnedStale=!0),x.__staleWhileFetching;if(x.__returned===x)throw h},p=(h,g)=>{let v=this.#w?.(e,s,c);v&&v instanceof Promise&&v.then(y=>h(y===void 0?void 0:y),g),o.signal.addEventListener("abort",()=>{(!n.ignoreFetchAbort||n.allowStaleOnFetchAbort)&&(h(void 0),n.allowStaleOnFetchAbort&&(h=y=>u(y,!0)))})};n.status&&(n.status.fetchDispatched=!0);let f=new Promise(p).then(u,l),m=Object.assign(f,{__abortController:o,__staleWhileFetching:s,__returned:void 0});return r===void 0?(this.set(e,m,{...c.options,status:void 0}),r=this.#l.get(e)):this.#s[r]=m,m}#u(e){if(!this.#$)return!1;let r=e;return!!r&&r instanceof Promise&&r.hasOwnProperty("__staleWhileFetching")&&r.__abortController instanceof Yy}async fetch(e,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:i=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,ttl:o=this.ttl,noDisposeOnSet:a=this.noDisposeOnSet,size:c=0,sizeCalculation:u=this.sizeCalculation,noUpdateTTL:l=this.noUpdateTTL,noDeleteOnFetchRejection:d=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:p=this.allowStaleOnFetchRejection,ignoreFetchAbort:f=this.ignoreFetchAbort,allowStaleOnFetchAbort:m=this.allowStaleOnFetchAbort,context:h,forceRefresh:g=!1,status:v,signal:y}=r;if(!this.#$)return v&&(v.fetch="get"),this.get(e,{allowStale:n,updateAgeOnGet:i,noDeleteOnStaleGet:s,status:v});let b={allowStale:n,updateAgeOnGet:i,noDeleteOnStaleGet:s,ttl:o,noDisposeOnSet:a,size:c,sizeCalculation:u,noUpdateTTL:l,noDeleteOnFetchRejection:d,allowStaleOnFetchRejection:p,allowStaleOnFetchAbort:m,ignoreFetchAbort:f,status:v,signal:y},S=this.#l.get(e);if(S===void 0){v&&(v.fetch="miss");let x=this.#q(e,S,b,h);return x.__returned=x}else{let x=this.#s[S];if(this.#u(x)){let I=n&&x.__staleWhileFetching!==void 0;return v&&(v.fetch="inflight",I&&(v.returnedStale=!0)),I?x.__staleWhileFetching:x.__returned=x}let w=this.#k(S);if(!g&&!w)return v&&(v.fetch="hit"),this.#D(S),i&&this.#I(S),v&&this.#A(v,S),x;let E=this.#q(e,S,b,h),T=E.__staleWhileFetching!==void 0&&n;return v&&(v.fetch=w?"stale":"refresh",T&&w&&(v.returnedStale=!0)),T?E.__staleWhileFetching:E.__returned=E}}async forceFetch(e,r={}){let n=await this.fetch(e,r);if(n===void 0)throw new Error("fetch() returned undefined");return n}memo(e,r={}){let n=this.#y;if(!n)throw new Error("no memoMethod provided to constructor");let{context:i,forceRefresh:s,...o}=r,a=this.get(e,o);if(!s&&a!==void 0)return a;let c=n(e,a,{options:o,context:i});return this.set(e,c,o),c}get(e,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:i=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,status:o}=r,a=this.#l.get(e);if(a!==void 0){let c=this.#s[a],u=this.#u(c);return o&&this.#A(o,a),this.#k(a)?(o&&(o.get="stale"),u?(o&&n&&c.__staleWhileFetching!==void 0&&(o.returnedStale=!0),n?c.__staleWhileFetching:void 0):(s||this.#R(e,"expire"),o&&n&&(o.returnedStale=!0),n?c:void 0)):(o&&(o.get="hit"),u?c.__staleWhileFetching:(this.#D(a),i&&this.#I(a),c))}else o&&(o.get="miss")}#H(e,r){this.#S[r]=e,this.#_[e]=r}#D(e){e!==this.#h&&(e===this.#m?this.#m=this.#_[e]:this.#H(this.#S[e],this.#_[e]),this.#H(this.#h,e),this.#h=e)}delete(e){return this.#R(e,"delete")}#R(e,r){let n=!1;if(this.#a!==0){let i=this.#l.get(e);if(i!==void 0)if(this.#v?.[i]&&(clearTimeout(this.#v?.[i]),this.#v[i]=void 0),n=!0,this.#a===1)this.#B(r);else{this.#j(i);let s=this.#s[i];if(this.#u(s)?s.__abortController.abort(new Error("deleted")):(this.#b||this.#r)&&(this.#b&&this.#i?.(s,e,r),this.#r&&this.#g?.push([s,e,r])),this.#l.delete(e),this.#c[i]=void 0,this.#s[i]=void 0,i===this.#h)this.#h=this.#S[i];else if(i===this.#m)this.#m=this.#_[i];else{let o=this.#S[i];this.#_[o]=this.#_[i];let a=this.#_[i];this.#S[a]=this.#S[i]}this.#a--,this.#T.push(i)}}if(this.#r&&this.#g?.length){let i=this.#g,s;for(;s=i?.shift();)this.#o?.(...s)}return n}clear(){return this.#B("delete")}#B(e){for(let r of this.#C({allowStale:!0})){let n=this.#s[r];if(this.#u(n))n.__abortController.abort(new Error("deleted"));else{let i=this.#c[r];this.#b&&this.#i?.(n,i,e),this.#r&&this.#g?.push([n,i,e])}}if(this.#l.clear(),this.#s.fill(void 0),this.#c.fill(void 0),this.#f&&this.#E){this.#f.fill(0),this.#E.fill(0);for(let r of this.#v??[])r!==void 0&&clearTimeout(r);this.#v?.fill(void 0)}if(this.#x&&this.#x.fill(0),this.#m=0,this.#h=0,this.#T.length=0,this.#p=0,this.#a=0,this.#r&&this.#g){let r=this.#g,n;for(;n=r?.shift();)this.#o?.(...n)}}};var al=require("node:path"),Q8=require("node:url"),ls=require("fs"),txe=Pe(require("node:fs"),1),Zo=require("node:fs/promises");var s_=require("node:events"),sR=Pe(require("node:stream"),1),V8=require("node:string_decoder"),Z8=typeof process=="object"&&process?process:{stdout:null,stderr:null},GSe=t=>!!t&&typeof t=="object"&&(t instanceof Ho||t instanceof sR.default||WSe(t)||VSe(t)),WSe=t=>!!t&&typeof t=="object"&&t instanceof s_.EventEmitter&&typeof t.pipe=="function"&&t.pipe!==sR.default.Writable.prototype.pipe,VSe=t=>!!t&&typeof t=="object"&&t instanceof s_.EventEmitter&&typeof t.write=="function"&&typeof t.end=="function",Ys=Symbol("EOF"),Qs=Symbol("maybeEmitEnd"),qo=Symbol("emittedEnd"),Qy=Symbol("emittingEnd"),Hf=Symbol("emittedError"),e_=Symbol("closed"),B8=Symbol("read"),t_=Symbol("flush"),G8=Symbol("flushChunk"),Ci=Symbol("encoding"),sl=Symbol("decoder"),vr=Symbol("flowing"),Zf=Symbol("paused"),ol=Symbol("resume"),yr=Symbol("buffer"),cn=Symbol("pipes"),_r=Symbol("bufferLength"),QI=Symbol("bufferPush"),r_=Symbol("bufferShift"),Zr=Symbol("objectMode"),Qt=Symbol("destroyed"),eR=Symbol("error"),tR=Symbol("emitData"),W8=Symbol("emitEnd"),rR=Symbol("emitEnd2"),cs=Symbol("async"),nR=Symbol("abort"),n_=Symbol("aborted"),Bf=Symbol("signal"),qa=Symbol("dataListeners"),zn=Symbol("discarded"),Gf=t=>Promise.resolve().then(t),KSe=t=>t(),JSe=t=>t==="end"||t==="finish"||t==="prefinish",XSe=t=>t instanceof ArrayBuffer||!!t&&typeof t=="object"&&t.constructor&&t.constructor.name==="ArrayBuffer"&&t.byteLength>=0,YSe=t=>!Buffer.isBuffer(t)&&ArrayBuffer.isView(t),i_=class{src;dest;opts;ondrain;constructor(e,r,n){this.src=e,this.dest=r,this.opts=n,this.ondrain=()=>e[ol](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(e){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},iR=class extends i_{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(e,r,n){super(e,r,n),this.proxyErrors=i=>this.dest.emit("error",i),e.on("error",this.proxyErrors)}},QSe=t=>!!t.objectMode,exe=t=>!t.objectMode&&!!t.encoding&&t.encoding!=="buffer",Ho=class extends s_.EventEmitter{[vr]=!1;[Zf]=!1;[cn]=[];[yr]=[];[Zr];[Ci];[cs];[sl];[Ys]=!1;[qo]=!1;[Qy]=!1;[e_]=!1;[Hf]=null;[_r]=0;[Qt]=!1;[Bf];[n_]=!1;[qa]=0;[zn]=!1;writable=!0;readable=!0;constructor(...e){let r=e[0]||{};if(super(),r.objectMode&&typeof r.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");QSe(r)?(this[Zr]=!0,this[Ci]=null):exe(r)?(this[Ci]=r.encoding,this[Zr]=!1):(this[Zr]=!1,this[Ci]=null),this[cs]=!!r.async,this[sl]=this[Ci]?new V8.StringDecoder(this[Ci]):null,r&&r.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[yr]}),r&&r.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[cn]});let{signal:n}=r;n&&(this[Bf]=n,n.aborted?this[nR]():n.addEventListener("abort",()=>this[nR]()))}get bufferLength(){return this[_r]}get encoding(){return this[Ci]}set encoding(e){throw new Error("Encoding must be set at instantiation time")}setEncoding(e){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[Zr]}set objectMode(e){throw new Error("objectMode must be set at instantiation time")}get async(){return this[cs]}set async(e){this[cs]=this[cs]||!!e}[nR](){this[n_]=!0,this.emit("abort",this[Bf]?.reason),this.destroy(this[Bf]?.reason)}get aborted(){return this[n_]}set aborted(e){}write(e,r,n){if(this[n_])return!1;if(this[Ys])throw new Error("write after end");if(this[Qt])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let i=this[cs]?Gf:KSe;if(!this[Zr]&&!Buffer.isBuffer(e)){if(YSe(e))e=Buffer.from(e.buffer,e.byteOffset,e.byteLength);else if(XSe(e))e=Buffer.from(e);else if(typeof e!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[Zr]?(this[vr]&&this[_r]!==0&&this[t_](!0),this[vr]?this.emit("data",e):this[QI](e),this[_r]!==0&&this.emit("readable"),n&&i(n),this[vr]):e.length?(typeof e=="string"&&!(r===this[Ci]&&!this[sl]?.lastNeed)&&(e=Buffer.from(e,r)),Buffer.isBuffer(e)&&this[Ci]&&(e=this[sl].write(e)),this[vr]&&this[_r]!==0&&this[t_](!0),this[vr]?this.emit("data",e):this[QI](e),this[_r]!==0&&this.emit("readable"),n&&i(n),this[vr]):(this[_r]!==0&&this.emit("readable"),n&&i(n),this[vr])}read(e){if(this[Qt])return null;if(this[zn]=!1,this[_r]===0||e===0||e&&e>this[_r])return this[Qs](),null;this[Zr]&&(e=null),this[yr].length>1&&!this[Zr]&&(this[yr]=[this[Ci]?this[yr].join(""):Buffer.concat(this[yr],this[_r])]);let r=this[B8](e||null,this[yr][0]);return this[Qs](),r}[B8](e,r){if(this[Zr])this[r_]();else{let n=r;e===n.length||e===null?this[r_]():typeof n=="string"?(this[yr][0]=n.slice(e),r=n.slice(0,e),this[_r]-=e):(this[yr][0]=n.subarray(e),r=n.subarray(0,e),this[_r]-=e)}return this.emit("data",r),!this[yr].length&&!this[Ys]&&this.emit("drain"),r}end(e,r,n){return typeof e=="function"&&(n=e,e=void 0),typeof r=="function"&&(n=r,r="utf8"),e!==void 0&&this.write(e,r),n&&this.once("end",n),this[Ys]=!0,this.writable=!1,(this[vr]||!this[Zf])&&this[Qs](),this}[ol](){this[Qt]||(!this[qa]&&!this[cn].length&&(this[zn]=!0),this[Zf]=!1,this[vr]=!0,this.emit("resume"),this[yr].length?this[t_]():this[Ys]?this[Qs]():this.emit("drain"))}resume(){return this[ol]()}pause(){this[vr]=!1,this[Zf]=!0,this[zn]=!1}get destroyed(){return this[Qt]}get flowing(){return this[vr]}get paused(){return this[Zf]}[QI](e){this[Zr]?this[_r]+=1:this[_r]+=e.length,this[yr].push(e)}[r_](){return this[Zr]?this[_r]-=1:this[_r]-=this[yr][0].length,this[yr].shift()}[t_](e=!1){do;while(this[G8](this[r_]())&&this[yr].length);!e&&!this[yr].length&&!this[Ys]&&this.emit("drain")}[G8](e){return this.emit("data",e),this[vr]}pipe(e,r){if(this[Qt])return e;this[zn]=!1;let n=this[qo];return r=r||{},e===Z8.stdout||e===Z8.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,n?r.end&&e.end():(this[cn].push(r.proxyErrors?new iR(this,e,r):new i_(this,e,r)),this[cs]?Gf(()=>this[ol]()):this[ol]()),e}unpipe(e){let r=this[cn].find(n=>n.dest===e);r&&(this[cn].length===1?(this[vr]&&this[qa]===0&&(this[vr]=!1),this[cn]=[]):this[cn].splice(this[cn].indexOf(r),1),r.unpipe())}addListener(e,r){return this.on(e,r)}on(e,r){let n=super.on(e,r);if(e==="data")this[zn]=!1,this[qa]++,!this[cn].length&&!this[vr]&&this[ol]();else if(e==="readable"&&this[_r]!==0)super.emit("readable");else if(JSe(e)&&this[qo])super.emit(e),this.removeAllListeners(e);else if(e==="error"&&this[Hf]){let i=r;this[cs]?Gf(()=>i.call(this,this[Hf])):i.call(this,this[Hf])}return n}removeListener(e,r){return this.off(e,r)}off(e,r){let n=super.off(e,r);return e==="data"&&(this[qa]=this.listeners("data").length,this[qa]===0&&!this[zn]&&!this[cn].length&&(this[vr]=!1)),n}removeAllListeners(e){let r=super.removeAllListeners(e);return(e==="data"||e===void 0)&&(this[qa]=0,!this[zn]&&!this[cn].length&&(this[vr]=!1)),r}get emittedEnd(){return this[qo]}[Qs](){!this[Qy]&&!this[qo]&&!this[Qt]&&this[yr].length===0&&this[Ys]&&(this[Qy]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[e_]&&this.emit("close"),this[Qy]=!1)}emit(e,...r){let n=r[0];if(e!=="error"&&e!=="close"&&e!==Qt&&this[Qt])return!1;if(e==="data")return!this[Zr]&&!n?!1:this[cs]?(Gf(()=>this[tR](n)),!0):this[tR](n);if(e==="end")return this[W8]();if(e==="close"){if(this[e_]=!0,!this[qo]&&!this[Qt])return!1;let s=super.emit("close");return this.removeAllListeners("close"),s}else if(e==="error"){this[Hf]=n,super.emit(eR,n);let s=!this[Bf]||this.listeners("error").length?super.emit("error",n):!1;return this[Qs](),s}else if(e==="resume"){let s=super.emit("resume");return this[Qs](),s}else if(e==="finish"||e==="prefinish"){let s=super.emit(e);return this.removeAllListeners(e),s}let i=super.emit(e,...r);return this[Qs](),i}[tR](e){for(let n of this[cn])n.dest.write(e)===!1&&this.pause();let r=this[zn]?!1:super.emit("data",e);return this[Qs](),r}[W8](){return this[qo]?!1:(this[qo]=!0,this.readable=!1,this[cs]?(Gf(()=>this[rR]()),!0):this[rR]())}[rR](){if(this[sl]){let r=this[sl].end();if(r){for(let n of this[cn])n.dest.write(r);this[zn]||super.emit("data",r)}}for(let r of this[cn])r.end();let e=super.emit("end");return this.removeAllListeners("end"),e}async collect(){let e=Object.assign([],{dataLength:0});this[Zr]||(e.dataLength=0);let r=this.promise();return this.on("data",n=>{e.push(n),this[Zr]||(e.dataLength+=n.length)}),await r,e}async concat(){if(this[Zr])throw new Error("cannot concat in objectMode");let e=await this.collect();return this[Ci]?e.join(""):Buffer.concat(e,e.dataLength)}async promise(){return new Promise((e,r)=>{this.on(Qt,()=>r(new Error("stream destroyed"))),this.on("error",n=>r(n)),this.on("end",()=>e())})}[Symbol.asyncIterator](){this[zn]=!1;let e=!1,r=async()=>(this.pause(),e=!0,{value:void 0,done:!0});return{next:()=>{if(e)return r();let i=this.read();if(i!==null)return Promise.resolve({done:!1,value:i});if(this[Ys])return r();let s,o,a=d=>{this.off("data",c),this.off("end",u),this.off(Qt,l),r(),o(d)},c=d=>{this.off("error",a),this.off("end",u),this.off(Qt,l),this.pause(),s({value:d,done:!!this[Ys]})},u=()=>{this.off("error",a),this.off("data",c),this.off(Qt,l),r(),s({done:!0,value:void 0})},l=()=>a(new Error("stream destroyed"));return new Promise((d,p)=>{o=p,s=d,this.once(Qt,l),this.once("error",a),this.once("end",u),this.once("data",c)})},throw:r,return:r,[Symbol.asyncIterator](){return this},[Symbol.asyncDispose]:async()=>{}}}[Symbol.iterator](){this[zn]=!1;let e=!1,r=()=>(this.pause(),this.off(eR,r),this.off(Qt,r),this.off("end",r),e=!0,{done:!0,value:void 0}),n=()=>{if(e)return r();let i=this.read();return i===null?r():{done:!1,value:i}};return this.once("end",r),this.once(eR,r),this.once(Qt,r),{next:n,throw:r,return:r,[Symbol.iterator](){return this},[Symbol.dispose]:()=>{}}}destroy(e){if(this[Qt])return e?this.emit("error",e):this.emit(Qt),this;this[Qt]=!0,this[zn]=!0,this[yr].length=0,this[_r]=0;let r=this;return typeof r.close=="function"&&!this[e_]&&r.close(),e?this.emit("error",e):this.emit(Qt),this}static get isStream(){return GSe}};var rxe=ls.realpathSync.native,Vf={lstatSync:ls.lstatSync,readdir:ls.readdir,readdirSync:ls.readdirSync,readlinkSync:ls.readlinkSync,realpathSync:rxe,promises:{lstat:Zo.lstat,readdir:Zo.readdir,readlink:Zo.readlink,realpath:Zo.realpath}},eH=t=>!t||t===Vf||t===txe?Vf:{...Vf,...t,promises:{...Vf.promises,...t.promises||{}}},tH=/^\\\\\?\\([a-z]:)\\?$/i,nxe=t=>t.replace(/\//g,"\\").replace(tH,"$1\\"),ixe=/[\\\/]/,ai=0,rH=1,nH=2,us=4,iH=6,sH=8,Ha=10,oH=12,oi=15,Wf=~oi,oR=16,K8=32,Kf=64,Pi=128,o_=256,c_=512,J8=Kf|Pi|c_,sxe=1023,aR=t=>t.isFile()?sH:t.isDirectory()?us:t.isSymbolicLink()?Ha:t.isCharacterDevice()?nH:t.isBlockDevice()?iH:t.isSocket()?oH:t.isFIFO()?rH:ai,X8=new qf({max:2**12}),Jf=t=>{let e=X8.get(t);if(e)return e;let r=t.normalize("NFKD");return X8.set(t,r),r},Y8=new qf({max:2**12}),a_=t=>{let e=Y8.get(t);if(e)return e;let r=Jf(t.toLowerCase());return Y8.set(t,r),r},u_=class extends qf{constructor(){super({max:256})}},cR=class extends qf{constructor(e=16*1024){super({maxSize:e,sizeCalculation:r=>r.length+1})}},aH=Symbol("PathScurry setAsCwd"),Br=class{name;root;roots;parent;nocase;isCWD=!1;#e;#n;get dev(){return this.#n}#i;get mode(){return this.#i}#t;get nlink(){return this.#t}#o;get uid(){return this.#o}#w;get gid(){return this.#w}#y;get rdev(){return this.#y}#d;get blksize(){return this.#d}#a;get ino(){return this.#a}#p;get size(){return this.#p}#l;get blocks(){return this.#l}#c;get atimeMs(){return this.#c}#s;get mtimeMs(){return this.#s}#_;get ctimeMs(){return this.#_}#S;get birthtimeMs(){return this.#S}#m;get atime(){return this.#m}#h;get mtime(){return this.#h}#T;get ctime(){return this.#T}#g;get birthtime(){return this.#g}#x;#E;#f;#v;#b;#$;#r;#N;#P;#I;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(e,r=ai,n,i,s,o,a){this.name=e,this.#x=s?a_(e):Jf(e),this.#r=r&sxe,this.nocase=s,this.roots=i,this.root=n||this,this.#N=o,this.#f=a.fullpath,this.#b=a.relative,this.#$=a.relativePosix,this.parent=a.parent,this.parent?this.#e=this.parent.#e:this.#e=eH(a.fs)}depth(){return this.#E!==void 0?this.#E:this.parent?this.#E=this.parent.depth()+1:this.#E=0}childrenCache(){return this.#N}resolve(e){if(!e)return this;let r=this.getRootString(e),i=e.substring(r.length).split(this.splitSep);return r?this.getRoot(r).#A(i):this.#A(i)}#A(e){let r=this;for(let n of e)r=r.child(n);return r}children(){let e=this.#N.get(this);if(e)return e;let r=Object.assign([],{provisional:0});return this.#N.set(this,r),this.#r&=~oR,r}child(e,r){if(e===""||e===".")return this;if(e==="..")return this.parent||this;let n=this.children(),i=this.nocase?a_(e):Jf(e);for(let c of n)if(c.#x===i)return c;let s=this.parent?this.sep:"",o=this.#f?this.#f+s+e:void 0,a=this.newChild(e,ai,{...r,parent:this,fullpath:o});return this.canReaddir()||(a.#r|=Pi),n.push(a),a}relative(){if(this.isCWD)return"";if(this.#b!==void 0)return this.#b;let e=this.name,r=this.parent;if(!r)return this.#b=this.name;let n=r.relative();return n+(!n||!r.parent?"":this.sep)+e}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#$!==void 0)return this.#$;let e=this.name,r=this.parent;if(!r)return this.#$=this.fullpathPosix();let n=r.relativePosix();return n+(!n||!r.parent?"":"/")+e}fullpath(){if(this.#f!==void 0)return this.#f;let e=this.name,r=this.parent;if(!r)return this.#f=this.name;let i=r.fullpath()+(r.parent?this.sep:"")+e;return this.#f=i}fullpathPosix(){if(this.#v!==void 0)return this.#v;if(this.sep==="/")return this.#v=this.fullpath();if(!this.parent){let i=this.fullpath().replace(/\\/g,"/");return/^[a-z]:\//i.test(i)?this.#v=`//?/${i}`:this.#v=i}let e=this.parent,r=e.fullpathPosix(),n=r+(!r||!e.parent?"":"/")+this.name;return this.#v=n}isUnknown(){return(this.#r&oi)===ai}isType(e){return this[`is${e}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#r&oi)===sH}isDirectory(){return(this.#r&oi)===us}isCharacterDevice(){return(this.#r&oi)===nH}isBlockDevice(){return(this.#r&oi)===iH}isFIFO(){return(this.#r&oi)===rH}isSocket(){return(this.#r&oi)===oH}isSymbolicLink(){return(this.#r&Ha)===Ha}lstatCached(){return this.#r&K8?this:void 0}readlinkCached(){return this.#P}realpathCached(){return this.#I}readdirCached(){let e=this.children();return e.slice(0,e.provisional)}canReadlink(){if(this.#P)return!0;if(!this.parent)return!1;let e=this.#r&oi;return!(e!==ai&&e!==Ha||this.#r&o_||this.#r&Pi)}calledReaddir(){return!!(this.#r&oR)}isENOENT(){return!!(this.#r&Pi)}isNamed(e){return this.nocase?this.#x===a_(e):this.#x===Jf(e)}async readlink(){let e=this.#P;if(e)return e;if(this.canReadlink()&&this.parent)try{let r=await this.#e.promises.readlink(this.fullpath()),n=(await this.parent.realpath())?.resolve(r);if(n)return this.#P=n}catch(r){this.#C(r.code);return}}readlinkSync(){let e=this.#P;if(e)return e;if(this.canReadlink()&&this.parent)try{let r=this.#e.readlinkSync(this.fullpath()),n=this.parent.realpathSync()?.resolve(r);if(n)return this.#P=n}catch(r){this.#C(r.code);return}}#z(e){this.#r|=oR;for(let r=e.provisional;rn(null,e))}readdirCB(e,r=!1){if(!this.canReaddir()){r?e(null,[]):queueMicrotask(()=>e(null,[]));return}let n=this.children();if(this.calledReaddir()){let s=n.slice(0,n.provisional);r?e(null,s):queueMicrotask(()=>e(null,s));return}if(this.#D.push(e),this.#R)return;this.#R=!0;let i=this.fullpath();this.#e.readdir(i,{withFileTypes:!0},(s,o)=>{if(s)this.#L(s.code),n.provisional=0;else{for(let a of o)this.#U(a,n);this.#z(n)}this.#B(n.slice(0,n.provisional))})}#G;async readdir(){if(!this.canReaddir())return[];let e=this.children();if(this.calledReaddir())return e.slice(0,e.provisional);let r=this.fullpath();if(this.#G)await this.#G;else{let n=()=>{};this.#G=new Promise(i=>n=i);try{for(let i of await this.#e.promises.readdir(r,{withFileTypes:!0}))this.#U(i,e);this.#z(e)}catch(i){this.#L(i.code),e.provisional=0}this.#G=void 0,n()}return e.slice(0,e.provisional)}readdirSync(){if(!this.canReaddir())return[];let e=this.children();if(this.calledReaddir())return e.slice(0,e.provisional);let r=this.fullpath();try{for(let n of this.#e.readdirSync(r,{withFileTypes:!0}))this.#U(n,e);this.#z(e)}catch(n){this.#L(n.code),e.provisional=0}return e.slice(0,e.provisional)}canReaddir(){if(this.#r&J8)return!1;let e=oi&this.#r;return e===ai||e===us||e===Ha}shouldWalk(e,r){return(this.#r&us)===us&&!(this.#r&J8)&&!e.has(this)&&(!r||r(this))}async realpath(){if(this.#I)return this.#I;if(!((c_|o_|Pi)&this.#r))try{let e=await this.#e.promises.realpath(this.fullpath());return this.#I=this.resolve(e)}catch{this.#j()}}realpathSync(){if(this.#I)return this.#I;if(!((c_|o_|Pi)&this.#r))try{let e=this.#e.realpathSync(this.fullpath());return this.#I=this.resolve(e)}catch{this.#j()}}[aH](e){if(e===this)return;e.isCWD=!1,this.isCWD=!0;let r=new Set([]),n=[],i=this;for(;i&&i.parent;)r.add(i),i.#b=n.join(this.sep),i.#$=n.join("/"),i=i.parent,n.push("..");for(i=e;i&&i.parent&&!r.has(i);)i.#b=void 0,i.#$=void 0,i=i.parent}},l_=class t extends Br{sep="\\";splitSep=ixe;constructor(e,r=ai,n,i,s,o,a){super(e,r,n,i,s,o,a)}newChild(e,r=ai,n={}){return new t(e,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}getRootString(e){return al.win32.parse(e).root}getRoot(e){if(e=nxe(e.toUpperCase()),e===this.root.name)return this.root;for(let[r,n]of Object.entries(this.roots))if(this.sameRoot(e,r))return this.roots[e]=n;return this.roots[e]=new cl(e,this).root}sameRoot(e,r=this.root.name){return e=e.toUpperCase().replace(/\//g,"\\").replace(tH,"$1\\"),e===r}},d_=class t extends Br{splitSep="/";sep="/";constructor(e,r=ai,n,i,s,o,a){super(e,r,n,i,s,o,a)}getRootString(e){return e.startsWith("/")?"/":""}getRoot(e){return this.root}newChild(e,r=ai,n={}){return new t(e,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}},p_=class{root;rootPath;roots;cwd;#e;#n;#i;nocase;#t;constructor(e=process.cwd(),r,n,{nocase:i,childrenCacheSize:s=16*1024,fs:o=Vf}={}){this.#t=eH(o),(e instanceof URL||e.startsWith("file://"))&&(e=(0,Q8.fileURLToPath)(e));let a=r.resolve(e);this.roots=Object.create(null),this.rootPath=this.parseRootPath(a),this.#e=new u_,this.#n=new u_,this.#i=new cR(s);let c=a.substring(this.rootPath.length).split(n);if(c.length===1&&!c[0]&&c.pop(),i===void 0)throw new TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=i,this.root=this.newRoot(this.#t),this.roots[this.rootPath]=this.root;let u=this.root,l=c.length-1,d=r.sep,p=this.rootPath,f=!1;for(let m of c){let h=l--;u=u.child(m,{relative:new Array(h).fill("..").join(d),relativePosix:new Array(h).fill("..").join("/"),fullpath:p+=(f?"":d)+m}),f=!0}this.cwd=u}depth(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.depth()}childrenCache(){return this.#i}resolve(...e){let r="";for(let s=e.length-1;s>=0;s--){let o=e[s];if(!(!o||o===".")&&(r=r?`${o}/${r}`:o,this.isAbsolute(o)))break}let n=this.#e.get(r);if(n!==void 0)return n;let i=this.cwd.resolve(r).fullpath();return this.#e.set(r,i),i}resolvePosix(...e){let r="";for(let s=e.length-1;s>=0;s--){let o=e[s];if(!(!o||o===".")&&(r=r?`${o}/${r}`:o,this.isAbsolute(o)))break}let n=this.#n.get(r);if(n!==void 0)return n;let i=this.cwd.resolve(r).fullpathPosix();return this.#n.set(r,i),i}relative(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.relative()}relativePosix(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.relativePosix()}basename(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.name}dirname(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),(e.parent||e).fullpath()}async readdir(e=this.cwd,r={withFileTypes:!0}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Br||(r=e,e=this.cwd);let{withFileTypes:n}=r;if(e.canReaddir()){let i=await e.readdir();return n?i:i.map(s=>s.name)}else return[]}readdirSync(e=this.cwd,r={withFileTypes:!0}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Br||(r=e,e=this.cwd);let{withFileTypes:n=!0}=r;return e.canReaddir()?n?e.readdirSync():e.readdirSync().map(i=>i.name):[]}async lstat(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.lstat()}lstatSync(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.lstatSync()}async readlink(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Br||(r=e.withFileTypes,e=this.cwd);let n=await e.readlink();return r?n:n?.fullpath()}readlinkSync(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Br||(r=e.withFileTypes,e=this.cwd);let n=e.readlinkSync();return r?n:n?.fullpath()}async realpath(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Br||(r=e.withFileTypes,e=this.cwd);let n=await e.realpath();return r?n:n?.fullpath()}realpathSync(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Br||(r=e.withFileTypes,e=this.cwd);let n=e.realpathSync();return r?n:n?.fullpath()}async walk(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Br||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=[];(!s||s(e))&&a.push(n?e:e.fullpath());let c=new Set,u=(d,p)=>{c.add(d),d.readdirCB((f,m)=>{if(f)return p(f);let h=m.length;if(!h)return p();let g=()=>{--h===0&&p()};for(let v of m)(!s||s(v))&&a.push(n?v:v.fullpath()),i&&v.isSymbolicLink()?v.realpath().then(y=>y?.isUnknown()?y.lstat():y).then(y=>y?.shouldWalk(c,o)?u(y,g):g()):v.shouldWalk(c,o)?u(v,g):g()},!0)},l=e;return new Promise((d,p)=>{u(l,f=>{if(f)return p(f);d(a)})})}walkSync(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Br||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=[];(!s||s(e))&&a.push(n?e:e.fullpath());let c=new Set([e]);for(let u of c){let l=u.readdirSync();for(let d of l){(!s||s(d))&&a.push(n?d:d.fullpath());let p=d;if(d.isSymbolicLink()){if(!(i&&(p=d.realpathSync())))continue;p.isUnknown()&&p.lstatSync()}p.shouldWalk(c,o)&&c.add(p)}}return a}[Symbol.asyncIterator](){return this.iterate()}iterate(e=this.cwd,r={}){return typeof e=="string"?e=this.cwd.resolve(e):e instanceof Br||(r=e,e=this.cwd),this.stream(e,r)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Br||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r;(!s||s(e))&&(yield n?e:e.fullpath());let a=new Set([e]);for(let c of a){let u=c.readdirSync();for(let l of u){(!s||s(l))&&(yield n?l:l.fullpath());let d=l;if(l.isSymbolicLink()){if(!(i&&(d=l.realpathSync())))continue;d.isUnknown()&&d.lstatSync()}d.shouldWalk(a,o)&&a.add(d)}}}stream(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Br||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=new Ho({objectMode:!0});(!s||s(e))&&a.write(n?e:e.fullpath());let c=new Set,u=[e],l=0,d=()=>{let p=!1;for(;!p;){let f=u.shift();if(!f){l===0&&a.end();return}l++,c.add(f);let m=(g,v,y=!1)=>{if(g)return a.emit("error",g);if(i&&!y){let b=[];for(let S of v)S.isSymbolicLink()&&b.push(S.realpath().then(x=>x?.isUnknown()?x.lstat():x));if(b.length){Promise.all(b).then(()=>m(null,v,!0));return}}for(let b of v)b&&(!s||s(b))&&(a.write(n?b:b.fullpath())||(p=!0));l--;for(let b of v){let S=b.realpathCached()||b;S.shouldWalk(c,o)&&u.push(S)}p&&!a.flowing?a.once("drain",d):h||d()},h=!0;f.readdirCB(m,!0),h=!1}};return d(),a}streamSync(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Br||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=new Ho({objectMode:!0}),c=new Set;(!s||s(e))&&a.write(n?e:e.fullpath());let u=[e],l=0,d=()=>{let p=!1;for(;!p;){let f=u.shift();if(!f){l===0&&a.end();return}l++,c.add(f);let m=f.readdirSync();for(let h of m)(!s||s(h))&&(a.write(n?h:h.fullpath())||(p=!0));l--;for(let h of m){let g=h;if(h.isSymbolicLink()){if(!(i&&(g=h.realpathSync())))continue;g.isUnknown()&&g.lstatSync()}g.shouldWalk(c,o)&&u.push(g)}}p&&!a.flowing&&a.once("drain",d)};return d(),a}chdir(e=this.cwd){let r=this.cwd;this.cwd=typeof e=="string"?this.cwd.resolve(e):e,this.cwd[aH](r)}},cl=class extends p_{sep="\\";constructor(e=process.cwd(),r={}){let{nocase:n=!0}=r;super(e,al.win32,"\\",{...r,nocase:n}),this.nocase=n;for(let i=this.cwd;i;i=i.parent)i.nocase=this.nocase}parseRootPath(e){return al.win32.parse(e).root.toUpperCase()}newRoot(e){return new l_(this.rootPath,us,void 0,this.roots,this.nocase,this.childrenCache(),{fs:e})}isAbsolute(e){return e.startsWith("/")||e.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(e)}},ul=class extends p_{sep="/";constructor(e=process.cwd(),r={}){let{nocase:n=!1}=r;super(e,al.posix,"/",{...r,nocase:n}),this.nocase=n}parseRootPath(e){return"/"}newRoot(e){return new d_(this.rootPath,us,void 0,this.roots,this.nocase,this.childrenCache(),{fs:e})}isAbsolute(e){return e.startsWith("/")}},Xf=class extends ul{constructor(e=process.cwd(),r={}){let{nocase:n=!0}=r;super(e,{...r,nocase:n})}},i2e=process.platform==="win32"?l_:d_,cH=process.platform==="win32"?cl:process.platform==="darwin"?Xf:ul;var oxe=t=>t.length>=1,axe=t=>t.length>=1,ll=class t{#e;#n;#i;length;#t;#o;#w;#y;#d;#a;#p=!0;constructor(e,r,n,i){if(!oxe(e))throw new TypeError("empty pattern list");if(!axe(r))throw new TypeError("empty glob list");if(r.length!==e.length)throw new TypeError("mismatched pattern list and glob list lengths");if(this.length=e.length,n<0||n>=this.length)throw new TypeError("index out of range");if(this.#e=e,this.#n=r,this.#i=n,this.#t=i,this.#i===0){if(this.isUNC()){let[s,o,a,c,...u]=this.#e,[l,d,p,f,...m]=this.#n;u[0]===""&&(u.shift(),m.shift());let h=[s,o,a,c,""].join("/"),g=[l,d,p,f,""].join("/");this.#e=[h,...u],this.#n=[g,...m],this.length=this.#e.length}else if(this.isDrive()||this.isAbsolute()){let[s,...o]=this.#e,[a,...c]=this.#n;o[0]===""&&(o.shift(),c.shift());let u=s+"/",l=a+"/";this.#e=[u,...o],this.#n=[l,...c],this.length=this.#e.length}}}pattern(){return this.#e[this.#i]}isString(){return typeof this.#e[this.#i]=="string"}isGlobstar(){return this.#e[this.#i]===Yt}isRegExp(){return this.#e[this.#i]instanceof RegExp}globString(){return this.#w=this.#w||(this.#i===0?this.isAbsolute()?this.#n[0]+this.#n.slice(1).join("/"):this.#n.join("/"):this.#n.slice(this.#i).join("/"))}hasMore(){return this.length>this.#i+1}rest(){return this.#o!==void 0?this.#o:this.hasMore()?(this.#o=new t(this.#e,this.#n,this.#i+1,this.#t),this.#o.#a=this.#a,this.#o.#d=this.#d,this.#o.#y=this.#y,this.#o):this.#o=null}isUNC(){let e=this.#e;return this.#d!==void 0?this.#d:this.#d=this.#t==="win32"&&this.#i===0&&e[0]===""&&e[1]===""&&typeof e[2]=="string"&&!!e[2]&&typeof e[3]=="string"&&!!e[3]}isDrive(){let e=this.#e;return this.#y!==void 0?this.#y:this.#y=this.#t==="win32"&&this.#i===0&&this.length>1&&typeof e[0]=="string"&&/^[a-z]:$/i.test(e[0])}isAbsolute(){let e=this.#e;return this.#a!==void 0?this.#a:this.#a=e[0]===""&&e.length>1||this.isDrive()||this.isUNC()}root(){let e=this.#e[0];return typeof e=="string"&&this.isAbsolute()&&this.#i===0?e:""}checkFollowGlobstar(){return!(this.#i===0||!this.isGlobstar()||!this.#p)}markFollowGlobstar(){return this.#i===0||!this.isGlobstar()||!this.#p?!1:(this.#p=!1,!0)}};var cxe=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",dl=class{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(e,{nobrace:r,nocase:n,noext:i,noglobstar:s,platform:o=cxe}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=o,this.mmopts={dot:!0,nobrace:r,nocase:n,noext:i,noglobstar:s,optimizationLevel:2,platform:o,nocomment:!0,nonegate:!0};for(let a of e)this.add(a)}add(e){let r=new jn(e,this.mmopts);for(let n=0;n[e,!!(r&2),!!(r&1)])}},dR=class{store=new Map;add(e,r){if(!e.canReaddir())return;let n=this.store.get(e);n?n.find(i=>i.globString()===r.globString())||n.push(r):this.store.set(e,[r])}get(e){let r=this.store.get(e);if(!r)throw new Error("attempting to walk unknown path");return r}entries(){return this.keys().map(e=>[e,this.store.get(e)])}keys(){return[...this.store.keys()].filter(e=>e.canReaddir())}},Yf=class t{hasWalkedCache;matches=new lR;subwalks=new dR;patterns;follow;dot;opts;constructor(e,r){this.opts=e,this.follow=!!e.follow,this.dot=!!e.dot,this.hasWalkedCache=r?r.copy():new uR}processPatterns(e,r){this.patterns=r;let n=r.map(i=>[e,i]);for(let[i,s]of n){this.hasWalkedCache.storeWalked(i,s);let o=s.root(),a=s.isAbsolute()&&this.opts.absolute!==!1;if(o){i=i.resolve(o==="/"&&this.opts.root!==void 0?this.opts.root:o);let d=s.rest();if(d)s=d;else{this.matches.add(i,!0,!1);continue}}if(i.isENOENT())continue;let c,u,l=!1;for(;typeof(c=s.pattern())=="string"&&(u=s.rest());)i=i.resolve(c),s=u,l=!0;if(c=s.pattern(),u=s.rest(),l){if(this.hasWalkedCache.hasWalked(i,s))continue;this.hasWalkedCache.storeWalked(i,s)}if(typeof c=="string"){let d=c===".."||c===""||c===".";this.matches.add(i.resolve(c),a,d);continue}else if(c===Yt){(!i.isSymbolicLink()||this.follow||s.checkFollowGlobstar())&&this.subwalks.add(i,s);let d=u?.pattern(),p=u?.rest();if(!u||(d===""||d===".")&&!p)this.matches.add(i,a,d===""||d===".");else if(d===".."){let f=i.parent||i;p?this.hasWalkedCache.hasWalked(f,p)||this.subwalks.add(f,p):this.matches.add(f,a,!0)}}else c instanceof RegExp&&this.subwalks.add(i,s)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new t(this.opts,this.hasWalkedCache)}filterEntries(e,r){let n=this.subwalks.get(e),i=this.child();for(let s of r)for(let o of n){let a=o.isAbsolute(),c=o.pattern(),u=o.rest();c===Yt?i.testGlobstar(s,o,u,a):c instanceof RegExp?i.testRegExp(s,c,u,a):i.testString(s,c,u,a)}return i}testGlobstar(e,r,n,i){if((this.dot||!e.name.startsWith("."))&&(r.hasMore()||this.matches.add(e,i,!1),e.canReaddir()&&(this.follow||!e.isSymbolicLink()?this.subwalks.add(e,r):e.isSymbolicLink()&&(n&&r.checkFollowGlobstar()?this.subwalks.add(e,n):r.markFollowGlobstar()&&this.subwalks.add(e,r)))),n){let s=n.pattern();if(typeof s=="string"&&s!==".."&&s!==""&&s!==".")this.testString(e,s,n.rest(),i);else if(s===".."){let o=e.parent||e;this.subwalks.add(o,n)}else s instanceof RegExp&&this.testRegExp(e,s,n.rest(),i)}}testRegExp(e,r,n,i){r.test(e.name)&&(n?this.subwalks.add(e,n):this.matches.add(e,i,!1))}testString(e,r,n,i){e.isNamed(r)&&(n?this.subwalks.add(e,n):this.matches.add(e,i,!1))}};var uxe=(t,e)=>typeof t=="string"?new dl([t],e):Array.isArray(t)?new dl(t,e):t,f_=class{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#e=[];#n;#i;signal;maxDepth;includeChildMatches;constructor(e,r,n){if(this.patterns=e,this.path=r,this.opts=n,this.#i=!n.posix&&n.platform==="win32"?"\\":"/",this.includeChildMatches=n.includeChildMatches!==!1,(n.ignore||!this.includeChildMatches)&&(this.#n=uxe(n.ignore??[],n),!this.includeChildMatches&&typeof this.#n.add!="function")){let i="cannot ignore child matches, ignore lacks add() method.";throw new Error(i)}this.maxDepth=n.maxDepth||1/0,n.signal&&(this.signal=n.signal,this.signal.addEventListener("abort",()=>{this.#e.length=0}))}#t(e){return this.seen.has(e)||!!this.#n?.ignored?.(e)}#o(e){return!!this.#n?.childrenIgnored?.(e)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let e;for(;!this.paused&&(e=this.#e.shift());)e()}onResume(e){this.signal?.aborted||(this.paused?this.#e.push(e):e())}async matchCheck(e,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=e.realpathCached()||await e.realpath(),!n)return;e=n}let s=e.isUnknown()||this.opts.stat?await e.lstat():e;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let o=await s.realpath();o&&(o.isUnknown()||this.opts.stat)&&await o.lstat()}return this.matchCheckTest(s,r)}matchCheckTest(e,r){return e&&(this.maxDepth===1/0||e.depth()<=this.maxDepth)&&(!r||e.canReaddir())&&(!this.opts.nodir||!e.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!e.isSymbolicLink()||!e.realpathCached()?.isDirectory())&&!this.#t(e)?e:void 0}matchCheckSync(e,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=e.realpathCached()||e.realpathSync(),!n)return;e=n}let s=e.isUnknown()||this.opts.stat?e.lstatSync():e;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let o=s.realpathSync();o&&(o?.isUnknown()||this.opts.stat)&&o.lstatSync()}return this.matchCheckTest(s,r)}matchFinish(e,r){if(this.#t(e))return;if(!this.includeChildMatches&&this.#n?.add){let s=`${e.relativePosix()}/**`;this.#n.add(s)}let n=this.opts.absolute===void 0?r:this.opts.absolute;this.seen.add(e);let i=this.opts.mark&&e.isDirectory()?this.#i:"";if(this.opts.withFileTypes)this.matchEmit(e);else if(n){let s=this.opts.posix?e.fullpathPosix():e.fullpath();this.matchEmit(s+i)}else{let s=this.opts.posix?e.relativePosix():e.relative(),o=this.opts.dotRelative&&!s.startsWith(".."+this.#i)?"."+this.#i:"";this.matchEmit(s?o+s+i:"."+i)}}async match(e,r,n){let i=await this.matchCheck(e,n);i&&this.matchFinish(i,r)}matchSync(e,r,n){let i=this.matchCheckSync(e,n);i&&this.matchFinish(i,r)}walkCB(e,r,n){this.signal?.aborted&&n(),this.walkCB2(e,r,new Yf(this.opts),n)}walkCB2(e,r,n,i){if(this.#o(e))return i();if(this.signal?.aborted&&i(),this.paused){this.onResume(()=>this.walkCB2(e,r,n,i));return}n.processPatterns(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,u]of n.matches.entries())this.#t(a)||(s++,this.match(a,c,u).then(()=>o()));for(let a of n.subwalkTargets()){if(this.maxDepth!==1/0&&a.depth()>=this.maxDepth)continue;s++;let c=a.readdirCached();a.calledReaddir()?this.walkCB3(a,c,n,o):a.readdirCB((u,l)=>this.walkCB3(a,l,n,o),!0)}o()}walkCB3(e,r,n,i){n=n.filterEntries(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,u]of n.matches.entries())this.#t(a)||(s++,this.match(a,c,u).then(()=>o()));for(let[a,c]of n.subwalks.entries())s++,this.walkCB2(a,c,n.child(),o);o()}walkCBSync(e,r,n){this.signal?.aborted&&n(),this.walkCB2Sync(e,r,new Yf(this.opts),n)}walkCB2Sync(e,r,n,i){if(this.#o(e))return i();if(this.signal?.aborted&&i(),this.paused){this.onResume(()=>this.walkCB2Sync(e,r,n,i));return}n.processPatterns(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,u]of n.matches.entries())this.#t(a)||this.matchSync(a,c,u);for(let a of n.subwalkTargets()){if(this.maxDepth!==1/0&&a.depth()>=this.maxDepth)continue;s++;let c=a.readdirSync();this.walkCB3Sync(a,c,n,o)}o()}walkCB3Sync(e,r,n,i){n=n.filterEntries(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,u]of n.matches.entries())this.#t(a)||this.matchSync(a,c,u);for(let[a,c]of n.subwalks.entries())s++,this.walkCB2Sync(a,c,n.child(),o);o()}},Qf=class extends f_{matches=new Set;constructor(e,r,n){super(e,r,n)}matchEmit(e){this.matches.add(e)}async walk(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&await this.path.lstat(),await new Promise((e,r)=>{this.walkCB(this.path,this.patterns,()=>{this.signal?.aborted?r(this.signal.reason):e(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}},em=class extends f_{results;constructor(e,r,n){super(e,r,n),this.results=new Ho({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(e){this.results.write(e),this.results.flowing||this.pause()}stream(){let e=this.path;return e.isUnknown()?e.lstat().then(()=>{this.walkCB(e,this.patterns,()=>this.results.end())}):this.walkCB(e,this.patterns,()=>this.results.end()),this.results}streamSync(){return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}};var lxe=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",Ai=class{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(e,r){if(!r)throw new TypeError("glob options required");if(this.withFileTypes=!!r.withFileTypes,this.signal=r.signal,this.follow=!!r.follow,this.dot=!!r.dot,this.dotRelative=!!r.dotRelative,this.nodir=!!r.nodir,this.mark=!!r.mark,r.cwd?(r.cwd instanceof URL||r.cwd.startsWith("file://"))&&(r.cwd=(0,uH.fileURLToPath)(r.cwd)):this.cwd="",this.cwd=r.cwd||"",this.root=r.root,this.magicalBraces=!!r.magicalBraces,this.nobrace=!!r.nobrace,this.noext=!!r.noext,this.realpath=!!r.realpath,this.absolute=r.absolute,this.includeChildMatches=r.includeChildMatches!==!1,this.noglobstar=!!r.noglobstar,this.matchBase=!!r.matchBase,this.maxDepth=typeof r.maxDepth=="number"?r.maxDepth:1/0,this.stat=!!r.stat,this.ignore=r.ignore,this.withFileTypes&&this.absolute!==void 0)throw new Error("cannot set absolute and withFileTypes:true");if(typeof e=="string"&&(e=[e]),this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(e=e.map(c=>c.replace(/\\/g,"/"))),this.matchBase){if(r.noglobstar)throw new TypeError("base matching requires globstar");e=e.map(c=>c.includes("/")?c:`./**/${c}`)}if(this.pattern=e,this.platform=r.platform||lxe,this.opts={...r,platform:this.platform},r.scurry){if(this.scurry=r.scurry,r.nocase!==void 0&&r.nocase!==r.scurry.nocase)throw new Error("nocase option contradicts provided scurry option")}else{let c=r.platform==="win32"?cl:r.platform==="darwin"?Xf:r.platform?ul:cH;this.scurry=new c(this.cwd,{nocase:r.nocase,fs:r.fs})}this.nocase=this.scurry.nocase;let n=this.platform==="darwin"||this.platform==="win32",i={...r,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:n,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},s=this.pattern.map(c=>new jn(c,i)),[o,a]=s.reduce((c,u)=>(c[0].push(...u.set),c[1].push(...u.globParts),c),[[],[]]);this.patterns=o.map((c,u)=>{let l=a[u];if(!l)throw new Error("invalid pattern object");return new ll(c,l,0,this.platform)})}async walk(){return[...await new Qf(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new Qf(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new em(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new em(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}};var pR=(t,e={})=>{Array.isArray(t)||(t=[t]);for(let r of t)if(new jn(r,e).hasMagic())return!0;return!1};function m_(t,e={}){return new Ai(t,e).streamSync()}function pH(t,e={}){return new Ai(t,e).stream()}function tm(t,e={}){return new Ai(t,e).walkSync()}async function lH(t,e={}){return new Ai(t,e).walk()}function h_(t,e={}){return new Ai(t,e).iterateSync()}function fH(t,e={}){return new Ai(t,e).iterate()}var dxe=m_,pxe=Object.assign(pH,{sync:m_}),fxe=h_,mxe=Object.assign(fH,{sync:h_}),hxe=Object.assign(tm,{stream:m_,iterate:h_}),dH=Object.assign(lH,{glob:lH,globSync:tm,sync:hxe,globStream:pH,stream:pxe,globStreamSync:m_,streamSync:dxe,globIterate:fH,iterate:mxe,globIterateSync:h_,iterateSync:fxe,Glob:Ai,hasMagic:pR,escape:il,unescape:Oi});dH.glob=dH;te();var eo=require("fs"),mH=require("path");te();function hH(t){try{if(!(0,eo.existsSync)(t))return{offsets:{}};let e=(0,eo.readFileSync)(t,"utf-8"),r=JSON.parse(e);return r.offsets?r:{offsets:{}}}catch(e){return _.warn("TRANSCRIPT","Failed to load watch state, starting fresh",{statePath:t,error:e instanceof Error?e.message:String(e)}),{offsets:{}}}}function gH(t,e){try{let r=(0,mH.dirname)(t);(0,eo.existsSync)(r)||(0,eo.mkdirSync)(r,{recursive:!0}),(0,eo.writeFileSync)(t,JSON.stringify(e,null,2))}catch(r){_.warn("TRANSCRIPT","Failed to save watch state",{statePath:t,error:r instanceof Error?r.message:String(r)})}}__();b_();S_();x_();fr();te();Za();var Ni=require("fs"),w_=require("path");te();function wH(t,e){if(!t)return;let r=(0,w_.resolve)(t);if(r.includes("/.git/")||r.includes("\\.git\\")||r.endsWith("/.git")||r.endsWith("\\.git"))return;let n=(0,w_.dirname)(t);(0,Ni.existsSync)(n)||(0,Ni.mkdirSync)(n,{recursive:!0});let i="";(0,Ni.existsSync)(t)&&(i=(0,Ni.readFileSync)(t,"utf-8"));let s=`# Memory Context + +${e}`,o=Y$(i,s),a=`${t}.tmp`;try{(0,Ni.writeFileSync)(a,o),(0,Ni.renameSync)(a,t)}catch(c){_.error("AGENTS_MD","Failed to write AGENTS.md",{agentsPath:t},c)}}function vxe(t){let e=t.trim().replace(/^\$\.?/,"");if(!e)return[];let r=[],n=e.split(".");for(let i of n){let s=/([^[\]]+)|\[(\d+)\]/g,o;for(;(o=s.exec(i))!==null;)o[1]?r.push(o[1]):o[2]&&r.push(parseInt(o[2],10))}return r}function fR(t,e){if(!e)return;let r=vxe(e),n=t;for(let i of r){if(n==null)return;n=n[i]}return n}function EH(t){return t==null||t===""}function kH(t,e){if(t.startsWith("$watch.")){let r=t.slice(7);return e.watch[r]}if(t.startsWith("$schema.")){let r=t.slice(8);return e.schema[r]}if(t.startsWith("$session.")){let r=t.slice(9);return e.session?e.session[r]:void 0}if(t==="$cwd")return e.watch.workspace;if(t==="$project")return e.watch.project}function ml(t,e,r){if(t!==void 0){if(typeof t=="string"){let n=kH(t,r);return n!==void 0?n:fR(e,t)}if(t.coalesce&&Array.isArray(t.coalesce))for(let n of t.coalesce){let i=ml(n,e,r);if(!EH(i))return i}if(t.path){let n=kH(t.path,r);if(n!==void 0)return n;let i=fR(e,t.path);if(!EH(i))return i}if(t.value!==void 0)return t.value;if(t.default!==void 0)return t.default}}function TH(t,e,r){let n={};if(!t)return n;for(let[i,s]of Object.entries(t))n[i]=ml(s,e,r);return n}function $H(t,e,r){if(!e)return!0;let n=e.path||r.eventTypePath||"type",i=n?fR(t,n):void 0;if(e.exists&&(i==null||i===""))return!1;if(e.equals!==void 0)return i===e.equals;if(e.in&&Array.isArray(e.in))return e.in.includes(i);if(e.contains!==void 0)return typeof i=="string"&&i.includes(e.contains);if(e.regex)try{return new RegExp(e.regex).test(String(i??""))}catch{return!1}return!0}Vi();var E_=class{sessions=new Map;async processEntry(e,r,n,i){for(let s of n.events)$H(e,s.match,n)&&await this.handleEvent(e,r,n,s,i??void 0)}getSessionKey(e,r){return`${e.name}:${r}`}getOrCreateSession(e,r){let n=this.getSessionKey(e,r),i=this.sessions.get(n);return i||(i={sessionId:r,platformSource:Rt(e.name),pendingTools:new Map},this.sessions.set(n,i)),i}resolveSessionId(e,r,n,i,s){let o={watch:r,schema:n},a=i.fields?.sessionId??(n.sessionIdPath?{path:n.sessionIdPath}:void 0),c=ml(a,e,o);return typeof c=="string"&&c.trim()?c:typeof c=="number"?String(c):s&&s.trim()?s:null}resolveCwd(e,r,n,i,s){let o={watch:r,schema:n,session:s},a=i.fields?.cwd??(n.cwdPath?{path:n.cwdPath}:void 0),c=ml(a,e,o);return typeof c=="string"&&c.trim()?c:r.workspace?r.workspace:s.cwd}resolveProject(e,r,n,i,s){let o={watch:r,schema:n,session:s},a=i.fields?.project??(n.projectPath?{path:n.projectPath}:void 0),c=ml(a,e,o);return typeof c=="string"&&c.trim()?c:r.project?r.project:s.cwd?to(s.cwd):s.project}async handleEvent(e,r,n,i,s){let o=this.resolveSessionId(e,r,n,i,s);if(!o){_.debug("TRANSCRIPT","Skipping event without sessionId",{event:i.name,watch:r.name});return}let a=this.getOrCreateSession(r,o),c=this.resolveCwd(e,r,n,i,a);c&&(a.cwd=c);let u=this.resolveProject(e,r,n,i,a);u&&(a.project=u);let l=TH(i.fields,e,{watch:r,schema:n,session:a});switch(i.action){case"session_context":this.applySessionContext(a,l);break;case"session_init":await this.handleSessionInit(a,l),r.context?.updateOn?.includes("session_start")&&await this.updateContext(a,r);break;case"user_message":typeof l.message=="string"&&(a.lastUserMessage=l.message),typeof l.prompt=="string"&&(a.lastUserMessage=l.prompt);break;case"assistant_message":typeof l.message=="string"&&(a.lastAssistantMessage=l.message);break;case"tool_use":await this.handleToolUse(a,l);break;case"tool_result":await this.handleToolResult(a,l);break;case"observation":await this.sendObservation(a,l);break;case"file_edit":await this.sendFileEdit(a,l);break;case"session_end":await this.handleSessionEnd(a,r);break;default:break}}applySessionContext(e,r){let n=typeof r.cwd=="string"?r.cwd:void 0,i=typeof r.project=="string"?r.project:void 0;n&&(e.cwd=n),i&&(e.project=i)}async handleSessionInit(e,r){let n=typeof r.prompt=="string"?r.prompt:"",i=e.cwd??process.cwd();n&&(e.lastUserMessage=n),await nm.execute({sessionId:e.sessionId,cwd:i,prompt:n,platform:e.platformSource})}async handleToolUse(e,r){let n=typeof r.toolId=="string"?r.toolId:void 0,i=typeof r.toolName=="string"?r.toolName:void 0,s=this.maybeParseJson(r.toolInput),o=this.maybeParseJson(r.toolResponse),a={id:n,name:i,input:s,response:o};if(n&&e.pendingTools.set(n,{name:a.name,input:a.input}),i==="apply_patch"&&typeof s=="string"){let c=this.parseApplyPatchFiles(s);for(let u of c)await this.sendFileEdit(e,{filePath:u,edits:[{type:"apply_patch",patch:s}]})}o!==void 0&&i&&await this.sendObservation(e,{toolName:i,toolInput:s,toolResponse:o})}async handleToolResult(e,r){let n=typeof r.toolId=="string"?r.toolId:void 0,i=typeof r.toolName=="string"?r.toolName:void 0,s=this.maybeParseJson(r.toolResponse),o=this.maybeParseJson(r.toolInput),a=i;if(n&&e.pendingTools.has(n)){let c=e.pendingTools.get(n);o=c.input??o,a=a??c.name,e.pendingTools.delete(n)}a&&await this.sendObservation(e,{toolName:a,toolInput:o,toolResponse:s})}async sendObservation(e,r){let n=typeof r.toolName=="string"?r.toolName:void 0;n&&await im.execute({sessionId:e.sessionId,cwd:e.cwd??process.cwd(),toolName:n,toolInput:this.maybeParseJson(r.toolInput),toolResponse:this.maybeParseJson(r.toolResponse),platform:e.platformSource})}async sendFileEdit(e,r){let n=typeof r.filePath=="string"?r.filePath:void 0;n&&await sm.execute({sessionId:e.sessionId,cwd:e.cwd??process.cwd(),filePath:n,edits:Array.isArray(r.edits)?r.edits:void 0,platform:e.platformSource})}maybeParseJson(e){if(typeof e!="string")return e;let r=e.trim();if(!r||!(r.startsWith("{")||r.startsWith("[")))return e;try{return JSON.parse(r)}catch{return e}}parseApplyPatchFiles(e){let r=[],n=e.split(` +`);for(let i of n){let s=i.trim();if(s.startsWith("*** Update File: "))r.push(s.replace("*** Update File: ","").trim());else if(s.startsWith("*** Add File: "))r.push(s.replace("*** Add File: ","").trim());else if(s.startsWith("*** Delete File: "))r.push(s.replace("*** Delete File: ","").trim());else if(s.startsWith("*** Move to: "))r.push(s.replace("*** Move to: ","").trim());else if(s.startsWith("+++ ")){let o=s.replace("+++ ","").replace(/^b\//,"").trim();o&&o!=="/dev/null"&&r.push(o)}}return Array.from(new Set(r))}async handleSessionEnd(e,r){await this.queueSummary(e),await om.execute({sessionId:e.sessionId,cwd:e.cwd??process.cwd(),platform:e.platformSource}),await this.updateContext(e,r),e.pendingTools.clear();let n=this.getSessionKey(r,e.sessionId);this.sessions.delete(n)}async queueSummary(e){if(!await sr())return;let n=e.lastAssistantMessage??"";try{await Qe("/api/sessions/summarize",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:e.sessionId,last_assistant_message:n,platformSource:e.platformSource})})}catch(i){_.warn("TRANSCRIPT","Summary request failed",{error:i instanceof Error?i.message:String(i)})}}async updateContext(e,r){if(!r.context||r.context.mode!=="agents"||!await sr())return;let i=e.cwd??r.workspace;if(!i)return;let o=pl(i).allProjects.join(",");try{let a=await Qe(`/api/context/inject?projects=${encodeURIComponent(o)}&platformSource=${encodeURIComponent(e.platformSource)}`);if(!a.ok)return;let c=(await a.text()).trim();if(!c)return;let u=Xs(r.context.path??`${i}/AGENTS.md`);wH(u,c),_.debug("TRANSCRIPT","Updated AGENTS.md context",{agentsPath:u,watch:r.name})}catch(a){_.warn("TRANSCRIPT","Failed to update AGENTS.md context",{error:a instanceof Error?a.message:String(a)})}}};var mR=class{constructor(e,r,n,i){this.filePath=e;this.onLine=n;this.onOffset=i;this.tailState={offset:r,partial:""}}watcher=null;tailState;start(){this.readNewData().catch(()=>{}),this.watcher=(0,Mi.watch)(this.filePath,{persistent:!0},()=>{this.readNewData().catch(()=>{})})}close(){this.watcher?.close(),this.watcher=null}async readNewData(){if(!(0,Mi.existsSync)(this.filePath))return;let e=0;try{e=(0,Mi.statSync)(this.filePath).size}catch{return}if(e{let a=this.resolveWatchFiles(n);for(let c of a)this.tailers.has(c)||await this.addTailer(c,e,r,!1)},s);this.rescanTimers.push(o)}resolveSchema(e){return typeof e.schema=="string"?this.config.schemas?.[e.schema]??null:e.schema}resolveWatchFiles(e){if(this.hasGlob(e))return tm(e,{nodir:!0,absolute:!0});if((0,Mi.existsSync)(e))try{if((0,Mi.statSync)(e).isDirectory()){let n=(0,T_.join)(e,"**","*.jsonl");return tm(n,{nodir:!0,absolute:!0})}return[e]}catch{return[]}return[]}hasGlob(e){return/[*?[\]{}()]/.test(e)}async addTailer(e,r,n,i){if(this.tailers.has(e))return;let s=this.extractSessionIdFromPath(e),o=this.state.offsets[e]??0;if(o===0&&r.startAtEnd&&i)try{o=(0,Mi.statSync)(e).size}catch{o=0}let a=new mR(e,o,async c=>{await this.handleLine(c,r,n,e,s)},c=>{this.state.offsets[e]=c,gH(this.statePath,this.state)});a.start(),this.tailers.set(e,a),_.info("TRANSCRIPT","Watching transcript file",{file:e,watch:r.name,schema:n.name})}async handleLine(e,r,n,i,s){try{let o=JSON.parse(e);await this.processor.processEntry(o,r,n,s??void 0)}catch(o){_.debug("TRANSCRIPT","Failed to parse transcript line",{watch:r.name,file:(0,T_.basename)(i)},o)}}extractSessionIdFromPath(e){let r=e.match(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/i);return r?r[0]:null}};var IH=Pe(Kv(),1),$_=Pe(require("path"),1),R_=require("fs");It();te();var Gr=class{wrapHandler(e){return(r,n)=>{try{let i=e(r,n);i instanceof Promise&&i.catch(s=>this.handleError(n,s))}catch(i){_.error("HTTP","Route handler error",{path:r.path},i),this.handleError(n,i)}}}parseIntParam(e,r,n){let i=parseInt(e.params[n],10);return isNaN(i)?(this.badRequest(r,`Invalid ${n}`),null):i}validateRequired(e,r,n){for(let i of n)if(e.body[i]===void 0||e.body[i]===null)return this.badRequest(r,`Missing ${i}`),!1;return!0}badRequest(e,r){e.status(400).json({error:r})}notFound(e,r){e.status(404).json({error:r})}handleError(e,r,n){if(_.failure("WORKER",n||"Request failed",{},r),!e.headersSent){let i=r instanceof Sn?r.statusCode:500,s={error:r.message};r instanceof Sn&&r.code&&(s.code=r.code),r instanceof Sn&&r.details!==void 0&&(s.details=r.details),e.status(i).json(s)}}};var I_=class extends Gr{constructor(r,n,i){super();this.sseBroadcaster=r;this.dbManager=n;this.sessionManager=i}setupRoutes(r){let n=gn();r.use(IH.default.static($_.default.join(n,"ui"))),r.get("/health",this.handleHealth.bind(this)),r.get("/",this.handleViewerUI.bind(this)),r.get("/stream",this.handleSSEStream.bind(this))}handleHealth=this.wrapHandler((r,n)=>{n.json({status:"ok",timestamp:Date.now()})});handleViewerUI=this.wrapHandler((r,n)=>{let i=gn(),o=[$_.default.join(i,"ui","viewer.html"),$_.default.join(i,"plugin","ui","viewer.html")].find(c=>(0,R_.existsSync)(c));if(!o)throw new Error("Viewer UI not found at any expected location");let a=(0,R_.readFileSync)(o,"utf-8");n.setHeader("Content-Type","text/html"),n.send(a)});handleSSEStream=this.wrapHandler((r,n)=>{try{this.dbManager.getSessionStore()}catch{n.status(503).json({error:"Service initializing"});return}n.setHeader("Content-Type","text/event-stream"),n.setHeader("Cache-Control","no-cache"),n.setHeader("Connection","keep-alive"),this.sseBroadcaster.addClient(n);let i=this.dbManager.getSessionStore().getProjectCatalog();this.sseBroadcaster.broadcast({type:"initial_load",projects:i.projects,sources:i.sources,projectsBySource:i.projectsBySource,timestamp:Date.now()});let s=this.sessionManager.isAnySessionProcessing(),o=this.sessionManager.getTotalActiveWork();this.sseBroadcaster.broadcast({type:"processing_status",isProcessing:s,queueDepth:o})})};fr();te();O_();te();var C_=class{constructor(e,r,n){this.sessionManager=e;this.eventBroadcaster=r;this.dbManager=n}async completeByDbId(e){this.dbManager.getSessionStore().markSessionCompleted(e),await this.sessionManager.deleteSession(e);try{let n=this.sessionManager.getPendingMessageStore().markAllSessionMessagesAbandoned(e);n>0&&_.warn("SESSION",`Drained ${n} orphaned pending messages on session completion`,{sessionId:e,drainedCount:n})}catch(r){_.debug("SESSION","Failed to drain pending queue on session completion",{sessionId:e,error:r instanceof Error?r.message:String(r)})}this.eventBroadcaster.broadcastSessionCompleted(e)}};te();var cm=class{static checkUserPromptPrivacy(e,r,n,i,s,o){let a=e.getUserPrompt(r,n);return!a||a.trim()===""?(_.debug("HOOK",`Skipping ${i} - user prompt was entirely private`,{sessionId:s,promptNumber:n,...o}),null):a}};tr();It();Za();Vi();var P_=class t extends Gr{constructor(r,n,i,s,o,a,c){super();this.sessionManager=r;this.dbManager=n;this.sdkAgent=i;this.geminiAgent=s;this.openRouterAgent=o;this.eventBroadcaster=a;this.workerService=c;this.completionHandler=new C_(r,a,n)}completionHandler;spawnInProgress=new Map;crashRecoveryScheduled=new Set;getActiveAgent(){if(rl()){if(La())return _.debug("SESSION","Using OpenRouter agent"),this.openRouterAgent;throw new Error("OpenRouter provider selected but no API key configured. Set CLAUDE_MEM_OPENROUTER_API_KEY in settings or OPENROUTER_API_KEY environment variable.")}if(tl()){if(za())return _.debug("SESSION","Using Gemini agent"),this.geminiAgent;throw new Error("Gemini provider selected but no API key configured. Set CLAUDE_MEM_GEMINI_API_KEY in settings or GEMINI_API_KEY environment variable.")}return this.sdkAgent}getSelectedProvider(){return rl()&&La()?"openrouter":tl()&&za()?"gemini":"claude"}static STALE_GENERATOR_THRESHOLD_MS=3e4;ensureGeneratorRunning(r,n){let i=this.sessionManager.getSession(r);if(!i)return;if(this.spawnInProgress.get(r)){_.debug("SESSION","Spawn already in progress, skipping",{sessionDbId:r,source:n});return}let s=this.getSelectedProvider();if(!i.generatorPromise){this.applyTierRouting(i),this.spawnInProgress.set(r,!0),this.startGeneratorWithProvider(i,s,n);return}let o=Date.now()-i.lastGeneratorActivity;if(o>t.STALE_GENERATOR_THRESHOLD_MS){_.warn("SESSION","Stale generator detected, aborting to prevent queue stall (#1099)",{sessionId:r,timeSinceActivityMs:o,thresholdMs:t.STALE_GENERATOR_THRESHOLD_MS,source:n}),i.abortController.abort(),i.generatorPromise=null,i.abortController=new AbortController,i.lastGeneratorActivity=Date.now(),this.applyTierRouting(i),this.spawnInProgress.set(r,!0),this.startGeneratorWithProvider(i,s,"stale-recovery");return}i.currentProvider&&i.currentProvider!==s&&_.info("SESSION","Provider changed, will switch after current generator finishes",{sessionId:r,currentProvider:i.currentProvider,selectedProvider:s,historyLength:i.conversationHistory.length})}startGeneratorWithProvider(r,n,i){if(!r)return;r.abortController.signal.aborted&&(_.debug("SESSION","Resetting aborted AbortController before starting generator",{sessionId:r.sessionDbId}),r.abortController=new AbortController);let s=n==="openrouter"?this.openRouterAgent:n==="gemini"?this.geminiAgent:this.sdkAgent,o=n==="openrouter"?"OpenRouter":n==="gemini"?"Gemini":"Claude SDK",c=this.sessionManager.getPendingMessageStore().getPendingCount(r.sessionDbId);_.info("SESSION",`Generator auto-starting (${i}) using ${o}`,{sessionId:r.sessionDbId,queueDepth:c,historyLength:r.conversationHistory.length}),r.currentProvider=n,r.lastGeneratorActivity=Date.now(),r.generatorPromise=s.startSession(r,this.workerService).catch(u=>{if(r.abortController.signal.aborted)return;_.error("SESSION","Generator failed",{sessionId:r.sessionDbId,provider:n,error:u.message},u);let l=this.sessionManager.getPendingMessageStore();try{let d=l.markSessionMessagesFailed(r.sessionDbId);d>0&&_.error("SESSION","Marked messages as failed after generator error",{sessionId:r.sessionDbId,failedCount:d})}catch(d){_.error("SESSION","Failed to mark messages as failed",{sessionId:r.sessionDbId},d)}}).finally(async()=>{let u=Ao(r.sessionDbId);u&&!u.process.killed&&u.process.exitCode===null&&await No(u,5e3);let l=r.sessionDbId;this.spawnInProgress.delete(l);let d=r.abortController.signal.aborted;if(d?_.info("SESSION","Generator aborted",{sessionId:l}):_.error("SESSION","Generator exited unexpectedly",{sessionId:l}),r.generatorPromise=null,r.currentProvider=null,this.workerService.broadcastProcessingStatus(),!d)try{let f=this.sessionManager.getPendingMessageStore().getPendingCount(l),m=3;if(f>0){if(this.crashRecoveryScheduled.has(l)){_.debug("SESSION","Crash recovery already scheduled",{sessionDbId:l});return}if(r.consecutiveRestarts=(r.consecutiveRestarts||0)+1,r.consecutiveRestarts>m){_.error("SESSION","CRITICAL: Generator restart limit exceeded - stopping to prevent runaway costs",{sessionId:l,pendingCount:f,consecutiveRestarts:r.consecutiveRestarts,maxRestarts:m,action:"Generator will NOT restart. Check logs for root cause. Messages remain in pending state."}),r.abortController.abort();return}_.info("SESSION","Restarting generator after crash/exit with pending work",{sessionId:l,pendingCount:f,consecutiveRestarts:r.consecutiveRestarts,maxRestarts:m});let h=r.abortController;r.abortController=new AbortController,h.abort(),this.crashRecoveryScheduled.add(l);let g=Math.min(1e3*Math.pow(2,r.consecutiveRestarts-1),8e3);setTimeout(()=>{this.crashRecoveryScheduled.delete(l);let v=this.sessionManager.getSession(l);v&&!v.generatorPromise&&(this.applyTierRouting(v),this.startGeneratorWithProvider(v,this.getSelectedProvider(),"crash-recovery"))},g)}else r.abortController.abort(),r.consecutiveRestarts=0,_.debug("SESSION","Aborted controller after natural completion",{sessionId:l})}catch(p){_.debug("SESSION","Error during recovery check, aborting to prevent leaks",{sessionId:l,error:p instanceof Error?p.message:String(p)}),r.abortController.abort()}})}setupRoutes(r){r.post("/sessions/:sessionDbId/init",this.handleSessionInit.bind(this)),r.post("/sessions/:sessionDbId/observations",this.handleObservations.bind(this)),r.post("/sessions/:sessionDbId/summarize",this.handleSummarize.bind(this)),r.get("/sessions/:sessionDbId/status",this.handleSessionStatus.bind(this)),r.delete("/sessions/:sessionDbId",this.handleSessionDelete.bind(this)),r.post("/sessions/:sessionDbId/complete",this.handleSessionComplete.bind(this)),r.post("/api/sessions/init",this.handleSessionInitByClaudeId.bind(this)),r.post("/api/sessions/observations",this.handleObservationsByClaudeId.bind(this)),r.post("/api/sessions/summarize",this.handleSummarizeByClaudeId.bind(this)),r.post("/api/sessions/complete",this.handleCompleteByClaudeId.bind(this)),r.get("/api/sessions/status",this.handleStatusByClaudeId.bind(this))}handleSessionInit=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"sessionDbId");if(i===null)return;let{userPrompt:s,promptNumber:o}=r.body;_.info("HTTP","SessionRoutes: handleSessionInit called",{sessionDbId:i,promptNumber:o,has_userPrompt:!!s});let a=this.sessionManager.initializeSession(i,s,o),c=this.dbManager.getSessionStore().getLatestUserPrompt(a.contentSessionId);if(c){this.eventBroadcaster.broadcastNewPrompt({id:c.id,content_session_id:c.content_session_id,project:c.project,platform_source:c.platform_source,prompt_number:c.prompt_number,prompt_text:c.prompt_text,created_at_epoch:c.created_at_epoch});let u=Date.now(),l=c.prompt_text;this.dbManager.getChromaSync()?.syncUserPrompt(c.id,c.memory_session_id,c.project,l,c.prompt_number,c.created_at_epoch).then(()=>{let d=Date.now()-u,p=l.length>60?l.substring(0,60)+"...":l;_.debug("CHROMA","User prompt synced",{promptId:c.id,duration:`${d}ms`,prompt:p})}).catch(d=>{_.error("CHROMA","User prompt sync failed, continuing without vector search",{promptId:c.id,prompt:l.length>60?l.substring(0,60)+"...":l},d)})}this.ensureGeneratorRunning(i,"init"),this.eventBroadcaster.broadcastSessionStarted(i,a.project),n.json({status:"initialized",sessionDbId:i,port:Rr()})});handleObservations=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"sessionDbId");if(i===null)return;let{tool_name:s,tool_input:o,tool_response:a,prompt_number:c,cwd:u}=r.body;this.sessionManager.queueObservation(i,{tool_name:s,tool_input:o,tool_response:a,prompt_number:c,cwd:u}),this.ensureGeneratorRunning(i,"observation"),this.eventBroadcaster.broadcastObservationQueued(i),n.json({status:"queued"})});handleSummarize=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"sessionDbId");if(i===null)return;let{last_assistant_message:s}=r.body;this.sessionManager.queueSummarize(i,s),this.ensureGeneratorRunning(i,"summarize"),this.eventBroadcaster.broadcastSummarizeQueued(),n.json({status:"queued"})});handleSessionStatus=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"sessionDbId");if(i===null)return;let s=this.sessionManager.getSession(i);if(!s){n.json({status:"not_found"});return}let a=this.sessionManager.getPendingMessageStore().getPendingCount(i);n.json({status:"active",sessionDbId:i,project:s.project,queueLength:a,uptime:Date.now()-s.startTime})});handleSessionDelete=this.wrapHandler(async(r,n)=>{let i=this.parseIntParam(r,n,"sessionDbId");i!==null&&(await this.completionHandler.completeByDbId(i),n.json({status:"deleted"}))});handleSessionComplete=this.wrapHandler(async(r,n)=>{let i=this.parseIntParam(r,n,"sessionDbId");i!==null&&(await this.completionHandler.completeByDbId(i),n.json({success:!0}))});handleObservationsByClaudeId=this.wrapHandler((r,n)=>{let{contentSessionId:i,tool_name:s,tool_input:o,tool_response:a,cwd:c}=r.body,u=Rt(r.body.platformSource),l=typeof c=="string"&&c.trim()?to(c):"";if(!i)return this.badRequest(n,"Missing contentSessionId");let d=ye.loadFromFile(vt);if(new Set(d.CLAUDE_MEM_SKIP_TOOLS.split(",").map(m=>m.trim()).filter(Boolean)).has(s)){_.debug("SESSION","Skipping observation for tool",{tool_name:s}),n.json({status:"skipped",reason:"tool_excluded"});return}if(new Set(["Edit","Write","Read","NotebookEdit"]).has(s)&&o){let m=o.file_path||o.notebook_path;if(m&&m.includes("session-memory")){_.debug("SESSION","Skipping meta-observation for session-memory file",{tool_name:s,file_path:m}),n.json({status:"skipped",reason:"session_memory_meta"});return}}try{let m=this.dbManager.getSessionStore(),h=m.createSDKSession(i,l,"",void 0,u),g=m.getPromptNumberFromUserPrompts(i);if(!cm.checkUserPromptPrivacy(m,i,g,"observation",h,{tool_name:s})){n.json({status:"skipped",reason:"private"});return}let y=o!==void 0?hR(JSON.stringify(o)):"{}",b=a!==void 0?hR(JSON.stringify(a)):"{}";this.sessionManager.queueObservation(h,{tool_name:s,tool_input:y,tool_response:b,prompt_number:g,cwd:c||(_.error("SESSION","Missing cwd when queueing observation in SessionRoutes",{sessionId:h,tool_name:s}),"")}),this.ensureGeneratorRunning(h,"observation"),this.eventBroadcaster.broadcastObservationQueued(h),n.json({status:"queued"})}catch(m){_.error("SESSION","Observation storage failed",{contentSessionId:i,tool_name:s},m),n.json({stored:!1,reason:m.message})}});handleSummarizeByClaudeId=this.wrapHandler((r,n)=>{let{contentSessionId:i,last_assistant_message:s}=r.body,o=Rt(r.body.platformSource);if(!i)return this.badRequest(n,"Missing contentSessionId");let a=this.dbManager.getSessionStore(),c=a.createSDKSession(i,"","",void 0,o),u=a.getPromptNumberFromUserPrompts(i);if(!cm.checkUserPromptPrivacy(a,i,u,"summarize",c)){n.json({status:"skipped",reason:"private"});return}this.sessionManager.queueSummarize(c,s),this.ensureGeneratorRunning(c,"summarize"),this.eventBroadcaster.broadcastSummarizeQueued(),n.json({status:"queued"})});handleStatusByClaudeId=this.wrapHandler((r,n)=>{let i=r.query.contentSessionId;if(!i)return this.badRequest(n,"Missing contentSessionId query parameter");let o=this.dbManager.getSessionStore().createSDKSession(i,"",""),a=this.sessionManager.getSession(o);if(!a){n.json({status:"not_found",queueLength:0});return}let u=this.sessionManager.getPendingMessageStore().getPendingCount(o);n.json({status:"active",sessionDbId:o,queueLength:u,uptime:Date.now()-a.startTime})});handleCompleteByClaudeId=this.wrapHandler(async(r,n)=>{let{contentSessionId:i}=r.body,s=Rt(r.body.platformSource);if(_.info("HTTP","\u2192 POST /api/sessions/complete",{contentSessionId:i}),!i)return this.badRequest(n,"Missing contentSessionId");let a=this.dbManager.getSessionStore().createSDKSession(i,"","",void 0,s),c=this.sessionManager.getSession(a);c||_.debug("SESSION","session-complete: Session not in active map; continuing with DB-backed completion",{contentSessionId:i,sessionDbId:a}),await this.completionHandler.completeByDbId(a),_.info("SESSION","Session completed via API",{contentSessionId:i,sessionDbId:a}),n.json({status:c?"completed":"completed_db_only",sessionDbId:a})});handleSessionInitByClaudeId=this.wrapHandler((r,n)=>{let{contentSessionId:i}=r.body,s=r.body.project||"unknown",o=r.body.prompt||"[media prompt]",a=Rt(r.body.platformSource),c=r.body.customTitle||void 0;if(_.info("HTTP","SessionRoutes: handleSessionInitByClaudeId called",{contentSessionId:i,project:s,platformSource:a,prompt_length:o?.length,customTitle:c}),!this.validateRequired(r,n,["contentSessionId"]))return;let u=this.dbManager.getSessionStore(),l=u.createSDKSession(i,s,o,c,a),d=u.getSessionById(l),p=!d?.memory_session_id;_.info("SESSION",`CREATED | contentSessionId=${i} \u2192 sessionDbId=${l} | isNew=${p} | project=${s}`,{sessionId:l});let m=u.getPromptNumberFromUserPrompts(i)+1,h=d?.memory_session_id||null;m>1?_.debug("HTTP",`[ALIGNMENT] DB Lookup Proof | contentSessionId=${i} \u2192 memorySessionId=${h||"(not yet captured)"} | prompt#=${m}`):_.debug("HTTP",`[ALIGNMENT] New Session | contentSessionId=${i} | prompt#=${m} | memorySessionId will be captured on first SDK response`);let g=CH(o);if(!g||g.trim()===""){_.debug("HOOK","Session init - prompt entirely private",{sessionId:l,promptNumber:m,originalLength:o.length}),n.json({sessionDbId:l,promptNumber:m,skipped:!0,reason:"private"});return}u.saveUserPrompt(i,m,g);let v=this.sessionManager.getSession(l)!==void 0;_.debug("SESSION","User prompt saved",{sessionId:l,promptNumber:m,contextInjected:v}),n.json({sessionDbId:l,promptNumber:m,skipped:!1,contextInjected:v})});static SIMPLE_TOOLS=new Set(["Read","Glob","Grep","LS","ListMcpResourcesTool"]);applyTierRouting(r){let n=ye.loadFromFile(vt);if(n.CLAUDE_MEM_TIER_ROUTING_ENABLED==="false"){r.modelOverride=void 0;return}r.modelOverride=void 0;let s=this.sessionManager.getPendingMessageStore().peekPendingTypes(r.sessionDbId);if(s.length===0){r.modelOverride=void 0;return}let o=s.some(c=>c.message_type==="summarize"),a=s.every(c=>c.message_type==="observation"&&c.tool_name&&t.SIMPLE_TOOLS.has(c.tool_name));if(o){let c=n.CLAUDE_MEM_TIER_SUMMARY_MODEL;c&&(r.modelOverride=c,_.debug("SESSION","Tier routing: summary model",{sessionId:r.sessionDbId,model:c}))}else if(a){let c=n.CLAUDE_MEM_TIER_SIMPLE_MODEL;c&&(r.modelOverride=c,_.debug("SESSION","Tier routing: simple model",{sessionId:r.sessionDbId,model:c}))}else r.modelOverride=void 0}};var gR=Pe(require("path"),1),hl=require("fs");te();var AH=require("os");It();fr();Vi();function PH(t,e,r){let n=r?.limit,i=Number.isInteger(n)&&n>0?Math.min(n,100):15,s=[e,e],o="";return r?.projects?.length&&(o=`AND project IN (${r.projects.map(()=>"?").join(",")})`,s.push(...r.projects)),s.push(i),t.prepare(` + SELECT * + FROM observations + WHERE ( + (files_read LIKE '[%' AND EXISTS (SELECT 1 FROM json_each(files_read) WHERE value = ?)) + OR (files_modified LIKE '[%' AND EXISTS (SELECT 1 FROM json_each(files_modified) WHERE value = ?)) + ) + ${o} + ORDER BY created_at_epoch DESC + LIMIT ? + `).all(...s)}var A_=class extends Gr{constructor(r,n,i,s,o,a){super();this.paginationHelper=r;this.dbManager=n;this.sessionManager=i;this.sseBroadcaster=s;this.workerService=o;this.startTime=a}setupRoutes(r){r.get("/api/observations",this.handleGetObservations.bind(this)),r.get("/api/summaries",this.handleGetSummaries.bind(this)),r.get("/api/prompts",this.handleGetPrompts.bind(this)),r.get("/api/observation/:id",this.handleGetObservationById.bind(this)),r.get("/api/observations/by-file",this.handleGetObservationsByFile.bind(this)),r.post("/api/observations/batch",this.handleGetObservationsByIds.bind(this)),r.get("/api/session/:id",this.handleGetSessionById.bind(this)),r.post("/api/sdk-sessions/batch",this.handleGetSdkSessionsByIds.bind(this)),r.get("/api/prompt/:id",this.handleGetPromptById.bind(this)),r.get("/api/stats",this.handleGetStats.bind(this)),r.get("/api/projects",this.handleGetProjects.bind(this)),r.get("/api/processing-status",this.handleGetProcessingStatus.bind(this)),r.post("/api/processing",this.handleSetProcessing.bind(this)),r.get("/api/pending-queue",this.handleGetPendingQueue.bind(this)),r.post("/api/pending-queue/process",this.handleProcessPendingQueue.bind(this)),r.delete("/api/pending-queue/failed",this.handleClearFailedQueue.bind(this)),r.delete("/api/pending-queue/all",this.handleClearAllQueue.bind(this)),r.post("/api/import",this.handleImport.bind(this))}handleGetObservations=this.wrapHandler((r,n)=>{let{offset:i,limit:s,project:o,platformSource:a}=this.parsePaginationParams(r),c=this.paginationHelper.getObservations(i,s,o,a);n.json(c)});handleGetSummaries=this.wrapHandler((r,n)=>{let{offset:i,limit:s,project:o,platformSource:a}=this.parsePaginationParams(r),c=this.paginationHelper.getSummaries(i,s,o,a);n.json(c)});handleGetPrompts=this.wrapHandler((r,n)=>{let{offset:i,limit:s,project:o,platformSource:a}=this.parsePaginationParams(r),c=this.paginationHelper.getPrompts(i,s,o,a);n.json(c)});handleGetObservationById=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"id");if(i===null)return;let o=this.dbManager.getSessionStore().getObservationById(i);if(!o){this.notFound(n,`Observation #${i} not found`);return}n.json(o)});handleGetObservationsByFile=this.wrapHandler((r,n)=>{let i=r.query.path;if(!i){this.badRequest(n,"path query parameter is required");return}let s=r.query.projects,o=s?s.split(",").filter(Boolean):void 0,a=r.query.limit?parseInt(r.query.limit,10):void 0,c=Number.isFinite(a)&&a>0?a:void 0,u=this.dbManager.getSessionStore().db,l=PH(u,i,{projects:o,limit:c});n.json({observations:l,count:l.length})});handleGetObservationsByIds=this.wrapHandler((r,n)=>{let{ids:i,orderBy:s,limit:o,project:a}=r.body;if(typeof i=="string")try{i=JSON.parse(i)}catch{i=i.split(",").map(Number)}if(!i||!Array.isArray(i)){this.badRequest(n,"ids must be an array of numbers");return}if(i.length===0){n.json([]);return}if(!i.every(l=>typeof l=="number"&&Number.isInteger(l))){this.badRequest(n,"All ids must be integers");return}let u=this.dbManager.getSessionStore().getObservationsByIds(i,{orderBy:s,limit:o,project:a});n.json(u)});handleGetSessionById=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"id");if(i===null)return;let o=this.dbManager.getSessionStore().getSessionSummariesByIds([i]);if(o.length===0){this.notFound(n,`Session #${i} not found`);return}n.json(o[0])});handleGetSdkSessionsByIds=this.wrapHandler((r,n)=>{let{memorySessionIds:i}=r.body;if(typeof i=="string")try{i=JSON.parse(i)}catch{i=i.split(",").map(a=>a.trim())}if(!Array.isArray(i)){this.badRequest(n,"memorySessionIds must be an array");return}let o=this.dbManager.getSessionStore().getSdkSessionsBySessionIds(i);n.json(o)});handleGetPromptById=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"id");if(i===null)return;let o=this.dbManager.getSessionStore().getUserPromptsByIds([i]);if(o.length===0){this.notFound(n,`Prompt #${i} not found`);return}n.json(o[0])});handleGetStats=this.wrapHandler((r,n)=>{let i=this.dbManager.getSessionStore().db,s=gn(),o=gR.default.join(s,"package.json"),c=JSON.parse((0,hl.readFileSync)(o,"utf-8")).version,u=i.prepare("SELECT COUNT(*) as count FROM observations").get(),l=i.prepare("SELECT COUNT(*) as count FROM sdk_sessions").get(),d=i.prepare("SELECT COUNT(*) as count FROM session_summaries").get(),p=gR.default.join((0,AH.homedir)(),".claude-mem","claude-mem.db"),f=0;(0,hl.existsSync)(p)&&(f=(0,hl.statSync)(p).size);let m=Math.floor((Date.now()-this.startTime)/1e3),h=this.sessionManager.getActiveSessionCount(),g=this.sseBroadcaster.getClientCount();n.json({worker:{version:c,uptime:m,activeSessions:h,sseClients:g,port:Rr()},database:{path:p,size:f,observations:u.count,sessions:l.count,summaries:d.count}})});handleGetProjects=this.wrapHandler((r,n)=>{let i=this.dbManager.getSessionStore(),s=r.query.platformSource,o=s?Rt(s):void 0;if(o){let a=i.getAllProjects(o);n.json({projects:a,sources:[o],projectsBySource:{[o]:a}});return}n.json(i.getProjectCatalog())});handleGetProcessingStatus=this.wrapHandler((r,n)=>{let i=this.sessionManager.isAnySessionProcessing(),s=this.sessionManager.getTotalActiveWork();n.json({isProcessing:i,queueDepth:s})});handleSetProcessing=this.wrapHandler((r,n)=>{this.workerService.broadcastProcessingStatus();let i=this.sessionManager.isAnySessionProcessing(),s=this.sessionManager.getTotalQueueDepth(),o=this.sessionManager.getActiveSessionCount();n.json({status:"ok",isProcessing:i,queueDepth:s,activeSessions:o})});parsePaginationParams(r){let n=parseInt(r.query.offset,10)||0,i=Math.min(parseInt(r.query.limit,10)||20,100),s=r.query.project,o=r.query.platformSource,a=o?Rt(o):void 0;return{offset:n,limit:i,project:s,platformSource:a}}handleImport=this.wrapHandler((r,n)=>{let{sessions:i,summaries:s,observations:o,prompts:a}=r.body,c={sessionsImported:0,sessionsSkipped:0,summariesImported:0,summariesSkipped:0,observationsImported:0,observationsSkipped:0,promptsImported:0,promptsSkipped:0},u=this.dbManager.getSessionStore();if(Array.isArray(i))for(let l of i)u.importSdkSession(l).imported?c.sessionsImported++:c.sessionsSkipped++;if(Array.isArray(s))for(let l of s)u.importSessionSummary(l).imported?c.summariesImported++:c.summariesSkipped++;if(Array.isArray(o))for(let l of o)u.importObservation(l).imported?c.observationsImported++:c.observationsSkipped++;if(Array.isArray(a))for(let l of a)u.importUserPrompt(l).imported?c.promptsImported++:c.promptsSkipped++;n.json({success:!0,stats:c})});handleGetPendingQueue=this.wrapHandler((r,n)=>{let{PendingMessageStore:i}=(Oa(),Q_($u)),s=new i(this.dbManager.getSessionStore().db,3),o=s.getQueueMessages(),a=s.getRecentlyProcessed(20,30),c=s.getStuckCount(300*1e3),u=s.getSessionsWithPendingMessages();n.json({queue:{messages:o,totalPending:o.filter(l=>l.status==="pending").length,totalProcessing:o.filter(l=>l.status==="processing").length,totalFailed:o.filter(l=>l.status==="failed").length,stuckCount:c},recentlyProcessed:a,sessionsWithPendingWork:u})});handleProcessPendingQueue=this.wrapHandler(async(r,n)=>{let i=Math.min(Math.max(parseInt(r.body.sessionLimit,10)||10,1),100),s=await this.workerService.processPendingQueues(i);n.json({success:!0,...s})});handleClearFailedQueue=this.wrapHandler((r,n)=>{let{PendingMessageStore:i}=(Oa(),Q_($u)),o=new i(this.dbManager.getSessionStore().db,3).clearFailed();_.info("QUEUE","Cleared failed queue messages",{clearedCount:o}),n.json({success:!0,clearedCount:o})});handleClearAllQueue=this.wrapHandler((r,n)=>{let{PendingMessageStore:i}=(Oa(),Q_($u)),o=new i(this.dbManager.getSessionStore().db,3).clearAll();_.warn("QUEUE","Cleared ALL queue messages (pending, processing, failed)",{clearedCount:o}),n.json({success:!0,clearedCount:o})})};te();var z_=class extends Gr{constructor(r){super();this.searchManager=r}setupRoutes(r){r.get("/api/search",this.handleUnifiedSearch.bind(this)),r.get("/api/timeline",this.handleUnifiedTimeline.bind(this)),r.get("/api/decisions",this.handleDecisions.bind(this)),r.get("/api/changes",this.handleChanges.bind(this)),r.get("/api/how-it-works",this.handleHowItWorks.bind(this)),r.get("/api/search/observations",this.handleSearchObservations.bind(this)),r.get("/api/search/sessions",this.handleSearchSessions.bind(this)),r.get("/api/search/prompts",this.handleSearchPrompts.bind(this)),r.get("/api/search/by-concept",this.handleSearchByConcept.bind(this)),r.get("/api/search/by-file",this.handleSearchByFile.bind(this)),r.get("/api/search/by-type",this.handleSearchByType.bind(this)),r.get("/api/context/recent",this.handleGetRecentContext.bind(this)),r.get("/api/context/timeline",this.handleGetContextTimeline.bind(this)),r.get("/api/context/preview",this.handleContextPreview.bind(this)),r.get("/api/context/inject",this.handleContextInject.bind(this)),r.post("/api/context/semantic",this.handleSemanticContext.bind(this)),r.get("/api/timeline/by-query",this.handleGetTimelineByQuery.bind(this)),r.get("/api/search/help",this.handleSearchHelp.bind(this))}handleUnifiedSearch=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.search(r.query);n.json(i)});handleUnifiedTimeline=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.timeline(r.query);n.json(i)});handleDecisions=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.decisions(r.query);n.json(i)});handleChanges=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.changes(r.query);n.json(i)});handleHowItWorks=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.howItWorks(r.query);n.json(i)});handleSearchObservations=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.searchObservations(r.query);n.json(i)});handleSearchSessions=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.searchSessions(r.query);n.json(i)});handleSearchPrompts=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.searchUserPrompts(r.query);n.json(i)});handleSearchByConcept=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.findByConcept(r.query);n.json(i)});handleSearchByFile=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.findByFile(r.query);n.json(i)});handleSearchByType=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.findByType(r.query);n.json(i)});handleGetRecentContext=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.getRecentContext(r.query);n.json(i)});handleGetContextTimeline=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.getContextTimeline(r.query);n.json(i)});handleContextPreview=this.wrapHandler(async(r,n)=>{let i=r.query.project,s=r.query.platformSource;if(!i){this.badRequest(n,"Project parameter is required");return}let{generateContext:o}=await Promise.resolve().then(()=>(RR(),IR)),a=`/preview/${i}`,c=await o({session_id:"preview-"+Date.now(),cwd:a,projects:[i],platform_source:s},!0);n.setHeader("Content-Type","text/plain; charset=utf-8"),n.send(c)});handleContextInject=this.wrapHandler(async(r,n)=>{let i=r.query.projects||r.query.project,s=r.query.colors==="true",o=r.query.full==="true",a=r.query.platformSource;if(!i){this.badRequest(n,"Project(s) parameter is required");return}let c=i.split(",").map(f=>f.trim()).filter(Boolean);if(c.length===0){this.badRequest(n,"At least one project is required");return}let{generateContext:u}=await Promise.resolve().then(()=>(RR(),IR)),d=`/context/${c[c.length-1]}`,p=await u({session_id:"context-inject-"+Date.now(),cwd:d,projects:c,full:o,platform_source:a},s);n.setHeader("Content-Type","text/plain; charset=utf-8"),n.send(p)});handleSemanticContext=this.wrapHandler(async(r,n)=>{let i=r.body?.q||r.query.q,s=r.body?.project||r.query.project,o=Math.min(Math.max(parseInt(String(r.body?.limit||r.query.limit||"5"),10)||5,1),20);if(!i||i.length<20){n.json({context:"",count:0});return}try{let c=(await this.searchManager.search({query:i,type:"observations",project:s,limit:String(o),format:"json"}))?.observations||[];if(!c.length){n.json({context:"",count:0});return}let u=[`## Relevant Past Work (semantic match) +`];for(let l of c.slice(0,o)){let d=l.created_at?.slice(0,10)||"";u.push(`### ${l.title||"Observation"} (${d})`),l.narrative&&u.push(l.narrative),u.push("")}n.json({context:u.join(` +`),count:c.length})}catch(a){_.error("SEARCH","Semantic context query failed",{},a),n.json({context:"",count:0})}});handleGetTimelineByQuery=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.getTimelineByQuery(r.query);n.json(i)});handleSearchHelp=this.wrapHandler((r,n)=>{n.json({title:"Claude-Mem Search API",description:"HTTP API for searching persistent memory",endpoints:[{path:"/api/search/observations",method:"GET",description:"Search observations using full-text search",parameters:{query:"Search query (required)",limit:"Number of results (default: 20)",project:"Filter by project name (optional)"}},{path:"/api/search/sessions",method:"GET",description:"Search session summaries using full-text search",parameters:{query:"Search query (required)",limit:"Number of results (default: 20)"}},{path:"/api/search/prompts",method:"GET",description:"Search user prompts using full-text search",parameters:{query:"Search query (required)",limit:"Number of results (default: 20)",project:"Filter by project name (optional)"}},{path:"/api/search/by-concept",method:"GET",description:"Find observations by concept tag",parameters:{concept:"Concept tag (required): discovery, decision, bugfix, feature, refactor",limit:"Number of results (default: 10)",project:"Filter by project name (optional)"}},{path:"/api/search/by-file",method:"GET",description:"Find observations and sessions by file path",parameters:{filePath:"File path or partial path (required)",limit:"Number of results per type (default: 10)",project:"Filter by project name (optional)"}},{path:"/api/search/by-type",method:"GET",description:"Find observations by type",parameters:{type:"Observation type (required): discovery, decision, bugfix, feature, refactor",limit:"Number of results (default: 10)",project:"Filter by project name (optional)"}},{path:"/api/context/recent",method:"GET",description:"Get recent session context including summaries and observations",parameters:{project:"Project name (default: current directory)",limit:"Number of recent sessions (default: 3)"}},{path:"/api/context/timeline",method:"GET",description:"Get unified timeline around a specific point in time",parameters:{anchor:'Anchor point: observation ID, session ID (e.g., "S123"), or ISO timestamp (required)',depth_before:"Number of records before anchor (default: 10)",depth_after:"Number of records after anchor (default: 10)",project:"Filter by project name (optional)"}},{path:"/api/timeline/by-query",method:"GET",description:"Search for best match, then get timeline around it",parameters:{query:"Search query (required)",mode:'Search mode: "auto", "observations", or "sessions" (default: "auto")',depth_before:"Number of records before match (default: 10)",depth_after:"Number of records after match (default: 10)",project:"Filter by project name (optional)"}},{path:"/api/search/help",method:"GET",description:"Get this help documentation"}],examples:['curl "http://localhost:37777/api/search/observations?query=authentication&limit=5"','curl "http://localhost:37777/api/search/by-type?type=bugfix&limit=10"','curl "http://localhost:37777/api/context/recent?project=claude-mem&limit=3"','curl "http://localhost:37777/api/context/timeline?anchor=123&depth_before=5&depth_after=5"']})})};var Wa=Pe(require("path"),1),Cr=require("fs"),AR=require("os");It();te();var CR=require("child_process"),Ga=require("fs"),L_=require("path");te();It();var fm=Eo;function OR(t){return!t||typeof t!="string"?!1:/^[a-zA-Z0-9][a-zA-Z0-9._/-]*$/.test(t)&&!t.includes("..")}var Oxe=3e5,PR=6e5;function ci(t){let e=(0,CR.spawnSync)("git",t,{cwd:fm,encoding:"utf-8",timeout:Oxe,windowsHide:!0,shell:!1});if(e.error)throw e.error;if(e.status!==0)throw new Error(e.stderr||e.stdout||"Git command failed");return e.stdout.trim()}function P5(t,e=PR){let n=process.platform==="win32"?"npm.cmd":"npm",i=(0,CR.spawnSync)(n,t,{cwd:fm,encoding:"utf-8",timeout:e,windowsHide:!0,shell:!1});if(i.error)throw i.error;if(i.status!==0)throw new Error(i.stderr||i.stdout||"npm command failed");return i.stdout.trim()}function U_(){let t=(0,L_.join)(fm,".git");if(!(0,Ga.existsSync)(t))return{branch:null,isBeta:!1,isGitRepo:!1,isDirty:!1,canSwitch:!1,error:"Installed plugin is not a git repository"};try{let e=ci(["rev-parse","--abbrev-ref","HEAD"]),n=ci(["status","--porcelain"]).length>0,i=e.startsWith("beta");return{branch:e,isBeta:i,isGitRepo:!0,isDirty:n,canSwitch:!0}}catch(e){return _.error("BRANCH","Failed to get branch info",{},e),{branch:null,isBeta:!1,isGitRepo:!0,isDirty:!1,canSwitch:!1,error:e.message}}}async function A5(t){if(!OR(t))return{success:!1,error:`Invalid branch name: ${t}. Branch names must be alphanumeric with hyphens, underscores, slashes, or dots.`};let e=U_();if(!e.isGitRepo)return{success:!1,error:"Installed plugin is not a git repository. Please reinstall."};if(e.branch===t)return{success:!0,branch:t,message:`Already on branch ${t}`};try{_.info("BRANCH","Starting branch switch",{from:e.branch,to:t}),_.debug("BRANCH","Discarding local changes"),ci(["checkout","--","."]),ci(["clean","-fd"]),_.debug("BRANCH","Fetching from origin"),ci(["fetch","origin"]),_.debug("BRANCH","Checking out branch",{branch:t});try{ci(["checkout",t])}catch(n){_.debug("BRANCH","Branch not local, tracking remote",{branch:t,error:n instanceof Error?n.message:String(n)}),ci(["checkout","-b",t,`origin/${t}`])}_.debug("BRANCH","Pulling latest"),ci(["pull","origin",t]);let r=(0,L_.join)(fm,".install-version");return(0,Ga.existsSync)(r)&&(0,Ga.unlinkSync)(r),_.debug("BRANCH","Running npm install"),P5(["install"],PR),_.success("BRANCH","Branch switch complete",{branch:t}),{success:!0,branch:t,message:`Switched to ${t}. Worker will restart automatically.`}}catch(r){_.error("BRANCH","Branch switch failed",{targetBranch:t},r);try{e.branch&&OR(e.branch)&&ci(["checkout",e.branch])}catch(n){_.error("BRANCH","Recovery checkout also failed",{originalBranch:e.branch},n)}return{success:!1,error:`Branch switch failed: ${r.message}`}}}async function N5(){let t=U_();if(!t.isGitRepo||!t.branch)return{success:!1,error:"Cannot pull updates: not a git repository"};try{if(!OR(t.branch))return{success:!1,error:`Invalid current branch name: ${t.branch}`};_.info("BRANCH","Pulling updates",{branch:t.branch}),ci(["checkout","--","."]),ci(["fetch","origin"]),ci(["pull","origin",t.branch]);let e=(0,L_.join)(fm,".install-version");return(0,Ga.existsSync)(e)&&(0,Ga.unlinkSync)(e),P5(["install"],PR),_.success("BRANCH","Updates pulled",{branch:t.branch}),{success:!0,branch:t.branch,message:`Updated ${t.branch}. Worker will restart automatically.`}}catch(e){return _.error("BRANCH","Pull failed",{},e),{success:!1,error:`Pull failed: ${e.message}`}}}tr();fr();var F_=class extends Gr{constructor(r){super();this.settingsManager=r}setupRoutes(r){r.get("/api/settings",this.handleGetSettings.bind(this)),r.post("/api/settings",this.handleUpdateSettings.bind(this)),r.get("/api/mcp/status",this.handleGetMcpStatus.bind(this)),r.post("/api/mcp/toggle",this.handleToggleMcp.bind(this)),r.get("/api/branch/status",this.handleGetBranchStatus.bind(this)),r.post("/api/branch/switch",this.handleSwitchBranch.bind(this)),r.post("/api/branch/update",this.handleUpdateBranch.bind(this))}handleGetSettings=this.wrapHandler((r,n)=>{let i=Wa.default.join((0,AR.homedir)(),".claude-mem","settings.json");this.ensureSettingsFile(i);let s=ye.loadFromFile(i);n.json(s)});handleUpdateSettings=this.wrapHandler((r,n)=>{let i=this.validateSettings(r.body);if(!i.valid){n.status(400).json({success:!1,error:i.error});return}let s=Wa.default.join((0,AR.homedir)(),".claude-mem","settings.json");this.ensureSettingsFile(s);let o={};if((0,Cr.existsSync)(s)){let c=(0,Cr.readFileSync)(s,"utf-8");try{o=JSON.parse(c)}catch(u){_.error("SETTINGS","Failed to parse settings file",{settingsPath:s},u),n.status(500).json({success:!1,error:"Settings file is corrupted. Delete ~/.claude-mem/settings.json to reset."});return}}let a=["CLAUDE_MEM_MODEL","CLAUDE_MEM_CONTEXT_OBSERVATIONS","CLAUDE_MEM_WORKER_PORT","CLAUDE_MEM_WORKER_HOST","CLAUDE_MEM_PROVIDER","CLAUDE_MEM_GEMINI_API_KEY","CLAUDE_MEM_GEMINI_MODEL","CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED","CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES","CLAUDE_MEM_GEMINI_MAX_TOKENS","CLAUDE_MEM_OPENROUTER_API_KEY","CLAUDE_MEM_OPENROUTER_MODEL","CLAUDE_MEM_OPENROUTER_SITE_URL","CLAUDE_MEM_OPENROUTER_APP_NAME","CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES","CLAUDE_MEM_OPENROUTER_MAX_TOKENS","CLAUDE_MEM_DATA_DIR","CLAUDE_MEM_LOG_LEVEL","CLAUDE_MEM_PYTHON_VERSION","CLAUDE_CODE_PATH","CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS","CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS","CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT","CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT","CLAUDE_MEM_CONTEXT_OBSERVATION_TYPES","CLAUDE_MEM_CONTEXT_OBSERVATION_CONCEPTS","CLAUDE_MEM_CONTEXT_FULL_COUNT","CLAUDE_MEM_CONTEXT_FULL_FIELD","CLAUDE_MEM_CONTEXT_SESSION_COUNT","CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY","CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE","CLAUDE_MEM_FOLDER_CLAUDEMD_ENABLED"];for(let c of a)r.body[c]!==void 0&&(o[c]=r.body[c]);(0,Cr.writeFileSync)(s,JSON.stringify(o,null,2),"utf-8"),wM(),_.info("WORKER","Settings updated"),n.json({success:!0,message:"Settings updated successfully"})});handleGetMcpStatus=this.wrapHandler((r,n)=>{let i=this.isMcpEnabled();n.json({enabled:i})});handleToggleMcp=this.wrapHandler((r,n)=>{let{enabled:i}=r.body;if(typeof i!="boolean"){this.badRequest(n,"enabled must be a boolean");return}this.toggleMcp(i),n.json({success:!0,enabled:this.isMcpEnabled()})});handleGetBranchStatus=this.wrapHandler((r,n)=>{let i=U_();n.json(i)});handleSwitchBranch=this.wrapHandler(async(r,n)=>{let{branch:i}=r.body;if(!i){n.status(400).json({success:!1,error:"Missing branch parameter"});return}let s=["main","beta/7.0","feature/bun-executable"];if(!s.includes(i)){n.status(400).json({success:!1,error:`Invalid branch. Allowed: ${s.join(", ")}`});return}_.info("WORKER","Branch switch requested",{branch:i});let o=await A5(i);o.success&&setTimeout(()=>{_.info("WORKER","Restarting worker after branch switch"),process.exit(0)},1e3),n.json(o)});handleUpdateBranch=this.wrapHandler(async(r,n)=>{_.info("WORKER","Branch update requested");let i=await N5();i.success&&setTimeout(()=>{_.info("WORKER","Restarting worker after branch update"),process.exit(0)},1e3),n.json(i)});validateSettings(r){if(r.CLAUDE_MEM_PROVIDER&&!["claude","gemini","openrouter"].includes(r.CLAUDE_MEM_PROVIDER))return{valid:!1,error:'CLAUDE_MEM_PROVIDER must be "claude", "gemini", or "openrouter"'};if(r.CLAUDE_MEM_GEMINI_MODEL&&!["gemini-2.5-flash-lite","gemini-2.5-flash","gemini-3-flash-preview"].includes(r.CLAUDE_MEM_GEMINI_MODEL))return{valid:!1,error:"CLAUDE_MEM_GEMINI_MODEL must be one of: gemini-2.5-flash-lite, gemini-2.5-flash, gemini-3-flash-preview"};if(r.CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES){let i=parseInt(r.CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES,10);if(isNaN(i)||i<1||i>100)return{valid:!1,error:"CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES must be between 1 and 100"}}if(r.CLAUDE_MEM_GEMINI_MAX_TOKENS){let i=parseInt(r.CLAUDE_MEM_GEMINI_MAX_TOKENS,10);if(isNaN(i)||i<1e3||i>1e6)return{valid:!1,error:"CLAUDE_MEM_GEMINI_MAX_TOKENS must be between 1000 and 1000000"}}if(r.CLAUDE_MEM_CONTEXT_OBSERVATIONS){let i=parseInt(r.CLAUDE_MEM_CONTEXT_OBSERVATIONS,10);if(isNaN(i)||i<1||i>200)return{valid:!1,error:"CLAUDE_MEM_CONTEXT_OBSERVATIONS must be between 1 and 200"}}if(r.CLAUDE_MEM_WORKER_PORT){let i=parseInt(r.CLAUDE_MEM_WORKER_PORT,10);if(isNaN(i)||i<1024||i>65535)return{valid:!1,error:"CLAUDE_MEM_WORKER_PORT must be between 1024 and 65535"}}if(r.CLAUDE_MEM_WORKER_HOST){let i=r.CLAUDE_MEM_WORKER_HOST;if(!/^(127\.0\.0\.1|0\.0\.0\.0|localhost|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})$/.test(i))return{valid:!1,error:"CLAUDE_MEM_WORKER_HOST must be a valid IP address (e.g., 127.0.0.1, 0.0.0.0)"}}if(r.CLAUDE_MEM_LOG_LEVEL&&!["DEBUG","INFO","WARN","ERROR","SILENT"].includes(r.CLAUDE_MEM_LOG_LEVEL.toUpperCase()))return{valid:!1,error:"CLAUDE_MEM_LOG_LEVEL must be one of: DEBUG, INFO, WARN, ERROR, SILENT"};if(r.CLAUDE_MEM_PYTHON_VERSION&&!/^3\.\d{1,2}$/.test(r.CLAUDE_MEM_PYTHON_VERSION))return{valid:!1,error:'CLAUDE_MEM_PYTHON_VERSION must be in format "3.X" or "3.XX" (e.g., "3.13")'};let n=["CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS","CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS","CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT","CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT","CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY","CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE"];for(let i of n)if(r[i]&&!["true","false"].includes(r[i]))return{valid:!1,error:`${i} must be "true" or "false"`};if(r.CLAUDE_MEM_CONTEXT_FULL_COUNT){let i=parseInt(r.CLAUDE_MEM_CONTEXT_FULL_COUNT,10);if(isNaN(i)||i<0||i>20)return{valid:!1,error:"CLAUDE_MEM_CONTEXT_FULL_COUNT must be between 0 and 20"}}if(r.CLAUDE_MEM_CONTEXT_SESSION_COUNT){let i=parseInt(r.CLAUDE_MEM_CONTEXT_SESSION_COUNT,10);if(isNaN(i)||i<1||i>50)return{valid:!1,error:"CLAUDE_MEM_CONTEXT_SESSION_COUNT must be between 1 and 50"}}if(r.CLAUDE_MEM_CONTEXT_FULL_FIELD&&!["narrative","facts"].includes(r.CLAUDE_MEM_CONTEXT_FULL_FIELD))return{valid:!1,error:'CLAUDE_MEM_CONTEXT_FULL_FIELD must be "narrative" or "facts"'};if(r.CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES){let i=parseInt(r.CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES,10);if(isNaN(i)||i<1||i>100)return{valid:!1,error:"CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES must be between 1 and 100"}}if(r.CLAUDE_MEM_OPENROUTER_MAX_TOKENS){let i=parseInt(r.CLAUDE_MEM_OPENROUTER_MAX_TOKENS,10);if(isNaN(i)||i<1e3||i>1e6)return{valid:!1,error:"CLAUDE_MEM_OPENROUTER_MAX_TOKENS must be between 1000 and 1000000"}}if(r.CLAUDE_MEM_OPENROUTER_SITE_URL)try{new URL(r.CLAUDE_MEM_OPENROUTER_SITE_URL)}catch(i){return _.debug("SETTINGS","Invalid URL format",{url:r.CLAUDE_MEM_OPENROUTER_SITE_URL,error:i instanceof Error?i.message:String(i)}),{valid:!1,error:"CLAUDE_MEM_OPENROUTER_SITE_URL must be a valid URL"}}return{valid:!0}}isMcpEnabled(){let r=gn(),n=Wa.default.join(r,"plugin",".mcp.json");return(0,Cr.existsSync)(n)}toggleMcp(r){let n=gn(),i=Wa.default.join(n,"plugin",".mcp.json"),s=Wa.default.join(n,"plugin",".mcp.json.disabled");r&&(0,Cr.existsSync)(s)?((0,Cr.renameSync)(s,i),_.info("WORKER","MCP search server enabled")):!r&&(0,Cr.existsSync)(i)?((0,Cr.renameSync)(i,s),_.info("WORKER","MCP search server disabled")):_.debug("WORKER","MCP toggle no-op (already in desired state)",{enabled:r})}ensureSettingsFile(r){if(!(0,Cr.existsSync)(r)){let n=ye.getAllDefaults(),i=Wa.default.dirname(r);(0,Cr.existsSync)(i)||(0,Cr.mkdirSync)(i,{recursive:!0}),(0,Cr.writeFileSync)(r,JSON.stringify(n,null,2),"utf-8"),_.info("SETTINGS","Created settings file with defaults",{settingsPath:r})}}};var Ln=require("fs"),q_=require("path");te();tr();function Cxe(t,e){let r=(0,Ln.openSync)(t,"r");try{let i=(0,Ln.fstatSync)(r).size;if(i===0)return{lines:"",totalEstimate:0};let s=64*1024,o=10*1024*1024,a=Math.min(s,i),c="",u=0;for(;a<=i&&a<=o;){let m=Math.max(0,i-a),h=i-m,g=Buffer.alloc(h);(0,Ln.readSync)(r,g,0,h,m),c=g.toString("utf-8"),u=0;for(let v=0;v=e||m===0)break;a=Math.min(a*2,i,o)}let l=c.split(` +`);l.length>0&&l[l.length-1]===""&&l.pop();let d=Math.max(0,l.length-e),p=l.slice(d),f;if(i<=a)f=l.length;else{let m=c.length/Math.max(u,1);f=Math.round(i/m)}return{lines:p.join(` +`),totalEstimate:f}}finally{(0,Ln.closeSync)(r)}}var H_=class extends Gr{getLogFilePath(){let e=ye.get("CLAUDE_MEM_DATA_DIR"),r=(0,q_.join)(e,"logs"),n=new Date().toISOString().split("T")[0];return(0,q_.join)(r,`claude-mem-${n}.log`)}getLogsDir(){let e=ye.get("CLAUDE_MEM_DATA_DIR");return(0,q_.join)(e,"logs")}setupRoutes(e){e.get("/api/logs",this.handleGetLogs.bind(this)),e.post("/api/logs/clear",this.handleClearLogs.bind(this))}handleGetLogs=this.wrapHandler((e,r)=>{let n=this.getLogFilePath();if(!(0,Ln.existsSync)(n)){r.json({logs:"",path:n,exists:!1});return}let i=parseInt(e.query.lines||"1000",10),s=Math.min(i,1e4),{lines:o,totalEstimate:a}=Cxe(n,s),c=o===""?0:o.split(` +`).length;r.json({logs:o,path:n,exists:!0,totalLines:a,returnedLines:c})});handleClearLogs=this.wrapHandler((e,r)=>{let n=this.getLogFilePath();if(!(0,Ln.existsSync)(n)){r.json({success:!0,message:"Log file does not exist",path:n});return}(0,Ln.writeFileSync)(n,"","utf-8"),_.info("SYSTEM","Log file cleared via UI",{path:n}),r.json({success:!0,message:"Log file cleared",path:n})})};te();var Z_=class extends Gr{constructor(r,n){super();this.dbManager=r;this.defaultProject=n}setupRoutes(r){r.post("/api/memory/save",this.handleSaveMemory.bind(this))}handleSaveMemory=this.wrapHandler(async(r,n)=>{let{text:i,title:s,project:o}=r.body,a=o||this.defaultProject;if(!i||typeof i!="string"||i.trim().length===0){this.badRequest(n,"text is required and must be non-empty");return}let c=this.dbManager.getSessionStore(),u=this.dbManager.getChromaSync(),l=c.getOrCreateManualSession(a),d={type:"discovery",title:s||i.substring(0,60).trim()+(i.length>60?"...":""),subtitle:"Manual memory",facts:[],narrative:i,concepts:[],files_read:[],files_modified:[]},p=c.storeObservation(l,a,d,0,0);_.info("HTTP","Manual observation saved",{id:p.id,project:a,title:d.title}),u.syncObservation(p.id,l,a,d,0,p.createdAtEpoch,0).catch(f=>{_.error("CHROMA","ChromaDB sync failed",{id:p.id},f)}),n.json({success:!0,id:p.id,title:d.title,project:a,message:`Memory saved as observation #${p.id}`})})};var gwe={},cwe=120*1e3;function VR(){return WR.default.join(ye.get("CLAUDE_MEM_DATA_DIR"),".worker-start-attempted")}function uwe(){if(process.platform!=="win32")return!1;let t=VR();if(!(0,Di.existsSync)(t))return!1;try{let e=(0,Di.statSync)(t).mtimeMs;return Date.now()-e{this.resolveInitialization=e}),this.dbManager=new ey,this.sessionManager=new iy(this.dbManager),this.sseBroadcaster=new sy,this.sdkAgent=new Dy(this.dbManager,this.sessionManager),this.geminiAgent=new jy(this.dbManager,this.sessionManager),this.openRouterAgent=new Uy(this.dbManager,this.sessionManager),this.paginationHelper=new Fy(this.dbManager),this.settingsManager=new qy(this.dbManager),this.sessionEventBroadcaster=new Gy(this.sseBroadcaster,this),this.sessionManager.setOnSessionDeleted(()=>{this.broadcastProcessingStatus()}),this.mcpClient=new qc({name:"worker-search-proxy",version:pwe},{capabilities:{}}),this.server=new Jv({getInitializationComplete:()=>this.initializationCompleteFlag,getMcpReady:()=>this.mcpReady,onShutdown:()=>this.shutdown(),onRestart:()=>this.shutdown(),workerPath:__filename,getAiStatus:()=>{let e="claude";return rl()&&La()?e="openrouter":tl()&&za()&&(e="gemini"),{provider:e,authMethod:Mg(),lastInteraction:this.lastAiInteraction?{timestamp:this.lastAiInteraction.timestamp,success:this.lastAiInteraction.success,...this.lastAiInteraction.error&&{error:this.lastAiInteraction.error}}:null}}}),this.registerRoutes(),this.registerSignalHandlers()}registerSignalHandlers(){OD(async()=>{this.isShuttingDown=!0,await this.shutdown()})}registerRoutes(){this.server.app.get("/api/context/inject",async(e,r,n)=>{if(!this.initializationCompleteFlag||!this.searchRoutes){_.warn("SYSTEM","Context requested before initialization complete, returning empty"),r.status(200).json({content:[{type:"text",text:""}]});return}n()}),this.server.app.use("/api",async(e,r,n)=>{if(this.initializationCompleteFlag){n();return}let i=3e4,s=new Promise((o,a)=>setTimeout(()=>a(new Error("Database initialization timeout")),i));try{await Promise.race([this.initializationComplete,s]),n()}catch(o){_.error("HTTP",`Request to ${e.method} ${e.path} rejected \u2014 DB not initialized`,{},o),r.status(503).json({error:"Service initializing",message:"Database is still initializing, please retry"})}}),this.server.registerRoutes(new I_(this.sseBroadcaster,this.dbManager,this.sessionManager)),this.server.registerRoutes(new P_(this.sessionManager,this.dbManager,this.sdkAgent,this.geminiAgent,this.openRouterAgent,this.sessionEventBroadcaster,this)),this.server.registerRoutes(new A_(this.paginationHelper,this.dbManager,this.sessionManager,this.sseBroadcaster,this,this.startTime)),this.server.registerRoutes(new F_(this.settingsManager)),this.server.registerRoutes(new H_),this.server.registerRoutes(new Z_(this.dbManager,"claude-mem"))}async start(){let e=Rr(),r=nk();await ID(),await this.server.listen(e,r),qD({pid:process.pid,port:e,startedAt:new Date().toISOString()}),yt().registerProcess("worker",{pid:process.pid,type:"worker",startedAt:new Date().toISOString()}),_.info("SYSTEM","Worker started",{host:r,port:e,pid:process.pid}),this.initializeBackground().catch(n=>{_.error("SYSTEM","Background initialization failed",{},n)})}async initializeBackground(){try{await HD();let{ModeManager:e}=await Promise.resolve().then(()=>(sn(),CF)),{SettingsDefaultsManager:r}=await Promise.resolve().then(()=>(tr(),fM)),{USER_SETTINGS_PATH:n}=await Promise.resolve().then(()=>(It(),SM)),i=r.loadFromFile(n);(i.CLAUDE_MEM_MODE==="local"||!i.CLAUDE_MEM_MODE)&&ZD(),i.CLAUDE_MEM_CHROMA_ENABLED!=="false"?(this.chromaMcpManager=Cs.getInstance(),_.info("SYSTEM","ChromaMcpManager initialized (lazy - connects on first use)")):_.info("SYSTEM","Chroma disabled via CLAUDE_MEM_CHROMA_ENABLED=false, skipping ChromaMcpManager");let o=i.CLAUDE_MEM_MODE;e.getInstance().loadMode(o),_.info("SYSTEM",`Mode loaded: ${o}`),await this.dbManager.initialize();let{PendingMessageStore:a}=await Promise.resolve().then(()=>(Oa(),$u)),u=new a(this.dbManager.getSessionStore().db,3).resetStaleProcessingMessages(0);u>0&&_.info("SYSTEM",`Reset ${u} stale processing messages to pending`);let l=new Zy,d=new By,p=new Hy(this.dbManager.getSessionSearch(),this.dbManager.getSessionStore(),this.dbManager.getChromaSync(),l,d);this.searchRoutes=new z_(p),this.server.registerRoutes(this.searchRoutes),_.info("WORKER","SearchManager initialized and search routes registered"),this.initializationCompleteFlag=!0,this.resolveInitialization(),_.info("SYSTEM","Core initialization complete (DB + search ready)"),await this.startTranscriptWatcher(i),this.chromaMcpManager&&Jc.backfillAllProjects().then(()=>{_.info("CHROMA_SYNC","Backfill check complete for all projects")}).catch(S=>{_.error("CHROMA_SYNC","Backfill failed (non-blocking)",{},S)});let f=WR.default.join(__dirname,"mcp-server.cjs");this.mcpReady=(0,Di.existsSync)(f),yt().assertCanSpawn("mcp server");let m=new Bc({command:"node",args:[f],env:Wi(process.env)}),h=3e5,g=this.mcpClient.connect(m),v,y=new Promise((S,x)=>{v=setTimeout(()=>x(new Error("MCP connection timeout after 5 minutes")),h)});try{await Promise.race([g,y])}catch(S){clearTimeout(v),_.warn("WORKER","MCP loopback self-check failed, cleaning up subprocess",{error:S instanceof Error?S.message:String(S)});try{await m.close()}catch{}_.info("WORKER","Bundled MCP server remains available for external stdio clients",{path:f});return}clearTimeout(v);let b=m._process;b?.pid&&(yt().registerProcess("mcp-server",{pid:b.pid,type:"mcp",startedAt:new Date().toISOString()},b),b.once("exit",()=>{yt().unregisterProcess("mcp-server")})),_.success("WORKER","MCP loopback self-check connected"),this.stopOrphanReaper=RF(()=>{let S=new Set;for(let[x]of this.sessionManager.sessions)S.add(x);return S}),_.info("SYSTEM","Started orphan reaper (runs every 30 seconds)"),this.staleSessionReaperInterval=setInterval(async()=>{try{let S=await this.sessionManager.reapStaleSessions();S>0&&_.info("SYSTEM",`Reaped ${S} stale sessions`)}catch(S){_.error("SYSTEM","Stale session reaper error",{error:S instanceof Error?S.message:String(S)})}},120*1e3),this.processPendingQueues(50).then(S=>{S.sessionsStarted>0&&_.info("SYSTEM",`Auto-recovered ${S.sessionsStarted} sessions with pending work`,{totalPending:S.totalPendingSessions,started:S.sessionsStarted,sessionIds:S.startedSessionIds})}).catch(S=>{_.error("SYSTEM","Auto-recovery of pending queues failed",{},S)})}catch(e){throw _.error("SYSTEM","Background initialization failed",{},e),e}}async startTranscriptWatcher(e){if(!(e.CLAUDE_MEM_TRANSCRIPTS_ENABLED!=="false")){_.info("TRANSCRIPT","Transcript watcher disabled via CLAUDE_MEM_TRANSCRIPTS_ENABLED=false");return}let n=e.CLAUDE_MEM_TRANSCRIPTS_CONFIG_PATH||Vy,i=Xs(n);try{(0,Di.existsSync)(i)||(_8(n),_.info("TRANSCRIPT","Created default transcript watch config",{configPath:i}));let s=y8(n),o=Xs(s.stateFile??Ky);this.transcriptWatcher=new k_(s,o),await this.transcriptWatcher.start(),_.info("TRANSCRIPT","Transcript watcher started",{configPath:i,statePath:o,watches:s.watches.length})}catch(s){this.transcriptWatcher?.stop(),this.transcriptWatcher=null,_.error("TRANSCRIPT","Failed to start transcript watcher (continuing without Codex ingestion)",{configPath:i},s)}}getActiveAgent(){return rl()&&La()?this.openRouterAgent:tl()&&za()?this.geminiAgent:this.sdkAgent}startSessionProcessor(e,r){if(!e)return;let n=e.sessionDbId,i=this.getActiveAgent(),s=i.constructor.name;e.abortController.signal.aborted&&(_.debug("SYSTEM","Replacing aborted AbortController before starting generator",{sessionId:e.sessionDbId}),e.abortController=new AbortController);let o=!1,a=!1;_.info("SYSTEM",`Starting generator (${r}) using ${s}`,{sessionId:n}),e.lastGeneratorActivity=Date.now(),e.generatorPromise=i.startSession(e,this).catch(async c=>{let u=c?.message||"";if(["Claude executable not found","CLAUDE_CODE_PATH","ENOENT","spawn","Invalid API key","API_KEY_INVALID","API key expired","API key not valid","PERMISSION_DENIED","Gemini API error: 400","Gemini API error: 401","Gemini API error: 403","FOREIGN KEY constraint failed"].some(d=>u.includes(d))){o=!0,this.lastAiInteraction={timestamp:Date.now(),success:!1,provider:s,error:u},_.error("SDK","Unrecoverable generator error - will NOT restart",{sessionId:e.sessionDbId,project:e.project,errorMessage:u});return}if(this.isSessionTerminatedError(c))return _.warn("SDK","SDK resume failed, falling back to standalone processing",{sessionId:e.sessionDbId,project:e.project,reason:c instanceof Error?c.message:String(c)}),this.runFallbackForTerminatedSession(e,c);throw(u.includes("aborted by user")||u.includes("No conversation found"))&&e.memorySessionId&&(_.warn("SDK","Detected stale resume failure, clearing memorySessionId for fresh start",{sessionId:e.sessionDbId,memorySessionId:e.memorySessionId,errorMessage:u}),this.dbManager.getSessionStore().updateMemorySessionId(e.sessionDbId,null),e.memorySessionId=null,e.forceInit=!0),_.error("SDK","Session generator failed",{sessionId:e.sessionDbId,project:e.project,provider:s},c),a=!0,this.lastAiInteraction={timestamp:Date.now(),success:!1,provider:s,error:u},c}).finally(async()=>{let c=Ao(e.sessionDbId);if(c&&c.process.exitCode===null&&await No(c,5e3),e.generatorPromise=null,!a&&!o&&(this.lastAiInteraction={timestamp:Date.now(),success:!0,provider:s}),o){this.terminateSession(e.sessionDbId,"unrecoverable_error");return}let l=this.sessionManager.getPendingMessageStore().getPendingCount(e.sessionDbId);if(e.idleTimedOut&&(e.idleTimedOut=!1,l===0)){this.terminateSession(e.sessionDbId,"idle_timeout");return}let d=3;if(l>0){if(e.consecutiveRestarts=(e.consecutiveRestarts||0)+1,e.consecutiveRestarts>d){_.error("SYSTEM","Exceeded max pending-work restarts, stopping to prevent infinite loop",{sessionId:e.sessionDbId,pendingCount:l,consecutiveRestarts:e.consecutiveRestarts}),e.consecutiveRestarts=0,this.terminateSession(e.sessionDbId,"max_restarts_exceeded");return}_.info("SYSTEM","Pending work remains after generator exit, restarting with fresh AbortController",{sessionId:e.sessionDbId,pendingCount:l,attempt:e.consecutiveRestarts}),e.abortController=new AbortController,this.startSessionProcessor(e,"pending-work-restart"),this.broadcastProcessingStatus()}else e.consecutiveRestarts=0,this.sessionManager.removeSessionImmediate(e.sessionDbId)})}isSessionTerminatedError(e){let n=(e instanceof Error?e.message:String(e)).toLowerCase();return n.includes("process aborted by user")||n.includes("processtransport")||n.includes("not ready for writing")||n.includes("session generator failed")||n.includes("claude code process")}async runFallbackForTerminatedSession(e,r){if(!e)return;let n=e.sessionDbId;if(!e.memorySessionId){let o=`fallback-${n}-${Date.now()}`;e.memorySessionId=o,this.dbManager.getSessionStore().updateMemorySessionId(n,o)}if(za())try{await this.geminiAgent.startSession(e,this);return}catch(o){_.warn("SDK","Fallback Gemini failed, trying OpenRouter",{sessionId:n,error:o instanceof Error?o.message:String(o)})}if(La())try{await this.openRouterAgent.startSession(e,this);return}catch(o){_.warn("SDK","Fallback OpenRouter failed",{sessionId:n,error:o instanceof Error?o.message:String(o)})}let s=this.sessionManager.getPendingMessageStore().markAllSessionMessagesAbandoned(n);s>0&&_.warn("SDK","No fallback available; marked pending messages abandoned",{sessionId:n,abandoned:s}),this.sessionManager.removeSessionImmediate(n),this.sessionEventBroadcaster.broadcastSessionCompleted(n)}terminateSession(e,r){let i=this.sessionManager.getPendingMessageStore().markAllSessionMessagesAbandoned(e);_.info("SYSTEM","Session terminated",{sessionId:e,reason:r,abandonedMessages:i}),this.sessionManager.removeSessionImmediate(e)}async processPendingQueues(e=10){let{PendingMessageStore:r}=await Promise.resolve().then(()=>(Oa(),$u)),n=new r(this.dbManager.getSessionStore().db,3),i=this.dbManager.getSessionStore(),s=360*60*1e3,o=Date.now()-s;try{let u=i.db.prepare(` + SELECT id FROM sdk_sessions + WHERE status = 'active' AND started_at_epoch < ? + `).all(o);if(u.length>0){let l=u.map(f=>f.id),d=l.map(()=>"?").join(",");i.db.prepare(` + UPDATE sdk_sessions + SET status = 'failed', completed_at_epoch = ? + WHERE id IN (${d}) + `).run(Date.now(),...l),_.info("SYSTEM",`Marked ${l.length} stale sessions as failed`);let p=i.db.prepare(` + UPDATE pending_messages + SET status = 'failed', failed_at_epoch = ? + WHERE status = 'pending' + AND session_db_id IN (${d}) + `).run(Date.now(),...l);p.changes>0&&_.info("SYSTEM",`Marked ${p.changes} pending messages from stale sessions as failed`)}}catch(u){_.error("SYSTEM","Failed to clean up stale sessions",{},u)}let a=n.getSessionsWithPendingMessages(),c={totalPendingSessions:a.length,sessionsStarted:0,sessionsSkipped:0,startedSessionIds:[]};if(a.length===0)return c;_.info("SYSTEM",`Processing up to ${e} of ${a.length} pending session queues`);for(let u of a){if(c.sessionsStarted>=e)break;try{if(this.sessionManager.getSession(u)?.generatorPromise){c.sessionsSkipped++;continue}let d=this.sessionManager.initializeSession(u);_.info("SYSTEM",`Starting processor for session ${u}`,{project:d.project,pendingCount:n.getPendingCount(u)}),this.startSessionProcessor(d,"startup-recovery"),c.sessionsStarted++,c.startedSessionIds.push(u),await new Promise(p=>setTimeout(p,100))}catch(l){_.error("SYSTEM",`Failed to process session ${u}`,{},l),c.sessionsSkipped++}}return c}async shutdown(){this.transcriptWatcher&&(this.transcriptWatcher.stop(),this.transcriptWatcher=null,_.info("TRANSCRIPT","Transcript watcher stopped")),this.stopOrphanReaper&&(this.stopOrphanReaper(),this.stopOrphanReaper=null),this.staleSessionReaperInterval&&(clearInterval(this.staleSessionReaperInterval),this.staleSessionReaperInterval=null),await XD({server:this.server.getHttpServer(),sessionManager:this.sessionManager,mcpClient:this.mcpClient,dbManager:this.dbManager,chromaMcpManager:this.chromaMcpManager||void 0})}broadcastProcessingStatus(){let e=this.sessionManager.getTotalActiveWork(),r=e>0,n=this.sessionManager.getActiveSessionCount();_.info("WORKER","Broadcasting processing status",{isProcessing:r,queueDepth:e,activeSessions:n}),this.sseBroadcaster.broadcast({type:"processing_status",isProcessing:r,queueDepth:e})}};async function G_(t){return WD()==="alive"?(_.info("SYSTEM","Worker PID file points to a live process, skipping duplicate spawn"),await Yc(t,Ms(Ir.PORT_IN_USE_WAIT))?(_.info("SYSTEM","Worker became healthy while waiting on live PID"),!0):(_.warn("SYSTEM","Live PID detected but worker did not become healthy before timeout"),!1)):await Yc(t,1e3)?(await Mk(t,Ms(Ir.READINESS_WAIT))||_.warn("SYSTEM","Worker is alive but readiness timed out \u2014 proceeding anyway"),_.info("SYSTEM","Worker already running and healthy"),!0):await mp(t)?(_.info("SYSTEM","Port in use, waiting for worker to become healthy"),await Yc(t,Ms(Ir.PORT_IN_USE_WAIT))?(_.info("SYSTEM","Worker is now healthy"),!0):(_.error("SYSTEM","Port in use but worker not responding to health checks"),!1)):uwe()?(_.warn("SYSTEM","Worker unavailable on Windows \u2014 skipping spawn (recent attempt failed within cooldown)"),!1):(_.info("SYSTEM","Starting worker daemon"),lwe(),Nk(__filename,t)===void 0?(_.error("SYSTEM","Failed to spawn worker daemon"),!1):await Yc(t,Ms(Ir.POST_SPAWN_WAIT))?(await Mk(t,Ms(Ir.READINESS_WAIT))||_.warn("SYSTEM","Worker is alive but readiness timed out \u2014 proceeding anyway"),dwe(),GD(),_.info("SYSTEM","Worker started successfully"),!0):(Xc(),_.error("SYSTEM","Worker failed to start (health check timeout)"),!1))}async function mwe(){let t=process.argv[2];(["start","hook","restart","--daemon"].includes(t)||t===void 0)&&Rk()&&process.exit(0);let r=Rr();function n(i,s){let o=fwe(i,s);console.log(JSON.stringify(o)),process.exit(0)}switch(t){case"start":{await G_(r)?n("ready"):n("error","Failed to start worker");break}case"stop":{await jk(r),await Dk(r,Ms(15e3))||_.warn("SYSTEM","Port did not free up after shutdown",{port:r}),Xc(),_.info("SYSTEM","Worker stopped successfully"),process.exit(0);break}case"restart":{_.info("SYSTEM","Restarting worker"),await jk(r),await Dk(r,Ms(15e3))||(_.error("SYSTEM","Port did not free up after shutdown, aborting restart",{port:r}),process.exit(0)),Xc(),Nk(__filename,r)===void 0&&(_.error("SYSTEM","Failed to spawn worker daemon during restart"),process.exit(0)),await Yc(r,Ms(Ir.POST_SPAWN_WAIT))||(Xc(),_.error("SYSTEM","Worker failed to restart"),process.exit(0)),_.info("SYSTEM","Worker restarted successfully"),process.exit(0);break}case"status":{let i=await mp(r),s=Ak();i&&s?(console.log("Worker is running"),console.log(` PID: ${s.pid}`),console.log(` Port: ${s.port}`),console.log(` Started: ${s.startedAt}`)):console.log("Worker is not running"),process.exit(0);break}case"cursor":{let i=process.argv[3],s=await gF(i,process.argv.slice(4));process.exit(s);break}case"gemini-cli":{let i=process.argv[3],s=await _F(i,process.argv.slice(4));process.exit(s);break}case"hook":{let i=process.argv[3],s=process.argv[4];(!i||!s)&&(console.error("Usage: claude-mem hook "),console.error("Platforms: claude-code, cursor, gemini-cli, raw"),console.error("Events: context, session-init, observation, summarize, session-complete, user-message"),process.exit(1)),await G_(r)||_.warn("SYSTEM","Worker failed to start before hook, handler will proceed gracefully");let{hookCommand:a}=await Promise.resolve().then(()=>(n3(),r3));await a(i,s);break}case"generate":{let i=process.argv.includes("--dry-run"),{generateClaudeMd:s}=await Promise.resolve().then(()=>(BR(),ZR)),o=await s(i);process.exit(o);break}case"clean":{let i=process.argv.includes("--dry-run"),{cleanClaudeMd:s}=await Promise.resolve().then(()=>(BR(),ZR)),o=await s(i);process.exit(o);break}default:{let i=Ak();i&&BD(i.pid)&&(_.info("SYSTEM","Worker already running (PID alive), refusing to start duplicate",{existingPid:i.pid,existingPort:i.port,startedAt:i.startedAt}),process.exit(0)),await mp(r)&&(_.info("SYSTEM","Port already in use, refusing to start duplicate",{port:r}),process.exit(0)),process.on("unhandledRejection",o=>{_.error("SYSTEM","Unhandled rejection in daemon",{reason:o instanceof Error?o.message:String(o)})}),process.on("uncaughtException",o=>{_.error("SYSTEM","Uncaught exception in daemon",{},o)}),new GR().start().catch(o=>{_.failure("SYSTEM","Worker failed to start",{},o),Xc(),process.exit(0)})}}}var hwe=typeof require<"u"&&typeof module<"u"?require.main===module||!module.parent||process.env.CLAUDE_MEM_MANAGED==="true":gwe.url===`file://${process.argv[1]}`||process.argv[1]?.endsWith("worker-service")||process.argv[1]?.endsWith("worker-service.cjs")||process.argv[1]?.replaceAll("\\","/")===__filename?.replaceAll("\\","/");hwe&&mwe().catch(t=>{_.error("SYSTEM","Fatal error in main",{},t instanceof Error?t:void 0),process.exit(0)});var bl=require("node:fs/promises"),vm=require("node:path");var l3=require("node:child_process"),Wr=require("node:fs"),Pr=require("node:path"),eO=require("node:os"),XR=require("node:module"),Owe={},YR=typeof __filename<"u"?(0,XR.createRequire)(__filename):(0,XR.createRequire)(Owe.url),QR={".js":"javascript",".mjs":"javascript",".cjs":"javascript",".jsx":"tsx",".ts":"typescript",".tsx":"tsx",".py":"python",".pyw":"python",".go":"go",".rs":"rust",".rb":"ruby",".java":"java",".c":"c",".h":"c",".cpp":"cpp",".cc":"cpp",".cxx":"cpp",".hpp":"cpp",".hh":"cpp",".kt":"kotlin",".kts":"kotlin",".swift":"swift",".php":"php",".ex":"elixir",".exs":"elixir",".lua":"lua",".scala":"scala",".sc":"scala",".sh":"bash",".bash":"bash",".zsh":"bash",".hs":"haskell",".zig":"zig",".css":"css",".scss":"scss",".toml":"toml",".yml":"yaml",".yaml":"yaml",".sql":"sql",".md":"markdown",".mdx":"markdown"};function d3(t,e){let r=t.slice(t.lastIndexOf("."));return QR[r]?QR[r]:e.extensionToLanguage[r]?e.extensionToLanguage[r]:"unknown"}function p3(t,e){return e.languageToQueryKey[t]?e.languageToQueryKey[t]:_we(t)}var mm=new Map,yl={grammars:{},extensionToLanguage:{},languageToQueryKey:{}};function gm(t){if(mm.has(t))return mm.get(t);let e=(0,Pr.join)(t,".claude-mem.json"),r;try{let s=(0,Wr.readFileSync)(e,"utf-8");r=JSON.parse(s)}catch{return mm.set(t,yl),yl}let n=r.grammars;if(!n||typeof n!="object"||Array.isArray(n))return mm.set(t,yl),yl;let i={grammars:{},extensionToLanguage:{},languageToQueryKey:{}};for(let[s,o]of Object.entries(n)){if(f3[s]||!o||typeof o!="object"||Array.isArray(o))continue;let a=o,c=a.package,u=a.extensions,l=a.query;if(!(typeof c!="string"||!Array.isArray(u))&&u.every(d=>typeof d=="string")){i.grammars[s]={package:c,extensions:u,query:typeof l=="string"?l:void 0};for(let d of u)QR[d]||(i.extensionToLanguage[d]=s);if(typeof l=="string"){let d=(0,Pr.join)(t,l);try{let p=(0,Wr.readFileSync)(d,"utf-8"),f=`user_${s}`;h3[f]=p,i.languageToQueryKey[s]=f}catch{console.error(`[smart-file-read] Custom query file not found: ${d}, falling back to generic`),i.languageToQueryKey[s]="generic"}}else i.languageToQueryKey[s]="generic"}}return mm.set(t,i),i}var f3={javascript:"tree-sitter-javascript",typescript:"tree-sitter-typescript/typescript",tsx:"tree-sitter-typescript/tsx",python:"tree-sitter-python",go:"tree-sitter-go",rust:"tree-sitter-rust",ruby:"tree-sitter-ruby",java:"tree-sitter-java",c:"tree-sitter-c",cpp:"tree-sitter-cpp",kotlin:"tree-sitter-kotlin",swift:"tree-sitter-swift",php:"tree-sitter-php/php",elixir:"tree-sitter-elixir",lua:"@tree-sitter-grammars/tree-sitter-lua",scala:"tree-sitter-scala",bash:"tree-sitter-bash",haskell:"tree-sitter-haskell",zig:"@tree-sitter-grammars/tree-sitter-zig",css:"tree-sitter-css",scss:"tree-sitter-scss",toml:"@tree-sitter-grammars/tree-sitter-toml",yaml:"@tree-sitter-grammars/tree-sitter-yaml",sql:"@derekstride/tree-sitter-sql",markdown:"@tree-sitter-grammars/tree-sitter-markdown"},vwe={markdown:"tree-sitter-markdown"};function ywe(t){let e=f3[t];if(!e)return null;let r=vwe[t];if(r){try{let n=YR.resolve(e+"/package.json"),i=(0,Pr.join)((0,Pr.dirname)(n),r);if((0,Wr.existsSync)((0,Pr.join)(i,"src")))return i}catch{}return null}try{let n=YR.resolve(e+"/package.json");return(0,Pr.dirname)(n)}catch{return null}}function m3(t,e){let r=ywe(t);if(r)return r;if(!e)return null;let i=gm(e).grammars[t];if(!i)return null;try{let s=(0,Pr.join)(e,"node_modules",i.package,"package.json");if((0,Wr.existsSync)(s)){let o=(0,Pr.dirname)(s);if((0,Wr.existsSync)((0,Pr.join)(o,"src")))return o}}catch{}return console.error(`[smart-file-read] Grammar package not found for "${t}": ${i.package} (install it in your project's node_modules)`),null}var h3={jsts:` (function_declaration name: (identifier) @name) @func (lexical_declaration (variable_declarator name: (identifier) @name value: [(arrow_function) (function_expression)])) @const_func (class_declaration name: (type_identifier) @name) @cls @@ -92,6 +1689,76 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs. (interface_declaration name: (identifier) @name) @iface (enum_declaration name: (identifier) @name) @enm (import_declaration) @imp +`,kotlin:` +(function_declaration (simple_identifier) @name) @func +(class_declaration (type_identifier) @name) @cls +(object_declaration (type_identifier) @name) @cls +(import_header) @imp +`,swift:` +(function_declaration name: (simple_identifier) @name) @func +(class_declaration name: (type_identifier) @name) @cls +(protocol_declaration name: (type_identifier) @name) @iface +(import_declaration) @imp +`,php:` +(function_definition name: (name) @name) @func +(class_declaration name: (name) @name) @cls +(interface_declaration name: (name) @name) @iface +(trait_declaration name: (name) @name) @trait_def +(method_declaration name: (name) @name) @method +(namespace_use_declaration) @imp +`,lua:` +(function_declaration name: (identifier) @name) @func +(function_declaration name: (dot_index_expression) @name) @func +(function_declaration name: (method_index_expression) @name) @func +`,scala:` +(function_definition name: (identifier) @name) @func +(class_definition name: (identifier) @name) @cls +(object_definition name: (identifier) @name) @cls +(trait_definition name: (identifier) @name) @trait_def +(import_declaration) @imp +`,bash:` +(function_definition name: (word) @name) @func +`,haskell:` +(function name: (variable) @name) @func +(type_synomym name: (name) @name) @tdef +(newtype name: (name) @name) @tdef +(data_type name: (name) @name) @tdef +(class name: (name) @name) @cls +(import) @imp +`,zig:` +(function_declaration name: (identifier) @name) @func +(test_declaration) @func +`,css:` +(rule_set (selectors) @name) @func +(media_statement) @cls +(keyframes_statement (keyframes_name) @name) @cls +(import_statement) @imp +`,scss:` +(rule_set (selectors) @name) @func +(media_statement) @cls +(keyframes_statement (keyframes_name) @name) @cls +(import_statement) @imp +(mixin_statement name: (identifier) @name) @mixin_def +(function_statement name: (identifier) @name) @func +(include_statement) @imp +`,toml:` +(table (bare_key) @name) @cls +(table (dotted_key) @name) @cls +(table_array_element (bare_key) @name) @cls +(table_array_element (dotted_key) @name) @cls +`,yaml:` +(block_mapping_pair key: (flow_node) @name) @func +`,sql:` +(create_table (object_reference) @name) @cls +(create_function (object_reference) @name) @func +(create_view (object_reference) @name) @cls +`,markdown:` +(atx_heading heading_content: (inline) @name) @heading +(setext_heading heading_content: (paragraph) @name) @heading +(fenced_code_block (info_string (language) @name)) @code_block +(fenced_code_block) @code_block +(minus_metadata) @frontmatter +(link_reference_definition (link_label) @name) @ref `,generic:` (function_declaration name: (identifier) @name) @func (function_definition name: (identifier) @name) @func @@ -99,22 +1766,32 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs. (class_definition name: (identifier) @name) @cls (import_statement) @imp (import_declaration) @imp -`};function By(e){switch(e){case"javascript":case"typescript":case"tsx":return"jsts";case"python":return"python";case"go":return"go";case"rust":return"rust";case"ruby":return"ruby";case"java":return"java";default:return"generic"}}var If=null,Ef=new Map;function Xy(e){if(Ef.has(e))return Ef.get(e);If||(If=(0,It.mkdtempSync)((0,Jt.join)((0,Pf.tmpdir)(),"smart-read-queries-")));let t=(0,Jt.join)(If,`${e}.scm`);return(0,It.writeFileSync)(t,lP[e]),Ef.set(e,t),t}var di=null;function dP(){if(di)return di;try{let e=Ky.resolve("tree-sitter-cli/package.json"),t=(0,Jt.join)((0,Jt.dirname)(e),"tree-sitter");if((0,It.existsSync)(t))return di=t,t}catch{}return di="tree-sitter",di}function pP(e,t,r){return Yy(e,[t],r).get(t)||[]}function Yy(e,t,r){if(t.length===0)return new Map;let n=dP(),o=["query","-p",r,e,...t],i;try{i=(0,Wy.execFileSync)(n,o,{encoding:"utf-8",timeout:3e4,stdio:["pipe","pipe","pipe"]})}catch{return new Map}return fP(i)}function fP(e){let t=new Map,r=null,n=null;for(let o of e.split(` -`)){if(o.length>0&&!o.startsWith(" ")&&!o.startsWith(" ")){r=o.trim(),t.has(r)||t.set(r,[]),n=null;continue}if(!r)continue;let i=o.match(/^\s+pattern:\s+(\d+)/);if(i){n={pattern:parseInt(i[1]),captures:[]},t.get(r).push(n);continue}let a=o.match(/^\s+capture:\s+(?:\d+\s*-\s*)?(\w+),\s*start:\s*\((\d+),\s*(\d+)\),\s*end:\s*\((\d+),\s*(\d+)\)(?:,\s*text:\s*`([^`]*)`)?/);a&&n&&n.captures.push({tag:a[1],startRow:parseInt(a[2]),startCol:parseInt(a[3]),endRow:parseInt(a[4]),endCol:parseInt(a[5]),text:a[6]})}return t}var Jy={func:"function",const_func:"function",cls:"class",method:"method",iface:"interface",tdef:"type",enm:"enum",struct_def:"struct",trait_def:"trait",impl_def:"impl"},mP=new Set(["class","struct","impl","trait"]);function hP(e,t,r,n=200){let i=e[t]||"";if(!i.trimEnd().endsWith("{")&&!i.trimEnd().endsWith(":")){let a=e.slice(t,Math.min(t+10,r+1)).join(` -`),s=a.indexOf("{");s!==-1&&s<500&&(i=a.slice(0,s).replace(/\n/g," ").replace(/\s+/g," ").trim())}return i=i.replace(/\s*[{:]\s*$/,"").trim(),i.length>n&&(i=i.slice(0,n-3)+"..."),i}function gP(e,t){let r=[],n=!1;for(let o=t-1;o>=0;o--){let i=e[o].trim();if(i===""){if(n)break;continue}if(i.startsWith("/**")||i.startsWith("*")||i.startsWith("*/")||i.startsWith("//")||i.startsWith("///")||i.startsWith("//!")||i.startsWith("#")||i.startsWith("@"))r.unshift(e[o]),n=!0;else break}return r.length>0?r.join(` -`).trim():void 0}function vP(e,t,r){for(let n=t+1;n<=Math.min(t+3,r);n++){let o=e[n]?.trim();if(o){if(o.startsWith('"""')||o.startsWith("'''"))return o;break}}}function _P(e,t,r,n,o,i){switch(i){case"javascript":case"typescript":case"tsx":return n.some(a=>t>=a.startRow&&r<=a.endRow);case"python":return!e.startsWith("_");case"go":return e.length>0&&e[0]===e[0].toUpperCase()&&e[0]!==e[0].toLowerCase();case"rust":return o[t]?.trimStart().startsWith("pub")??!1;default:return!0}}function Qy(e,t,r){let n=[],o=[],i=[],a=[];for(let c of e)for(let u of c.captures)u.tag==="exp"&&i.push({startRow:u.startRow,endRow:u.endRow}),u.tag==="imp"&&o.push(u.text||t[u.startRow]?.trim()||"");for(let c of e){let u=c.captures.find(E=>Jy[E.tag]),l=c.captures.find(E=>E.tag==="name");if(!u)continue;let d=l?.text||"anonymous",m=u.startRow,p=u.endRow,g=Jy[u.tag],h=gP(t,m),_=r==="python"?vP(t,m,p):void 0,b={name:d,kind:g,signature:hP(t,m,p),jsdoc:h||_,lineStart:m,lineEnd:p,exported:_P(d,m,p,i,t,r)};mP.has(g)&&(b.children=[],a.push({sym:b,startRow:m,endRow:p})),n.push(b)}let s=new Set;for(let c of a)for(let u of n)u!==c.sym&&u.lineStart>c.startRow&&u.lineEnd<=c.endRow&&(u.kind==="function"&&(u.kind="method"),c.sym.children.push(u),s.add(u));return{symbols:n.filter(c=>!s.has(c)),imports:o}}function Ps(e,t){let r=Hy(t),n=e.split(` -`),o=Gy(r);if(!o)return{filePath:t,language:r,symbols:[],imports:[],totalLines:n.length,foldedTokenEstimate:50};let i=By(r),a=Xy(i),s=t.slice(t.lastIndexOf("."))||".txt",c=(0,It.mkdtempSync)((0,Jt.join)((0,Pf.tmpdir)(),"smart-src-")),u=(0,Jt.join)(c,`source${s}`);(0,It.writeFileSync)(u,e);try{let l=pP(a,u,o),d=Qy(l,n,r),m=kn({filePath:t,language:r,symbols:d.symbols,imports:d.imports,totalLines:n.length,foldedTokenEstimate:0});return{filePath:t,language:r,symbols:d.symbols,imports:d.imports,totalLines:n.length,foldedTokenEstimate:Math.ceil(m.length/4)}}finally{(0,It.rmSync)(c,{recursive:!0,force:!0})}}function e$(e){let t=new Map,r=new Map;for(let n of e){let o=Hy(n.relativePath);r.has(o)||r.set(o,[]),r.get(o).push(n)}for(let[n,o]of r){let i=Gy(n);if(!i){for(let l of o){let d=l.content.split(` -`);t.set(l.relativePath,{filePath:l.relativePath,language:n,symbols:[],imports:[],totalLines:d.length,foldedTokenEstimate:50})}continue}let a=By(n),s=Xy(a),c=o.map(l=>l.absolutePath),u=Yy(s,c,i);for(let l of o){let d=l.content.split(` -`),m=u.get(l.absolutePath)||[],p=Qy(m,d,n),g=kn({filePath:l.relativePath,language:n,symbols:p.symbols,imports:p.imports,totalLines:d.length,foldedTokenEstimate:0});t.set(l.relativePath,{filePath:l.relativePath,language:n,symbols:p.symbols,imports:p.imports,totalLines:d.length,foldedTokenEstimate:Math.ceil(g.length/4)})}}return t}function kn(e){let t=[];if(t.push(`\u{1F4C1} ${e.filePath} (${e.language}, ${e.totalLines} lines)`),t.push(""),e.imports.length>0){t.push(` \u{1F4E6} Imports: ${e.imports.length} statements`);for(let r of e.imports.slice(0,10))t.push(` ${r}`);e.imports.length>10&&t.push(` ... +${e.imports.length-10} more`),t.push("")}for(let r of e.symbols)t.push(t$(r," "));return t.join(` -`)}function t$(e,t){let r=[],n=yP(e.kind),o=e.exported?" [exported]":"",i=e.lineStart===e.lineEnd?`L${e.lineStart+1}`:`L${e.lineStart+1}-${e.lineEnd+1}`;if(r.push(`${t}${n} ${e.name}${o} (${i})`),r.push(`${t} ${e.signature}`),e.jsdoc){let s=e.jsdoc.split(` -`).find(c=>{let u=c.replace(/^[\s*/]+/,"").replace(/^['"`]{3}/,"").trim();return u.length>0&&!u.startsWith("/**")});if(s){let c=s.replace(/^[\s*/]+/,"").replace(/^['"`]{3}/,"").replace(/['"`]{3}$/,"").trim();c&&r.push(`${t} \u{1F4AC} ${c}`)}}if(e.children&&e.children.length>0)for(let a of e.children)r.push(t$(a,t+" "));return r.join(` -`)}function yP(e){return{function:"\u0192",method:"\u0192",class:"\u25C6",interface:"\u25C7",type:"\u25C7",const:"\u25CF",variable:"\u25CB",export:"\u2192",struct:"\u25C6",enum:"\u25A3",trait:"\u25C7",impl:"\u25C8",property:"\u25CB",getter:"\u21E2",setter:"\u21E0"}[e]||"\xB7"}function r$(e,t,r){let n=Ps(e,t),o=u=>{for(let l of u){if(l.name===r)return l;if(l.children){let d=o(l.children);if(d)return d}}return null},i=o(n.symbols);if(!i)return null;let a=e.split(` -`),s=i.lineStart;for(let u=i.lineStart-1;u>=0;u--){let l=a[u].trim();if(l===""||l.startsWith("*")||l.startsWith("/**")||l.startsWith("///")||l.startsWith("//")||l.startsWith("#")||l.startsWith("@")||l==="*/")s=u;else break}let c=a.slice(s,i.lineEnd+1).join(` -`);return`// \u{1F4CD} ${t} L${s+1}-${i.lineEnd+1} -${c}`}var bP=new Set([".js",".jsx",".ts",".tsx",".mjs",".cjs",".py",".pyw",".go",".rs",".rb",".java",".cs",".cpp",".c",".h",".hpp",".swift",".kt",".php",".vue",".svelte"]),xP=new Set(["node_modules",".git","dist","build",".next","__pycache__",".venv","venv","env",".env","target","vendor",".cache",".turbo","coverage",".nyc_output",".claude",".smart-file-read"]),kP=512*1024;async function*n$(e,t,r=20){if(r<=0)return;let n;try{n=await(0,Sn.readdir)(e,{withFileTypes:!0})}catch{return}for(let o of n){if(o.name.startsWith(".")&&o.name!=="."||xP.has(o.name))continue;let i=(0,pi.join)(e,o.name);if(o.isDirectory())yield*n$(i,t,r-1);else if(o.isFile()){let a=o.name.slice(o.name.lastIndexOf("."));bP.has(a)&&(yield i)}}}async function SP(e){try{let t=await(0,Sn.stat)(e);if(t.size>kP||t.size===0)return null;let r=await(0,Sn.readFile)(e,"utf-8");return r.slice(0,1e3).includes("\0")?null:r}catch{return null}}async function o$(e,t,r={}){let n=r.maxResults||20,o=t.toLowerCase(),i=o.split(/[\s_\-./]+/).filter(h=>h.length>0),a=[];for await(let h of n$(e,e)){if(r.filePattern&&!(0,pi.relative)(e,h).toLowerCase().includes(r.filePattern.toLowerCase()))continue;let _=await SP(h);_&&a.push({absolutePath:h,relativePath:(0,pi.relative)(e,h),content:_})}let s=e$(a),c=[],u=[],l=0;for(let[h,_]of s){l+=wP(_);let E=Os(h.toLowerCase(),i)>0,I=[],A=(j,Le)=>{for(let de of j){let Wt=0,Qe="",Kt=Os(de.name.toLowerCase(),i);Kt>0&&(Wt+=Kt*3,Qe="name match"),de.signature.toLowerCase().includes(o)&&(Wt+=2,Qe=Qe?`${Qe} + signature`:"signature match"),de.jsdoc&&de.jsdoc.toLowerCase().includes(o)&&(Wt+=1,Qe=Qe?`${Qe} + jsdoc`:"jsdoc match"),Wt>0&&(E=!0,I.push({filePath:h,symbolName:Le?`${Le}.${de.name}`:de.name,kind:de.kind,signature:de.signature,jsdoc:de.jsdoc,lineStart:de.lineStart,lineEnd:de.lineEnd,matchReason:Qe})),de.children&&A(de.children,de.name)}};A(_.symbols),E&&(c.push(_),u.push(...I))}u.sort((h,_)=>{let b=Os(h.symbolName.toLowerCase(),i);return Os(_.symbolName.toLowerCase(),i)-b});let d=u.slice(0,n),m=new Set(d.map(h=>h.filePath)),p=c.filter(h=>m.has(h.filePath)).slice(0,n),g=p.reduce((h,_)=>h+_.foldedTokenEstimate,0);return{foldedFiles:p,matchingSymbols:d,totalFilesScanned:a.length,totalSymbolsFound:l,tokenEstimate:g}}function Os(e,t){let r=0;for(let n of t)if(e===n)r+=10;else if(e.includes(n))r+=5;else{let o=0,i=0;for(let a of n){let s=e.indexOf(a,o);s!==-1&&(i++,o=s+1)}i===n.length&&(r+=1)}return r}function wP(e){let t=e.symbols.length;for(let r of e.symbols)r.children&&(t+=r.children.length);return t}function i$(e,t){let r=[];if(r.push(`\u{1F50D} Smart Search: "${t}"`),r.push(` Scanned ${e.totalFilesScanned} files, found ${e.totalSymbolsFound} symbols`),r.push(` ${e.matchingSymbols.length} matches across ${e.foldedFiles.length} files (~${e.tokenEstimate} tokens for folded view)`),r.push(""),e.matchingSymbols.length===0)return r.push(" No matching symbols found."),r.join(` -`);r.push("\u2500\u2500 Matching Symbols \u2500\u2500"),r.push("");for(let n of e.matchingSymbols){if(r.push(` ${n.kind} ${n.symbolName} (${n.filePath}:${n.lineStart+1})`),r.push(` ${n.signature}`),n.jsdoc){let o=n.jsdoc.split(` -`).find(i=>i.replace(/^[\s*/]+/,"").trim().length>0);o&&r.push(` \u{1F4AC} ${o.replace(/^[\s*/]+/,"").trim()}`)}r.push("")}r.push("\u2500\u2500 Folded File Views \u2500\u2500"),r.push("");for(let n of e.foldedFiles)r.push(kn(n)),r.push("");return r.push("\u2500\u2500 Actions \u2500\u2500"),r.push(" To see full implementation: use smart_unfold with file path and symbol name"),r.join(` -`)}var Of=require("node:fs/promises"),js=require("node:path"),zP="11.0.1";console.log=(...e)=>{ve.error("CONSOLE","Intercepted console output (MCP protocol protection)",void 0,{args:e})};var a$={search:"/api/search",timeline:"/api/timeline"};async function s$(e,t){ve.debug("SYSTEM","\u2192 Worker API",void 0,{endpoint:e,params:t});try{let r=new URLSearchParams;for(let[a,s]of Object.entries(t))s!=null&&r.append(a,String(s));let n=`${e}?${r}`,o=await Ts(n);if(!o.ok){let a=await o.text();throw new Error(`Worker API error (${o.status}): ${a}`)}let i=await o.json();return ve.debug("SYSTEM","\u2190 Worker API success",void 0,{endpoint:e}),i}catch(r){return ve.error("SYSTEM","\u2190 Worker API error",{endpoint:e},r),{content:[{type:"text",text:`Error calling Worker API: ${r instanceof Error?r.message:String(r)}`}],isError:!0}}}async function IP(e,t){ve.debug("HTTP","Worker API request (POST)",void 0,{endpoint:e});try{let r=await Ts(e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!r.ok){let o=await r.text();throw new Error(`Worker API error (${r.status}): ${o}`)}let n=await r.json();return ve.debug("HTTP","Worker API success (POST)",void 0,{endpoint:e}),{content:[{type:"text",text:JSON.stringify(n,null,2)}]}}catch(r){return ve.error("HTTP","Worker API error (POST)",{endpoint:e},r),{content:[{type:"text",text:`Error calling Worker API: ${r instanceof Error?r.message:String(r)}`}],isError:!0}}}async function EP(){try{return(await Ts("/api/health")).ok}catch(e){return ve.debug("SYSTEM","Worker health check failed",{},e),!1}}var c$=[{name:"__IMPORTANT",description:`3-LAYER WORKFLOW (ALWAYS FOLLOW): +`,php:` +(function_definition name: (name) @name) @func +(method_declaration name: (name) @name) @method +(class_declaration name: (name) @name) @cls +(interface_declaration name: (name) @name) @iface +(trait_declaration name: (name) @name) @trait_def +(namespace_use_declaration) @imp +`};function _we(t){switch(t){case"javascript":case"typescript":case"tsx":return"jsts";case"python":return"python";case"go":return"go";case"rust":return"rust";case"ruby":return"ruby";case"java":return"java";case"kotlin":return"kotlin";case"swift":return"swift";case"php":return"php";case"elixir":return"generic";case"lua":return"lua";case"scala":return"scala";case"bash":return"bash";case"haskell":return"haskell";case"zig":return"zig";case"css":return"css";case"scss":return"scss";case"toml":return"toml";case"yaml":return"yaml";case"sql":return"sql";case"markdown":return"markdown";default:return"generic"}}var KR=null,JR=new Map;function g3(t){if(JR.has(t))return JR.get(t);KR||(KR=(0,Wr.mkdtempSync)((0,Pr.join)((0,eO.tmpdir)(),"smart-read-queries-")));let e=(0,Pr.join)(KR,`${t}.scm`);return(0,Wr.writeFileSync)(e,h3[t]),JR.set(t,e),e}var hm=null;function bwe(){if(hm)return hm;try{let t=YR.resolve("tree-sitter-cli/package.json"),e=(0,Pr.join)((0,Pr.dirname)(t),"tree-sitter");if((0,Wr.existsSync)(e))return hm=e,e}catch{}return hm="tree-sitter",hm}function Swe(t,e,r){return v3(t,[e],r).get(e)||[]}function v3(t,e,r){if(e.length===0)return new Map;let n=bwe(),i=["query","-p",r,t,...e],s;try{s=(0,l3.execFileSync)(n,i,{encoding:"utf-8",timeout:3e4,stdio:["pipe","pipe","pipe"]})}catch{return new Map}return xwe(s)}function xwe(t){let e=new Map,r=null,n=null;for(let i of t.split(` +`)){if(i.length>0&&!i.startsWith(" ")&&!i.startsWith(" ")){r=i.trim(),e.has(r)||e.set(r,[]),n=null;continue}if(!r)continue;let s=i.match(/^\s+pattern:\s+(\d+)/);if(s){n={pattern:parseInt(s[1]),captures:[]},e.get(r).push(n);continue}let o=i.match(/^\s+capture:\s+(?:\d+\s*-\s*)?(\w+),\s*start:\s*\((\d+),\s*(\d+)\),\s*end:\s*\((\d+),\s*(\d+)\)(?:,\s*text:\s*`([^`]*)`)?/);o&&n&&n.captures.push({tag:o[1],startRow:parseInt(o[2]),startCol:parseInt(o[3]),endRow:parseInt(o[4]),endCol:parseInt(o[5]),text:o[6]})}return e}var c3={func:"function",const_func:"function",cls:"class",method:"method",iface:"interface",tdef:"type",enm:"enum",struct_def:"struct",trait_def:"trait",impl_def:"impl",mixin_def:"mixin",heading:"section",code_block:"code",frontmatter:"metadata",ref:"reference"},wwe=new Set(["class","struct","impl","trait"]);function Ewe(t,e,r,n=200){let s=t[e]||"";if(!s.trimEnd().endsWith("{")&&!s.trimEnd().endsWith(":")){let o=t.slice(e,Math.min(e+10,r+1)).join(` +`),a=o.indexOf("{");a!==-1&&a<500&&(s=o.slice(0,a).replace(/\n/g," ").replace(/\s+/g," ").trim())}return s=s.replace(/\s*[{:]\s*$/,"").trim(),s.length>n&&(s=s.slice(0,n-3)+"..."),s}function kwe(t,e){let r=[],n=!1;for(let i=e-1;i>=0;i--){let s=t[i].trim();if(s===""){if(n)break;continue}if(s.startsWith("/**")||s.startsWith("*")||s.startsWith("*/")||s.startsWith("//")||s.startsWith("///")||s.startsWith("//!")||s.startsWith("#")||s.startsWith("@"))r.unshift(t[i]),n=!0;else break}return r.length>0?r.join(` +`).trim():void 0}function Twe(t,e,r){for(let n=e+1;n<=Math.min(e+3,r);n++){let i=t[n]?.trim();if(i){if(i.startsWith('"""')||i.startsWith("'''"))return i;break}}}function $we(t,e,r,n,i,s){switch(s){case"javascript":case"typescript":case"tsx":return n.some(o=>e>=o.startRow&&r<=o.endRow);case"python":return!t.startsWith("_");case"go":return t.length>0&&t[0]===t[0].toUpperCase()&&t[0]!==t[0].toLowerCase();case"rust":return i[e]?.trimStart().startsWith("pub")??!1;default:return!0}}function y3(t,e,r){let n=[],i=[],s=[],o=[];for(let c of t)for(let u of c.captures)u.tag==="exp"&&s.push({startRow:u.startRow,endRow:u.endRow}),u.tag==="imp"&&i.push(u.text||e[u.startRow]?.trim()||"");for(let c of t){let u=c.captures.find(b=>c3[b.tag]),l=c.captures.find(b=>b.tag==="name");if(!u)continue;let d=u.startRow,p=u.endRow,f=c3[u.tag],m=l?.text||"anonymous",h;if(r==="markdown"&&f==="section"){let S=(e[d]||"").match(/^(#{1,6})\s/),x=S?S[1].length:1;h=`${"#".repeat(x)} ${m}`}else if(r==="markdown"&&f==="code"){let b=m!=="anonymous"?m:"";h=b?"```"+b:"```"}else r==="markdown"&&f==="metadata"?h="---frontmatter---":r==="markdown"&&f==="reference"?h=e[d]?.trim()||m:h=Ewe(e,d,p);let g=r==="markdown"?void 0:kwe(e,d),v=r==="python"?Twe(e,d,p):void 0,y={name:m,kind:f,signature:h,jsdoc:g||v,lineStart:d,lineEnd:p,exported:$we(m,d,p,s,e,r)};wwe.has(f)&&(y.children=[],o.push({sym:y,startRow:d,endRow:p})),n.push(y)}if(r==="markdown"){let c=new Map,u=new Set;for(let l of n){if(l.kind!=="code")continue;let d=`${l.lineStart}:${l.lineEnd}`,p=c.get(d);p?l.name!=="anonymous"?(u.add(p),c.set(d,l)):u.add(l):c.set(d,l)}if(u.size>0){let l=n.filter(d=>!u.has(d));n.length=0,n.push(...l)}}let a=new Set;for(let c of o)for(let u of n)u!==c.sym&&u.lineStart>c.startRow&&u.lineEnd<=c.endRow&&(u.kind==="function"&&(u.kind="method"),c.sym.children.push(u),a.add(u));return{symbols:n.filter(c=>!a.has(c)),imports:i}}function W_(t,e,r){let n=r?gm(r):yl,i=d3(e,n),s=t.split(` +`),o=m3(i,r);if(!o)return{filePath:e,language:i,symbols:[],imports:[],totalLines:s.length,foldedTokenEstimate:50};let a=p3(i,n),c=g3(a),u=e.slice(e.lastIndexOf("."))||".txt",l=(0,Wr.mkdtempSync)((0,Pr.join)((0,eO.tmpdir)(),"smart-src-")),d=(0,Pr.join)(l,`source${u}`);(0,Wr.writeFileSync)(d,t);try{let p=Swe(c,d,o),f=y3(p,s,i),m=_l({filePath:e,language:i,symbols:f.symbols,imports:f.imports,totalLines:s.length,foldedTokenEstimate:0});return{filePath:e,language:i,symbols:f.symbols,imports:f.imports,totalLines:s.length,foldedTokenEstimate:Math.ceil(m.length/4)}}finally{(0,Wr.rmSync)(l,{recursive:!0,force:!0})}}function _3(t,e){let r=new Map,n=e?gm(e):yl,i=new Map;for(let s of t){let o=d3(s.relativePath,n);i.has(o)||i.set(o,[]),i.get(o).push(s)}for(let[s,o]of i){let a=m3(s,e);if(!a){for(let p of o){let f=p.content.split(` +`);r.set(p.relativePath,{filePath:p.relativePath,language:s,symbols:[],imports:[],totalLines:f.length,foldedTokenEstimate:50})}continue}let c=p3(s,n),u=g3(c),l=o.map(p=>p.absolutePath),d=v3(u,l,a);for(let p of o){let f=p.content.split(` +`),m=d.get(p.absolutePath)||[],h=y3(m,f,s),g=_l({filePath:p.relativePath,language:s,symbols:h.symbols,imports:h.imports,totalLines:f.length,foldedTokenEstimate:0});r.set(p.relativePath,{filePath:p.relativePath,language:s,symbols:h.symbols,imports:h.imports,totalLines:f.length,foldedTokenEstimate:Math.ceil(g.length/4)})}}return r}function _l(t){if(t.language==="markdown")return Iwe(t);let e=[];if(e.push(`\u{1F4C1} ${t.filePath} (${t.language}, ${t.totalLines} lines)`),e.push(""),t.imports.length>0){e.push(` \u{1F4E6} Imports: ${t.imports.length} statements`);for(let r of t.imports.slice(0,10))e.push(` ${r}`);t.imports.length>10&&e.push(` ... +${t.imports.length-10} more`),e.push("")}for(let r of t.symbols)e.push(b3(r," "));return e.join(` +`)}function Iwe(t){let e=[];e.push(`\u{1F4C4} ${t.filePath} (${t.language}, ${t.totalLines} lines)`);for(let n of t.symbols)if(n.kind==="section"){let i=n.signature.match(/^(#{1,6})\s/),s=i?i[1].length:1,o=" ".repeat(s),a=`L${n.lineStart+1}`,c=`${o}${n.signature}`;e.push(`${c.padEnd(56)}${a}`)}else if(n.kind==="code"){let i=u3(t.symbols,n.lineStart),s=" ".repeat(i+1),o=n.lineStart===n.lineEnd?`L${n.lineStart+1}`:`L${n.lineStart+1}-${n.lineEnd+1}`,a=`${s}${n.signature}`;e.push(`${a.padEnd(56)}${o}`)}else if(n.kind==="metadata"){let i=n.lineStart===n.lineEnd?`L${n.lineStart+1}`:`L${n.lineStart+1}-${n.lineEnd+1}`,s=` ${n.signature}`;e.push(`${s.padEnd(56)}${i}`)}else if(n.kind==="reference"){let i=u3(t.symbols,n.lineStart),s=" ".repeat(i+1),o=`L${n.lineStart+1}`,a=`${s}\u2197 ${n.name}`;e.push(`${a.padEnd(56)}${o}`)}return e.join(` +`)}function u3(t,e){let r=0;for(let n of t)if(n.kind==="section"&&n.lineStart{let u=c.replace(/^[\s*/]+/,"").replace(/^['"`]{3}/,"").trim();return u.length>0&&!u.startsWith("/**")});if(a){let c=a.replace(/^[\s*/]+/,"").replace(/^['"`]{3}/,"").replace(/['"`]{3}$/,"").trim();c&&r.push(`${e} \u{1F4AC} ${c}`)}}if(t.children&&t.children.length>0)for(let o of t.children)r.push(b3(o,e+" "));return r.join(` +`)}function Rwe(t){return{function:"\u0192",method:"\u0192",class:"\u25C6",interface:"\u25C7",type:"\u25C7",const:"\u25CF",variable:"\u25CB",export:"\u2192",struct:"\u25C6",enum:"\u25A3",trait:"\u25C7",impl:"\u25C8",property:"\u25CB",getter:"\u21E2",setter:"\u21E0",mixin:"\u25C8",section:"\xA7",code:"\u2318",metadata:"\u25CA",reference:"\u2197"}[t]||"\xB7"}function S3(t,e,r){let n=W_(t,e),i=u=>{for(let l of u){if(l.name===r)return l;if(l.children){let d=i(l.children);if(d)return d}}return null},s=i(n.symbols);if(!s)return null;let o=t.split(` +`);if(n.language==="markdown"&&s.kind==="section"){let u=s.signature.match(/^(#{1,6})\s/),l=u?u[1].length:1,d=s.lineStart,p=o.length-1;for(let m of n.symbols)if(m.kind==="section"&&m.lineStart>d){let h=m.signature.match(/^(#{1,6})\s/);if((h?h[1].length:1)<=l){for(p=m.lineStart-1;p>d&&o[p].trim()==="";)p--;break}}let f=o.slice(d,p+1).join(` +`);return` +${f}`}let a=s.lineStart;for(let u=s.lineStart-1;u>=0;u--){let l=o[u].trim();if(l===""||l.startsWith("*")||l.startsWith("/**")||l.startsWith("///")||l.startsWith("//")||l.startsWith("#")||l.startsWith("@")||l==="*/")a=u;else break}let c=o.slice(a,s.lineEnd+1).join(` +`);return`// \u{1F4CD} ${e} L${a+1}-${s.lineEnd+1} +${c}`}var x3=new Set([".js",".jsx",".ts",".tsx",".mjs",".cjs",".py",".pyw",".go",".rs",".rb",".java",".cs",".cpp",".cc",".cxx",".c",".h",".hpp",".hh",".swift",".kt",".kts",".php",".vue",".svelte",".ex",".exs",".lua",".scala",".sc",".sh",".bash",".zsh",".hs",".zig",".css",".scss",".toml",".yml",".yaml",".sql",".md",".mdx"]),Cwe=new Set(["node_modules",".git","dist","build",".next","__pycache__",".venv","venv","env",".env","target","vendor",".cache",".turbo","coverage",".nyc_output",".claude",".smart-file-read"]),Pwe=512*1024;async function*w3(t,e,r=20,n){if(r<=0)return;let i;try{i=await(0,bl.readdir)(t,{withFileTypes:!0})}catch{return}for(let s of i){if(s.name.startsWith(".")&&s.name!=="."||Cwe.has(s.name))continue;let o=(0,vm.join)(t,s.name);if(s.isDirectory())yield*w3(o,e,r-1,n);else if(s.isFile()){let a=s.name.slice(s.name.lastIndexOf("."));(x3.has(a)||n&&n.has(a))&&(yield o)}}}async function Awe(t){try{let e=await(0,bl.stat)(t);if(e.size>Pwe||e.size===0)return null;let r=await(0,bl.readFile)(t,"utf-8");return r.slice(0,1e3).includes("\0")?null:r}catch{return null}}async function E3(t,e,r={}){let n=r.maxResults||20,i=e.toLowerCase(),s=i.split(/[\s_\-./]+/).filter(y=>y.length>0),o=r.projectRoot||t,a=gm(o),c=new Set;for(let y of Object.values(a.grammars))for(let b of y.extensions)x3.has(b)||c.add(b);let u=[];for await(let y of w3(t,t,20,c.size>0?c:void 0)){if(r.filePattern&&!(0,vm.relative)(t,y).toLowerCase().includes(r.filePattern.toLowerCase()))continue;let b=await Awe(y);b&&u.push({absolutePath:y,relativePath:(0,vm.relative)(t,y),content:b})}let l=_3(u,o),d=[],p=[],f=0;for(let[y,b]of l){f+=Nwe(b);let x=V_(y.toLowerCase(),s)>0,w=[],E=(T,I)=>{for(let P of T){let N=0,L="",G=V_(P.name.toLowerCase(),s);G>0&&(N+=G*3,L="name match"),P.signature.toLowerCase().includes(i)&&(N+=2,L=L?`${L} + signature`:"signature match"),P.jsdoc&&P.jsdoc.toLowerCase().includes(i)&&(N+=1,L=L?`${L} + jsdoc`:"jsdoc match"),N>0&&(x=!0,w.push({filePath:y,symbolName:I?`${I}.${P.name}`:P.name,kind:P.kind,signature:P.signature,jsdoc:P.jsdoc,lineStart:P.lineStart,lineEnd:P.lineEnd,matchReason:L})),P.children&&E(P.children,P.name)}};E(b.symbols),x&&(d.push(b),p.push(...w))}p.sort((y,b)=>{let S=V_(y.symbolName.toLowerCase(),s);return V_(b.symbolName.toLowerCase(),s)-S});let m=p.slice(0,n),h=new Set(m.map(y=>y.filePath)),g=d.filter(y=>h.has(y.filePath)).slice(0,n),v=g.reduce((y,b)=>y+b.foldedTokenEstimate,0);return{foldedFiles:g,matchingSymbols:m,totalFilesScanned:u.length,totalSymbolsFound:f,tokenEstimate:v}}function V_(t,e){let r=0;for(let n of e)if(t===n)r+=10;else if(t.includes(n))r+=5;else{let i=0,s=0;for(let o of n){let a=t.indexOf(o,i);a!==-1&&(s++,i=a+1)}s===n.length&&(r+=1)}return r}function Nwe(t){let e=t.symbols.length;for(let r of t.symbols)r.children&&(e+=r.children.length);return e}function k3(t,e){let r=[];if(r.push(`\u{1F50D} Smart Search: "${e}"`),r.push(` Scanned ${t.totalFilesScanned} files, found ${t.totalSymbolsFound} symbols`),r.push(` ${t.matchingSymbols.length} matches across ${t.foldedFiles.length} files (~${t.tokenEstimate} tokens for folded view)`),r.push(""),t.matchingSymbols.length===0)return r.push(" No matching symbols found."),r.join(` +`);r.push("\u2500\u2500 Matching Symbols \u2500\u2500"),r.push("");for(let n of t.matchingSymbols){if(r.push(` ${n.kind} ${n.symbolName} (${n.filePath}:${n.lineStart+1})`),r.push(` ${n.signature}`),n.jsdoc){let i=n.jsdoc.split(` +`).find(s=>s.replace(/^[\s*/]+/,"").trim().length>0);i&&r.push(` \u{1F4AC} ${i.replace(/^[\s*/]+/,"").trim()}`)}r.push("")}r.push("\u2500\u2500 Folded File Views \u2500\u2500"),r.push("");for(let n of t.foldedFiles)r.push(_l(n)),r.push("");return r.push("\u2500\u2500 Actions \u2500\u2500"),r.push(" To see full implementation: use smart_unfold with file path and symbol name"),r.join(` +`)}var tO=require("node:fs/promises"),K_=require("node:path"),Mwe="11.0.1";console.log=(...t)=>{_.error("CONSOLE","Intercepted console output (MCP protocol protection)",void 0,{args:t})};var T3={search:"/api/search",timeline:"/api/timeline"};async function $3(t,e){_.debug("SYSTEM","\u2192 Worker API",void 0,{endpoint:t,params:e});try{let r=new URLSearchParams;for(let[o,a]of Object.entries(e))a!=null&&r.append(o,String(a));let n=`${t}?${r}`,i=await Qe(n);if(!i.ok){let o=await i.text();throw new Error(`Worker API error (${i.status}): ${o}`)}let s=await i.json();return _.debug("SYSTEM","\u2190 Worker API success",void 0,{endpoint:t}),s}catch(r){return _.error("SYSTEM","\u2190 Worker API error",{endpoint:t},r),{content:[{type:"text",text:`Error calling Worker API: ${r instanceof Error?r.message:String(r)}`}],isError:!0}}}async function Dwe(t,e){_.debug("HTTP","Worker API request (POST)",void 0,{endpoint:t});try{let r=await Qe(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!r.ok){let i=await r.text();throw new Error(`Worker API error (${r.status}): ${i}`)}let n=await r.json();return _.debug("HTTP","Worker API success (POST)",void 0,{endpoint:t}),{content:[{type:"text",text:JSON.stringify(n,null,2)}]}}catch(r){return _.error("HTTP","Worker API error (POST)",{endpoint:t},r),{content:[{type:"text",text:`Error calling Worker API: ${r instanceof Error?r.message:String(r)}`}],isError:!0}}}async function jwe(){try{return(await Qe("/api/health")).ok}catch(t){return _.debug("SYSTEM","Worker health check failed",{},t),!1}}async function zwe(){if(await jwe())return!0;_.warn("SYSTEM","Worker not available, attempting auto-start for MCP client");try{let t=Rr();return await G_(t)}catch(t){return _.error("SYSTEM","Worker auto-start failed",void 0,t),!1}}var R3=[{name:"__IMPORTANT",description:`3-LAYER WORKFLOW (ALWAYS FOLLOW): 1. search(query) \u2192 Get index with IDs (~50-100 tokens/result) 2. timeline(anchor=ID) \u2192 Get context around interesting results 3. get_observations([IDs]) \u2192 Fetch full details ONLY for filtered IDs @@ -134,8 +1811,320 @@ NEVER fetch full details without filtering first. 10x token savings.`,inputSchem \`get_observations(ids=[...])\` # ALWAYS batch for 2+ items Returns: Complete details (~500-1000 tokens/result) -**Why:** 10x token savings. Never fetch full details without filtering first.`}]})},{name:"search",description:"Step 1: Search memory. Returns index with IDs. Params: query, limit, project, type, obs_type, dateStart, dateEnd, offset, orderBy",inputSchema:{type:"object",properties:{},additionalProperties:!0},handler:async e=>{let t=a$.search;return await s$(t,e)}},{name:"timeline",description:"Step 2: Get context around results. Params: anchor (observation ID) OR query (finds anchor automatically), depth_before, depth_after, project",inputSchema:{type:"object",properties:{},additionalProperties:!0},handler:async e=>{let t=a$.timeline;return await s$(t,e)}},{name:"get_observations",description:"Step 3: Fetch full details for filtered IDs. Params: ids (array of observation IDs, required), orderBy, limit, project",inputSchema:{type:"object",properties:{ids:{type:"array",items:{type:"number"},description:"Array of observation IDs to fetch (required)"}},required:["ids"],additionalProperties:!0},handler:async e=>await IP("/api/observations/batch",e)},{name:"smart_search",description:"Search codebase for symbols, functions, classes using tree-sitter AST parsing. Returns folded structural views with token counts. Use path parameter to scope the search.",inputSchema:{type:"object",properties:{query:{type:"string",description:"Search term \u2014 matches against symbol names, file names, and file content"},path:{type:"string",description:"Root directory to search (default: current working directory)"},max_results:{type:"number",description:"Maximum results to return (default: 20)"},file_pattern:{type:"string",description:'Substring filter for file paths (e.g. ".ts", "src/services")'}},required:["query"]},handler:async e=>{let t=(0,js.resolve)(e.path||process.cwd()),r=await o$(t,e.query,{maxResults:e.max_results||20,filePattern:e.file_pattern});return{content:[{type:"text",text:i$(r,e.query)}]}}},{name:"smart_unfold",description:"Expand a specific symbol (function, class, method) from a file. Returns the full source code of just that symbol. Use after smart_search or smart_outline to read specific code.",inputSchema:{type:"object",properties:{file_path:{type:"string",description:"Path to the source file"},symbol_name:{type:"string",description:"Name of the symbol to unfold (function, class, method, etc.)"}},required:["file_path","symbol_name"]},handler:async e=>{let t=(0,js.resolve)(e.file_path),r=await(0,Of.readFile)(t,"utf-8"),n=r$(r,t,e.symbol_name);if(n)return{content:[{type:"text",text:n}]};let o=Ps(r,t);if(o.symbols.length>0){let i=o.symbols.map(a=>` - ${a.name} (${a.kind})`).join(` -`);return{content:[{type:"text",text:`Symbol "${e.symbol_name}" not found in ${e.file_path}. +**Why:** 10x token savings. Never fetch full details without filtering first.`}]})},{name:"search",description:"Step 1: Search memory. Returns index with IDs. Params: query, limit, project, type, obs_type, dateStart, dateEnd, offset, orderBy",inputSchema:{type:"object",properties:{},additionalProperties:!0},handler:async t=>{let e=T3.search;return await $3(e,t)}},{name:"timeline",description:"Step 2: Get context around results. Params: anchor (observation ID) OR query (finds anchor automatically), depth_before, depth_after, project",inputSchema:{type:"object",properties:{},additionalProperties:!0},handler:async t=>{let e=T3.timeline;return await $3(e,t)}},{name:"get_observations",description:"Step 3: Fetch full details for filtered IDs. Params: ids (array of observation IDs, required), orderBy, limit, project",inputSchema:{type:"object",properties:{ids:{type:"array",items:{type:"number"},description:"Array of observation IDs to fetch (required)"}},required:["ids"],additionalProperties:!0},handler:async t=>await Dwe("/api/observations/batch",t)},{name:"smart_search",description:"Search codebase for symbols, functions, classes using tree-sitter AST parsing. Returns folded structural views with token counts. Use path parameter to scope the search.",inputSchema:{type:"object",properties:{query:{type:"string",description:"Search term \u2014 matches against symbol names, file names, and file content"},path:{type:"string",description:"Root directory to search (default: current working directory)"},max_results:{type:"number",description:"Maximum results to return (default: 20)"},file_pattern:{type:"string",description:'Substring filter for file paths (e.g. ".ts", "src/services")'}},required:["query"]},handler:async t=>{let e=(0,K_.resolve)(t.path||process.cwd()),r=await E3(e,t.query,{maxResults:t.max_results||20,filePattern:t.file_pattern});return{content:[{type:"text",text:k3(r,t.query)}]}}},{name:"smart_unfold",description:"Expand a specific symbol (function, class, method) from a file. Returns the full source code of just that symbol. Use after smart_search or smart_outline to read specific code.",inputSchema:{type:"object",properties:{file_path:{type:"string",description:"Path to the source file"},symbol_name:{type:"string",description:"Name of the symbol to unfold (function, class, method, etc.)"}},required:["file_path","symbol_name"]},handler:async t=>{let e=(0,K_.resolve)(t.file_path),r=await(0,tO.readFile)(e,"utf-8"),n=S3(r,e,t.symbol_name);if(n)return{content:[{type:"text",text:n}]};let i=W_(r,e);if(i.symbols.length>0){let s=i.symbols.map(o=>` - ${o.name} (${o.kind})`).join(` +`);return{content:[{type:"text",text:`Symbol "${t.symbol_name}" not found in ${t.file_path}. Available symbols: -${i}`}]}}return{content:[{type:"text",text:`Could not parse ${e.file_path}. File may be unsupported or empty.`}]}}},{name:"smart_outline",description:"Get structural outline of a file \u2014 shows all symbols (functions, classes, methods, types) with signatures but bodies folded. Much cheaper than reading the full file.",inputSchema:{type:"object",properties:{file_path:{type:"string",description:"Path to the source file"}},required:["file_path"]},handler:async e=>{let t=(0,js.resolve)(e.file_path),r=await(0,Of.readFile)(t,"utf-8"),n=Ps(r,t);return n.symbols.length>0?{content:[{type:"text",text:kn(n)}]}:{content:[{type:"text",text:`Could not parse ${e.file_path}. File may use an unsupported language or be empty.`}]}}}],jf=new xs({name:"claude-mem",version:zP},{capabilities:{tools:{}}});jf.setRequestHandler(xd,async()=>({tools:c$.map(e=>({name:e.name,description:e.description,inputSchema:e.inputSchema}))}));jf.setRequestHandler(Do,async e=>{let t=c$.find(r=>r.name===e.params.name);if(!t)throw new Error(`Unknown tool: ${e.params.name}`);try{return await t.handler(e.params.arguments||{})}catch(r){return ve.error("SYSTEM","Tool execution failed",{tool:e.params.name},r),{content:[{type:"text",text:`Tool execution failed: ${r instanceof Error?r.message:String(r)}`}],isError:!0}}});var TP=3e4,fi=null;function PP(){if(process.platform==="win32")return;let e=process.ppid;fi=setInterval(()=>{(process.ppid===1||process.ppid!==e)&&(ve.info("SYSTEM","Parent process died, self-exiting to prevent orphan",{initialPpid:e,currentPpid:process.ppid}),Df())},TP),fi.unref&&fi.unref()}function Df(){fi&&clearInterval(fi),ve.info("SYSTEM","MCP server shutting down"),process.exit(0)}process.on("SIGTERM",Df);process.on("SIGINT",Df);async function OP(){let e=new Ss;await jf.connect(e),ve.info("SYSTEM","Claude-mem search server started"),PP(),setTimeout(async()=>{await EP()?ve.info("SYSTEM","Worker available",void 0,{}):(ve.error("SYSTEM","Worker not available",void 0,{}),ve.error("SYSTEM","Tools will fail until Worker is started"),ve.error("SYSTEM","Start Worker with: npm run worker:restart"))},0)}OP().catch(e=>{ve.error("SYSTEM","Fatal error",void 0,e),process.exit(0)}); +${s}`}]}}return{content:[{type:"text",text:`Could not parse ${t.file_path}. File may be unsupported or empty.`}]}}},{name:"smart_outline",description:"Get structural outline of a file \u2014 shows all symbols (functions, classes, methods, types) with signatures but bodies folded. Much cheaper than reading the full file.",inputSchema:{type:"object",properties:{file_path:{type:"string",description:"Path to the source file"}},required:["file_path"]},handler:async t=>{let e=(0,K_.resolve)(t.file_path),r=await(0,tO.readFile)(e,"utf-8"),n=W_(r,e);return n.symbols.length>0?{content:[{type:"text",text:_l(n)}]}:{content:[{type:"text",text:`Could not parse ${t.file_path}. File may use an unsupported language or be empty.`}]}}}],rO=new kg({name:"claude-mem",version:Mwe},{capabilities:{tools:{}}});rO.setRequestHandler(Kw,async()=>({tools:R3.map(t=>({name:t.name,description:t.description,inputSchema:t.inputSchema}))}));rO.setRequestHandler(Rd,async t=>{let e=R3.find(r=>r.name===t.params.name);if(!e)throw new Error(`Unknown tool: ${t.params.name}`);try{return await e.handler(t.params.arguments||{})}catch(r){return _.error("SYSTEM","Tool execution failed",{tool:t.params.name},r),{content:[{type:"text",text:`Tool execution failed: ${r instanceof Error?r.message:String(r)}`}],isError:!0}}});var Lwe=3e4,ym=null,I3=!1;function J_(){_m("stdio-closed")}function O3(t){_.warn("SYSTEM","MCP stdio stream errored, shutting down",{message:t.message}),_m("stdio-error")}function Uwe(){process.stdin.on("end",J_),process.stdin.on("close",J_),process.stdin.on("error",O3)}function Fwe(){process.stdin.off("end",J_),process.stdin.off("close",J_),process.stdin.off("error",O3)}function qwe(){if(process.platform==="win32")return;let t=process.ppid;ym=setInterval(()=>{(process.ppid===1||process.ppid!==t)&&(_.info("SYSTEM","Parent process died, self-exiting to prevent orphan",{initialPpid:t,currentPpid:process.ppid}),_m())},Lwe),ym.unref&&ym.unref()}function _m(t="shutdown"){I3||(I3=!0,ym&&clearInterval(ym),Fwe(),_.info("SYSTEM","MCP server shutting down",{reason:t}),process.exit(0))}process.on("SIGTERM",_m);process.on("SIGINT",_m);async function Hwe(){let t=new $g;Uwe(),await rO.connect(t),_.info("SYSTEM","Claude-mem search server started"),qwe(),setTimeout(async()=>{await zwe()?_.info("SYSTEM","Worker available",void 0,{}):(_.error("SYSTEM","Worker not available",void 0,{}),_.error("SYSTEM","Tools will fail until Worker is started"),_.error("SYSTEM","Start Worker with: npm run worker:restart"))},0)}Hwe().catch(t=>{_.error("SYSTEM","Fatal error",void 0,t),process.exit(0)}); +/*! Bundled license information: + +depd/index.js: + (*! + * depd + * Copyright(c) 2014-2018 Douglas Christopher Wilson + * MIT Licensed + *) + +bytes/index.js: + (*! + * bytes + * Copyright(c) 2012-2014 TJ Holowaychuk + * Copyright(c) 2015 Jed Watson + * MIT Licensed + *) + +content-type/index.js: + (*! + * content-type + * Copyright(c) 2015 Douglas Christopher Wilson + * MIT Licensed + *) + +statuses/index.js: + (*! + * statuses + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2016 Douglas Christopher Wilson + * MIT Licensed + *) + +toidentifier/index.js: + (*! + * toidentifier + * Copyright(c) 2016 Douglas Christopher Wilson + * MIT Licensed + *) + +http-errors/index.js: + (*! + * http-errors + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2016 Douglas Christopher Wilson + * MIT Licensed + *) + +destroy/index.js: + (*! + * destroy + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2015-2022 Douglas Christopher Wilson + * MIT Licensed + *) + +unpipe/index.js: + (*! + * unpipe + * Copyright(c) 2015 Douglas Christopher Wilson + * MIT Licensed + *) + +raw-body/index.js: + (*! + * raw-body + * Copyright(c) 2013-2014 Jonathan Ong + * Copyright(c) 2014-2022 Douglas Christopher Wilson + * MIT Licensed + *) + +ee-first/index.js: + (*! + * ee-first + * Copyright(c) 2014 Jonathan Ong + * MIT Licensed + *) + +on-finished/index.js: + (*! + * on-finished + * Copyright(c) 2013 Jonathan Ong + * Copyright(c) 2014 Douglas Christopher Wilson + * MIT Licensed + *) + +body-parser/lib/read.js: +body-parser/lib/types/raw.js: +body-parser/lib/types/text.js: +body-parser/index.js: + (*! + * body-parser + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + *) + +media-typer/index.js: + (*! + * media-typer + * Copyright(c) 2014 Douglas Christopher Wilson + * MIT Licensed + *) + +mime-db/index.js: + (*! + * mime-db + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2015-2022 Douglas Christopher Wilson + * MIT Licensed + *) + +mime-types/index.js: + (*! + * mime-types + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2015 Douglas Christopher Wilson + * MIT Licensed + *) + +type-is/index.js: + (*! + * type-is + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + *) + +body-parser/lib/types/json.js: +body-parser/lib/types/urlencoded.js: + (*! + * body-parser + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + *) + +merge-descriptors/index.js: + (*! + * merge-descriptors + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2015 Douglas Christopher Wilson + * MIT Licensed + *) + +encodeurl/index.js: + (*! + * encodeurl + * Copyright(c) 2016 Douglas Christopher Wilson + * MIT Licensed + *) + +escape-html/index.js: + (*! + * escape-html + * Copyright(c) 2012-2013 TJ Holowaychuk + * Copyright(c) 2015 Andreas Lubbe + * Copyright(c) 2015 Tiancheng "Timothy" Gu + * MIT Licensed + *) + +parseurl/index.js: + (*! + * parseurl + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2014-2017 Douglas Christopher Wilson + * MIT Licensed + *) + +finalhandler/index.js: + (*! + * finalhandler + * Copyright(c) 2014-2022 Douglas Christopher Wilson + * MIT Licensed + *) + +express/lib/router/layer.js: +express/lib/router/route.js: +express/lib/router/index.js: +express/lib/middleware/init.js: +express/lib/middleware/query.js: +express/lib/view.js: +express/lib/application.js: +express/lib/request.js: +express/lib/express.js: +express/index.js: + (*! + * express + * Copyright(c) 2009-2013 TJ Holowaychuk + * Copyright(c) 2013 Roman Shtylman + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + *) + +methods/index.js: + (*! + * methods + * Copyright(c) 2013-2014 TJ Holowaychuk + * Copyright(c) 2015-2016 Douglas Christopher Wilson + * MIT Licensed + *) + +safe-buffer/index.js: + (*! safe-buffer. MIT License. Feross Aboukhadijeh *) + +content-disposition/index.js: + (*! + * content-disposition + * Copyright(c) 2014-2017 Douglas Christopher Wilson + * MIT Licensed + *) + +etag/index.js: + (*! + * etag + * Copyright(c) 2014-2016 Douglas Christopher Wilson + * MIT Licensed + *) + +fresh/index.js: + (*! + * fresh + * Copyright(c) 2012 TJ Holowaychuk + * Copyright(c) 2016-2017 Douglas Christopher Wilson + * MIT Licensed + *) + +range-parser/index.js: + (*! + * range-parser + * Copyright(c) 2012-2014 TJ Holowaychuk + * Copyright(c) 2015-2016 Douglas Christopher Wilson + * MIT Licensed + *) + +send/index.js: + (*! + * send + * Copyright(c) 2012 TJ Holowaychuk + * Copyright(c) 2014-2022 Douglas Christopher Wilson + * MIT Licensed + *) + +forwarded/index.js: + (*! + * forwarded + * Copyright(c) 2014-2017 Douglas Christopher Wilson + * MIT Licensed + *) + +proxy-addr/index.js: + (*! + * proxy-addr + * Copyright(c) 2014-2016 Douglas Christopher Wilson + * MIT Licensed + *) + +express/lib/utils.js: +express/lib/response.js: + (*! + * express + * Copyright(c) 2009-2013 TJ Holowaychuk + * Copyright(c) 2014-2015 Douglas Christopher Wilson + * MIT Licensed + *) + +negotiator/index.js: + (*! + * negotiator + * Copyright(c) 2012 Federico Romero + * Copyright(c) 2012-2014 Isaac Z. Schlueter + * Copyright(c) 2015 Douglas Christopher Wilson + * MIT Licensed + *) + +accepts/index.js: + (*! + * accepts + * Copyright(c) 2014 Jonathan Ong + * Copyright(c) 2015 Douglas Christopher Wilson + * MIT Licensed + *) + +cookie/index.js: + (*! + * cookie + * Copyright(c) 2012-2014 Roman Shtylman + * Copyright(c) 2015 Douglas Christopher Wilson + * MIT Licensed + *) + +vary/index.js: + (*! + * vary + * Copyright(c) 2014-2017 Douglas Christopher Wilson + * MIT Licensed + *) + +serve-static/index.js: + (*! + * serve-static + * Copyright(c) 2010 Sencha Inc. + * Copyright(c) 2011 TJ Holowaychuk + * Copyright(c) 2014-2016 Douglas Christopher Wilson + * MIT Licensed + *) + +object-assign/index.js: + (* + object-assign + (c) Sindre Sorhus + @license MIT + *) +*/ diff --git a/plugin/scripts/smart-install.js b/plugin/scripts/smart-install.js index 64df272b..583b58c7 100644 --- a/plugin/scripts/smart-install.js +++ b/plugin/scripts/smart-install.js @@ -449,7 +449,7 @@ function installDeps() { console.error('⚠️ Bun install failed, falling back to npm...'); console.error(' (This can happen with npm alias packages like *-cjs)'); try { - execSync('npm install', { cwd: ROOT, stdio: installStdio, shell: IS_WINDOWS }); + execSync('npm install --legacy-peer-deps', { cwd: ROOT, stdio: installStdio, shell: IS_WINDOWS }); } catch (npmError) { throw new Error('Both bun and npm install failed: ' + npmError.message); } @@ -546,7 +546,7 @@ try { if (!verifyCriticalModules()) { console.error('⚠️ Retrying install with npm...'); try { - execSync('npm install --production', { cwd: ROOT, stdio: ['pipe', 'pipe', 'inherit'], shell: IS_WINDOWS }); + execSync('npm install --production --legacy-peer-deps', { cwd: ROOT, stdio: ['pipe', 'pipe', 'inherit'], shell: IS_WINDOWS }); } catch { // npm also failed } diff --git a/plugin/scripts/worker-service.cjs b/plugin/scripts/worker-service.cjs index 3eb342b1..91db5cfd 100755 --- a/plugin/scripts/worker-service.cjs +++ b/plugin/scripts/worker-service.cjs @@ -1,22 +1,22 @@ #!/usr/bin/env bun var __filename = require("node:url").fileURLToPath(import.meta.url); var __dirname = require("node:path").dirname(__filename); -"use strict";var nH=Object.create;var jf=Object.defineProperty;var iH=Object.getOwnPropertyDescriptor;var sH=Object.getOwnPropertyNames;var oH=Object.getPrototypeOf,aH=Object.prototype.hasOwnProperty;var Oe=(t,e)=>()=>(t&&(e=t(t=0)),e);var $=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),_n=(t,e)=>{for(var r in e)jf(t,r,{get:e[r],enumerable:!0})},eR=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of sH(e))!aH.call(t,i)&&i!==r&&jf(t,i,{get:()=>e[i],enumerable:!(n=iH(e,i))||n.enumerable});return t};var Pe=(t,e,r)=>(r=t!=null?nH(oH(t)):{},eR(e||!t||!t.__esModule?jf(r,"default",{value:t,enumerable:!0}):r,t)),zf=t=>eR(jf({},"__esModule",{value:!0}),t);var ad=$(it=>{"use strict";Object.defineProperty(it,"__esModule",{value:!0});it.regexpCode=it.getEsmExportName=it.getProperty=it.safeStringify=it.stringify=it.strConcat=it.addCodeArg=it.str=it._=it.nil=it._Code=it.Name=it.IDENTIFIER=it._CodeOrName=void 0;var sd=class{};it._CodeOrName=sd;it.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Lo=class extends sd{constructor(e){if(super(),!it.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};it.Name=Lo;var Un=class extends sd{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Lo&&(r[n.str]=(r[n.str]||0)+1),r),{})}};it._Code=Un;it.nil=new Un("");function vC(t,...e){let r=[t[0]],n=0;for(;n{"use strict";Object.defineProperty(cn,"__esModule",{value:!0});cn.ValueScope=cn.ValueScopeName=cn.Scope=cn.varKinds=cn.UsedValueState=void 0;var an=ad(),gw=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},sh;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(sh||(cn.UsedValueState=sh={}));cn.varKinds={const:new an.Name("const"),let:new an.Name("let"),var:new an.Name("var")};var oh=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof an.Name?e:this.name(e)}name(e){return new an.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};cn.Scope=oh;var ah=class extends an.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,an._)`.${new an.Name(r)}[${n}]`}};cn.ValueScopeName=ah;var rW=(0,an._)`\n`,vw=class extends oh{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?rW:an.nil}}get(){return this._scope}name(e){return new ah(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let i=this.toName(e),{prefix:s}=i,o=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(o);if(l)return l}else a=this._values[s]=new Map;a.set(o,i);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,i.setValue(r,{property:s,itemIndex:u}),i}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,an._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,i=>{if(i.value===void 0)throw new Error(`CodeGen: name "${i}" has no value`);return i.value.code},r,n)}_reduceValues(e,r,n={},i){let s=an.nil;for(let o in e){let a=e[o];if(!a)continue;let c=n[o]=n[o]||new Map;a.forEach(u=>{if(c.has(u))return;c.set(u,sh.Started);let l=r(u);if(l){let d=this.opts.es5?cn.varKinds.var:cn.varKinds.const;s=(0,an._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=i?.(u))s=(0,an._)`${s}${l}${this.opts._n}`;else throw new gw(u);c.set(u,sh.Completed)})}return s}};cn.ValueScope=vw});var Ue=$(qe=>{"use strict";Object.defineProperty(qe,"__esModule",{value:!0});qe.or=qe.and=qe.not=qe.CodeGen=qe.operators=qe.varKinds=qe.ValueScopeName=qe.ValueScope=qe.Scope=qe.Name=qe.regexpCode=qe.stringify=qe.getProperty=qe.nil=qe.strConcat=qe.str=qe._=void 0;var et=ad(),ai=yw(),Ys=ad();Object.defineProperty(qe,"_",{enumerable:!0,get:function(){return Ys._}});Object.defineProperty(qe,"str",{enumerable:!0,get:function(){return Ys.str}});Object.defineProperty(qe,"strConcat",{enumerable:!0,get:function(){return Ys.strConcat}});Object.defineProperty(qe,"nil",{enumerable:!0,get:function(){return Ys.nil}});Object.defineProperty(qe,"getProperty",{enumerable:!0,get:function(){return Ys.getProperty}});Object.defineProperty(qe,"stringify",{enumerable:!0,get:function(){return Ys.stringify}});Object.defineProperty(qe,"regexpCode",{enumerable:!0,get:function(){return Ys.regexpCode}});Object.defineProperty(qe,"Name",{enumerable:!0,get:function(){return Ys.Name}});var dh=yw();Object.defineProperty(qe,"Scope",{enumerable:!0,get:function(){return dh.Scope}});Object.defineProperty(qe,"ValueScope",{enumerable:!0,get:function(){return dh.ValueScope}});Object.defineProperty(qe,"ValueScopeName",{enumerable:!0,get:function(){return dh.ValueScopeName}});Object.defineProperty(qe,"varKinds",{enumerable:!0,get:function(){return dh.varKinds}});qe.operators={GT:new et._Code(">"),GTE:new et._Code(">="),LT:new et._Code("<"),LTE:new et._Code("<="),EQ:new et._Code("==="),NEQ:new et._Code("!=="),NOT:new et._Code("!"),OR:new et._Code("||"),AND:new et._Code("&&"),ADD:new et._Code("+")};var ms=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},_w=class extends ms{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?ai.varKinds.var:this.varKind,i=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${i};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=uc(this.rhs,e,r)),this}get names(){return this.rhs instanceof et._CodeOrName?this.rhs.names:{}}},ch=class extends ms{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof et.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=uc(this.rhs,e,r),this}get names(){let e=this.lhs instanceof et.Name?{}:{...this.lhs.names};return lh(e,this.rhs)}},bw=class extends ch{constructor(e,r,n,i){super(e,n,i),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Sw=class extends ms{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},xw=class extends ms{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},ww=class extends ms{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Ew=class extends ms{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=uc(this.code,e,r),this}get names(){return this.code instanceof et._CodeOrName?this.code.names:{}}},cd=class extends ms{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,i=n.length;for(;i--;){let s=n[i];s.optimizeNames(e,r)||(nW(e,s.names),n.splice(i,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>qo(e,r.names),{})}},hs=class extends cd{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},kw=class extends cd{},cc=class extends hs{};cc.kind="else";var Uo=class t extends hs{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new cc(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(_C(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=uc(this.condition,e,r),this}get names(){let e=super.names;return lh(e,this.condition),this.else&&qo(e,this.else.names),e}};Uo.kind="if";var Fo=class extends hs{};Fo.kind="for";var Tw=class extends Fo{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=uc(this.iteration,e,r),this}get names(){return qo(super.names,this.iteration.names)}},$w=class extends Fo{constructor(e,r,n,i){super(),this.varKind=e,this.name=r,this.from=n,this.to=i}render(e){let r=e.es5?ai.varKinds.var:this.varKind,{name:n,from:i,to:s}=this;return`for(${r} ${n}=${i}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=lh(super.names,this.from);return lh(e,this.to)}},uh=class extends Fo{constructor(e,r,n,i){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=i}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=uc(this.iterable,e,r),this}get names(){return qo(super.names,this.iterable.names)}},ud=class extends hs{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};ud.kind="func";var ld=class extends cd{render(e){return"return "+super.render(e)}};ld.kind="return";var Iw=class extends hs{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,i;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(i=this.finally)===null||i===void 0||i.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&qo(e,this.catch.names),this.finally&&qo(e,this.finally.names),e}},dd=class extends hs{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};dd.kind="catch";var pd=class extends hs{render(e){return"finally"+super.render(e)}};pd.kind="finally";var Rw=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=e,this._scope=new ai.Scope({parent:e}),this._nodes=[new kw]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,i){let s=this._scope.toName(r);return n!==void 0&&i&&(this._constants[s.str]=n),this._leafNode(new _w(e,s,n)),s}const(e,r,n){return this._def(ai.varKinds.const,e,r,n)}let(e,r,n){return this._def(ai.varKinds.let,e,r,n)}var(e,r,n){return this._def(ai.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new ch(e,r,n))}add(e,r){return this._leafNode(new bw(e,qe.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==et.nil&&this._leafNode(new Ew(e)),this}object(...e){let r=["{"];for(let[n,i]of e)r.length>1&&r.push(","),r.push(n),(n!==i||this.opts.es5)&&(r.push(":"),(0,et.addCodeArg)(r,i));return r.push("}"),new et._Code(r)}if(e,r,n){if(this._blockNode(new Uo(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new Uo(e))}else(){return this._elseNode(new cc)}endIf(){return this._endBlockNode(Uo,cc)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Tw(e),r)}forRange(e,r,n,i,s=this.opts.es5?ai.varKinds.var:ai.varKinds.let){let o=this._scope.toName(e);return this._for(new $w(s,o,r,n),()=>i(o))}forOf(e,r,n,i=ai.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let o=r instanceof et.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,et._)`${o}.length`,a=>{this.var(s,(0,et._)`${o}[${a}]`),n(s)})}return this._for(new uh("of",i,s,r),()=>n(s))}forIn(e,r,n,i=this.opts.es5?ai.varKinds.var:ai.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,et._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new uh("in",i,s,r),()=>n(s))}endFor(){return this._endBlockNode(Fo)}label(e){return this._leafNode(new Sw(e))}break(e){return this._leafNode(new xw(e))}return(e){let r=new ld;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(ld)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let i=new Iw;if(this._blockNode(i),this.code(e),r){let s=this.name("e");this._currNode=i.catch=new dd(s),r(s)}return n&&(this._currNode=i.finally=new pd,this.code(n)),this._endBlockNode(dd,pd)}throw(e){return this._leafNode(new ww(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=et.nil,n,i){return this._blockNode(new ud(e,r,n)),i&&this.code(i).endFunc(),this}endFunc(){return this._endBlockNode(ud)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof Uo))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};qe.CodeGen=Rw;function qo(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function lh(t,e){return e instanceof et._CodeOrName?qo(t,e.names):t}function uc(t,e,r){if(t instanceof et.Name)return n(t);if(!i(t))return t;return new et._Code(t._items.reduce((s,o)=>(o instanceof et.Name&&(o=n(o)),o instanceof et._Code?s.push(...o._items):s.push(o),s),[]));function n(s){let o=r[s.str];return o===void 0||e[s.str]!==1?s:(delete e[s.str],o)}function i(s){return s instanceof et._Code&&s._items.some(o=>o instanceof et.Name&&e[o.str]===1&&r[o.str]!==void 0)}}function nW(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function _C(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,et._)`!${Ow(t)}`}qe.not=_C;var iW=bC(qe.operators.AND);function sW(...t){return t.reduce(iW)}qe.and=sW;var oW=bC(qe.operators.OR);function aW(...t){return t.reduce(oW)}qe.or=aW;function bC(t){return(e,r)=>e===et.nil?r:r===et.nil?e:(0,et._)`${Ow(e)} ${t} ${Ow(r)}`}function Ow(t){return t instanceof et.Name?t:(0,et._)`(${t})`}});var st=$(Ke=>{"use strict";Object.defineProperty(Ke,"__esModule",{value:!0});Ke.checkStrictMode=Ke.getErrorPath=Ke.Type=Ke.useFunc=Ke.setEvaluated=Ke.evaluatedPropsToName=Ke.mergeEvaluated=Ke.eachItem=Ke.unescapeJsonPointer=Ke.escapeJsonPointer=Ke.escapeFragment=Ke.unescapeFragment=Ke.schemaRefOrVal=Ke.schemaHasRulesButRef=Ke.schemaHasRules=Ke.checkUnknownRules=Ke.alwaysValidSchema=Ke.toHash=void 0;var xt=Ue(),cW=ad();function uW(t){let e={};for(let r of t)e[r]=!0;return e}Ke.toHash=uW;function lW(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(wC(t,e),!EC(e,t.self.RULES.all))}Ke.alwaysValidSchema=lW;function wC(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let i=n.RULES.keywords;for(let s in e)i[s]||$C(t,`unknown keyword: "${s}"`)}Ke.checkUnknownRules=wC;function EC(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}Ke.schemaHasRules=EC;function dW(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}Ke.schemaHasRulesButRef=dW;function pW({topSchemaRef:t,schemaPath:e},r,n,i){if(!i){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,xt._)`${r}`}return(0,xt._)`${t}${e}${(0,xt.getProperty)(n)}`}Ke.schemaRefOrVal=pW;function fW(t){return kC(decodeURIComponent(t))}Ke.unescapeFragment=fW;function mW(t){return encodeURIComponent(Pw(t))}Ke.escapeFragment=mW;function Pw(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}Ke.escapeJsonPointer=Pw;function kC(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}Ke.unescapeJsonPointer=kC;function hW(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}Ke.eachItem=hW;function SC({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(i,s,o,a)=>{let c=o===void 0?s:o instanceof xt.Name?(s instanceof xt.Name?t(i,s,o):e(i,s,o),o):s instanceof xt.Name?(e(i,o,s),s):r(s,o);return a===xt.Name&&!(c instanceof xt.Name)?n(i,c):c}}Ke.mergeEvaluated={props:SC({mergeNames:(t,e,r)=>t.if((0,xt._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,xt._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,xt._)`${r} || {}`).code((0,xt._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,xt._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,xt._)`${r} || {}`),Aw(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:TC}),items:SC({mergeNames:(t,e,r)=>t.if((0,xt._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,xt._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,xt._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,xt._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function TC(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,xt._)`{}`);return e!==void 0&&Aw(t,r,e),r}Ke.evaluatedPropsToName=TC;function Aw(t,e,r){Object.keys(r).forEach(n=>t.assign((0,xt._)`${e}${(0,xt.getProperty)(n)}`,!0))}Ke.setEvaluated=Aw;var xC={};function gW(t,e){return t.scopeValue("func",{ref:e,code:xC[e.code]||(xC[e.code]=new cW._Code(e.code))})}Ke.useFunc=gW;var Cw;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Cw||(Ke.Type=Cw={}));function vW(t,e,r){if(t instanceof xt.Name){let n=e===Cw.Num;return r?n?(0,xt._)`"[" + ${t} + "]"`:(0,xt._)`"['" + ${t} + "']"`:n?(0,xt._)`"/" + ${t}`:(0,xt._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,xt.getProperty)(t).toString():"/"+Pw(t)}Ke.getErrorPath=vW;function $C(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}Ke.checkStrictMode=$C});var gs=$(Nw=>{"use strict";Object.defineProperty(Nw,"__esModule",{value:!0});var Pr=Ue(),yW={data:new Pr.Name("data"),valCxt:new Pr.Name("valCxt"),instancePath:new Pr.Name("instancePath"),parentData:new Pr.Name("parentData"),parentDataProperty:new Pr.Name("parentDataProperty"),rootData:new Pr.Name("rootData"),dynamicAnchors:new Pr.Name("dynamicAnchors"),vErrors:new Pr.Name("vErrors"),errors:new Pr.Name("errors"),this:new Pr.Name("this"),self:new Pr.Name("self"),scope:new Pr.Name("scope"),json:new Pr.Name("json"),jsonPos:new Pr.Name("jsonPos"),jsonLen:new Pr.Name("jsonLen"),jsonPart:new Pr.Name("jsonPart")};Nw.default=yW});var fd=$(Ar=>{"use strict";Object.defineProperty(Ar,"__esModule",{value:!0});Ar.extendErrors=Ar.resetErrorsCount=Ar.reportExtraError=Ar.reportError=Ar.keyword$DataError=Ar.keywordError=void 0;var tt=Ue(),ph=st(),Vr=gs();Ar.keywordError={message:({keyword:t})=>(0,tt.str)`must pass "${t}" keyword validation`};Ar.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,tt.str)`"${t}" keyword must be ${e} ($data)`:(0,tt.str)`"${t}" keyword is invalid ($data)`};function _W(t,e=Ar.keywordError,r,n){let{it:i}=t,{gen:s,compositeRule:o,allErrors:a}=i,c=OC(t,e,r);n??(o||a)?IC(s,c):RC(i,(0,tt._)`[${c}]`)}Ar.reportError=_W;function bW(t,e=Ar.keywordError,r){let{it:n}=t,{gen:i,compositeRule:s,allErrors:o}=n,a=OC(t,e,r);IC(i,a),s||o||RC(n,Vr.default.vErrors)}Ar.reportExtraError=bW;function SW(t,e){t.assign(Vr.default.errors,e),t.if((0,tt._)`${Vr.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,tt._)`${Vr.default.vErrors}.length`,e),()=>t.assign(Vr.default.vErrors,null)))}Ar.resetErrorsCount=SW;function xW({gen:t,keyword:e,schemaValue:r,data:n,errsCount:i,it:s}){if(i===void 0)throw new Error("ajv implementation error");let o=t.name("err");t.forRange("i",i,Vr.default.errors,a=>{t.const(o,(0,tt._)`${Vr.default.vErrors}[${a}]`),t.if((0,tt._)`${o}.instancePath === undefined`,()=>t.assign((0,tt._)`${o}.instancePath`,(0,tt.strConcat)(Vr.default.instancePath,s.errorPath))),t.assign((0,tt._)`${o}.schemaPath`,(0,tt.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,tt._)`${o}.schema`,r),t.assign((0,tt._)`${o}.data`,n))})}Ar.extendErrors=xW;function IC(t,e){let r=t.const("err",e);t.if((0,tt._)`${Vr.default.vErrors} === null`,()=>t.assign(Vr.default.vErrors,(0,tt._)`[${r}]`),(0,tt._)`${Vr.default.vErrors}.push(${r})`),t.code((0,tt._)`${Vr.default.errors}++`)}function RC(t,e){let{gen:r,validateName:n,schemaEnv:i}=t;i.$async?r.throw((0,tt._)`new ${t.ValidationError}(${e})`):(r.assign((0,tt._)`${n}.errors`,e),r.return(!1))}var Ho={keyword:new tt.Name("keyword"),schemaPath:new tt.Name("schemaPath"),params:new tt.Name("params"),propertyName:new tt.Name("propertyName"),message:new tt.Name("message"),schema:new tt.Name("schema"),parentSchema:new tt.Name("parentSchema")};function OC(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,tt._)`{}`:wW(t,e,r)}function wW(t,e,r={}){let{gen:n,it:i}=t,s=[EW(i,r),kW(t,r)];return TW(t,e,s),n.object(...s)}function EW({errorPath:t},{instancePath:e}){let r=e?(0,tt.str)`${t}${(0,ph.getErrorPath)(e,ph.Type.Str)}`:t;return[Vr.default.instancePath,(0,tt.strConcat)(Vr.default.instancePath,r)]}function kW({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let i=n?e:(0,tt.str)`${e}/${t}`;return r&&(i=(0,tt.str)`${i}${(0,ph.getErrorPath)(r,ph.Type.Str)}`),[Ho.schemaPath,i]}function TW(t,{params:e,message:r},n){let{keyword:i,data:s,schemaValue:o,it:a}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=a;n.push([Ho.keyword,i],[Ho.params,typeof e=="function"?e(t):e||(0,tt._)`{}`]),c.messages&&n.push([Ho.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Ho.schema,o],[Ho.parentSchema,(0,tt._)`${l}${d}`],[Vr.default.data,s]),u&&n.push([Ho.propertyName,u])}});var PC=$(lc=>{"use strict";Object.defineProperty(lc,"__esModule",{value:!0});lc.boolOrEmptySchema=lc.topBoolOrEmptySchema=void 0;var $W=fd(),IW=Ue(),RW=gs(),OW={message:"boolean schema is false"};function CW(t){let{gen:e,schema:r,validateName:n}=t;r===!1?CC(t,!1):typeof r=="object"&&r.$async===!0?e.return(RW.default.data):(e.assign((0,IW._)`${n}.errors`,null),e.return(!0))}lc.topBoolOrEmptySchema=CW;function PW(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),CC(t)):r.var(e,!0)}lc.boolOrEmptySchema=PW;function CC(t,e){let{gen:r,data:n}=t,i={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,$W.reportError)(i,OW,void 0,e)}});var Mw=$(dc=>{"use strict";Object.defineProperty(dc,"__esModule",{value:!0});dc.getRules=dc.isJSONType=void 0;var AW=["string","number","integer","boolean","null","object","array"],NW=new Set(AW);function MW(t){return typeof t=="string"&&NW.has(t)}dc.isJSONType=MW;function DW(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}dc.getRules=DW});var Dw=$(Qs=>{"use strict";Object.defineProperty(Qs,"__esModule",{value:!0});Qs.shouldUseRule=Qs.shouldUseGroup=Qs.schemaHasRulesForType=void 0;function jW({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&AC(t,n)}Qs.schemaHasRulesForType=jW;function AC(t,e){return e.rules.some(r=>NC(t,r))}Qs.shouldUseGroup=AC;function NC(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}Qs.shouldUseRule=NC});var md=$(Nr=>{"use strict";Object.defineProperty(Nr,"__esModule",{value:!0});Nr.reportTypeError=Nr.checkDataTypes=Nr.checkDataType=Nr.coerceAndCheckDataType=Nr.getJSONTypes=Nr.getSchemaTypes=Nr.DataType=void 0;var zW=Mw(),LW=Dw(),UW=fd(),je=Ue(),MC=st(),pc;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(pc||(Nr.DataType=pc={}));function FW(t){let e=DC(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Nr.getSchemaTypes=FW;function DC(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(zW.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Nr.getJSONTypes=DC;function qW(t,e){let{gen:r,data:n,opts:i}=t,s=HW(e,i.coerceTypes),o=e.length>0&&!(s.length===0&&e.length===1&&(0,LW.schemaHasRulesForType)(t,e[0]));if(o){let a=zw(e,n,i.strictNumbers,pc.Wrong);r.if(a,()=>{s.length?ZW(t,e,s):Lw(t)})}return o}Nr.coerceAndCheckDataType=qW;var jC=new Set(["string","number","integer","boolean","null"]);function HW(t,e){return e?t.filter(r=>jC.has(r)||e==="array"&&r==="array"):[]}function ZW(t,e,r){let{gen:n,data:i,opts:s}=t,o=n.let("dataType",(0,je._)`typeof ${i}`),a=n.let("coerced",(0,je._)`undefined`);s.coerceTypes==="array"&&n.if((0,je._)`${o} == 'object' && Array.isArray(${i}) && ${i}.length == 1`,()=>n.assign(i,(0,je._)`${i}[0]`).assign(o,(0,je._)`typeof ${i}`).if(zw(e,i,s.strictNumbers),()=>n.assign(a,i))),n.if((0,je._)`${a} !== undefined`);for(let u of r)(jC.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Lw(t),n.endIf(),n.if((0,je._)`${a} !== undefined`,()=>{n.assign(i,a),BW(t,a)});function c(u){switch(u){case"string":n.elseIf((0,je._)`${o} == "number" || ${o} == "boolean"`).assign(a,(0,je._)`"" + ${i}`).elseIf((0,je._)`${i} === null`).assign(a,(0,je._)`""`);return;case"number":n.elseIf((0,je._)`${o} == "boolean" || ${i} === null - || (${o} == "string" && ${i} && ${i} == +${i})`).assign(a,(0,je._)`+${i}`);return;case"integer":n.elseIf((0,je._)`${o} === "boolean" || ${i} === null - || (${o} === "string" && ${i} && ${i} == +${i} && !(${i} % 1))`).assign(a,(0,je._)`+${i}`);return;case"boolean":n.elseIf((0,je._)`${i} === "false" || ${i} === 0 || ${i} === null`).assign(a,!1).elseIf((0,je._)`${i} === "true" || ${i} === 1`).assign(a,!0);return;case"null":n.elseIf((0,je._)`${i} === "" || ${i} === 0 || ${i} === false`),n.assign(a,null);return;case"array":n.elseIf((0,je._)`${o} === "string" || ${o} === "number" - || ${o} === "boolean" || ${i} === null`).assign(a,(0,je._)`[${i}]`)}}}function BW({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,je._)`${e} !== undefined`,()=>t.assign((0,je._)`${e}[${r}]`,n))}function jw(t,e,r,n=pc.Correct){let i=n===pc.Correct?je.operators.EQ:je.operators.NEQ,s;switch(t){case"null":return(0,je._)`${e} ${i} null`;case"array":s=(0,je._)`Array.isArray(${e})`;break;case"object":s=(0,je._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=o((0,je._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=o();break;default:return(0,je._)`typeof ${e} ${i} ${t}`}return n===pc.Correct?s:(0,je.not)(s);function o(a=je.nil){return(0,je.and)((0,je._)`typeof ${e} == "number"`,a,r?(0,je._)`isFinite(${e})`:je.nil)}}Nr.checkDataType=jw;function zw(t,e,r,n){if(t.length===1)return jw(t[0],e,r,n);let i,s=(0,MC.toHash)(t);if(s.array&&s.object){let o=(0,je._)`typeof ${e} != "object"`;i=s.null?o:(0,je._)`!${e} || ${o}`,delete s.null,delete s.array,delete s.object}else i=je.nil;s.number&&delete s.integer;for(let o in s)i=(0,je.and)(i,jw(o,e,r,n));return i}Nr.checkDataTypes=zw;var GW={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,je._)`{type: ${t}}`:(0,je._)`{type: ${e}}`};function Lw(t){let e=WW(t);(0,UW.reportError)(e,GW)}Nr.reportTypeError=Lw;function WW(t){let{gen:e,data:r,schema:n}=t,i=(0,MC.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:i,schemaValue:i,parentSchema:n,params:{},it:t}}});var LC=$(fh=>{"use strict";Object.defineProperty(fh,"__esModule",{value:!0});fh.assignDefaults=void 0;var fc=Ue(),VW=st();function KW(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let i in r)zC(t,i,r[i].default);else e==="array"&&Array.isArray(n)&&n.forEach((i,s)=>zC(t,s,i.default))}fh.assignDefaults=KW;function zC(t,e,r){let{gen:n,compositeRule:i,data:s,opts:o}=t;if(r===void 0)return;let a=(0,fc._)`${s}${(0,fc.getProperty)(e)}`;if(i){(0,VW.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,fc._)`${a} === undefined`;o.useDefaults==="empty"&&(c=(0,fc._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,fc._)`${a} = ${(0,fc.stringify)(r)}`)}});var Fn=$(gt=>{"use strict";Object.defineProperty(gt,"__esModule",{value:!0});gt.validateUnion=gt.validateArray=gt.usePattern=gt.callValidateCode=gt.schemaProperties=gt.allSchemaProperties=gt.noPropertyInData=gt.propertyInData=gt.isOwnProperty=gt.hasPropFunc=gt.reportMissingProp=gt.checkMissingProp=gt.checkReportMissingProp=void 0;var Ct=Ue(),Uw=st(),eo=gs(),JW=st();function XW(t,e){let{gen:r,data:n,it:i}=t;r.if(qw(r,n,e,i.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Ct._)`${e}`},!0),t.error()})}gt.checkReportMissingProp=XW;function YW({gen:t,data:e,it:{opts:r}},n,i){return(0,Ct.or)(...n.map(s=>(0,Ct.and)(qw(t,e,s,r.ownProperties),(0,Ct._)`${i} = ${s}`)))}gt.checkMissingProp=YW;function QW(t,e){t.setParams({missingProperty:e},!0),t.error()}gt.reportMissingProp=QW;function UC(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Ct._)`Object.prototype.hasOwnProperty`})}gt.hasPropFunc=UC;function Fw(t,e,r){return(0,Ct._)`${UC(t)}.call(${e}, ${r})`}gt.isOwnProperty=Fw;function eV(t,e,r,n){let i=(0,Ct._)`${e}${(0,Ct.getProperty)(r)} !== undefined`;return n?(0,Ct._)`${i} && ${Fw(t,e,r)}`:i}gt.propertyInData=eV;function qw(t,e,r,n){let i=(0,Ct._)`${e}${(0,Ct.getProperty)(r)} === undefined`;return n?(0,Ct.or)(i,(0,Ct.not)(Fw(t,e,r))):i}gt.noPropertyInData=qw;function FC(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}gt.allSchemaProperties=FC;function tV(t,e){return FC(e).filter(r=>!(0,Uw.alwaysValidSchema)(t,e[r]))}gt.schemaProperties=tV;function rV({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:i,errorPath:s},it:o},a,c,u){let l=u?(0,Ct._)`${t}, ${e}, ${n}${i}`:e,d=[[eo.default.instancePath,(0,Ct.strConcat)(eo.default.instancePath,s)],[eo.default.parentData,o.parentData],[eo.default.parentDataProperty,o.parentDataProperty],[eo.default.rootData,eo.default.rootData]];o.opts.dynamicRef&&d.push([eo.default.dynamicAnchors,eo.default.dynamicAnchors]);let p=(0,Ct._)`${l}, ${r.object(...d)}`;return c!==Ct.nil?(0,Ct._)`${a}.call(${c}, ${p})`:(0,Ct._)`${a}(${p})`}gt.callValidateCode=rV;var nV=(0,Ct._)`new RegExp`;function iV({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:i}=e.code,s=i(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,Ct._)`${i.code==="new RegExp"?nV:(0,JW.useFunc)(t,i)}(${r}, ${n})`})}gt.usePattern=iV;function sV(t){let{gen:e,data:r,keyword:n,it:i}=t,s=e.name("valid");if(i.allErrors){let a=e.let("valid",!0);return o(()=>e.assign(a,!1)),a}return e.var(s,!0),o(()=>e.break()),s;function o(a){let c=e.const("len",(0,Ct._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Uw.Type.Num},s),e.if((0,Ct.not)(s),a)})}}gt.validateArray=sV;function oV(t){let{gen:e,schema:r,keyword:n,it:i}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,Uw.alwaysValidSchema)(i,c))&&!i.opts.unevaluated)return;let o=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);e.assign(o,(0,Ct._)`${o} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,Ct.not)(o))})),t.result(o,()=>t.reset(),()=>t.error(!0))}gt.validateUnion=oV});var ZC=$(Ai=>{"use strict";Object.defineProperty(Ai,"__esModule",{value:!0});Ai.validateKeywordUsage=Ai.validSchemaType=Ai.funcKeywordCode=Ai.macroKeywordCode=void 0;var Kr=Ue(),Zo=gs(),aV=Fn(),cV=fd();function uV(t,e){let{gen:r,keyword:n,schema:i,parentSchema:s,it:o}=t,a=e.macro.call(o.self,i,s,o),c=HC(r,n,a);o.opts.validateSchema!==!1&&o.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Kr.nil,errSchemaPath:`${o.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Ai.macroKeywordCode=uV;function lV(t,e){var r;let{gen:n,keyword:i,schema:s,parentSchema:o,$data:a,it:c}=t;pV(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,o,c):e.validate,l=HC(n,i,u),d=n.let("valid");t.block$data(d,p),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function p(){if(e.errors===!1)h(),e.modifying&&qC(t),g(()=>t.error());else{let v=e.async?f():m();e.modifying&&qC(t),g(()=>dV(t,v))}}function f(){let v=n.let("ruleErrs",null);return n.try(()=>h((0,Kr._)`await `),S=>n.assign(d,!1).if((0,Kr._)`${S} instanceof ${c.ValidationError}`,()=>n.assign(v,(0,Kr._)`${S}.errors`),()=>n.throw(S))),v}function m(){let v=(0,Kr._)`${l}.errors`;return n.assign(v,null),h(Kr.nil),v}function h(v=e.async?(0,Kr._)`await `:Kr.nil){let S=c.opts.passContext?Zo.default.this:Zo.default.self,b=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Kr._)`${v}${(0,aV.callValidateCode)(t,l,S,b)}`,e.modifying)}function g(v){var S;n.if((0,Kr.not)((S=e.valid)!==null&&S!==void 0?S:d),v)}}Ai.funcKeywordCode=lV;function qC(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Kr._)`${n.parentData}[${n.parentDataProperty}]`))}function dV(t,e){let{gen:r}=t;r.if((0,Kr._)`Array.isArray(${e})`,()=>{r.assign(Zo.default.vErrors,(0,Kr._)`${Zo.default.vErrors} === null ? ${e} : ${Zo.default.vErrors}.concat(${e})`).assign(Zo.default.errors,(0,Kr._)`${Zo.default.vErrors}.length`),(0,cV.extendErrors)(t)},()=>t.error())}function pV({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function HC(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Kr.stringify)(r)})}function fV(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}Ai.validSchemaType=fV;function mV({schema:t,opts:e,self:r,errSchemaPath:n},i,s){if(Array.isArray(i.keyword)?!i.keyword.includes(s):i.keyword!==s)throw new Error("ajv implementation error");let o=i.dependencies;if(o?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${o.join(",")}`);if(i.validateSchema&&!i.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(i.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Ai.validateKeywordUsage=mV});var GC=$(to=>{"use strict";Object.defineProperty(to,"__esModule",{value:!0});to.extendSubschemaMode=to.extendSubschemaData=to.getSubschema=void 0;var Ni=Ue(),BC=st();function hV(t,{keyword:e,schemaProp:r,schema:n,schemaPath:i,errSchemaPath:s,topSchemaRef:o}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,Ni._)`${t.schemaPath}${(0,Ni.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,Ni._)`${t.schemaPath}${(0,Ni.getProperty)(e)}${(0,Ni.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,BC.escapeFragment)(r)}`}}if(n!==void 0){if(i===void 0||s===void 0||o===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:i,topSchemaRef:o,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}to.getSubschema=hV;function gV(t,e,{dataProp:r,dataPropType:n,data:i,dataTypes:s,propertyName:o}){if(i!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,p=a.let("data",(0,Ni._)`${e.data}${(0,Ni.getProperty)(r)}`,!0);c(p),t.errorPath=(0,Ni.str)`${u}${(0,BC.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Ni._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(i!==void 0){let u=i instanceof Ni.Name?i:a.let("data",i,!0);c(u),o!==void 0&&(t.propertyName=o)}s&&(t.dataTypes=s);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}to.extendSubschemaData=gV;function vV(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:i,allErrors:s}){n!==void 0&&(t.compositeRule=n),i!==void 0&&(t.createErrors=i),s!==void 0&&(t.allErrors=s),t.jtdDiscriminator=e,t.jtdMetadata=r}to.extendSubschemaMode=vV});var Hw=$((g1e,WC)=>{"use strict";WC.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,i,s;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(i=n;i--!==0;)if(!t(e[i],r[i]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(s=Object.keys(e),n=s.length,n!==Object.keys(r).length)return!1;for(i=n;i--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[i]))return!1;for(i=n;i--!==0;){var o=s[i];if(!t(e[o],r[o]))return!1}return!0}return e!==e&&r!==r}});var KC=$((v1e,VC)=>{"use strict";var ro=VC.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},i=r.post||function(){};mh(e,n,i,t,"",t)};ro.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};ro.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};ro.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};ro.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function mh(t,e,r,n,i,s,o,a,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,i,s,o,a,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in ro.arrayKeywords)for(var p=0;p{"use strict";Object.defineProperty(un,"__esModule",{value:!0});un.getSchemaRefs=un.resolveUrl=un.normalizeId=un._getFullPath=un.getFullPath=un.inlineRef=void 0;var _V=st(),bV=Hw(),SV=KC(),xV=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function wV(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Zw(t):e?JC(t)<=e:!1}un.inlineRef=wV;var EV=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Zw(t){for(let e in t){if(EV.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Zw)||typeof r=="object"&&Zw(r))return!0}return!1}function JC(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!xV.has(r)&&(typeof t[r]=="object"&&(0,_V.eachItem)(t[r],n=>e+=JC(n)),e===1/0))return 1/0}return e}function XC(t,e="",r){r!==!1&&(e=mc(e));let n=t.parse(e);return YC(t,n)}un.getFullPath=XC;function YC(t,e){return t.serialize(e).split("#")[0]+"#"}un._getFullPath=YC;var kV=/#\/?$/;function mc(t){return t?t.replace(kV,""):""}un.normalizeId=mc;function TV(t,e,r){return r=mc(r),t.resolve(e,r)}un.resolveUrl=TV;var $V=/^[a-z_][-a-z0-9._]*$/i;function IV(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,i=mc(t[r]||e),s={"":i},o=XC(n,i,!1),a={},c=new Set;return SV(t,{allKeys:!0},(d,p,f,m)=>{if(m===void 0)return;let h=o+p,g=s[m];typeof d[r]=="string"&&(g=v.call(this,d[r])),S.call(this,d.$anchor),S.call(this,d.$dynamicAnchor),s[p]=g;function v(b){let y=this.opts.uriResolver.resolve;if(b=mc(g?y(g,b):b),c.has(b))throw l(b);c.add(b);let x=this.refs[b];return typeof x=="string"&&(x=this.refs[x]),typeof x=="object"?u(d,x.schema,b):b!==mc(h)&&(b[0]==="#"?(u(d,a[b],b),a[b]=d):this.refs[b]=h),b}function S(b){if(typeof b=="string"){if(!$V.test(b))throw new Error(`invalid anchor "${b}"`);v.call(this,`#${b}`)}}}),a;function u(d,p,f){if(p!==void 0&&!bV(d,p))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}un.getSchemaRefs=IV});var yd=$(no=>{"use strict";Object.defineProperty(no,"__esModule",{value:!0});no.getData=no.KeywordCxt=no.validateFunctionCode=void 0;var nP=PC(),QC=md(),Gw=Dw(),hh=md(),RV=LC(),vd=ZC(),Bw=GC(),me=Ue(),Re=gs(),OV=hd(),vs=st(),gd=fd();function CV(t){if(oP(t)&&(aP(t),sP(t))){NV(t);return}iP(t,()=>(0,nP.topBoolOrEmptySchema)(t))}no.validateFunctionCode=CV;function iP({gen:t,validateName:e,schema:r,schemaEnv:n,opts:i},s){i.code.es5?t.func(e,(0,me._)`${Re.default.data}, ${Re.default.valCxt}`,n.$async,()=>{t.code((0,me._)`"use strict"; ${eP(r,i)}`),AV(t,i),t.code(s)}):t.func(e,(0,me._)`${Re.default.data}, ${PV(i)}`,n.$async,()=>t.code(eP(r,i)).code(s))}function PV(t){return(0,me._)`{${Re.default.instancePath}="", ${Re.default.parentData}, ${Re.default.parentDataProperty}, ${Re.default.rootData}=${Re.default.data}${t.dynamicRef?(0,me._)`, ${Re.default.dynamicAnchors}={}`:me.nil}}={}`}function AV(t,e){t.if(Re.default.valCxt,()=>{t.var(Re.default.instancePath,(0,me._)`${Re.default.valCxt}.${Re.default.instancePath}`),t.var(Re.default.parentData,(0,me._)`${Re.default.valCxt}.${Re.default.parentData}`),t.var(Re.default.parentDataProperty,(0,me._)`${Re.default.valCxt}.${Re.default.parentDataProperty}`),t.var(Re.default.rootData,(0,me._)`${Re.default.valCxt}.${Re.default.rootData}`),e.dynamicRef&&t.var(Re.default.dynamicAnchors,(0,me._)`${Re.default.valCxt}.${Re.default.dynamicAnchors}`)},()=>{t.var(Re.default.instancePath,(0,me._)`""`),t.var(Re.default.parentData,(0,me._)`undefined`),t.var(Re.default.parentDataProperty,(0,me._)`undefined`),t.var(Re.default.rootData,Re.default.data),e.dynamicRef&&t.var(Re.default.dynamicAnchors,(0,me._)`{}`)})}function NV(t){let{schema:e,opts:r,gen:n}=t;iP(t,()=>{r.$comment&&e.$comment&&uP(t),LV(t),n.let(Re.default.vErrors,null),n.let(Re.default.errors,0),r.unevaluated&&MV(t),cP(t),qV(t)})}function MV(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,me._)`${r}.evaluated`),e.if((0,me._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,me._)`${t.evaluated}.props`,(0,me._)`undefined`)),e.if((0,me._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,me._)`${t.evaluated}.items`,(0,me._)`undefined`))}function eP(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,me._)`/*# sourceURL=${r} */`:me.nil}function DV(t,e){if(oP(t)&&(aP(t),sP(t))){jV(t,e);return}(0,nP.boolOrEmptySchema)(t,e)}function sP({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function oP(t){return typeof t.schema!="boolean"}function jV(t,e){let{schema:r,gen:n,opts:i}=t;i.$comment&&r.$comment&&uP(t),UV(t),FV(t);let s=n.const("_errs",Re.default.errors);cP(t,s),n.var(e,(0,me._)`${s} === ${Re.default.errors}`)}function aP(t){(0,vs.checkUnknownRules)(t),zV(t)}function cP(t,e){if(t.opts.jtd)return tP(t,[],!1,e);let r=(0,QC.getSchemaTypes)(t.schema),n=(0,QC.coerceAndCheckDataType)(t,r);tP(t,r,!n,e)}function zV(t){let{schema:e,errSchemaPath:r,opts:n,self:i}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,vs.schemaHasRulesButRef)(e,i.RULES)&&i.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function LV(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,vs.checkStrictMode)(t,"default is ignored in the schema root")}function UV(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,OV.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function FV(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function uP({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:i}){let s=r.$comment;if(i.$comment===!0)t.code((0,me._)`${Re.default.self}.logger.log(${s})`);else if(typeof i.$comment=="function"){let o=(0,me.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,me._)`${Re.default.self}.opts.$comment(${s}, ${o}, ${a}.schema)`)}}function qV(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:i,opts:s}=t;r.$async?e.if((0,me._)`${Re.default.errors} === 0`,()=>e.return(Re.default.data),()=>e.throw((0,me._)`new ${i}(${Re.default.vErrors})`)):(e.assign((0,me._)`${n}.errors`,Re.default.vErrors),s.unevaluated&&HV(t),e.return((0,me._)`${Re.default.errors} === 0`))}function HV({gen:t,evaluated:e,props:r,items:n}){r instanceof me.Name&&t.assign((0,me._)`${e}.props`,r),n instanceof me.Name&&t.assign((0,me._)`${e}.items`,n)}function tP(t,e,r,n){let{gen:i,schema:s,data:o,allErrors:a,opts:c,self:u}=t,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,vs.schemaHasRulesButRef)(s,l))){i.block(()=>dP(t,"$ref",l.all.$ref.definition));return}c.jtd||ZV(t,e),i.block(()=>{for(let p of l.rules)d(p);d(l.post)});function d(p){(0,Gw.shouldUseGroup)(s,p)&&(p.type?(i.if((0,hh.checkDataType)(p.type,o,c.strictNumbers)),rP(t,p),e.length===1&&e[0]===p.type&&r&&(i.else(),(0,hh.reportTypeError)(t)),i.endIf()):rP(t,p),a||i.if((0,me._)`${Re.default.errors} === ${n||0}`))}}function rP(t,e){let{gen:r,schema:n,opts:{useDefaults:i}}=t;i&&(0,RV.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Gw.shouldUseRule)(n,s)&&dP(t,s.keyword,s.definition,e.type)})}function ZV(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(BV(t,e),t.opts.allowUnionTypes||GV(t,e),WV(t,t.dataTypes))}function BV(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{lP(t.dataTypes,r)||Ww(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),KV(t,e)}}function GV(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Ww(t,"use allowUnionTypes to allow union type keyword")}function WV(t,e){let r=t.self.RULES.all;for(let n in r){let i=r[n];if(typeof i=="object"&&(0,Gw.shouldUseRule)(t.schema,i)){let{type:s}=i.definition;s.length&&!s.some(o=>VV(e,o))&&Ww(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function VV(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function lP(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function KV(t,e){let r=[];for(let n of t.dataTypes)lP(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Ww(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,vs.checkStrictMode)(t,e,t.opts.strictTypes)}var gh=class{constructor(e,r,n){if((0,vd.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,vs.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",pP(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,vd.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",Re.default.errors))}result(e,r,n){this.failResult((0,me.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,me.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,me._)`${r} !== undefined && (${(0,me.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?gd.reportExtraError:gd.reportError)(this,this.def.error,r)}$dataError(){(0,gd.reportError)(this,this.def.$dataError||gd.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,gd.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=me.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=me.nil,r=me.nil){if(!this.$data)return;let{gen:n,schemaCode:i,schemaType:s,def:o}=this;n.if((0,me.or)((0,me._)`${i} === undefined`,r)),e!==me.nil&&n.assign(e,!0),(s.length||o.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==me.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:i,it:s}=this;return(0,me.or)(o(),a());function o(){if(n.length){if(!(r instanceof me.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,me._)`${(0,hh.checkDataTypes)(c,r,s.opts.strictNumbers,hh.DataType.Wrong)}`}return me.nil}function a(){if(i.validateSchema){let c=e.scopeValue("validate$data",{ref:i.validateSchema});return(0,me._)`!${c}(${r})`}return me.nil}}subschema(e,r){let n=(0,Bw.getSubschema)(this.it,e);(0,Bw.extendSubschemaData)(n,this.it,e),(0,Bw.extendSubschemaMode)(n,e);let i={...this.it,...n,items:void 0,props:void 0};return DV(i,r),i}mergeEvaluated(e,r){let{it:n,gen:i}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=vs.mergeEvaluated.props(i,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=vs.mergeEvaluated.items(i,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:i}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return i.if(r,()=>this.mergeEvaluated(e,me.Name)),!0}};no.KeywordCxt=gh;function dP(t,e,r,n){let i=new gh(t,r,e);"code"in r?r.code(i,n):i.$data&&r.validate?(0,vd.funcKeywordCode)(i,r):"macro"in r?(0,vd.macroKeywordCode)(i,r):(r.compile||r.validate)&&(0,vd.funcKeywordCode)(i,r)}var JV=/^\/(?:[^~]|~0|~1)*$/,XV=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function pP(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let i,s;if(t==="")return Re.default.rootData;if(t[0]==="/"){if(!JV.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);i=t,s=Re.default.rootData}else{let u=XV.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(i=u[2],i==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(s=r[e-l],!i)return s}let o=s,a=i.split("/");for(let u of a)u&&(s=(0,me._)`${s}${(0,me.getProperty)((0,vs.unescapeJsonPointer)(u))}`,o=(0,me._)`${o} && ${s}`);return o;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}no.getData=pP});var vh=$(Kw=>{"use strict";Object.defineProperty(Kw,"__esModule",{value:!0});var Vw=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Kw.default=Vw});var _d=$(Yw=>{"use strict";Object.defineProperty(Yw,"__esModule",{value:!0});var Jw=hd(),Xw=class extends Error{constructor(e,r,n,i){super(i||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Jw.resolveUrl)(e,r,n),this.missingSchema=(0,Jw.normalizeId)((0,Jw.getFullPath)(e,this.missingRef))}};Yw.default=Xw});var _h=$(qn=>{"use strict";Object.defineProperty(qn,"__esModule",{value:!0});qn.resolveSchema=qn.getCompilingSchema=qn.resolveRef=qn.compileSchema=qn.SchemaEnv=void 0;var ci=Ue(),YV=vh(),Bo=gs(),ui=hd(),fP=st(),QV=yd(),hc=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,ui.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};qn.SchemaEnv=hc;function e0(t){let e=mP.call(this,t);if(e)return e;let r=(0,ui.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:i}=this.opts.code,{ownProperties:s}=this.opts,o=new ci.CodeGen(this.scope,{es5:n,lines:i,ownProperties:s}),a;t.$async&&(a=o.scopeValue("Error",{ref:YV.default,code:(0,ci._)`require("ajv/dist/runtime/validation_error").default`}));let c=o.scopeName("validate");t.validateName=c;let u={gen:o,allErrors:this.opts.allErrors,data:Bo.default.data,parentData:Bo.default.parentData,parentDataProperty:Bo.default.parentDataProperty,dataNames:[Bo.default.data],dataPathArr:[ci.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:o.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,ci.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:ci.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,ci._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,QV.validateFunctionCode)(u),o.optimize(this.opts.code.optimize);let d=o.toString();l=`${o.scopeRefs(Bo.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let f=new Function(`${Bo.default.self}`,`${Bo.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:f}),f.errors=null,f.schema=t.schema,f.schemaEnv=t,t.$async&&(f.$async=!0),this.opts.code.source===!0&&(f.source={validateName:c,validateCode:d,scopeValues:o._values}),this.opts.unevaluated){let{props:m,items:h}=u;f.evaluated={props:m instanceof ci.Name?void 0:m,items:h instanceof ci.Name?void 0:h,dynamicProps:m instanceof ci.Name,dynamicItems:h instanceof ci.Name},f.source&&(f.source.evaluated=(0,ci.stringify)(f.evaluated))}return t.validate=f,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}qn.compileSchema=e0;function e7(t,e,r){var n;r=(0,ui.resolveUrl)(this.opts.uriResolver,e,r);let i=t.refs[r];if(i)return i;let s=n7.call(this,t,r);if(s===void 0){let o=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;o&&(s=new hc({schema:o,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=t7.call(this,s)}qn.resolveRef=e7;function t7(t){return(0,ui.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:e0.call(this,t)}function mP(t){for(let e of this._compilations)if(r7(e,t))return e}qn.getCompilingSchema=mP;function r7(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function n7(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||yh.call(this,t,e)}function yh(t,e){let r=this.opts.uriResolver.parse(e),n=(0,ui._getFullPath)(this.opts.uriResolver,r),i=(0,ui.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===i)return Qw.call(this,r,t);let s=(0,ui.normalizeId)(n),o=this.refs[s]||this.schemas[s];if(typeof o=="string"){let a=yh.call(this,t,o);return typeof a?.schema!="object"?void 0:Qw.call(this,r,a)}if(typeof o?.schema=="object"){if(o.validate||e0.call(this,o),s===(0,ui.normalizeId)(e)){let{schema:a}=o,{schemaId:c}=this.opts,u=a[c];return u&&(i=(0,ui.resolveUrl)(this.opts.uriResolver,i,u)),new hc({schema:a,schemaId:c,root:t,baseId:i})}return Qw.call(this,r,o)}}qn.resolveSchema=yh;var i7=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Qw(t,{baseId:e,schema:r,root:n}){var i;if(((i=t.fragment)===null||i===void 0?void 0:i[0])!=="/")return;for(let a of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,fP.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!i7.has(a)&&u&&(e=(0,ui.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,fP.schemaHasRulesButRef)(r,this.RULES)){let a=(0,ui.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=yh.call(this,n,a)}let{schemaId:o}=this.opts;if(s=s||new hc({schema:r,schemaId:o,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var hP=$((w1e,s7)=>{s7.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var r0=$((E1e,_P)=>{"use strict";var o7=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),vP=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function t0(t){let e="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var a7=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function gP(t){return t.length=0,!0}function c7(t,e,r){if(t.length){let n=t0(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function u7(t){let e=0,r={error:!1,address:"",zone:""},n=[],i=[],s=!1,o=!1,a=c7;for(let c=0;c7){r.error=!0;break}c>0&&t[c-1]===":"&&(s=!0),n.push(":");continue}else if(u==="%"){if(!a(i,n,r))break;a=gP}else{i.push(u);continue}}return i.length&&(a===gP?r.zone=i.join(""):o?n.push(i.join("")):n.push(t0(i))),r.address=n.join(""),r}function yP(t){if(l7(t,":")<2)return{host:t,isIPV6:!1};let e=u7(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function l7(t,e){let r=0;for(let n=0;n{"use strict";var{isUUID:m7}=r0(),h7=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,g7=["http","https","ws","wss","urn","urn:uuid"];function v7(t){return g7.indexOf(t)!==-1}function n0(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function bP(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function SP(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function y7(t){return t.secure=n0(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function _7(t){if((t.port===(n0(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function b7(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(h7);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let i=`${n}:${e.nid||t.nid}`,s=i0(i);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function S7(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),i=`${r}:${e.nid||n}`,s=i0(i);s&&(t=s.serialize(t,e));let o=t,a=t.nss;return o.path=`${n||e.nid}:${a}`,e.skipEscape=!0,o}function x7(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!m7(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function w7(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var xP={scheme:"http",domainHost:!0,parse:bP,serialize:SP},E7={scheme:"https",domainHost:xP.domainHost,parse:bP,serialize:SP},bh={scheme:"ws",domainHost:!0,parse:y7,serialize:_7},k7={scheme:"wss",domainHost:bh.domainHost,parse:bh.parse,serialize:bh.serialize},T7={scheme:"urn",parse:b7,serialize:S7,skipNormalize:!0},$7={scheme:"urn:uuid",parse:x7,serialize:w7,skipNormalize:!0},Sh={http:xP,https:E7,ws:bh,wss:k7,urn:T7,"urn:uuid":$7};Object.setPrototypeOf(Sh,null);function i0(t){return t&&(Sh[t]||Sh[t.toLowerCase()])||void 0}wP.exports={wsIsSecure:n0,SCHEMES:Sh,isValidSchemeName:v7,getSchemeHandler:i0}});var $P=$((T1e,wh)=>{"use strict";var{normalizeIPv6:I7,removeDotSegments:bd,recomposeAuthority:R7,normalizeComponentEncoding:xh,isIPv4:O7,nonSimpleDomain:C7}=r0(),{SCHEMES:P7,getSchemeHandler:kP}=EP();function A7(t,e){return typeof t=="string"?t=Mi(ys(t,e),e):typeof t=="object"&&(t=ys(Mi(t,e),e)),t}function N7(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},i=TP(ys(t,n),ys(e,n),n,!0);return n.skipEscape=!0,Mi(i,n)}function TP(t,e,r,n){let i={};return n||(t=ys(Mi(t,r),r),e=ys(Mi(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(i.scheme=e.scheme,i.userinfo=e.userinfo,i.host=e.host,i.port=e.port,i.path=bd(e.path||""),i.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(i.userinfo=e.userinfo,i.host=e.host,i.port=e.port,i.path=bd(e.path||""),i.query=e.query):(e.path?(e.path[0]==="/"?i.path=bd(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?i.path="/"+e.path:t.path?i.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:i.path=e.path,i.path=bd(i.path)),i.query=e.query):(i.path=t.path,e.query!==void 0?i.query=e.query:i.query=t.query),i.userinfo=t.userinfo,i.host=t.host,i.port=t.port),i.scheme=t.scheme),i.fragment=e.fragment,i}function M7(t,e,r){return typeof t=="string"?(t=unescape(t),t=Mi(xh(ys(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Mi(xh(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Mi(xh(ys(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Mi(xh(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Mi(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),i=[],s=kP(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&i.push(r.scheme,":");let o=R7(r);if(o!==void 0&&(n.reference!=="suffix"&&i.push("//"),i.push(o),r.path&&r.path[0]!=="/"&&i.push("/")),r.path!==void 0){let a=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(a=bd(a)),o===void 0&&a[0]==="/"&&a[1]==="/"&&(a="/%2F"+a.slice(2)),i.push(a)}return r.query!==void 0&&i.push("?",r.query),r.fragment!==void 0&&i.push("#",r.fragment),i.join("")}var D7=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function ys(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},i=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let s=t.match(D7);if(s){if(n.scheme=s[1],n.userinfo=s[3],n.host=s[4],n.port=parseInt(s[5],10),n.path=s[6]||"",n.query=s[7],n.fragment=s[8],isNaN(n.port)&&(n.port=s[5]),n.host)if(O7(n.host)===!1){let c=I7(n.host);n.host=c.host.toLowerCase(),i=c.isIPV6}else i=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let o=kP(r.scheme||n.scheme);if(!r.unicodeSupport&&(!o||!o.unicodeSupport)&&n.host&&(r.domainHost||o&&o.domainHost)&&i===!1&&C7(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(a){n.error=n.error||"Host's domain name can not be converted to ASCII: "+a}(!o||o&&!o.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),o&&o.parse&&o.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var s0={SCHEMES:P7,normalize:A7,resolve:N7,resolveComponent:TP,equal:M7,serialize:Mi,parse:ys};wh.exports=s0;wh.exports.default=s0;wh.exports.fastUri=s0});var RP=$(o0=>{"use strict";Object.defineProperty(o0,"__esModule",{value:!0});var IP=$P();IP.code='require("ajv/dist/runtime/uri").default';o0.default=IP});var jP=$(xr=>{"use strict";Object.defineProperty(xr,"__esModule",{value:!0});xr.CodeGen=xr.Name=xr.nil=xr.stringify=xr.str=xr._=xr.KeywordCxt=void 0;var j7=yd();Object.defineProperty(xr,"KeywordCxt",{enumerable:!0,get:function(){return j7.KeywordCxt}});var gc=Ue();Object.defineProperty(xr,"_",{enumerable:!0,get:function(){return gc._}});Object.defineProperty(xr,"str",{enumerable:!0,get:function(){return gc.str}});Object.defineProperty(xr,"stringify",{enumerable:!0,get:function(){return gc.stringify}});Object.defineProperty(xr,"nil",{enumerable:!0,get:function(){return gc.nil}});Object.defineProperty(xr,"Name",{enumerable:!0,get:function(){return gc.Name}});Object.defineProperty(xr,"CodeGen",{enumerable:!0,get:function(){return gc.CodeGen}});var z7=vh(),NP=_d(),L7=Mw(),Sd=_h(),U7=Ue(),xd=hd(),Eh=md(),c0=st(),OP=hP(),F7=RP(),MP=(t,e)=>new RegExp(t,e);MP.code="new RegExp";var q7=["removeAdditional","useDefaults","coerceTypes"],H7=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Z7={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},B7={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},CP=200;function G7(t){var e,r,n,i,s,o,a,c,u,l,d,p,f,m,h,g,v,S,b,y,x,w,E,T,I;let A=t.strict,N=(e=t.code)===null||e===void 0?void 0:e.optimize,U=N===!0||N===void 0?1:N||0,V=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:MP,j=(i=t.uriResolver)!==null&&i!==void 0?i:F7.default;return{strictSchema:(o=(s=t.strictSchema)!==null&&s!==void 0?s:A)!==null&&o!==void 0?o:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:A)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:A)!==null&&l!==void 0?l:"log",strictTuples:(p=(d=t.strictTuples)!==null&&d!==void 0?d:A)!==null&&p!==void 0?p:"log",strictRequired:(m=(f=t.strictRequired)!==null&&f!==void 0?f:A)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:U,regExp:V}:{optimize:U,regExp:V},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:CP,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:CP,meta:(v=t.meta)!==null&&v!==void 0?v:!0,messages:(S=t.messages)!==null&&S!==void 0?S:!0,inlineRefs:(b=t.inlineRefs)!==null&&b!==void 0?b:!0,schemaId:(y=t.schemaId)!==null&&y!==void 0?y:"$id",addUsedSchema:(x=t.addUsedSchema)!==null&&x!==void 0?x:!0,validateSchema:(w=t.validateSchema)!==null&&w!==void 0?w:!0,validateFormats:(E=t.validateFormats)!==null&&E!==void 0?E:!0,unicodeRegExp:(T=t.unicodeRegExp)!==null&&T!==void 0?T:!0,int32range:(I=t.int32range)!==null&&I!==void 0?I:!0,uriResolver:j}}var wd=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...G7(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new U7.ValueScope({scope:{},prefixes:H7,es5:r,lines:n}),this.logger=Y7(e.logger);let i=e.validateFormats;e.validateFormats=!1,this.RULES=(0,L7.getRules)(),PP.call(this,Z7,e,"NOT SUPPORTED"),PP.call(this,B7,e,"DEPRECATED","warn"),this._metaOpts=J7.call(this),e.formats&&V7.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&K7.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),W7.call(this),e.validateFormats=i}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,i=OP;n==="id"&&(i={...OP},i.id=i.$id,delete i.$id),r&&e&&this.addMetaSchema(i,i[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let i=n(r);return"$async"in n||(this.errors=n.errors),i}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return i.call(this,e,r);async function i(l,d){await s.call(this,l.$schema);let p=this._addSchema(l,d);return p.validate||o.call(this,p)}async function s(l){l&&!this.getSchema(l)&&await i.call(this,{$ref:l},!0)}async function o(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof NP.default))throw d;return a.call(this,d),await c.call(this,d.missingSchema),o.call(this,l)}}function a({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await s.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,i=this.opts.validateSchema){if(Array.isArray(e)){for(let o of e)this.addSchema(o,void 0,n,i);return this}let s;if(typeof e=="object"){let{schemaId:o}=this.opts;if(s=e[o],s!==void 0&&typeof s!="string")throw new Error(`schema ${o} must be string`)}return r=(0,xd.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,i,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let i=this.validate(n,e);if(!i&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return i}getSchema(e){let r;for(;typeof(r=AP.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,i=new Sd.SchemaEnv({schema:{},schemaId:n});if(r=Sd.resolveSchema.call(this,i,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=AP.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,xd.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(eK.call(this,n,r),!r)return(0,c0.eachItem)(n,s=>a0.call(this,s)),this;rK.call(this,r);let i={...r,type:(0,Eh.getJSONTypes)(r.type),schemaType:(0,Eh.getJSONTypes)(r.schemaType)};return(0,c0.eachItem)(n,i.type.length===0?s=>a0.call(this,s,i):s=>i.type.forEach(o=>a0.call(this,s,i,o))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let i=n.rules.findIndex(s=>s.keyword===e);i>=0&&n.rules.splice(i,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(i=>`${n}${i.instancePath} ${i.message}`).reduce((i,s)=>i+r+s)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let i of r){let s=i.split("/").slice(1),o=e;for(let a of s)o=o[a];for(let a in n){let c=n[a];if(typeof c!="object")continue;let{$data:u}=c.definition,l=o[a];u&&l&&(o[a]=DP(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let i=e[n];(!r||r.test(n))&&(typeof i=="string"?delete e[n]:i&&!i.meta&&(this._cache.delete(i.schema),delete e[n]))}}_addSchema(e,r,n,i=this.opts.validateSchema,s=this.opts.addUsedSchema){let o,{schemaId:a}=this.opts;if(typeof e=="object")o=e[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,xd.normalizeId)(o||n);let u=xd.getSchemaRefs.call(this,e,n);return c=new Sd.SchemaEnv({schema:e,schemaId:a,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),i&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):Sd.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{Sd.compileSchema.call(this,e)}finally{this.opts=r}}};wd.ValidationError=z7.default;wd.MissingRefError=NP.default;xr.default=wd;function PP(t,e,r,n="error"){for(let i in t){let s=i;s in e&&this.logger[n](`${r}: option ${i}. ${t[s]}`)}}function AP(t){return t=(0,xd.normalizeId)(t),this.schemas[t]||this.refs[t]}function W7(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function V7(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function K7(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function J7(){let t={...this.opts};for(let e of q7)delete t[e];return t}var X7={log(){},warn(){},error(){}};function Y7(t){if(t===!1)return X7;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var Q7=/^[a-z_$][a-z0-9_$:-]*$/i;function eK(t,e){let{RULES:r}=this;if((0,c0.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!Q7.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function a0(t,e,r){var n;let i=e?.post;if(r&&i)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,o=i?s.post:s.rules.find(({type:c})=>c===r);if(o||(o={type:r,rules:[]},s.rules.push(o)),s.keywords[t]=!0,!e)return;let a={keyword:t,definition:{...e,type:(0,Eh.getJSONTypes)(e.type),schemaType:(0,Eh.getJSONTypes)(e.schemaType)}};e.before?tK.call(this,o,a,e.before):o.rules.push(a),s.all[t]=a,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function tK(t,e,r){let n=t.rules.findIndex(i=>i.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function rK(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=DP(e)),t.validateSchema=this.compile(e,!0))}var nK={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function DP(t){return{anyOf:[t,nK]}}});var zP=$(u0=>{"use strict";Object.defineProperty(u0,"__esModule",{value:!0});var iK={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};u0.default=iK});var qP=$(Go=>{"use strict";Object.defineProperty(Go,"__esModule",{value:!0});Go.callRef=Go.getValidate=void 0;var sK=_d(),LP=Fn(),ln=Ue(),vc=gs(),UP=_h(),kh=st(),oK={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:i,schemaEnv:s,validateName:o,opts:a,self:c}=n,{root:u}=s;if((r==="#"||r==="#/")&&i===u.baseId)return d();let l=UP.resolveRef.call(c,u,i,r);if(l===void 0)throw new sK.default(n.opts.uriResolver,i,r);if(l instanceof UP.SchemaEnv)return p(l);return f(l);function d(){if(s===u)return Th(t,o,s,s.$async);let m=e.scopeValue("root",{ref:u});return Th(t,(0,ln._)`${m}.validate`,u,u.$async)}function p(m){let h=FP(t,m);Th(t,h,m,m.$async)}function f(m){let h=e.scopeValue("schema",a.code.source===!0?{ref:m,code:(0,ln.stringify)(m)}:{ref:m}),g=e.name("valid"),v=t.subschema({schema:m,dataTypes:[],schemaPath:ln.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(v),t.ok(g)}}};function FP(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,ln._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Go.getValidate=FP;function Th(t,e,r,n){let{gen:i,it:s}=t,{allErrors:o,schemaEnv:a,opts:c}=s,u=c.passContext?vc.default.this:ln.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let m=i.let("valid");i.try(()=>{i.code((0,ln._)`await ${(0,LP.callValidateCode)(t,e,u)}`),f(e),o||i.assign(m,!0)},h=>{i.if((0,ln._)`!(${h} instanceof ${s.ValidationError})`,()=>i.throw(h)),p(h),o||i.assign(m,!1)}),t.ok(m)}function d(){t.result((0,LP.callValidateCode)(t,e,u),()=>f(e),()=>p(e))}function p(m){let h=(0,ln._)`${m}.errors`;i.assign(vc.default.vErrors,(0,ln._)`${vc.default.vErrors} === null ? ${h} : ${vc.default.vErrors}.concat(${h})`),i.assign(vc.default.errors,(0,ln._)`${vc.default.vErrors}.length`)}function f(m){var h;if(!s.opts.unevaluated)return;let g=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=kh.mergeEvaluated.props(i,g.props,s.props));else{let v=i.var("props",(0,ln._)`${m}.evaluated.props`);s.props=kh.mergeEvaluated.props(i,v,s.props,ln.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=kh.mergeEvaluated.items(i,g.items,s.items));else{let v=i.var("items",(0,ln._)`${m}.evaluated.items`);s.items=kh.mergeEvaluated.items(i,v,s.items,ln.Name)}}}Go.callRef=Th;Go.default=oK});var HP=$(l0=>{"use strict";Object.defineProperty(l0,"__esModule",{value:!0});var aK=zP(),cK=qP(),uK=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",aK.default,cK.default];l0.default=uK});var ZP=$(d0=>{"use strict";Object.defineProperty(d0,"__esModule",{value:!0});var $h=Ue(),io=$h.operators,Ih={maximum:{okStr:"<=",ok:io.LTE,fail:io.GT},minimum:{okStr:">=",ok:io.GTE,fail:io.LT},exclusiveMaximum:{okStr:"<",ok:io.LT,fail:io.GTE},exclusiveMinimum:{okStr:">",ok:io.GT,fail:io.LTE}},lK={message:({keyword:t,schemaCode:e})=>(0,$h.str)`must be ${Ih[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,$h._)`{comparison: ${Ih[t].okStr}, limit: ${e}}`},dK={keyword:Object.keys(Ih),type:"number",schemaType:"number",$data:!0,error:lK,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,$h._)`${r} ${Ih[e].fail} ${n} || isNaN(${r})`)}};d0.default=dK});var BP=$(p0=>{"use strict";Object.defineProperty(p0,"__esModule",{value:!0});var Ed=Ue(),pK={message:({schemaCode:t})=>(0,Ed.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Ed._)`{multipleOf: ${t}}`},fK={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:pK,code(t){let{gen:e,data:r,schemaCode:n,it:i}=t,s=i.opts.multipleOfPrecision,o=e.let("res"),a=s?(0,Ed._)`Math.abs(Math.round(${o}) - ${o}) > 1e-${s}`:(0,Ed._)`${o} !== parseInt(${o})`;t.fail$data((0,Ed._)`(${n} === 0 || (${o} = ${r}/${n}, ${a}))`)}};p0.default=fK});var WP=$(f0=>{"use strict";Object.defineProperty(f0,"__esModule",{value:!0});function GP(t){let e=t.length,r=0,n=0,i;for(;n=55296&&i<=56319&&n{"use strict";Object.defineProperty(m0,"__esModule",{value:!0});var Wo=Ue(),mK=st(),hK=WP(),gK={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Wo.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Wo._)`{limit: ${t}}`},vK={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:gK,code(t){let{keyword:e,data:r,schemaCode:n,it:i}=t,s=e==="maxLength"?Wo.operators.GT:Wo.operators.LT,o=i.opts.unicode===!1?(0,Wo._)`${r}.length`:(0,Wo._)`${(0,mK.useFunc)(t.gen,hK.default)}(${r})`;t.fail$data((0,Wo._)`${o} ${s} ${n}`)}};m0.default=vK});var KP=$(h0=>{"use strict";Object.defineProperty(h0,"__esModule",{value:!0});var yK=Fn(),Rh=Ue(),_K={message:({schemaCode:t})=>(0,Rh.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Rh._)`{pattern: ${t}}`},bK={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:_K,code(t){let{data:e,$data:r,schema:n,schemaCode:i,it:s}=t,o=s.opts.unicodeRegExp?"u":"",a=r?(0,Rh._)`(new RegExp(${i}, ${o}))`:(0,yK.usePattern)(t,n);t.fail$data((0,Rh._)`!${a}.test(${e})`)}};h0.default=bK});var JP=$(g0=>{"use strict";Object.defineProperty(g0,"__esModule",{value:!0});var kd=Ue(),SK={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,kd.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,kd._)`{limit: ${t}}`},xK={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:SK,code(t){let{keyword:e,data:r,schemaCode:n}=t,i=e==="maxProperties"?kd.operators.GT:kd.operators.LT;t.fail$data((0,kd._)`Object.keys(${r}).length ${i} ${n}`)}};g0.default=xK});var XP=$(v0=>{"use strict";Object.defineProperty(v0,"__esModule",{value:!0});var Td=Fn(),$d=Ue(),wK=st(),EK={message:({params:{missingProperty:t}})=>(0,$d.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,$d._)`{missingProperty: ${t}}`},kK={keyword:"required",type:"object",schemaType:"array",$data:!0,error:EK,code(t){let{gen:e,schema:r,schemaCode:n,data:i,$data:s,it:o}=t,{opts:a}=o;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(o.allErrors?u():l(),a.strictRequired){let f=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(f?.[h]===void 0&&!m.has(h)){let g=o.schemaEnv.baseId+o.errSchemaPath,v=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,wK.checkStrictMode)(o,v,o.opts.strictRequired)}}function u(){if(c||s)t.block$data($d.nil,d);else for(let f of r)(0,Td.checkReportMissingProp)(t,f)}function l(){let f=e.let("missing");if(c||s){let m=e.let("valid",!0);t.block$data(m,()=>p(f,m)),t.ok(m)}else e.if((0,Td.checkMissingProp)(t,r,f)),(0,Td.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,Td.noPropertyInData)(e,i,f,a.ownProperties),()=>t.error())})}function p(f,m){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(m,(0,Td.propertyInData)(e,i,f,a.ownProperties)),e.if((0,$d.not)(m),()=>{t.error(),e.break()})},$d.nil)}}};v0.default=kK});var YP=$(y0=>{"use strict";Object.defineProperty(y0,"__esModule",{value:!0});var Id=Ue(),TK={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Id.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Id._)`{limit: ${t}}`},$K={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:TK,code(t){let{keyword:e,data:r,schemaCode:n}=t,i=e==="maxItems"?Id.operators.GT:Id.operators.LT;t.fail$data((0,Id._)`${r}.length ${i} ${n}`)}};y0.default=$K});var Oh=$(_0=>{"use strict";Object.defineProperty(_0,"__esModule",{value:!0});var QP=Hw();QP.code='require("ajv/dist/runtime/equal").default';_0.default=QP});var eA=$(S0=>{"use strict";Object.defineProperty(S0,"__esModule",{value:!0});var b0=md(),wr=Ue(),IK=st(),RK=Oh(),OK={message:({params:{i:t,j:e}})=>(0,wr.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,wr._)`{i: ${t}, j: ${e}}`},CK={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:OK,code(t){let{gen:e,data:r,$data:n,schema:i,parentSchema:s,schemaCode:o,it:a}=t;if(!n&&!i)return;let c=e.let("valid"),u=s.items?(0,b0.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,wr._)`${o} === false`),t.ok(c);function l(){let m=e.let("i",(0,wr._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,wr._)`${m} > 1`,()=>(d()?p:f)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function p(m,h){let g=e.name("item"),v=(0,b0.checkDataTypes)(u,g,a.opts.strictNumbers,b0.DataType.Wrong),S=e.const("indices",(0,wr._)`{}`);e.for((0,wr._)`;${m}--;`,()=>{e.let(g,(0,wr._)`${r}[${m}]`),e.if(v,(0,wr._)`continue`),u.length>1&&e.if((0,wr._)`typeof ${g} == "string"`,(0,wr._)`${g} += "_"`),e.if((0,wr._)`typeof ${S}[${g}] == "number"`,()=>{e.assign(h,(0,wr._)`${S}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,wr._)`${S}[${g}] = ${m}`)})}function f(m,h){let g=(0,IK.useFunc)(e,RK.default),v=e.name("outer");e.label(v).for((0,wr._)`;${m}--;`,()=>e.for((0,wr._)`${h} = ${m}; ${h}--;`,()=>e.if((0,wr._)`${g}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(v)})))}}};S0.default=CK});var tA=$(w0=>{"use strict";Object.defineProperty(w0,"__esModule",{value:!0});var x0=Ue(),PK=st(),AK=Oh(),NK={message:"must be equal to constant",params:({schemaCode:t})=>(0,x0._)`{allowedValue: ${t}}`},MK={keyword:"const",$data:!0,error:NK,code(t){let{gen:e,data:r,$data:n,schemaCode:i,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,x0._)`!${(0,PK.useFunc)(e,AK.default)}(${r}, ${i})`):t.fail((0,x0._)`${s} !== ${r}`)}};w0.default=MK});var rA=$(E0=>{"use strict";Object.defineProperty(E0,"__esModule",{value:!0});var Rd=Ue(),DK=st(),jK=Oh(),zK={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Rd._)`{allowedValues: ${t}}`},LK={keyword:"enum",schemaType:"array",$data:!0,error:zK,code(t){let{gen:e,data:r,$data:n,schema:i,schemaCode:s,it:o}=t;if(!n&&i.length===0)throw new Error("enum must have non-empty array");let a=i.length>=o.opts.loopEnum,c,u=()=>c??(c=(0,DK.useFunc)(e,jK.default)),l;if(a||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(i))throw new Error("ajv implementation error");let f=e.const("vSchema",s);l=(0,Rd.or)(...i.map((m,h)=>p(f,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,f=>e.if((0,Rd._)`${u()}(${r}, ${f})`,()=>e.assign(l,!0).break()))}function p(f,m){let h=i[m];return typeof h=="object"&&h!==null?(0,Rd._)`${u()}(${r}, ${f}[${m}])`:(0,Rd._)`${r} === ${h}`}}};E0.default=LK});var nA=$(k0=>{"use strict";Object.defineProperty(k0,"__esModule",{value:!0});var UK=ZP(),FK=BP(),qK=VP(),HK=KP(),ZK=JP(),BK=XP(),GK=YP(),WK=eA(),VK=tA(),KK=rA(),JK=[UK.default,FK.default,qK.default,HK.default,ZK.default,BK.default,GK.default,WK.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},VK.default,KK.default];k0.default=JK});var $0=$(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});Od.validateAdditionalItems=void 0;var Vo=Ue(),T0=st(),XK={message:({params:{len:t}})=>(0,Vo.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Vo._)`{limit: ${t}}`},YK={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:XK,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,T0.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}iA(t,n)}};function iA(t,e){let{gen:r,schema:n,data:i,keyword:s,it:o}=t;o.items=!0;let a=r.const("len",(0,Vo._)`${i}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Vo._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,T0.alwaysValidSchema)(o,n)){let u=r.var("valid",(0,Vo._)`${a} <= ${e.length}`);r.if((0,Vo.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:T0.Type.Num},u),o.allErrors||r.if((0,Vo.not)(u),()=>r.break())})}}Od.validateAdditionalItems=iA;Od.default=YK});var I0=$(Cd=>{"use strict";Object.defineProperty(Cd,"__esModule",{value:!0});Cd.validateTuple=void 0;var sA=Ue(),Ch=st(),QK=Fn(),eJ={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return oA(t,"additionalItems",e);r.items=!0,!(0,Ch.alwaysValidSchema)(r,e)&&t.ok((0,QK.validateArray)(t))}};function oA(t,e,r=t.schema){let{gen:n,parentSchema:i,data:s,keyword:o,it:a}=t;l(i),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=Ch.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,sA._)`${s}.length`);r.forEach((d,p)=>{(0,Ch.alwaysValidSchema)(a,d)||(n.if((0,sA._)`${u} > ${p}`,()=>t.subschema({keyword:o,schemaProp:p,dataProp:p},c)),t.ok(c))});function l(d){let{opts:p,errSchemaPath:f}=a,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(p.strictTuples&&!h){let g=`"${o}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${f}"`;(0,Ch.checkStrictMode)(a,g,p.strictTuples)}}}Cd.validateTuple=oA;Cd.default=eJ});var aA=$(R0=>{"use strict";Object.defineProperty(R0,"__esModule",{value:!0});var tJ=I0(),rJ={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,tJ.validateTuple)(t,"items")};R0.default=rJ});var uA=$(O0=>{"use strict";Object.defineProperty(O0,"__esModule",{value:!0});var cA=Ue(),nJ=st(),iJ=Fn(),sJ=$0(),oJ={message:({params:{len:t}})=>(0,cA.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,cA._)`{limit: ${t}}`},aJ={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:oJ,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:i}=r;n.items=!0,!(0,nJ.alwaysValidSchema)(n,e)&&(i?(0,sJ.validateAdditionalItems)(t,i):t.ok((0,iJ.validateArray)(t)))}};O0.default=aJ});var lA=$(C0=>{"use strict";Object.defineProperty(C0,"__esModule",{value:!0});var Hn=Ue(),Ph=st(),cJ={message:({params:{min:t,max:e}})=>e===void 0?(0,Hn.str)`must contain at least ${t} valid item(s)`:(0,Hn.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,Hn._)`{minContains: ${t}}`:(0,Hn._)`{minContains: ${t}, maxContains: ${e}}`},uJ={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:cJ,code(t){let{gen:e,schema:r,parentSchema:n,data:i,it:s}=t,o,a,{minContains:c,maxContains:u}=n;s.opts.next?(o=c===void 0?1:c,a=u):o=1;let l=e.const("len",(0,Hn._)`${i}.length`);if(t.setParams({min:o,max:a}),a===void 0&&o===0){(0,Ph.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&o>a){(0,Ph.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Ph.alwaysValidSchema)(s,r)){let h=(0,Hn._)`${l} >= ${o}`;a!==void 0&&(h=(0,Hn._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&o===1?f(d,()=>e.if(d,()=>e.break())):o===0?(e.let(d,!0),a!==void 0&&e.if((0,Hn._)`${i}.length > 0`,p)):(e.let(d,!1),p()),t.result(d,()=>t.reset());function p(){let h=e.name("_valid"),g=e.let("count",0);f(h,()=>e.if(h,()=>m(g)))}function f(h,g){e.forRange("i",0,l,v=>{t.subschema({keyword:"contains",dataProp:v,dataPropType:Ph.Type.Num,compositeRule:!0},h),g()})}function m(h){e.code((0,Hn._)`${h}++`),a===void 0?e.if((0,Hn._)`${h} >= ${o}`,()=>e.assign(d,!0).break()):(e.if((0,Hn._)`${h} > ${a}`,()=>e.assign(d,!1).break()),o===1?e.assign(d,!0):e.if((0,Hn._)`${h} >= ${o}`,()=>e.assign(d,!0)))}}};C0.default=uJ});var fA=$(Di=>{"use strict";Object.defineProperty(Di,"__esModule",{value:!0});Di.validateSchemaDeps=Di.validatePropertyDeps=Di.error=void 0;var P0=Ue(),lJ=st(),Pd=Fn();Di.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,P0.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,P0._)`{property: ${t}, +"use strict";var C5=Object.create;var Qf=Object.defineProperty;var P5=Object.getOwnPropertyDescriptor;var A5=Object.getOwnPropertyNames;var N5=Object.getPrototypeOf,M5=Object.prototype.hasOwnProperty;var we=(t,e)=>()=>(t&&(e=t(t=0)),e);var $=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),wn=(t,e)=>{for(var r in e)Qf(t,r,{get:e[r],enumerable:!0})},bR=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of A5(e))!M5.call(t,i)&&i!==r&&Qf(t,i,{get:()=>e[i],enumerable:!(n=P5(e,i))||n.enumerable});return t};var Pe=(t,e,r)=>(r=t!=null?C5(N5(t)):{},bR(e||!t||!t.__esModule?Qf(r,"default",{value:t,enumerable:!0}):r,t)),em=t=>bR(Qf({},"__esModule",{value:!0}),t);var _d=$(st=>{"use strict";Object.defineProperty(st,"__esModule",{value:!0});st.regexpCode=st.getEsmExportName=st.getProperty=st.safeStringify=st.stringify=st.strConcat=st.addCodeArg=st.str=st._=st.nil=st._Code=st.Name=st.IDENTIFIER=st._CodeOrName=void 0;var vd=class{};st._CodeOrName=vd;st.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Ko=class extends vd{constructor(e){if(super(),!st.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};st.Name=Ko;var Zn=class extends vd{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Ko&&(r[n.str]=(r[n.str]||0)+1),r),{})}};st._Code=Zn;st.nil=new Zn("");function qC(t,...e){let r=[t[0]],n=0;for(;n{"use strict";Object.defineProperty(ln,"__esModule",{value:!0});ln.ValueScope=ln.ValueScopeName=ln.Scope=ln.varKinds=ln.UsedValueState=void 0;var un=_d(),Ow=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Sh;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Sh||(ln.UsedValueState=Sh={}));ln.varKinds={const:new un.Name("const"),let:new un.Name("let"),var:new un.Name("var")};var xh=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof un.Name?e:this.name(e)}name(e){return new un.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};ln.Scope=xh;var wh=class extends un.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,un._)`.${new un.Name(r)}[${n}]`}};ln.ValueScopeName=wh;var wW=(0,un._)`\n`,Cw=class extends xh{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?wW:un.nil}}get(){return this._scope}name(e){return new wh(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let i=this.toName(e),{prefix:s}=i,o=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(o);if(l)return l}else a=this._values[s]=new Map;a.set(o,i);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,i.setValue(r,{property:s,itemIndex:u}),i}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,un._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,i=>{if(i.value===void 0)throw new Error(`CodeGen: name "${i}" has no value`);return i.value.code},r,n)}_reduceValues(e,r,n={},i){let s=un.nil;for(let o in e){let a=e[o];if(!a)continue;let c=n[o]=n[o]||new Map;a.forEach(u=>{if(c.has(u))return;c.set(u,Sh.Started);let l=r(u);if(l){let d=this.opts.es5?ln.varKinds.var:ln.varKinds.const;s=(0,un._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=i?.(u))s=(0,un._)`${s}${l}${this.opts._n}`;else throw new Ow(u);c.set(u,Sh.Completed)})}return s}};ln.ValueScope=Cw});var Ue=$(qe=>{"use strict";Object.defineProperty(qe,"__esModule",{value:!0});qe.or=qe.and=qe.not=qe.CodeGen=qe.operators=qe.varKinds=qe.ValueScopeName=qe.ValueScope=qe.Scope=qe.Name=qe.regexpCode=qe.stringify=qe.getProperty=qe.nil=qe.strConcat=qe.str=qe._=void 0;var et=_d(),di=Pw(),co=_d();Object.defineProperty(qe,"_",{enumerable:!0,get:function(){return co._}});Object.defineProperty(qe,"str",{enumerable:!0,get:function(){return co.str}});Object.defineProperty(qe,"strConcat",{enumerable:!0,get:function(){return co.strConcat}});Object.defineProperty(qe,"nil",{enumerable:!0,get:function(){return co.nil}});Object.defineProperty(qe,"getProperty",{enumerable:!0,get:function(){return co.getProperty}});Object.defineProperty(qe,"stringify",{enumerable:!0,get:function(){return co.stringify}});Object.defineProperty(qe,"regexpCode",{enumerable:!0,get:function(){return co.regexpCode}});Object.defineProperty(qe,"Name",{enumerable:!0,get:function(){return co.Name}});var $h=Pw();Object.defineProperty(qe,"Scope",{enumerable:!0,get:function(){return $h.Scope}});Object.defineProperty(qe,"ValueScope",{enumerable:!0,get:function(){return $h.ValueScope}});Object.defineProperty(qe,"ValueScopeName",{enumerable:!0,get:function(){return $h.ValueScopeName}});Object.defineProperty(qe,"varKinds",{enumerable:!0,get:function(){return $h.varKinds}});qe.operators={GT:new et._Code(">"),GTE:new et._Code(">="),LT:new et._Code("<"),LTE:new et._Code("<="),EQ:new et._Code("==="),NEQ:new et._Code("!=="),NOT:new et._Code("!"),OR:new et._Code("||"),AND:new et._Code("&&"),ADD:new et._Code("+")};var _s=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Aw=class extends _s{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?di.varKinds.var:this.varKind,i=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${i};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=yc(this.rhs,e,r)),this}get names(){return this.rhs instanceof et._CodeOrName?this.rhs.names:{}}},Eh=class extends _s{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof et.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=yc(this.rhs,e,r),this}get names(){let e=this.lhs instanceof et.Name?{}:{...this.lhs.names};return Th(e,this.rhs)}},Nw=class extends Eh{constructor(e,r,n,i){super(e,n,i),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Mw=class extends _s{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Dw=class extends _s{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},jw=class extends _s{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},zw=class extends _s{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=yc(this.code,e,r),this}get names(){return this.code instanceof et._CodeOrName?this.code.names:{}}},bd=class extends _s{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,i=n.length;for(;i--;){let s=n[i];s.optimizeNames(e,r)||(EW(e,s.names),n.splice(i,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Yo(e,r.names),{})}},bs=class extends bd{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Lw=class extends bd{},vc=class extends bs{};vc.kind="else";var Jo=class t extends bs{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new vc(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(ZC(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=yc(this.condition,e,r),this}get names(){let e=super.names;return Th(e,this.condition),this.else&&Yo(e,this.else.names),e}};Jo.kind="if";var Xo=class extends bs{};Xo.kind="for";var Uw=class extends Xo{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=yc(this.iteration,e,r),this}get names(){return Yo(super.names,this.iteration.names)}},Fw=class extends Xo{constructor(e,r,n,i){super(),this.varKind=e,this.name=r,this.from=n,this.to=i}render(e){let r=e.es5?di.varKinds.var:this.varKind,{name:n,from:i,to:s}=this;return`for(${r} ${n}=${i}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=Th(super.names,this.from);return Th(e,this.to)}},kh=class extends Xo{constructor(e,r,n,i){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=i}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=yc(this.iterable,e,r),this}get names(){return Yo(super.names,this.iterable.names)}},Sd=class extends bs{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};Sd.kind="func";var xd=class extends bd{render(e){return"return "+super.render(e)}};xd.kind="return";var qw=class extends bs{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,i;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(i=this.finally)===null||i===void 0||i.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Yo(e,this.catch.names),this.finally&&Yo(e,this.finally.names),e}},wd=class extends bs{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};wd.kind="catch";var Ed=class extends bs{render(e){return"finally"+super.render(e)}};Ed.kind="finally";var Hw=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` +`:""},this._extScope=e,this._scope=new di.Scope({parent:e}),this._nodes=[new Lw]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,i){let s=this._scope.toName(r);return n!==void 0&&i&&(this._constants[s.str]=n),this._leafNode(new Aw(e,s,n)),s}const(e,r,n){return this._def(di.varKinds.const,e,r,n)}let(e,r,n){return this._def(di.varKinds.let,e,r,n)}var(e,r,n){return this._def(di.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Eh(e,r,n))}add(e,r){return this._leafNode(new Nw(e,qe.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==et.nil&&this._leafNode(new zw(e)),this}object(...e){let r=["{"];for(let[n,i]of e)r.length>1&&r.push(","),r.push(n),(n!==i||this.opts.es5)&&(r.push(":"),(0,et.addCodeArg)(r,i));return r.push("}"),new et._Code(r)}if(e,r,n){if(this._blockNode(new Jo(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new Jo(e))}else(){return this._elseNode(new vc)}endIf(){return this._endBlockNode(Jo,vc)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Uw(e),r)}forRange(e,r,n,i,s=this.opts.es5?di.varKinds.var:di.varKinds.let){let o=this._scope.toName(e);return this._for(new Fw(s,o,r,n),()=>i(o))}forOf(e,r,n,i=di.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let o=r instanceof et.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,et._)`${o}.length`,a=>{this.var(s,(0,et._)`${o}[${a}]`),n(s)})}return this._for(new kh("of",i,s,r),()=>n(s))}forIn(e,r,n,i=this.opts.es5?di.varKinds.var:di.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,et._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new kh("in",i,s,r),()=>n(s))}endFor(){return this._endBlockNode(Xo)}label(e){return this._leafNode(new Mw(e))}break(e){return this._leafNode(new Dw(e))}return(e){let r=new xd;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(xd)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let i=new qw;if(this._blockNode(i),this.code(e),r){let s=this.name("e");this._currNode=i.catch=new wd(s),r(s)}return n&&(this._currNode=i.finally=new Ed,this.code(n)),this._endBlockNode(wd,Ed)}throw(e){return this._leafNode(new jw(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=et.nil,n,i){return this._blockNode(new Sd(e,r,n)),i&&this.code(i).endFunc(),this}endFunc(){return this._endBlockNode(Sd)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof Jo))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};qe.CodeGen=Hw;function Yo(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Th(t,e){return e instanceof et._CodeOrName?Yo(t,e.names):t}function yc(t,e,r){if(t instanceof et.Name)return n(t);if(!i(t))return t;return new et._Code(t._items.reduce((s,o)=>(o instanceof et.Name&&(o=n(o)),o instanceof et._Code?s.push(...o._items):s.push(o),s),[]));function n(s){let o=r[s.str];return o===void 0||e[s.str]!==1?s:(delete e[s.str],o)}function i(s){return s instanceof et._Code&&s._items.some(o=>o instanceof et.Name&&e[o.str]===1&&r[o.str]!==void 0)}}function EW(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function ZC(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,et._)`!${Zw(t)}`}qe.not=ZC;var kW=BC(qe.operators.AND);function TW(...t){return t.reduce(kW)}qe.and=TW;var $W=BC(qe.operators.OR);function IW(...t){return t.reduce($W)}qe.or=IW;function BC(t){return(e,r)=>e===et.nil?r:r===et.nil?e:(0,et._)`${Zw(e)} ${t} ${Zw(r)}`}function Zw(t){return t instanceof et.Name?t:(0,et._)`(${t})`}});var tt=$(Ke=>{"use strict";Object.defineProperty(Ke,"__esModule",{value:!0});Ke.checkStrictMode=Ke.getErrorPath=Ke.Type=Ke.useFunc=Ke.setEvaluated=Ke.evaluatedPropsToName=Ke.mergeEvaluated=Ke.eachItem=Ke.unescapeJsonPointer=Ke.escapeJsonPointer=Ke.escapeFragment=Ke.unescapeFragment=Ke.schemaRefOrVal=Ke.schemaHasRulesButRef=Ke.schemaHasRules=Ke.checkUnknownRules=Ke.alwaysValidSchema=Ke.toHash=void 0;var wt=Ue(),RW=_d();function OW(t){let e={};for(let r of t)e[r]=!0;return e}Ke.toHash=OW;function CW(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(VC(t,e),!KC(e,t.self.RULES.all))}Ke.alwaysValidSchema=CW;function VC(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let i=n.RULES.keywords;for(let s in e)i[s]||YC(t,`unknown keyword: "${s}"`)}Ke.checkUnknownRules=VC;function KC(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}Ke.schemaHasRules=KC;function PW(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}Ke.schemaHasRulesButRef=PW;function AW({topSchemaRef:t,schemaPath:e},r,n,i){if(!i){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,wt._)`${r}`}return(0,wt._)`${t}${e}${(0,wt.getProperty)(n)}`}Ke.schemaRefOrVal=AW;function NW(t){return JC(decodeURIComponent(t))}Ke.unescapeFragment=NW;function MW(t){return encodeURIComponent(Gw(t))}Ke.escapeFragment=MW;function Gw(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}Ke.escapeJsonPointer=Gw;function JC(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}Ke.unescapeJsonPointer=JC;function DW(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}Ke.eachItem=DW;function GC({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(i,s,o,a)=>{let c=o===void 0?s:o instanceof wt.Name?(s instanceof wt.Name?t(i,s,o):e(i,s,o),o):s instanceof wt.Name?(e(i,o,s),s):r(s,o);return a===wt.Name&&!(c instanceof wt.Name)?n(i,c):c}}Ke.mergeEvaluated={props:GC({mergeNames:(t,e,r)=>t.if((0,wt._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,wt._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,wt._)`${r} || {}`).code((0,wt._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,wt._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,wt._)`${r} || {}`),Ww(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:XC}),items:GC({mergeNames:(t,e,r)=>t.if((0,wt._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,wt._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,wt._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,wt._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function XC(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,wt._)`{}`);return e!==void 0&&Ww(t,r,e),r}Ke.evaluatedPropsToName=XC;function Ww(t,e,r){Object.keys(r).forEach(n=>t.assign((0,wt._)`${e}${(0,wt.getProperty)(n)}`,!0))}Ke.setEvaluated=Ww;var WC={};function jW(t,e){return t.scopeValue("func",{ref:e,code:WC[e.code]||(WC[e.code]=new RW._Code(e.code))})}Ke.useFunc=jW;var Bw;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Bw||(Ke.Type=Bw={}));function zW(t,e,r){if(t instanceof wt.Name){let n=e===Bw.Num;return r?n?(0,wt._)`"[" + ${t} + "]"`:(0,wt._)`"['" + ${t} + "']"`:n?(0,wt._)`"/" + ${t}`:(0,wt._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,wt.getProperty)(t).toString():"/"+Gw(t)}Ke.getErrorPath=zW;function YC(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}Ke.checkStrictMode=YC});var Ss=$(Vw=>{"use strict";Object.defineProperty(Vw,"__esModule",{value:!0});var Nr=Ue(),LW={data:new Nr.Name("data"),valCxt:new Nr.Name("valCxt"),instancePath:new Nr.Name("instancePath"),parentData:new Nr.Name("parentData"),parentDataProperty:new Nr.Name("parentDataProperty"),rootData:new Nr.Name("rootData"),dynamicAnchors:new Nr.Name("dynamicAnchors"),vErrors:new Nr.Name("vErrors"),errors:new Nr.Name("errors"),this:new Nr.Name("this"),self:new Nr.Name("self"),scope:new Nr.Name("scope"),json:new Nr.Name("json"),jsonPos:new Nr.Name("jsonPos"),jsonLen:new Nr.Name("jsonLen"),jsonPart:new Nr.Name("jsonPart")};Vw.default=LW});var kd=$(Mr=>{"use strict";Object.defineProperty(Mr,"__esModule",{value:!0});Mr.extendErrors=Mr.resetErrorsCount=Mr.reportExtraError=Mr.reportError=Mr.keyword$DataError=Mr.keywordError=void 0;var rt=Ue(),Ih=tt(),Jr=Ss();Mr.keywordError={message:({keyword:t})=>(0,rt.str)`must pass "${t}" keyword validation`};Mr.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,rt.str)`"${t}" keyword must be ${e} ($data)`:(0,rt.str)`"${t}" keyword is invalid ($data)`};function UW(t,e=Mr.keywordError,r,n){let{it:i}=t,{gen:s,compositeRule:o,allErrors:a}=i,c=tP(t,e,r);n??(o||a)?QC(s,c):eP(i,(0,rt._)`[${c}]`)}Mr.reportError=UW;function FW(t,e=Mr.keywordError,r){let{it:n}=t,{gen:i,compositeRule:s,allErrors:o}=n,a=tP(t,e,r);QC(i,a),s||o||eP(n,Jr.default.vErrors)}Mr.reportExtraError=FW;function qW(t,e){t.assign(Jr.default.errors,e),t.if((0,rt._)`${Jr.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,rt._)`${Jr.default.vErrors}.length`,e),()=>t.assign(Jr.default.vErrors,null)))}Mr.resetErrorsCount=qW;function HW({gen:t,keyword:e,schemaValue:r,data:n,errsCount:i,it:s}){if(i===void 0)throw new Error("ajv implementation error");let o=t.name("err");t.forRange("i",i,Jr.default.errors,a=>{t.const(o,(0,rt._)`${Jr.default.vErrors}[${a}]`),t.if((0,rt._)`${o}.instancePath === undefined`,()=>t.assign((0,rt._)`${o}.instancePath`,(0,rt.strConcat)(Jr.default.instancePath,s.errorPath))),t.assign((0,rt._)`${o}.schemaPath`,(0,rt.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,rt._)`${o}.schema`,r),t.assign((0,rt._)`${o}.data`,n))})}Mr.extendErrors=HW;function QC(t,e){let r=t.const("err",e);t.if((0,rt._)`${Jr.default.vErrors} === null`,()=>t.assign(Jr.default.vErrors,(0,rt._)`[${r}]`),(0,rt._)`${Jr.default.vErrors}.push(${r})`),t.code((0,rt._)`${Jr.default.errors}++`)}function eP(t,e){let{gen:r,validateName:n,schemaEnv:i}=t;i.$async?r.throw((0,rt._)`new ${t.ValidationError}(${e})`):(r.assign((0,rt._)`${n}.errors`,e),r.return(!1))}var Qo={keyword:new rt.Name("keyword"),schemaPath:new rt.Name("schemaPath"),params:new rt.Name("params"),propertyName:new rt.Name("propertyName"),message:new rt.Name("message"),schema:new rt.Name("schema"),parentSchema:new rt.Name("parentSchema")};function tP(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,rt._)`{}`:ZW(t,e,r)}function ZW(t,e,r={}){let{gen:n,it:i}=t,s=[BW(i,r),GW(t,r)];return WW(t,e,s),n.object(...s)}function BW({errorPath:t},{instancePath:e}){let r=e?(0,rt.str)`${t}${(0,Ih.getErrorPath)(e,Ih.Type.Str)}`:t;return[Jr.default.instancePath,(0,rt.strConcat)(Jr.default.instancePath,r)]}function GW({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let i=n?e:(0,rt.str)`${e}/${t}`;return r&&(i=(0,rt.str)`${i}${(0,Ih.getErrorPath)(r,Ih.Type.Str)}`),[Qo.schemaPath,i]}function WW(t,{params:e,message:r},n){let{keyword:i,data:s,schemaValue:o,it:a}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=a;n.push([Qo.keyword,i],[Qo.params,typeof e=="function"?e(t):e||(0,rt._)`{}`]),c.messages&&n.push([Qo.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Qo.schema,o],[Qo.parentSchema,(0,rt._)`${l}${d}`],[Jr.default.data,s]),u&&n.push([Qo.propertyName,u])}});var nP=$(_c=>{"use strict";Object.defineProperty(_c,"__esModule",{value:!0});_c.boolOrEmptySchema=_c.topBoolOrEmptySchema=void 0;var VW=kd(),KW=Ue(),JW=Ss(),XW={message:"boolean schema is false"};function YW(t){let{gen:e,schema:r,validateName:n}=t;r===!1?rP(t,!1):typeof r=="object"&&r.$async===!0?e.return(JW.default.data):(e.assign((0,KW._)`${n}.errors`,null),e.return(!0))}_c.topBoolOrEmptySchema=YW;function QW(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),rP(t)):r.var(e,!0)}_c.boolOrEmptySchema=QW;function rP(t,e){let{gen:r,data:n}=t,i={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,VW.reportError)(i,XW,void 0,e)}});var Kw=$(bc=>{"use strict";Object.defineProperty(bc,"__esModule",{value:!0});bc.getRules=bc.isJSONType=void 0;var eV=["string","number","integer","boolean","null","object","array"],tV=new Set(eV);function rV(t){return typeof t=="string"&&tV.has(t)}bc.isJSONType=rV;function nV(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}bc.getRules=nV});var Jw=$(uo=>{"use strict";Object.defineProperty(uo,"__esModule",{value:!0});uo.shouldUseRule=uo.shouldUseGroup=uo.schemaHasRulesForType=void 0;function iV({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&iP(t,n)}uo.schemaHasRulesForType=iV;function iP(t,e){return e.rules.some(r=>sP(t,r))}uo.shouldUseGroup=iP;function sP(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}uo.shouldUseRule=sP});var Td=$(Dr=>{"use strict";Object.defineProperty(Dr,"__esModule",{value:!0});Dr.reportTypeError=Dr.checkDataTypes=Dr.checkDataType=Dr.coerceAndCheckDataType=Dr.getJSONTypes=Dr.getSchemaTypes=Dr.DataType=void 0;var sV=Kw(),oV=Jw(),aV=kd(),ze=Ue(),oP=tt(),Sc;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Sc||(Dr.DataType=Sc={}));function cV(t){let e=aP(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Dr.getSchemaTypes=cV;function aP(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(sV.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Dr.getJSONTypes=aP;function uV(t,e){let{gen:r,data:n,opts:i}=t,s=lV(e,i.coerceTypes),o=e.length>0&&!(s.length===0&&e.length===1&&(0,oV.schemaHasRulesForType)(t,e[0]));if(o){let a=Yw(e,n,i.strictNumbers,Sc.Wrong);r.if(a,()=>{s.length?dV(t,e,s):Qw(t)})}return o}Dr.coerceAndCheckDataType=uV;var cP=new Set(["string","number","integer","boolean","null"]);function lV(t,e){return e?t.filter(r=>cP.has(r)||e==="array"&&r==="array"):[]}function dV(t,e,r){let{gen:n,data:i,opts:s}=t,o=n.let("dataType",(0,ze._)`typeof ${i}`),a=n.let("coerced",(0,ze._)`undefined`);s.coerceTypes==="array"&&n.if((0,ze._)`${o} == 'object' && Array.isArray(${i}) && ${i}.length == 1`,()=>n.assign(i,(0,ze._)`${i}[0]`).assign(o,(0,ze._)`typeof ${i}`).if(Yw(e,i,s.strictNumbers),()=>n.assign(a,i))),n.if((0,ze._)`${a} !== undefined`);for(let u of r)(cP.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Qw(t),n.endIf(),n.if((0,ze._)`${a} !== undefined`,()=>{n.assign(i,a),pV(t,a)});function c(u){switch(u){case"string":n.elseIf((0,ze._)`${o} == "number" || ${o} == "boolean"`).assign(a,(0,ze._)`"" + ${i}`).elseIf((0,ze._)`${i} === null`).assign(a,(0,ze._)`""`);return;case"number":n.elseIf((0,ze._)`${o} == "boolean" || ${i} === null + || (${o} == "string" && ${i} && ${i} == +${i})`).assign(a,(0,ze._)`+${i}`);return;case"integer":n.elseIf((0,ze._)`${o} === "boolean" || ${i} === null + || (${o} === "string" && ${i} && ${i} == +${i} && !(${i} % 1))`).assign(a,(0,ze._)`+${i}`);return;case"boolean":n.elseIf((0,ze._)`${i} === "false" || ${i} === 0 || ${i} === null`).assign(a,!1).elseIf((0,ze._)`${i} === "true" || ${i} === 1`).assign(a,!0);return;case"null":n.elseIf((0,ze._)`${i} === "" || ${i} === 0 || ${i} === false`),n.assign(a,null);return;case"array":n.elseIf((0,ze._)`${o} === "string" || ${o} === "number" + || ${o} === "boolean" || ${i} === null`).assign(a,(0,ze._)`[${i}]`)}}}function pV({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,ze._)`${e} !== undefined`,()=>t.assign((0,ze._)`${e}[${r}]`,n))}function Xw(t,e,r,n=Sc.Correct){let i=n===Sc.Correct?ze.operators.EQ:ze.operators.NEQ,s;switch(t){case"null":return(0,ze._)`${e} ${i} null`;case"array":s=(0,ze._)`Array.isArray(${e})`;break;case"object":s=(0,ze._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=o((0,ze._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=o();break;default:return(0,ze._)`typeof ${e} ${i} ${t}`}return n===Sc.Correct?s:(0,ze.not)(s);function o(a=ze.nil){return(0,ze.and)((0,ze._)`typeof ${e} == "number"`,a,r?(0,ze._)`isFinite(${e})`:ze.nil)}}Dr.checkDataType=Xw;function Yw(t,e,r,n){if(t.length===1)return Xw(t[0],e,r,n);let i,s=(0,oP.toHash)(t);if(s.array&&s.object){let o=(0,ze._)`typeof ${e} != "object"`;i=s.null?o:(0,ze._)`!${e} || ${o}`,delete s.null,delete s.array,delete s.object}else i=ze.nil;s.number&&delete s.integer;for(let o in s)i=(0,ze.and)(i,Xw(o,e,r,n));return i}Dr.checkDataTypes=Yw;var fV={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,ze._)`{type: ${t}}`:(0,ze._)`{type: ${e}}`};function Qw(t){let e=mV(t);(0,aV.reportError)(e,fV)}Dr.reportTypeError=Qw;function mV(t){let{gen:e,data:r,schema:n}=t,i=(0,oP.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:i,schemaValue:i,parentSchema:n,params:{},it:t}}});var lP=$(Rh=>{"use strict";Object.defineProperty(Rh,"__esModule",{value:!0});Rh.assignDefaults=void 0;var xc=Ue(),hV=tt();function gV(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let i in r)uP(t,i,r[i].default);else e==="array"&&Array.isArray(n)&&n.forEach((i,s)=>uP(t,s,i.default))}Rh.assignDefaults=gV;function uP(t,e,r){let{gen:n,compositeRule:i,data:s,opts:o}=t;if(r===void 0)return;let a=(0,xc._)`${s}${(0,xc.getProperty)(e)}`;if(i){(0,hV.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,xc._)`${a} === undefined`;o.useDefaults==="empty"&&(c=(0,xc._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,xc._)`${a} = ${(0,xc.stringify)(r)}`)}});var Bn=$(gt=>{"use strict";Object.defineProperty(gt,"__esModule",{value:!0});gt.validateUnion=gt.validateArray=gt.usePattern=gt.callValidateCode=gt.schemaProperties=gt.allSchemaProperties=gt.noPropertyInData=gt.propertyInData=gt.isOwnProperty=gt.hasPropFunc=gt.reportMissingProp=gt.checkMissingProp=gt.checkReportMissingProp=void 0;var Nt=Ue(),e0=tt(),lo=Ss(),vV=tt();function yV(t,e){let{gen:r,data:n,it:i}=t;r.if(r0(r,n,e,i.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Nt._)`${e}`},!0),t.error()})}gt.checkReportMissingProp=yV;function _V({gen:t,data:e,it:{opts:r}},n,i){return(0,Nt.or)(...n.map(s=>(0,Nt.and)(r0(t,e,s,r.ownProperties),(0,Nt._)`${i} = ${s}`)))}gt.checkMissingProp=_V;function bV(t,e){t.setParams({missingProperty:e},!0),t.error()}gt.reportMissingProp=bV;function dP(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Nt._)`Object.prototype.hasOwnProperty`})}gt.hasPropFunc=dP;function t0(t,e,r){return(0,Nt._)`${dP(t)}.call(${e}, ${r})`}gt.isOwnProperty=t0;function SV(t,e,r,n){let i=(0,Nt._)`${e}${(0,Nt.getProperty)(r)} !== undefined`;return n?(0,Nt._)`${i} && ${t0(t,e,r)}`:i}gt.propertyInData=SV;function r0(t,e,r,n){let i=(0,Nt._)`${e}${(0,Nt.getProperty)(r)} === undefined`;return n?(0,Nt.or)(i,(0,Nt.not)(t0(t,e,r))):i}gt.noPropertyInData=r0;function pP(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}gt.allSchemaProperties=pP;function xV(t,e){return pP(e).filter(r=>!(0,e0.alwaysValidSchema)(t,e[r]))}gt.schemaProperties=xV;function wV({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:i,errorPath:s},it:o},a,c,u){let l=u?(0,Nt._)`${t}, ${e}, ${n}${i}`:e,d=[[lo.default.instancePath,(0,Nt.strConcat)(lo.default.instancePath,s)],[lo.default.parentData,o.parentData],[lo.default.parentDataProperty,o.parentDataProperty],[lo.default.rootData,lo.default.rootData]];o.opts.dynamicRef&&d.push([lo.default.dynamicAnchors,lo.default.dynamicAnchors]);let p=(0,Nt._)`${l}, ${r.object(...d)}`;return c!==Nt.nil?(0,Nt._)`${a}.call(${c}, ${p})`:(0,Nt._)`${a}(${p})`}gt.callValidateCode=wV;var EV=(0,Nt._)`new RegExp`;function kV({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:i}=e.code,s=i(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,Nt._)`${i.code==="new RegExp"?EV:(0,vV.useFunc)(t,i)}(${r}, ${n})`})}gt.usePattern=kV;function TV(t){let{gen:e,data:r,keyword:n,it:i}=t,s=e.name("valid");if(i.allErrors){let a=e.let("valid",!0);return o(()=>e.assign(a,!1)),a}return e.var(s,!0),o(()=>e.break()),s;function o(a){let c=e.const("len",(0,Nt._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:e0.Type.Num},s),e.if((0,Nt.not)(s),a)})}}gt.validateArray=TV;function $V(t){let{gen:e,schema:r,keyword:n,it:i}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,e0.alwaysValidSchema)(i,c))&&!i.opts.unevaluated)return;let o=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);e.assign(o,(0,Nt._)`${o} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,Nt.not)(o))})),t.result(o,()=>t.reset(),()=>t.error(!0))}gt.validateUnion=$V});var hP=$(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.validateKeywordUsage=zi.validSchemaType=zi.funcKeywordCode=zi.macroKeywordCode=void 0;var Xr=Ue(),ea=Ss(),IV=Bn(),RV=kd();function OV(t,e){let{gen:r,keyword:n,schema:i,parentSchema:s,it:o}=t,a=e.macro.call(o.self,i,s,o),c=mP(r,n,a);o.opts.validateSchema!==!1&&o.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Xr.nil,errSchemaPath:`${o.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}zi.macroKeywordCode=OV;function CV(t,e){var r;let{gen:n,keyword:i,schema:s,parentSchema:o,$data:a,it:c}=t;AV(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,o,c):e.validate,l=mP(n,i,u),d=n.let("valid");t.block$data(d,p),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function p(){if(e.errors===!1)h(),e.modifying&&fP(t),g(()=>t.error());else{let v=e.async?f():m();e.modifying&&fP(t),g(()=>PV(t,v))}}function f(){let v=n.let("ruleErrs",null);return n.try(()=>h((0,Xr._)`await `),y=>n.assign(d,!1).if((0,Xr._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(v,(0,Xr._)`${y}.errors`),()=>n.throw(y))),v}function m(){let v=(0,Xr._)`${l}.errors`;return n.assign(v,null),h(Xr.nil),v}function h(v=e.async?(0,Xr._)`await `:Xr.nil){let y=c.opts.passContext?ea.default.this:ea.default.self,b=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Xr._)`${v}${(0,IV.callValidateCode)(t,l,y,b)}`,e.modifying)}function g(v){var y;n.if((0,Xr.not)((y=e.valid)!==null&&y!==void 0?y:d),v)}}zi.funcKeywordCode=CV;function fP(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Xr._)`${n.parentData}[${n.parentDataProperty}]`))}function PV(t,e){let{gen:r}=t;r.if((0,Xr._)`Array.isArray(${e})`,()=>{r.assign(ea.default.vErrors,(0,Xr._)`${ea.default.vErrors} === null ? ${e} : ${ea.default.vErrors}.concat(${e})`).assign(ea.default.errors,(0,Xr._)`${ea.default.vErrors}.length`),(0,RV.extendErrors)(t)},()=>t.error())}function AV({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function mP(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Xr.stringify)(r)})}function NV(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}zi.validSchemaType=NV;function MV({schema:t,opts:e,self:r,errSchemaPath:n},i,s){if(Array.isArray(i.keyword)?!i.keyword.includes(s):i.keyword!==s)throw new Error("ajv implementation error");let o=i.dependencies;if(o?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${o.join(",")}`);if(i.validateSchema&&!i.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(i.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}zi.validateKeywordUsage=MV});var vP=$(po=>{"use strict";Object.defineProperty(po,"__esModule",{value:!0});po.extendSubschemaMode=po.extendSubschemaData=po.getSubschema=void 0;var Li=Ue(),gP=tt();function DV(t,{keyword:e,schemaProp:r,schema:n,schemaPath:i,errSchemaPath:s,topSchemaRef:o}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,Li._)`${t.schemaPath}${(0,Li.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,Li._)`${t.schemaPath}${(0,Li.getProperty)(e)}${(0,Li.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,gP.escapeFragment)(r)}`}}if(n!==void 0){if(i===void 0||s===void 0||o===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:i,topSchemaRef:o,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}po.getSubschema=DV;function jV(t,e,{dataProp:r,dataPropType:n,data:i,dataTypes:s,propertyName:o}){if(i!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,p=a.let("data",(0,Li._)`${e.data}${(0,Li.getProperty)(r)}`,!0);c(p),t.errorPath=(0,Li.str)`${u}${(0,gP.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Li._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(i!==void 0){let u=i instanceof Li.Name?i:a.let("data",i,!0);c(u),o!==void 0&&(t.propertyName=o)}s&&(t.dataTypes=s);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}po.extendSubschemaData=jV;function zV(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:i,allErrors:s}){n!==void 0&&(t.compositeRule=n),i!==void 0&&(t.createErrors=i),s!==void 0&&(t.allErrors=s),t.jtdDiscriminator=e,t.jtdMetadata=r}po.extendSubschemaMode=zV});var n0=$((YOe,yP)=>{"use strict";yP.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,i,s;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(i=n;i--!==0;)if(!t(e[i],r[i]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(s=Object.keys(e),n=s.length,n!==Object.keys(r).length)return!1;for(i=n;i--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[i]))return!1;for(i=n;i--!==0;){var o=s[i];if(!t(e[o],r[o]))return!1}return!0}return e!==e&&r!==r}});var bP=$((QOe,_P)=>{"use strict";var fo=_P.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},i=r.post||function(){};Oh(e,n,i,t,"",t)};fo.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};fo.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};fo.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};fo.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Oh(t,e,r,n,i,s,o,a,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,i,s,o,a,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in fo.arrayKeywords)for(var p=0;p{"use strict";Object.defineProperty(dn,"__esModule",{value:!0});dn.getSchemaRefs=dn.resolveUrl=dn.normalizeId=dn._getFullPath=dn.getFullPath=dn.inlineRef=void 0;var UV=tt(),FV=n0(),qV=bP(),HV=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function ZV(t,e=!0){return typeof t=="boolean"?!0:e===!0?!i0(t):e?SP(t)<=e:!1}dn.inlineRef=ZV;var BV=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function i0(t){for(let e in t){if(BV.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(i0)||typeof r=="object"&&i0(r))return!0}return!1}function SP(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!HV.has(r)&&(typeof t[r]=="object"&&(0,UV.eachItem)(t[r],n=>e+=SP(n)),e===1/0))return 1/0}return e}function xP(t,e="",r){r!==!1&&(e=wc(e));let n=t.parse(e);return wP(t,n)}dn.getFullPath=xP;function wP(t,e){return t.serialize(e).split("#")[0]+"#"}dn._getFullPath=wP;var GV=/#\/?$/;function wc(t){return t?t.replace(GV,""):""}dn.normalizeId=wc;function WV(t,e,r){return r=wc(r),t.resolve(e,r)}dn.resolveUrl=WV;var VV=/^[a-z_][-a-z0-9._]*$/i;function KV(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,i=wc(t[r]||e),s={"":i},o=xP(n,i,!1),a={},c=new Set;return qV(t,{allKeys:!0},(d,p,f,m)=>{if(m===void 0)return;let h=o+p,g=s[m];typeof d[r]=="string"&&(g=v.call(this,d[r])),y.call(this,d.$anchor),y.call(this,d.$dynamicAnchor),s[p]=g;function v(b){let S=this.opts.uriResolver.resolve;if(b=wc(g?S(g,b):b),c.has(b))throw l(b);c.add(b);let x=this.refs[b];return typeof x=="string"&&(x=this.refs[x]),typeof x=="object"?u(d,x.schema,b):b!==wc(h)&&(b[0]==="#"?(u(d,a[b],b),a[b]=d):this.refs[b]=h),b}function y(b){if(typeof b=="string"){if(!VV.test(b))throw new Error(`invalid anchor "${b}"`);v.call(this,`#${b}`)}}}),a;function u(d,p,f){if(p!==void 0&&!FV(d,p))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}dn.getSchemaRefs=KV});var Od=$(mo=>{"use strict";Object.defineProperty(mo,"__esModule",{value:!0});mo.getData=mo.KeywordCxt=mo.validateFunctionCode=void 0;var IP=nP(),EP=Td(),o0=Jw(),Ch=Td(),JV=lP(),Rd=hP(),s0=vP(),me=Ue(),Oe=Ss(),XV=$d(),xs=tt(),Id=kd();function YV(t){if(CP(t)&&(PP(t),OP(t))){t7(t);return}RP(t,()=>(0,IP.topBoolOrEmptySchema)(t))}mo.validateFunctionCode=YV;function RP({gen:t,validateName:e,schema:r,schemaEnv:n,opts:i},s){i.code.es5?t.func(e,(0,me._)`${Oe.default.data}, ${Oe.default.valCxt}`,n.$async,()=>{t.code((0,me._)`"use strict"; ${kP(r,i)}`),e7(t,i),t.code(s)}):t.func(e,(0,me._)`${Oe.default.data}, ${QV(i)}`,n.$async,()=>t.code(kP(r,i)).code(s))}function QV(t){return(0,me._)`{${Oe.default.instancePath}="", ${Oe.default.parentData}, ${Oe.default.parentDataProperty}, ${Oe.default.rootData}=${Oe.default.data}${t.dynamicRef?(0,me._)`, ${Oe.default.dynamicAnchors}={}`:me.nil}}={}`}function e7(t,e){t.if(Oe.default.valCxt,()=>{t.var(Oe.default.instancePath,(0,me._)`${Oe.default.valCxt}.${Oe.default.instancePath}`),t.var(Oe.default.parentData,(0,me._)`${Oe.default.valCxt}.${Oe.default.parentData}`),t.var(Oe.default.parentDataProperty,(0,me._)`${Oe.default.valCxt}.${Oe.default.parentDataProperty}`),t.var(Oe.default.rootData,(0,me._)`${Oe.default.valCxt}.${Oe.default.rootData}`),e.dynamicRef&&t.var(Oe.default.dynamicAnchors,(0,me._)`${Oe.default.valCxt}.${Oe.default.dynamicAnchors}`)},()=>{t.var(Oe.default.instancePath,(0,me._)`""`),t.var(Oe.default.parentData,(0,me._)`undefined`),t.var(Oe.default.parentDataProperty,(0,me._)`undefined`),t.var(Oe.default.rootData,Oe.default.data),e.dynamicRef&&t.var(Oe.default.dynamicAnchors,(0,me._)`{}`)})}function t7(t){let{schema:e,opts:r,gen:n}=t;RP(t,()=>{r.$comment&&e.$comment&&NP(t),o7(t),n.let(Oe.default.vErrors,null),n.let(Oe.default.errors,0),r.unevaluated&&r7(t),AP(t),u7(t)})}function r7(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,me._)`${r}.evaluated`),e.if((0,me._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,me._)`${t.evaluated}.props`,(0,me._)`undefined`)),e.if((0,me._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,me._)`${t.evaluated}.items`,(0,me._)`undefined`))}function kP(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,me._)`/*# sourceURL=${r} */`:me.nil}function n7(t,e){if(CP(t)&&(PP(t),OP(t))){i7(t,e);return}(0,IP.boolOrEmptySchema)(t,e)}function OP({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function CP(t){return typeof t.schema!="boolean"}function i7(t,e){let{schema:r,gen:n,opts:i}=t;i.$comment&&r.$comment&&NP(t),a7(t),c7(t);let s=n.const("_errs",Oe.default.errors);AP(t,s),n.var(e,(0,me._)`${s} === ${Oe.default.errors}`)}function PP(t){(0,xs.checkUnknownRules)(t),s7(t)}function AP(t,e){if(t.opts.jtd)return TP(t,[],!1,e);let r=(0,EP.getSchemaTypes)(t.schema),n=(0,EP.coerceAndCheckDataType)(t,r);TP(t,r,!n,e)}function s7(t){let{schema:e,errSchemaPath:r,opts:n,self:i}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,xs.schemaHasRulesButRef)(e,i.RULES)&&i.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function o7(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,xs.checkStrictMode)(t,"default is ignored in the schema root")}function a7(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,XV.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function c7(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function NP({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:i}){let s=r.$comment;if(i.$comment===!0)t.code((0,me._)`${Oe.default.self}.logger.log(${s})`);else if(typeof i.$comment=="function"){let o=(0,me.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,me._)`${Oe.default.self}.opts.$comment(${s}, ${o}, ${a}.schema)`)}}function u7(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:i,opts:s}=t;r.$async?e.if((0,me._)`${Oe.default.errors} === 0`,()=>e.return(Oe.default.data),()=>e.throw((0,me._)`new ${i}(${Oe.default.vErrors})`)):(e.assign((0,me._)`${n}.errors`,Oe.default.vErrors),s.unevaluated&&l7(t),e.return((0,me._)`${Oe.default.errors} === 0`))}function l7({gen:t,evaluated:e,props:r,items:n}){r instanceof me.Name&&t.assign((0,me._)`${e}.props`,r),n instanceof me.Name&&t.assign((0,me._)`${e}.items`,n)}function TP(t,e,r,n){let{gen:i,schema:s,data:o,allErrors:a,opts:c,self:u}=t,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,xs.schemaHasRulesButRef)(s,l))){i.block(()=>DP(t,"$ref",l.all.$ref.definition));return}c.jtd||d7(t,e),i.block(()=>{for(let p of l.rules)d(p);d(l.post)});function d(p){(0,o0.shouldUseGroup)(s,p)&&(p.type?(i.if((0,Ch.checkDataType)(p.type,o,c.strictNumbers)),$P(t,p),e.length===1&&e[0]===p.type&&r&&(i.else(),(0,Ch.reportTypeError)(t)),i.endIf()):$P(t,p),a||i.if((0,me._)`${Oe.default.errors} === ${n||0}`))}}function $P(t,e){let{gen:r,schema:n,opts:{useDefaults:i}}=t;i&&(0,JV.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,o0.shouldUseRule)(n,s)&&DP(t,s.keyword,s.definition,e.type)})}function d7(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(p7(t,e),t.opts.allowUnionTypes||f7(t,e),m7(t,t.dataTypes))}function p7(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{MP(t.dataTypes,r)||a0(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),g7(t,e)}}function f7(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&a0(t,"use allowUnionTypes to allow union type keyword")}function m7(t,e){let r=t.self.RULES.all;for(let n in r){let i=r[n];if(typeof i=="object"&&(0,o0.shouldUseRule)(t.schema,i)){let{type:s}=i.definition;s.length&&!s.some(o=>h7(e,o))&&a0(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function h7(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function MP(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function g7(t,e){let r=[];for(let n of t.dataTypes)MP(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function a0(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,xs.checkStrictMode)(t,e,t.opts.strictTypes)}var Ph=class{constructor(e,r,n){if((0,Rd.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,xs.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",jP(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Rd.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",Oe.default.errors))}result(e,r,n){this.failResult((0,me.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,me.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,me._)`${r} !== undefined && (${(0,me.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?Id.reportExtraError:Id.reportError)(this,this.def.error,r)}$dataError(){(0,Id.reportError)(this,this.def.$dataError||Id.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Id.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=me.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=me.nil,r=me.nil){if(!this.$data)return;let{gen:n,schemaCode:i,schemaType:s,def:o}=this;n.if((0,me.or)((0,me._)`${i} === undefined`,r)),e!==me.nil&&n.assign(e,!0),(s.length||o.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==me.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:i,it:s}=this;return(0,me.or)(o(),a());function o(){if(n.length){if(!(r instanceof me.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,me._)`${(0,Ch.checkDataTypes)(c,r,s.opts.strictNumbers,Ch.DataType.Wrong)}`}return me.nil}function a(){if(i.validateSchema){let c=e.scopeValue("validate$data",{ref:i.validateSchema});return(0,me._)`!${c}(${r})`}return me.nil}}subschema(e,r){let n=(0,s0.getSubschema)(this.it,e);(0,s0.extendSubschemaData)(n,this.it,e),(0,s0.extendSubschemaMode)(n,e);let i={...this.it,...n,items:void 0,props:void 0};return n7(i,r),i}mergeEvaluated(e,r){let{it:n,gen:i}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=xs.mergeEvaluated.props(i,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=xs.mergeEvaluated.items(i,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:i}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return i.if(r,()=>this.mergeEvaluated(e,me.Name)),!0}};mo.KeywordCxt=Ph;function DP(t,e,r,n){let i=new Ph(t,r,e);"code"in r?r.code(i,n):i.$data&&r.validate?(0,Rd.funcKeywordCode)(i,r):"macro"in r?(0,Rd.macroKeywordCode)(i,r):(r.compile||r.validate)&&(0,Rd.funcKeywordCode)(i,r)}var v7=/^\/(?:[^~]|~0|~1)*$/,y7=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function jP(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let i,s;if(t==="")return Oe.default.rootData;if(t[0]==="/"){if(!v7.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);i=t,s=Oe.default.rootData}else{let u=y7.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(i=u[2],i==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(s=r[e-l],!i)return s}let o=s,a=i.split("/");for(let u of a)u&&(s=(0,me._)`${s}${(0,me.getProperty)((0,xs.unescapeJsonPointer)(u))}`,o=(0,me._)`${o} && ${s}`);return o;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}mo.getData=jP});var Ah=$(u0=>{"use strict";Object.defineProperty(u0,"__esModule",{value:!0});var c0=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};u0.default=c0});var Cd=$(p0=>{"use strict";Object.defineProperty(p0,"__esModule",{value:!0});var l0=$d(),d0=class extends Error{constructor(e,r,n,i){super(i||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,l0.resolveUrl)(e,r,n),this.missingSchema=(0,l0.normalizeId)((0,l0.getFullPath)(e,this.missingRef))}};p0.default=d0});var Mh=$(Gn=>{"use strict";Object.defineProperty(Gn,"__esModule",{value:!0});Gn.resolveSchema=Gn.getCompilingSchema=Gn.resolveRef=Gn.compileSchema=Gn.SchemaEnv=void 0;var pi=Ue(),_7=Ah(),ta=Ss(),fi=$d(),zP=tt(),b7=Od(),Ec=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,fi.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};Gn.SchemaEnv=Ec;function m0(t){let e=LP.call(this,t);if(e)return e;let r=(0,fi.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:i}=this.opts.code,{ownProperties:s}=this.opts,o=new pi.CodeGen(this.scope,{es5:n,lines:i,ownProperties:s}),a;t.$async&&(a=o.scopeValue("Error",{ref:_7.default,code:(0,pi._)`require("ajv/dist/runtime/validation_error").default`}));let c=o.scopeName("validate");t.validateName=c;let u={gen:o,allErrors:this.opts.allErrors,data:ta.default.data,parentData:ta.default.parentData,parentDataProperty:ta.default.parentDataProperty,dataNames:[ta.default.data],dataPathArr:[pi.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:o.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,pi.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:pi.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,pi._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,b7.validateFunctionCode)(u),o.optimize(this.opts.code.optimize);let d=o.toString();l=`${o.scopeRefs(ta.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let f=new Function(`${ta.default.self}`,`${ta.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:f}),f.errors=null,f.schema=t.schema,f.schemaEnv=t,t.$async&&(f.$async=!0),this.opts.code.source===!0&&(f.source={validateName:c,validateCode:d,scopeValues:o._values}),this.opts.unevaluated){let{props:m,items:h}=u;f.evaluated={props:m instanceof pi.Name?void 0:m,items:h instanceof pi.Name?void 0:h,dynamicProps:m instanceof pi.Name,dynamicItems:h instanceof pi.Name},f.source&&(f.source.evaluated=(0,pi.stringify)(f.evaluated))}return t.validate=f,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}Gn.compileSchema=m0;function S7(t,e,r){var n;r=(0,fi.resolveUrl)(this.opts.uriResolver,e,r);let i=t.refs[r];if(i)return i;let s=E7.call(this,t,r);if(s===void 0){let o=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;o&&(s=new Ec({schema:o,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=x7.call(this,s)}Gn.resolveRef=S7;function x7(t){return(0,fi.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:m0.call(this,t)}function LP(t){for(let e of this._compilations)if(w7(e,t))return e}Gn.getCompilingSchema=LP;function w7(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function E7(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Nh.call(this,t,e)}function Nh(t,e){let r=this.opts.uriResolver.parse(e),n=(0,fi._getFullPath)(this.opts.uriResolver,r),i=(0,fi.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===i)return f0.call(this,r,t);let s=(0,fi.normalizeId)(n),o=this.refs[s]||this.schemas[s];if(typeof o=="string"){let a=Nh.call(this,t,o);return typeof a?.schema!="object"?void 0:f0.call(this,r,a)}if(typeof o?.schema=="object"){if(o.validate||m0.call(this,o),s===(0,fi.normalizeId)(e)){let{schema:a}=o,{schemaId:c}=this.opts,u=a[c];return u&&(i=(0,fi.resolveUrl)(this.opts.uriResolver,i,u)),new Ec({schema:a,schemaId:c,root:t,baseId:i})}return f0.call(this,r,o)}}Gn.resolveSchema=Nh;var k7=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function f0(t,{baseId:e,schema:r,root:n}){var i;if(((i=t.fragment)===null||i===void 0?void 0:i[0])!=="/")return;for(let a of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,zP.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!k7.has(a)&&u&&(e=(0,fi.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,zP.schemaHasRulesButRef)(r,this.RULES)){let a=(0,fi.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Nh.call(this,n,a)}let{schemaId:o}=this.opts;if(s=s||new Ec({schema:r,schemaId:o,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var UP=$((s1e,T7)=>{T7.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var g0=$((o1e,ZP)=>{"use strict";var $7=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),qP=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function h0(t){let e="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var I7=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function FP(t){return t.length=0,!0}function R7(t,e,r){if(t.length){let n=h0(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function O7(t){let e=0,r={error:!1,address:"",zone:""},n=[],i=[],s=!1,o=!1,a=R7;for(let c=0;c7){r.error=!0;break}c>0&&t[c-1]===":"&&(s=!0),n.push(":");continue}else if(u==="%"){if(!a(i,n,r))break;a=FP}else{i.push(u);continue}}return i.length&&(a===FP?r.zone=i.join(""):o?n.push(i.join("")):n.push(h0(i))),r.address=n.join(""),r}function HP(t){if(C7(t,":")<2)return{host:t,isIPV6:!1};let e=O7(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function C7(t,e){let r=0;for(let n=0;n{"use strict";var{isUUID:M7}=g0(),D7=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,j7=["http","https","ws","wss","urn","urn:uuid"];function z7(t){return j7.indexOf(t)!==-1}function v0(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function BP(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function GP(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function L7(t){return t.secure=v0(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function U7(t){if((t.port===(v0(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function F7(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(D7);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let i=`${n}:${e.nid||t.nid}`,s=y0(i);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function q7(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),i=`${r}:${e.nid||n}`,s=y0(i);s&&(t=s.serialize(t,e));let o=t,a=t.nss;return o.path=`${n||e.nid}:${a}`,e.skipEscape=!0,o}function H7(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!M7(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function Z7(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var WP={scheme:"http",domainHost:!0,parse:BP,serialize:GP},B7={scheme:"https",domainHost:WP.domainHost,parse:BP,serialize:GP},Dh={scheme:"ws",domainHost:!0,parse:L7,serialize:U7},G7={scheme:"wss",domainHost:Dh.domainHost,parse:Dh.parse,serialize:Dh.serialize},W7={scheme:"urn",parse:F7,serialize:q7,skipNormalize:!0},V7={scheme:"urn:uuid",parse:H7,serialize:Z7,skipNormalize:!0},jh={http:WP,https:B7,ws:Dh,wss:G7,urn:W7,"urn:uuid":V7};Object.setPrototypeOf(jh,null);function y0(t){return t&&(jh[t]||jh[t.toLowerCase()])||void 0}VP.exports={wsIsSecure:v0,SCHEMES:jh,isValidSchemeName:z7,getSchemeHandler:y0}});var YP=$((c1e,Lh)=>{"use strict";var{normalizeIPv6:K7,removeDotSegments:Pd,recomposeAuthority:J7,normalizeComponentEncoding:zh,isIPv4:X7,nonSimpleDomain:Y7}=g0(),{SCHEMES:Q7,getSchemeHandler:JP}=KP();function eK(t,e){return typeof t=="string"?t=Ui(ws(t,e),e):typeof t=="object"&&(t=ws(Ui(t,e),e)),t}function tK(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},i=XP(ws(t,n),ws(e,n),n,!0);return n.skipEscape=!0,Ui(i,n)}function XP(t,e,r,n){let i={};return n||(t=ws(Ui(t,r),r),e=ws(Ui(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(i.scheme=e.scheme,i.userinfo=e.userinfo,i.host=e.host,i.port=e.port,i.path=Pd(e.path||""),i.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(i.userinfo=e.userinfo,i.host=e.host,i.port=e.port,i.path=Pd(e.path||""),i.query=e.query):(e.path?(e.path[0]==="/"?i.path=Pd(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?i.path="/"+e.path:t.path?i.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:i.path=e.path,i.path=Pd(i.path)),i.query=e.query):(i.path=t.path,e.query!==void 0?i.query=e.query:i.query=t.query),i.userinfo=t.userinfo,i.host=t.host,i.port=t.port),i.scheme=t.scheme),i.fragment=e.fragment,i}function rK(t,e,r){return typeof t=="string"?(t=unescape(t),t=Ui(zh(ws(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Ui(zh(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Ui(zh(ws(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Ui(zh(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Ui(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),i=[],s=JP(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&i.push(r.scheme,":");let o=J7(r);if(o!==void 0&&(n.reference!=="suffix"&&i.push("//"),i.push(o),r.path&&r.path[0]!=="/"&&i.push("/")),r.path!==void 0){let a=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(a=Pd(a)),o===void 0&&a[0]==="/"&&a[1]==="/"&&(a="/%2F"+a.slice(2)),i.push(a)}return r.query!==void 0&&i.push("?",r.query),r.fragment!==void 0&&i.push("#",r.fragment),i.join("")}var nK=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function ws(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},i=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let s=t.match(nK);if(s){if(n.scheme=s[1],n.userinfo=s[3],n.host=s[4],n.port=parseInt(s[5],10),n.path=s[6]||"",n.query=s[7],n.fragment=s[8],isNaN(n.port)&&(n.port=s[5]),n.host)if(X7(n.host)===!1){let c=K7(n.host);n.host=c.host.toLowerCase(),i=c.isIPV6}else i=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let o=JP(r.scheme||n.scheme);if(!r.unicodeSupport&&(!o||!o.unicodeSupport)&&n.host&&(r.domainHost||o&&o.domainHost)&&i===!1&&Y7(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(a){n.error=n.error||"Host's domain name can not be converted to ASCII: "+a}(!o||o&&!o.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),o&&o.parse&&o.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var _0={SCHEMES:Q7,normalize:eK,resolve:tK,resolveComponent:XP,equal:rK,serialize:Ui,parse:ws};Lh.exports=_0;Lh.exports.default=_0;Lh.exports.fastUri=_0});var eA=$(b0=>{"use strict";Object.defineProperty(b0,"__esModule",{value:!0});var QP=YP();QP.code='require("ajv/dist/runtime/uri").default';b0.default=QP});var cA=$(kr=>{"use strict";Object.defineProperty(kr,"__esModule",{value:!0});kr.CodeGen=kr.Name=kr.nil=kr.stringify=kr.str=kr._=kr.KeywordCxt=void 0;var iK=Od();Object.defineProperty(kr,"KeywordCxt",{enumerable:!0,get:function(){return iK.KeywordCxt}});var kc=Ue();Object.defineProperty(kr,"_",{enumerable:!0,get:function(){return kc._}});Object.defineProperty(kr,"str",{enumerable:!0,get:function(){return kc.str}});Object.defineProperty(kr,"stringify",{enumerable:!0,get:function(){return kc.stringify}});Object.defineProperty(kr,"nil",{enumerable:!0,get:function(){return kc.nil}});Object.defineProperty(kr,"Name",{enumerable:!0,get:function(){return kc.Name}});Object.defineProperty(kr,"CodeGen",{enumerable:!0,get:function(){return kc.CodeGen}});var sK=Ah(),sA=Cd(),oK=Kw(),Ad=Mh(),aK=Ue(),Nd=$d(),Uh=Td(),x0=tt(),tA=UP(),cK=eA(),oA=(t,e)=>new RegExp(t,e);oA.code="new RegExp";var uK=["removeAdditional","useDefaults","coerceTypes"],lK=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),dK={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},pK={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},rA=200;function fK(t){var e,r,n,i,s,o,a,c,u,l,d,p,f,m,h,g,v,y,b,S,x,w,E,T,I;let A=t.strict,N=(e=t.code)===null||e===void 0?void 0:e.optimize,U=N===!0||N===void 0?1:N||0,V=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:oA,j=(i=t.uriResolver)!==null&&i!==void 0?i:cK.default;return{strictSchema:(o=(s=t.strictSchema)!==null&&s!==void 0?s:A)!==null&&o!==void 0?o:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:A)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:A)!==null&&l!==void 0?l:"log",strictTuples:(p=(d=t.strictTuples)!==null&&d!==void 0?d:A)!==null&&p!==void 0?p:"log",strictRequired:(m=(f=t.strictRequired)!==null&&f!==void 0?f:A)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:U,regExp:V}:{optimize:U,regExp:V},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:rA,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:rA,meta:(v=t.meta)!==null&&v!==void 0?v:!0,messages:(y=t.messages)!==null&&y!==void 0?y:!0,inlineRefs:(b=t.inlineRefs)!==null&&b!==void 0?b:!0,schemaId:(S=t.schemaId)!==null&&S!==void 0?S:"$id",addUsedSchema:(x=t.addUsedSchema)!==null&&x!==void 0?x:!0,validateSchema:(w=t.validateSchema)!==null&&w!==void 0?w:!0,validateFormats:(E=t.validateFormats)!==null&&E!==void 0?E:!0,unicodeRegExp:(T=t.unicodeRegExp)!==null&&T!==void 0?T:!0,int32range:(I=t.int32range)!==null&&I!==void 0?I:!0,uriResolver:j}}var Md=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...fK(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new aK.ValueScope({scope:{},prefixes:lK,es5:r,lines:n}),this.logger=_K(e.logger);let i=e.validateFormats;e.validateFormats=!1,this.RULES=(0,oK.getRules)(),nA.call(this,dK,e,"NOT SUPPORTED"),nA.call(this,pK,e,"DEPRECATED","warn"),this._metaOpts=vK.call(this),e.formats&&hK.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&gK.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),mK.call(this),e.validateFormats=i}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,i=tA;n==="id"&&(i={...tA},i.id=i.$id,delete i.$id),r&&e&&this.addMetaSchema(i,i[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let i=n(r);return"$async"in n||(this.errors=n.errors),i}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return i.call(this,e,r);async function i(l,d){await s.call(this,l.$schema);let p=this._addSchema(l,d);return p.validate||o.call(this,p)}async function s(l){l&&!this.getSchema(l)&&await i.call(this,{$ref:l},!0)}async function o(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof sA.default))throw d;return a.call(this,d),await c.call(this,d.missingSchema),o.call(this,l)}}function a({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await s.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,i=this.opts.validateSchema){if(Array.isArray(e)){for(let o of e)this.addSchema(o,void 0,n,i);return this}let s;if(typeof e=="object"){let{schemaId:o}=this.opts;if(s=e[o],s!==void 0&&typeof s!="string")throw new Error(`schema ${o} must be string`)}return r=(0,Nd.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,i,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let i=this.validate(n,e);if(!i&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return i}getSchema(e){let r;for(;typeof(r=iA.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,i=new Ad.SchemaEnv({schema:{},schemaId:n});if(r=Ad.resolveSchema.call(this,i,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=iA.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,Nd.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(SK.call(this,n,r),!r)return(0,x0.eachItem)(n,s=>S0.call(this,s)),this;wK.call(this,r);let i={...r,type:(0,Uh.getJSONTypes)(r.type),schemaType:(0,Uh.getJSONTypes)(r.schemaType)};return(0,x0.eachItem)(n,i.type.length===0?s=>S0.call(this,s,i):s=>i.type.forEach(o=>S0.call(this,s,i,o))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let i=n.rules.findIndex(s=>s.keyword===e);i>=0&&n.rules.splice(i,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(i=>`${n}${i.instancePath} ${i.message}`).reduce((i,s)=>i+r+s)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let i of r){let s=i.split("/").slice(1),o=e;for(let a of s)o=o[a];for(let a in n){let c=n[a];if(typeof c!="object")continue;let{$data:u}=c.definition,l=o[a];u&&l&&(o[a]=aA(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let i=e[n];(!r||r.test(n))&&(typeof i=="string"?delete e[n]:i&&!i.meta&&(this._cache.delete(i.schema),delete e[n]))}}_addSchema(e,r,n,i=this.opts.validateSchema,s=this.opts.addUsedSchema){let o,{schemaId:a}=this.opts;if(typeof e=="object")o=e[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,Nd.normalizeId)(o||n);let u=Nd.getSchemaRefs.call(this,e,n);return c=new Ad.SchemaEnv({schema:e,schemaId:a,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),i&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):Ad.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{Ad.compileSchema.call(this,e)}finally{this.opts=r}}};Md.ValidationError=sK.default;Md.MissingRefError=sA.default;kr.default=Md;function nA(t,e,r,n="error"){for(let i in t){let s=i;s in e&&this.logger[n](`${r}: option ${i}. ${t[s]}`)}}function iA(t){return t=(0,Nd.normalizeId)(t),this.schemas[t]||this.refs[t]}function mK(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function hK(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function gK(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function vK(){let t={...this.opts};for(let e of uK)delete t[e];return t}var yK={log(){},warn(){},error(){}};function _K(t){if(t===!1)return yK;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var bK=/^[a-z_$][a-z0-9_$:-]*$/i;function SK(t,e){let{RULES:r}=this;if((0,x0.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!bK.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function S0(t,e,r){var n;let i=e?.post;if(r&&i)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,o=i?s.post:s.rules.find(({type:c})=>c===r);if(o||(o={type:r,rules:[]},s.rules.push(o)),s.keywords[t]=!0,!e)return;let a={keyword:t,definition:{...e,type:(0,Uh.getJSONTypes)(e.type),schemaType:(0,Uh.getJSONTypes)(e.schemaType)}};e.before?xK.call(this,o,a,e.before):o.rules.push(a),s.all[t]=a,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function xK(t,e,r){let n=t.rules.findIndex(i=>i.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function wK(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=aA(e)),t.validateSchema=this.compile(e,!0))}var EK={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function aA(t){return{anyOf:[t,EK]}}});var uA=$(w0=>{"use strict";Object.defineProperty(w0,"__esModule",{value:!0});var kK={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};w0.default=kK});var fA=$(ra=>{"use strict";Object.defineProperty(ra,"__esModule",{value:!0});ra.callRef=ra.getValidate=void 0;var TK=Cd(),lA=Bn(),pn=Ue(),Tc=Ss(),dA=Mh(),Fh=tt(),$K={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:i,schemaEnv:s,validateName:o,opts:a,self:c}=n,{root:u}=s;if((r==="#"||r==="#/")&&i===u.baseId)return d();let l=dA.resolveRef.call(c,u,i,r);if(l===void 0)throw new TK.default(n.opts.uriResolver,i,r);if(l instanceof dA.SchemaEnv)return p(l);return f(l);function d(){if(s===u)return qh(t,o,s,s.$async);let m=e.scopeValue("root",{ref:u});return qh(t,(0,pn._)`${m}.validate`,u,u.$async)}function p(m){let h=pA(t,m);qh(t,h,m,m.$async)}function f(m){let h=e.scopeValue("schema",a.code.source===!0?{ref:m,code:(0,pn.stringify)(m)}:{ref:m}),g=e.name("valid"),v=t.subschema({schema:m,dataTypes:[],schemaPath:pn.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(v),t.ok(g)}}};function pA(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,pn._)`${r.scopeValue("wrapper",{ref:e})}.validate`}ra.getValidate=pA;function qh(t,e,r,n){let{gen:i,it:s}=t,{allErrors:o,schemaEnv:a,opts:c}=s,u=c.passContext?Tc.default.this:pn.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let m=i.let("valid");i.try(()=>{i.code((0,pn._)`await ${(0,lA.callValidateCode)(t,e,u)}`),f(e),o||i.assign(m,!0)},h=>{i.if((0,pn._)`!(${h} instanceof ${s.ValidationError})`,()=>i.throw(h)),p(h),o||i.assign(m,!1)}),t.ok(m)}function d(){t.result((0,lA.callValidateCode)(t,e,u),()=>f(e),()=>p(e))}function p(m){let h=(0,pn._)`${m}.errors`;i.assign(Tc.default.vErrors,(0,pn._)`${Tc.default.vErrors} === null ? ${h} : ${Tc.default.vErrors}.concat(${h})`),i.assign(Tc.default.errors,(0,pn._)`${Tc.default.vErrors}.length`)}function f(m){var h;if(!s.opts.unevaluated)return;let g=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=Fh.mergeEvaluated.props(i,g.props,s.props));else{let v=i.var("props",(0,pn._)`${m}.evaluated.props`);s.props=Fh.mergeEvaluated.props(i,v,s.props,pn.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Fh.mergeEvaluated.items(i,g.items,s.items));else{let v=i.var("items",(0,pn._)`${m}.evaluated.items`);s.items=Fh.mergeEvaluated.items(i,v,s.items,pn.Name)}}}ra.callRef=qh;ra.default=$K});var mA=$(E0=>{"use strict";Object.defineProperty(E0,"__esModule",{value:!0});var IK=uA(),RK=fA(),OK=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",IK.default,RK.default];E0.default=OK});var hA=$(k0=>{"use strict";Object.defineProperty(k0,"__esModule",{value:!0});var Hh=Ue(),ho=Hh.operators,Zh={maximum:{okStr:"<=",ok:ho.LTE,fail:ho.GT},minimum:{okStr:">=",ok:ho.GTE,fail:ho.LT},exclusiveMaximum:{okStr:"<",ok:ho.LT,fail:ho.GTE},exclusiveMinimum:{okStr:">",ok:ho.GT,fail:ho.LTE}},CK={message:({keyword:t,schemaCode:e})=>(0,Hh.str)`must be ${Zh[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Hh._)`{comparison: ${Zh[t].okStr}, limit: ${e}}`},PK={keyword:Object.keys(Zh),type:"number",schemaType:"number",$data:!0,error:CK,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Hh._)`${r} ${Zh[e].fail} ${n} || isNaN(${r})`)}};k0.default=PK});var gA=$(T0=>{"use strict";Object.defineProperty(T0,"__esModule",{value:!0});var Dd=Ue(),AK={message:({schemaCode:t})=>(0,Dd.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Dd._)`{multipleOf: ${t}}`},NK={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:AK,code(t){let{gen:e,data:r,schemaCode:n,it:i}=t,s=i.opts.multipleOfPrecision,o=e.let("res"),a=s?(0,Dd._)`Math.abs(Math.round(${o}) - ${o}) > 1e-${s}`:(0,Dd._)`${o} !== parseInt(${o})`;t.fail$data((0,Dd._)`(${n} === 0 || (${o} = ${r}/${n}, ${a}))`)}};T0.default=NK});var yA=$($0=>{"use strict";Object.defineProperty($0,"__esModule",{value:!0});function vA(t){let e=t.length,r=0,n=0,i;for(;n=55296&&i<=56319&&n{"use strict";Object.defineProperty(I0,"__esModule",{value:!0});var na=Ue(),MK=tt(),DK=yA(),jK={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,na.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,na._)`{limit: ${t}}`},zK={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:jK,code(t){let{keyword:e,data:r,schemaCode:n,it:i}=t,s=e==="maxLength"?na.operators.GT:na.operators.LT,o=i.opts.unicode===!1?(0,na._)`${r}.length`:(0,na._)`${(0,MK.useFunc)(t.gen,DK.default)}(${r})`;t.fail$data((0,na._)`${o} ${s} ${n}`)}};I0.default=zK});var bA=$(R0=>{"use strict";Object.defineProperty(R0,"__esModule",{value:!0});var LK=Bn(),UK=tt(),$c=Ue(),FK={message:({schemaCode:t})=>(0,$c.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,$c._)`{pattern: ${t}}`},qK={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:FK,code(t){let{gen:e,data:r,$data:n,schema:i,schemaCode:s,it:o}=t,a=o.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=o.opts.code,u=c.code==="new RegExp"?(0,$c._)`new RegExp`:(0,UK.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,$c._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,$c._)`!${l}`)}else{let c=(0,LK.usePattern)(t,i);t.fail$data((0,$c._)`!${c}.test(${r})`)}}};R0.default=qK});var SA=$(O0=>{"use strict";Object.defineProperty(O0,"__esModule",{value:!0});var jd=Ue(),HK={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,jd.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,jd._)`{limit: ${t}}`},ZK={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:HK,code(t){let{keyword:e,data:r,schemaCode:n}=t,i=e==="maxProperties"?jd.operators.GT:jd.operators.LT;t.fail$data((0,jd._)`Object.keys(${r}).length ${i} ${n}`)}};O0.default=ZK});var xA=$(C0=>{"use strict";Object.defineProperty(C0,"__esModule",{value:!0});var zd=Bn(),Ld=Ue(),BK=tt(),GK={message:({params:{missingProperty:t}})=>(0,Ld.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Ld._)`{missingProperty: ${t}}`},WK={keyword:"required",type:"object",schemaType:"array",$data:!0,error:GK,code(t){let{gen:e,schema:r,schemaCode:n,data:i,$data:s,it:o}=t,{opts:a}=o;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(o.allErrors?u():l(),a.strictRequired){let f=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(f?.[h]===void 0&&!m.has(h)){let g=o.schemaEnv.baseId+o.errSchemaPath,v=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,BK.checkStrictMode)(o,v,o.opts.strictRequired)}}function u(){if(c||s)t.block$data(Ld.nil,d);else for(let f of r)(0,zd.checkReportMissingProp)(t,f)}function l(){let f=e.let("missing");if(c||s){let m=e.let("valid",!0);t.block$data(m,()=>p(f,m)),t.ok(m)}else e.if((0,zd.checkMissingProp)(t,r,f)),(0,zd.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,zd.noPropertyInData)(e,i,f,a.ownProperties),()=>t.error())})}function p(f,m){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(m,(0,zd.propertyInData)(e,i,f,a.ownProperties)),e.if((0,Ld.not)(m),()=>{t.error(),e.break()})},Ld.nil)}}};C0.default=WK});var wA=$(P0=>{"use strict";Object.defineProperty(P0,"__esModule",{value:!0});var Ud=Ue(),VK={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Ud.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Ud._)`{limit: ${t}}`},KK={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:VK,code(t){let{keyword:e,data:r,schemaCode:n}=t,i=e==="maxItems"?Ud.operators.GT:Ud.operators.LT;t.fail$data((0,Ud._)`${r}.length ${i} ${n}`)}};P0.default=KK});var Bh=$(A0=>{"use strict";Object.defineProperty(A0,"__esModule",{value:!0});var EA=n0();EA.code='require("ajv/dist/runtime/equal").default';A0.default=EA});var kA=$(M0=>{"use strict";Object.defineProperty(M0,"__esModule",{value:!0});var N0=Td(),Tr=Ue(),JK=tt(),XK=Bh(),YK={message:({params:{i:t,j:e}})=>(0,Tr.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Tr._)`{i: ${t}, j: ${e}}`},QK={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:YK,code(t){let{gen:e,data:r,$data:n,schema:i,parentSchema:s,schemaCode:o,it:a}=t;if(!n&&!i)return;let c=e.let("valid"),u=s.items?(0,N0.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Tr._)`${o} === false`),t.ok(c);function l(){let m=e.let("i",(0,Tr._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,Tr._)`${m} > 1`,()=>(d()?p:f)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function p(m,h){let g=e.name("item"),v=(0,N0.checkDataTypes)(u,g,a.opts.strictNumbers,N0.DataType.Wrong),y=e.const("indices",(0,Tr._)`{}`);e.for((0,Tr._)`;${m}--;`,()=>{e.let(g,(0,Tr._)`${r}[${m}]`),e.if(v,(0,Tr._)`continue`),u.length>1&&e.if((0,Tr._)`typeof ${g} == "string"`,(0,Tr._)`${g} += "_"`),e.if((0,Tr._)`typeof ${y}[${g}] == "number"`,()=>{e.assign(h,(0,Tr._)`${y}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Tr._)`${y}[${g}] = ${m}`)})}function f(m,h){let g=(0,JK.useFunc)(e,XK.default),v=e.name("outer");e.label(v).for((0,Tr._)`;${m}--;`,()=>e.for((0,Tr._)`${h} = ${m}; ${h}--;`,()=>e.if((0,Tr._)`${g}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(v)})))}}};M0.default=QK});var TA=$(j0=>{"use strict";Object.defineProperty(j0,"__esModule",{value:!0});var D0=Ue(),eJ=tt(),tJ=Bh(),rJ={message:"must be equal to constant",params:({schemaCode:t})=>(0,D0._)`{allowedValue: ${t}}`},nJ={keyword:"const",$data:!0,error:rJ,code(t){let{gen:e,data:r,$data:n,schemaCode:i,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,D0._)`!${(0,eJ.useFunc)(e,tJ.default)}(${r}, ${i})`):t.fail((0,D0._)`${s} !== ${r}`)}};j0.default=nJ});var $A=$(z0=>{"use strict";Object.defineProperty(z0,"__esModule",{value:!0});var Fd=Ue(),iJ=tt(),sJ=Bh(),oJ={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Fd._)`{allowedValues: ${t}}`},aJ={keyword:"enum",schemaType:"array",$data:!0,error:oJ,code(t){let{gen:e,data:r,$data:n,schema:i,schemaCode:s,it:o}=t;if(!n&&i.length===0)throw new Error("enum must have non-empty array");let a=i.length>=o.opts.loopEnum,c,u=()=>c??(c=(0,iJ.useFunc)(e,sJ.default)),l;if(a||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(i))throw new Error("ajv implementation error");let f=e.const("vSchema",s);l=(0,Fd.or)(...i.map((m,h)=>p(f,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,f=>e.if((0,Fd._)`${u()}(${r}, ${f})`,()=>e.assign(l,!0).break()))}function p(f,m){let h=i[m];return typeof h=="object"&&h!==null?(0,Fd._)`${u()}(${r}, ${f}[${m}])`:(0,Fd._)`${r} === ${h}`}}};z0.default=aJ});var IA=$(L0=>{"use strict";Object.defineProperty(L0,"__esModule",{value:!0});var cJ=hA(),uJ=gA(),lJ=_A(),dJ=bA(),pJ=SA(),fJ=xA(),mJ=wA(),hJ=kA(),gJ=TA(),vJ=$A(),yJ=[cJ.default,uJ.default,lJ.default,dJ.default,pJ.default,fJ.default,mJ.default,hJ.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},gJ.default,vJ.default];L0.default=yJ});var F0=$(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});qd.validateAdditionalItems=void 0;var ia=Ue(),U0=tt(),_J={message:({params:{len:t}})=>(0,ia.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,ia._)`{limit: ${t}}`},bJ={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:_J,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,U0.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}RA(t,n)}};function RA(t,e){let{gen:r,schema:n,data:i,keyword:s,it:o}=t;o.items=!0;let a=r.const("len",(0,ia._)`${i}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,ia._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,U0.alwaysValidSchema)(o,n)){let u=r.var("valid",(0,ia._)`${a} <= ${e.length}`);r.if((0,ia.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:U0.Type.Num},u),o.allErrors||r.if((0,ia.not)(u),()=>r.break())})}}qd.validateAdditionalItems=RA;qd.default=bJ});var q0=$(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});Hd.validateTuple=void 0;var OA=Ue(),Gh=tt(),SJ=Bn(),xJ={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return CA(t,"additionalItems",e);r.items=!0,!(0,Gh.alwaysValidSchema)(r,e)&&t.ok((0,SJ.validateArray)(t))}};function CA(t,e,r=t.schema){let{gen:n,parentSchema:i,data:s,keyword:o,it:a}=t;l(i),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=Gh.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,OA._)`${s}.length`);r.forEach((d,p)=>{(0,Gh.alwaysValidSchema)(a,d)||(n.if((0,OA._)`${u} > ${p}`,()=>t.subschema({keyword:o,schemaProp:p,dataProp:p},c)),t.ok(c))});function l(d){let{opts:p,errSchemaPath:f}=a,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(p.strictTuples&&!h){let g=`"${o}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${f}"`;(0,Gh.checkStrictMode)(a,g,p.strictTuples)}}}Hd.validateTuple=CA;Hd.default=xJ});var PA=$(H0=>{"use strict";Object.defineProperty(H0,"__esModule",{value:!0});var wJ=q0(),EJ={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,wJ.validateTuple)(t,"items")};H0.default=EJ});var NA=$(Z0=>{"use strict";Object.defineProperty(Z0,"__esModule",{value:!0});var AA=Ue(),kJ=tt(),TJ=Bn(),$J=F0(),IJ={message:({params:{len:t}})=>(0,AA.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,AA._)`{limit: ${t}}`},RJ={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:IJ,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:i}=r;n.items=!0,!(0,kJ.alwaysValidSchema)(n,e)&&(i?(0,$J.validateAdditionalItems)(t,i):t.ok((0,TJ.validateArray)(t)))}};Z0.default=RJ});var MA=$(B0=>{"use strict";Object.defineProperty(B0,"__esModule",{value:!0});var Wn=Ue(),Wh=tt(),OJ={message:({params:{min:t,max:e}})=>e===void 0?(0,Wn.str)`must contain at least ${t} valid item(s)`:(0,Wn.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,Wn._)`{minContains: ${t}}`:(0,Wn._)`{minContains: ${t}, maxContains: ${e}}`},CJ={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:OJ,code(t){let{gen:e,schema:r,parentSchema:n,data:i,it:s}=t,o,a,{minContains:c,maxContains:u}=n;s.opts.next?(o=c===void 0?1:c,a=u):o=1;let l=e.const("len",(0,Wn._)`${i}.length`);if(t.setParams({min:o,max:a}),a===void 0&&o===0){(0,Wh.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&o>a){(0,Wh.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Wh.alwaysValidSchema)(s,r)){let h=(0,Wn._)`${l} >= ${o}`;a!==void 0&&(h=(0,Wn._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&o===1?f(d,()=>e.if(d,()=>e.break())):o===0?(e.let(d,!0),a!==void 0&&e.if((0,Wn._)`${i}.length > 0`,p)):(e.let(d,!1),p()),t.result(d,()=>t.reset());function p(){let h=e.name("_valid"),g=e.let("count",0);f(h,()=>e.if(h,()=>m(g)))}function f(h,g){e.forRange("i",0,l,v=>{t.subschema({keyword:"contains",dataProp:v,dataPropType:Wh.Type.Num,compositeRule:!0},h),g()})}function m(h){e.code((0,Wn._)`${h}++`),a===void 0?e.if((0,Wn._)`${h} >= ${o}`,()=>e.assign(d,!0).break()):(e.if((0,Wn._)`${h} > ${a}`,()=>e.assign(d,!1).break()),o===1?e.assign(d,!0):e.if((0,Wn._)`${h} >= ${o}`,()=>e.assign(d,!0)))}}};B0.default=CJ});var zA=$(Fi=>{"use strict";Object.defineProperty(Fi,"__esModule",{value:!0});Fi.validateSchemaDeps=Fi.validatePropertyDeps=Fi.error=void 0;var G0=Ue(),PJ=tt(),Zd=Bn();Fi.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,G0.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,G0._)`{property: ${t}, missingProperty: ${n}, depsCount: ${e}, - deps: ${r}}`};var dJ={keyword:"dependencies",type:"object",schemaType:"object",error:Di.error,code(t){let[e,r]=pJ(t);dA(t,e),pA(t,r)}};function pJ({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let i=Array.isArray(t[n])?e:r;i[n]=t[n]}return[e,r]}function dA(t,e=t.schema){let{gen:r,data:n,it:i}=t;if(Object.keys(e).length===0)return;let s=r.let("missing");for(let o in e){let a=e[o];if(a.length===0)continue;let c=(0,Pd.propertyInData)(r,n,o,i.opts.ownProperties);t.setParams({property:o,depsCount:a.length,deps:a.join(", ")}),i.allErrors?r.if(c,()=>{for(let u of a)(0,Pd.checkReportMissingProp)(t,u)}):(r.if((0,P0._)`${c} && (${(0,Pd.checkMissingProp)(t,a,s)})`),(0,Pd.reportMissingProp)(t,s),r.else())}}Di.validatePropertyDeps=dA;function pA(t,e=t.schema){let{gen:r,data:n,keyword:i,it:s}=t,o=r.name("valid");for(let a in e)(0,lJ.alwaysValidSchema)(s,e[a])||(r.if((0,Pd.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:i,schemaProp:a},o);t.mergeValidEvaluated(c,o)},()=>r.var(o,!0)),t.ok(o))}Di.validateSchemaDeps=pA;Di.default=dJ});var hA=$(A0=>{"use strict";Object.defineProperty(A0,"__esModule",{value:!0});var mA=Ue(),fJ=st(),mJ={message:"property name must be valid",params:({params:t})=>(0,mA._)`{propertyName: ${t.propertyName}}`},hJ={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:mJ,code(t){let{gen:e,schema:r,data:n,it:i}=t;if((0,fJ.alwaysValidSchema)(i,r))return;let s=e.name("valid");e.forIn("key",n,o=>{t.setParams({propertyName:o}),t.subschema({keyword:"propertyNames",data:o,dataTypes:["string"],propertyName:o,compositeRule:!0},s),e.if((0,mA.not)(s),()=>{t.error(!0),i.allErrors||e.break()})}),t.ok(s)}};A0.default=hJ});var M0=$(N0=>{"use strict";Object.defineProperty(N0,"__esModule",{value:!0});var Ah=Fn(),li=Ue(),gJ=gs(),Nh=st(),vJ={message:"must NOT have additional properties",params:({params:t})=>(0,li._)`{additionalProperty: ${t.additionalProperty}}`},yJ={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:vJ,code(t){let{gen:e,schema:r,parentSchema:n,data:i,errsCount:s,it:o}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=o;if(o.props=!0,c.removeAdditional!=="all"&&(0,Nh.alwaysValidSchema)(o,r))return;let u=(0,Ah.allSchemaProperties)(n.properties),l=(0,Ah.allSchemaProperties)(n.patternProperties);d(),t.ok((0,li._)`${s} === ${gJ.default.errors}`);function d(){e.forIn("key",i,g=>{!u.length&&!l.length?m(g):e.if(p(g),()=>m(g))})}function p(g){let v;if(u.length>8){let S=(0,Nh.schemaRefOrVal)(o,n.properties,"properties");v=(0,Ah.isOwnProperty)(e,S,g)}else u.length?v=(0,li.or)(...u.map(S=>(0,li._)`${g} === ${S}`)):v=li.nil;return l.length&&(v=(0,li.or)(v,...l.map(S=>(0,li._)`${(0,Ah.usePattern)(t,S)}.test(${g})`))),(0,li.not)(v)}function f(g){e.code((0,li._)`delete ${i}[${g}]`)}function m(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){f(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,Nh.alwaysValidSchema)(o,r)){let v=e.name("valid");c.removeAdditional==="failing"?(h(g,v,!1),e.if((0,li.not)(v),()=>{t.reset(),f(g)})):(h(g,v),a||e.if((0,li.not)(v),()=>e.break()))}}function h(g,v,S){let b={keyword:"additionalProperties",dataProp:g,dataPropType:Nh.Type.Str};S===!1&&Object.assign(b,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(b,v)}}};N0.default=yJ});var yA=$(j0=>{"use strict";Object.defineProperty(j0,"__esModule",{value:!0});var _J=yd(),gA=Fn(),D0=st(),vA=M0(),bJ={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:i,it:s}=t;s.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&vA.default.code(new _J.KeywordCxt(s,vA.default,"additionalProperties"));let o=(0,gA.allSchemaProperties)(r);for(let d of o)s.definedProperties.add(d);s.opts.unevaluated&&o.length&&s.props!==!0&&(s.props=D0.mergeEvaluated.props(e,(0,D0.toHash)(o),s.props));let a=o.filter(d=>!(0,D0.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let c=e.name("valid");for(let d of a)u(d)?l(d):(e.if((0,gA.propertyInData)(e,i,d,s.opts.ownProperties)),l(d),s.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};j0.default=bJ});var xA=$(z0=>{"use strict";Object.defineProperty(z0,"__esModule",{value:!0});var _A=Fn(),Mh=Ue(),bA=st(),SA=st(),SJ={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:i,it:s}=t,{opts:o}=s,a=(0,_A.allSchemaProperties)(r),c=a.filter(h=>(0,bA.alwaysValidSchema)(s,r[h]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=o.strictSchema&&!o.allowMatchingProperties&&i.properties,l=e.name("valid");s.props!==!0&&!(s.props instanceof Mh.Name)&&(s.props=(0,SA.evaluatedPropsToName)(e,s.props));let{props:d}=s;p();function p(){for(let h of a)u&&f(h),s.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function f(h){for(let g in u)new RegExp(h).test(g)&&(0,bA.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,g=>{e.if((0,Mh._)`${(0,_A.usePattern)(t,h)}.test(${g})`,()=>{let v=c.includes(h);v||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:SA.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,Mh._)`${d}[${g}]`,!0):!v&&!s.allErrors&&e.if((0,Mh.not)(l),()=>e.break())})})}}};z0.default=SJ});var wA=$(L0=>{"use strict";Object.defineProperty(L0,"__esModule",{value:!0});var xJ=st(),wJ={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,xJ.alwaysValidSchema)(n,r)){t.fail();return}let i=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},i),t.failResult(i,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};L0.default=wJ});var EA=$(U0=>{"use strict";Object.defineProperty(U0,"__esModule",{value:!0});var EJ=Fn(),kJ={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:EJ.validateUnion,error:{message:"must match a schema in anyOf"}};U0.default=kJ});var kA=$(F0=>{"use strict";Object.defineProperty(F0,"__esModule",{value:!0});var Dh=Ue(),TJ=st(),$J={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Dh._)`{passingSchemas: ${t.passing}}`},IJ={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:$J,code(t){let{gen:e,schema:r,parentSchema:n,it:i}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(i.opts.discriminator&&n.discriminator)return;let s=r,o=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(o,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let p;(0,TJ.alwaysValidSchema)(i,l)?e.var(c,!0):p=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Dh._)`${c} && ${o}`).assign(o,!1).assign(a,(0,Dh._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(o,!0),e.assign(a,d),p&&t.mergeEvaluated(p,Dh.Name)})})}}};F0.default=IJ});var TA=$(q0=>{"use strict";Object.defineProperty(q0,"__esModule",{value:!0});var RJ=st(),OJ={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let i=e.name("valid");r.forEach((s,o)=>{if((0,RJ.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:o},i);t.ok(i),t.mergeEvaluated(a)})}};q0.default=OJ});var RA=$(H0=>{"use strict";Object.defineProperty(H0,"__esModule",{value:!0});var jh=Ue(),IA=st(),CJ={message:({params:t})=>(0,jh.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,jh._)`{failingKeyword: ${t.ifClause}}`},PJ={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:CJ,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,IA.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let i=$A(n,"then"),s=$A(n,"else");if(!i&&!s)return;let o=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),i&&s){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(a,u("then",l),u("else",l))}else i?e.if(a,u("then")):e.if((0,jh.not)(a),u("else"));t.pass(o,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let p=t.subschema({keyword:l},a);e.assign(o,a),t.mergeValidEvaluated(p,o),d?e.assign(d,(0,jh._)`${l}`):t.setParams({ifClause:l})}}}};function $A(t,e){let r=t.schema[e];return r!==void 0&&!(0,IA.alwaysValidSchema)(t,r)}H0.default=PJ});var OA=$(Z0=>{"use strict";Object.defineProperty(Z0,"__esModule",{value:!0});var AJ=st(),NJ={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,AJ.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Z0.default=NJ});var CA=$(B0=>{"use strict";Object.defineProperty(B0,"__esModule",{value:!0});var MJ=$0(),DJ=aA(),jJ=I0(),zJ=uA(),LJ=lA(),UJ=fA(),FJ=hA(),qJ=M0(),HJ=yA(),ZJ=xA(),BJ=wA(),GJ=EA(),WJ=kA(),VJ=TA(),KJ=RA(),JJ=OA();function XJ(t=!1){let e=[BJ.default,GJ.default,WJ.default,VJ.default,KJ.default,JJ.default,FJ.default,qJ.default,UJ.default,HJ.default,ZJ.default];return t?e.push(DJ.default,zJ.default):e.push(MJ.default,jJ.default),e.push(LJ.default),e}B0.default=XJ});var PA=$(G0=>{"use strict";Object.defineProperty(G0,"__esModule",{value:!0});var Jt=Ue(),YJ={message:({schemaCode:t})=>(0,Jt.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Jt._)`{format: ${t}}`},QJ={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:YJ,code(t,e){let{gen:r,data:n,$data:i,schema:s,schemaCode:o,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;i?p():f();function p(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,Jt._)`${m}[${o}]`),g=r.let("fType"),v=r.let("format");r.if((0,Jt._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,Jt._)`${h}.type || "string"`).assign(v,(0,Jt._)`${h}.validate`),()=>r.assign(g,(0,Jt._)`"string"`).assign(v,h)),t.fail$data((0,Jt.or)(S(),b()));function S(){return c.strictSchema===!1?Jt.nil:(0,Jt._)`${o} && !${v}`}function b(){let y=l.$async?(0,Jt._)`(${h}.async ? await ${v}(${n}) : ${v}(${n}))`:(0,Jt._)`${v}(${n})`,x=(0,Jt._)`(typeof ${v} == "function" ? ${y} : ${v}.test(${n}))`;return(0,Jt._)`${v} && ${v} !== true && ${g} === ${e} && !${x}`}}function f(){let m=d.formats[s];if(!m){S();return}if(m===!0)return;let[h,g,v]=b(m);h===e&&t.pass(y());function S(){if(c.strictSchema===!1){d.logger.warn(x());return}throw new Error(x());function x(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function b(x){let w=x instanceof RegExp?(0,Jt.regexpCode)(x):c.code.formats?(0,Jt._)`${c.code.formats}${(0,Jt.getProperty)(s)}`:void 0,E=r.scopeValue("formats",{key:s,ref:x,code:w});return typeof x=="object"&&!(x instanceof RegExp)?[x.type||"string",x.validate,(0,Jt._)`${E}.validate`]:["string",x,E]}function y(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Jt._)`await ${v}(${n})`}return typeof g=="function"?(0,Jt._)`${v}(${n})`:(0,Jt._)`${v}.test(${n})`}}}};G0.default=QJ});var AA=$(W0=>{"use strict";Object.defineProperty(W0,"__esModule",{value:!0});var eX=PA(),tX=[eX.default];W0.default=tX});var NA=$(yc=>{"use strict";Object.defineProperty(yc,"__esModule",{value:!0});yc.contentVocabulary=yc.metadataVocabulary=void 0;yc.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];yc.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var DA=$(V0=>{"use strict";Object.defineProperty(V0,"__esModule",{value:!0});var rX=HP(),nX=nA(),iX=CA(),sX=AA(),MA=NA(),oX=[rX.default,nX.default,(0,iX.default)(),sX.default,MA.metadataVocabulary,MA.contentVocabulary];V0.default=oX});var zA=$(zh=>{"use strict";Object.defineProperty(zh,"__esModule",{value:!0});zh.DiscrError=void 0;var jA;(function(t){t.Tag="tag",t.Mapping="mapping"})(jA||(zh.DiscrError=jA={}))});var UA=$(J0=>{"use strict";Object.defineProperty(J0,"__esModule",{value:!0});var _c=Ue(),K0=zA(),LA=_h(),aX=_d(),cX=st(),uX={message:({params:{discrError:t,tagName:e}})=>t===K0.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,_c._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},lX={keyword:"discriminator",type:"object",schemaType:"object",error:uX,code(t){let{gen:e,data:r,schema:n,parentSchema:i,it:s}=t,{oneOf:o}=i;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!o)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,_c._)`${r}${(0,_c.getProperty)(a)}`);e.if((0,_c._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:K0.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let f=p();e.if(!1);for(let m in f)e.elseIf((0,_c._)`${u} === ${m}`),e.assign(c,d(f[m]));e.else(),t.error(!1,{discrError:K0.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(f){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:f},m);return t.mergeEvaluated(h,_c.Name),m}function p(){var f;let m={},h=v(i),g=!0;for(let y=0;y{dX.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var Y0=$((Pt,X0)=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:!0});Pt.MissingRefError=Pt.ValidationError=Pt.CodeGen=Pt.Name=Pt.nil=Pt.stringify=Pt.str=Pt._=Pt.KeywordCxt=Pt.Ajv=void 0;var pX=jP(),fX=DA(),mX=UA(),qA=FA(),hX=["/properties"],Lh="http://json-schema.org/draft-07/schema",bc=class extends pX.default{_addVocabularies(){super._addVocabularies(),fX.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(mX.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(qA,hX):qA;this.addMetaSchema(e,Lh,!1),this.refs["http://json-schema.org/schema"]=Lh}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Lh)?Lh:void 0)}};Pt.Ajv=bc;X0.exports=Pt=bc;X0.exports.Ajv=bc;Object.defineProperty(Pt,"__esModule",{value:!0});Pt.default=bc;var gX=yd();Object.defineProperty(Pt,"KeywordCxt",{enumerable:!0,get:function(){return gX.KeywordCxt}});var Sc=Ue();Object.defineProperty(Pt,"_",{enumerable:!0,get:function(){return Sc._}});Object.defineProperty(Pt,"str",{enumerable:!0,get:function(){return Sc.str}});Object.defineProperty(Pt,"stringify",{enumerable:!0,get:function(){return Sc.stringify}});Object.defineProperty(Pt,"nil",{enumerable:!0,get:function(){return Sc.nil}});Object.defineProperty(Pt,"Name",{enumerable:!0,get:function(){return Sc.Name}});Object.defineProperty(Pt,"CodeGen",{enumerable:!0,get:function(){return Sc.CodeGen}});var vX=vh();Object.defineProperty(Pt,"ValidationError",{enumerable:!0,get:function(){return vX.default}});var yX=_d();Object.defineProperty(Pt,"MissingRefError",{enumerable:!0,get:function(){return yX.default}})});var JA=$(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.formatNames=zi.fastFormats=zi.fullFormats=void 0;function ji(t,e){return{validate:t,compare:e}}zi.fullFormats={date:ji(GA,rE),time:ji(eE(!0),nE),"date-time":ji(HA(!0),VA),"iso-time":ji(eE(),WA),"iso-date-time":ji(HA(),KA),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:EX,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:CX,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:kX,int32:{type:"number",validate:IX},int64:{type:"number",validate:RX},float:{type:"number",validate:BA},double:{type:"number",validate:BA},password:!0,binary:!0};zi.fastFormats={...zi.fullFormats,date:ji(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,rE),time:ji(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,nE),"date-time":ji(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,VA),"iso-time":ji(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,WA),"iso-date-time":ji(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,KA),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};zi.formatNames=Object.keys(zi.fullFormats);function _X(t){return t%4===0&&(t%100!==0||t%400===0)}var bX=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,SX=[0,31,28,31,30,31,30,31,31,30,31,30,31];function GA(t){let e=bX.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],i=+e[3];return n>=1&&n<=12&&i>=1&&i<=(n===2&&_X(r)?29:SX[n])}function rE(t,e){if(t&&e)return t>e?1:t23||l>59||t&&!a)return!1;if(i<=23&&s<=59&&o<60)return!0;let d=s-l*c,p=i-u*c-(d<0?1:0);return(p===23||p===-1)&&(d===59||d===-1)&&o<61}}function nE(t,e){if(!(t&&e))return;let r=new Date("2020-01-01T"+t).valueOf(),n=new Date("2020-01-01T"+e).valueOf();if(r&&n)return r-n}function WA(t,e){if(!(t&&e))return;let r=Q0.exec(t),n=Q0.exec(e);if(r&&n)return t=r[1]+r[2]+r[3],e=n[1]+n[2]+n[3],t>e?1:t=TX}function RX(t){return Number.isInteger(t)}function BA(){return!0}var OX=/[^\\]\\Z/;function CX(t){if(OX.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var XA=$(xc=>{"use strict";Object.defineProperty(xc,"__esModule",{value:!0});xc.formatLimitDefinition=void 0;var PX=Y0(),di=Ue(),so=di.operators,Uh={formatMaximum:{okStr:"<=",ok:so.LTE,fail:so.GT},formatMinimum:{okStr:">=",ok:so.GTE,fail:so.LT},formatExclusiveMaximum:{okStr:"<",ok:so.LT,fail:so.GTE},formatExclusiveMinimum:{okStr:">",ok:so.GT,fail:so.LTE}},AX={message:({keyword:t,schemaCode:e})=>(0,di.str)`should be ${Uh[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,di._)`{comparison: ${Uh[t].okStr}, limit: ${e}}`};xc.formatLimitDefinition={keyword:Object.keys(Uh),type:"string",schemaType:"string",$data:!0,error:AX,code(t){let{gen:e,data:r,schemaCode:n,keyword:i,it:s}=t,{opts:o,self:a}=s;if(!o.validateFormats)return;let c=new PX.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let p=e.scopeValue("formats",{ref:a.formats,code:o.code.formats}),f=e.const("fmt",(0,di._)`${p}[${c.schemaCode}]`);t.fail$data((0,di.or)((0,di._)`typeof ${f} != "object"`,(0,di._)`${f} instanceof RegExp`,(0,di._)`typeof ${f}.compare != "function"`,d(f)))}function l(){let p=c.schema,f=a.formats[p];if(!f||f===!0)return;if(typeof f!="object"||f instanceof RegExp||typeof f.compare!="function")throw new Error(`"${i}": format "${p}" does not define "compare" function`);let m=e.scopeValue("formats",{key:p,ref:f,code:o.code.formats?(0,di._)`${o.code.formats}${(0,di.getProperty)(p)}`:void 0});t.fail$data(d(m))}function d(p){return(0,di._)`${p}.compare(${r}, ${n}) ${Uh[i].fail} 0`}},dependencies:["format"]};var NX=t=>(t.addKeyword(xc.formatLimitDefinition),t);xc.default=NX});var tN=$((Ad,eN)=>{"use strict";Object.defineProperty(Ad,"__esModule",{value:!0});var wc=JA(),MX=XA(),iE=Ue(),YA=new iE.Name("fullFormats"),DX=new iE.Name("fastFormats"),sE=(t,e={keywords:!0})=>{if(Array.isArray(e))return QA(t,e,wc.fullFormats,YA),t;let[r,n]=e.mode==="fast"?[wc.fastFormats,DX]:[wc.fullFormats,YA],i=e.formats||wc.formatNames;return QA(t,i,r,n),e.keywords&&(0,MX.default)(t),t};sE.get=(t,e="full")=>{let n=(e==="fast"?wc.fastFormats:wc.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function QA(t,e,r,n){var i,s;(i=(s=t.opts.code).formats)!==null&&i!==void 0||(s.formats=(0,iE._)`require("ajv-formats/dist/formats").${n}`);for(let o of e)t.addFormat(o,r[o])}eN.exports=Ad=sE;Object.defineProperty(Ad,"__esModule",{value:!0});Ad.default=sE});var lN=$((IOe,uN)=>{uN.exports=cN;cN.sync=UX;var oN=require("fs");function LX(t,e){var r=e.pathExt!==void 0?e.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var n=0;n{mN.exports=pN;pN.sync=FX;var dN=require("fs");function pN(t,e,r){dN.stat(t,function(n,i){r(n,n?!1:fN(i,e))})}function FX(t,e){return fN(dN.statSync(t),e)}function fN(t,e){return t.isFile()&&qX(t,e)}function qX(t,e){var r=t.mode,n=t.uid,i=t.gid,s=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),o=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),a=parseInt("100",8),c=parseInt("010",8),u=parseInt("001",8),l=a|c,d=r&u||r&c&&i===o||r&a&&n===s||r&l&&s===0;return d}});var vN=$((COe,gN)=>{var OOe=require("fs"),Zh;process.platform==="win32"||global.TESTING_WINDOWS?Zh=lN():Zh=hN();gN.exports=oE;oE.sync=HX;function oE(t,e,r){if(typeof e=="function"&&(r=e,e={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(n,i){oE(t,e||{},function(s,o){s?i(s):n(o)})})}Zh(t,e||{},function(n,i){n&&(n.code==="EACCES"||e&&e.ignoreErrors)&&(n=null,i=!1),r(n,i)})}function HX(t,e){try{return Zh.sync(t,e||{})}catch(r){if(e&&e.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var EN=$((POe,wN)=>{var kc=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",yN=require("path"),ZX=kc?";":":",_N=vN(),bN=t=>Object.assign(new Error(`not found: ${t}`),{code:"ENOENT"}),SN=(t,e)=>{let r=e.colon||ZX,n=t.match(/\//)||kc&&t.match(/\\/)?[""]:[...kc?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(r)],i=kc?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",s=kc?i.split(r):[""];return kc&&t.indexOf(".")!==-1&&s[0]!==""&&s.unshift(""),{pathEnv:n,pathExt:s,pathExtExe:i}},xN=(t,e,r)=>{typeof e=="function"&&(r=e,e={}),e||(e={});let{pathEnv:n,pathExt:i,pathExtExe:s}=SN(t,e),o=[],a=u=>new Promise((l,d)=>{if(u===n.length)return e.all&&o.length?l(o):d(bN(t));let p=n[u],f=/^".*"$/.test(p)?p.slice(1,-1):p,m=yN.join(f,t),h=!f&&/^\.[\\\/]/.test(t)?t.slice(0,2)+m:m;l(c(h,u,0))}),c=(u,l,d)=>new Promise((p,f)=>{if(d===i.length)return p(a(l+1));let m=i[d];_N(u+m,{pathExt:s},(h,g)=>{if(!h&&g)if(e.all)o.push(u+m);else return p(u+m);return p(c(u,l,d+1))})});return r?a(0).then(u=>r(null,u),r):a(0)},BX=(t,e)=>{e=e||{};let{pathEnv:r,pathExt:n,pathExtExe:i}=SN(t,e),s=[];for(let o=0;o{"use strict";var kN=(t={})=>{let e=t.env||process.env;return(t.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};aE.exports=kN;aE.exports.default=kN});var ON=$((NOe,RN)=>{"use strict";var $N=require("path"),GX=EN(),WX=TN();function IN(t,e){let r=t.options.env||process.env,n=process.cwd(),i=t.options.cwd!=null,s=i&&process.chdir!==void 0&&!process.chdir.disabled;if(s)try{process.chdir(t.options.cwd)}catch{}let o;try{o=GX.sync(t.command,{path:r[WX({env:r})],pathExt:e?$N.delimiter:void 0})}catch{}finally{s&&process.chdir(n)}return o&&(o=$N.resolve(i?t.options.cwd:"",o)),o}function VX(t){return IN(t)||IN(t,!0)}RN.exports=VX});var CN=$((MOe,uE)=>{"use strict";var cE=/([()\][%!^"`<>&|;, *?])/g;function KX(t){return t=t.replace(cE,"^$1"),t}function JX(t,e){return t=`${t}`,t=t.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),t=t.replace(/(?=(\\+?)?)\1$/,"$1$1"),t=`"${t}"`,t=t.replace(cE,"^$1"),e&&(t=t.replace(cE,"^$1")),t}uE.exports.command=KX;uE.exports.argument=JX});var AN=$((DOe,PN)=>{"use strict";PN.exports=/^#!(.*)/});var MN=$((jOe,NN)=>{"use strict";var XX=AN();NN.exports=(t="")=>{let e=t.match(XX);if(!e)return null;let[r,n]=e[0].replace(/#! ?/,"").split(" "),i=r.split("/").pop();return i==="env"?n:n?`${i} ${n}`:i}});var jN=$((zOe,DN)=>{"use strict";var lE=require("fs"),YX=MN();function QX(t){let r=Buffer.alloc(150),n;try{n=lE.openSync(t,"r"),lE.readSync(n,r,0,150,0),lE.closeSync(n)}catch{}return YX(r.toString())}DN.exports=QX});var FN=$((LOe,UN)=>{"use strict";var eY=require("path"),zN=ON(),LN=CN(),tY=jN(),rY=process.platform==="win32",nY=/\.(?:com|exe)$/i,iY=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function sY(t){t.file=zN(t);let e=t.file&&tY(t.file);return e?(t.args.unshift(t.file),t.command=e,zN(t)):t.file}function oY(t){if(!rY)return t;let e=sY(t),r=!nY.test(e);if(t.options.forceShell||r){let n=iY.test(e);t.command=eY.normalize(t.command),t.command=LN.command(t.command),t.args=t.args.map(s=>LN.argument(s,n));let i=[t.command].concat(t.args).join(" ");t.args=["/d","/s","/c",`"${i}"`],t.command=process.env.comspec||"cmd.exe",t.options.windowsVerbatimArguments=!0}return t}function aY(t,e,r){e&&!Array.isArray(e)&&(r=e,e=null),e=e?e.slice(0):[],r=Object.assign({},r);let n={command:t,args:e,options:r,file:void 0,original:{command:t,args:e}};return r.shell?n:oY(n)}UN.exports=aY});var ZN=$((UOe,HN)=>{"use strict";var dE=process.platform==="win32";function pE(t,e){return Object.assign(new Error(`${e} ${t.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${e} ${t.command}`,path:t.command,spawnargs:t.args})}function cY(t,e){if(!dE)return;let r=t.emit;t.emit=function(n,i){if(n==="exit"){let s=qN(i,e);if(s)return r.call(t,"error",s)}return r.apply(t,arguments)}}function qN(t,e){return dE&&t===1&&!e.file?pE(e.original,"spawn"):null}function uY(t,e){return dE&&t===1&&!e.file?pE(e.original,"spawnSync"):null}HN.exports={hookChildProcess:cY,verifyENOENT:qN,verifyENOENTSync:uY,notFoundError:pE}});var WN=$((FOe,Tc)=>{"use strict";var BN=require("child_process"),fE=FN(),mE=ZN();function GN(t,e,r){let n=fE(t,e,r),i=BN.spawn(n.command,n.args,n.options);return mE.hookChildProcess(i,n),i}function lY(t,e,r){let n=fE(t,e,r),i=BN.spawnSync(n.command,n.args,n.options);return i.error=i.error||mE.verifyENOENTSync(i.status,n),i}Tc.exports=GN;Tc.exports.spawn=GN;Tc.exports.sync=lY;Tc.exports._parse=fE;Tc.exports._enoent=mE});var _s,Md,YN,hE,XN,gE,_,re=Oe(()=>{"use strict";_s=require("fs"),Md=require("path"),YN=require("os"),hE=(s=>(s[s.DEBUG=0]="DEBUG",s[s.INFO=1]="INFO",s[s.WARN=2]="WARN",s[s.ERROR=3]="ERROR",s[s.SILENT=4]="SILENT",s))(hE||{}),XN=(0,Md.join)((0,YN.homedir)(),".claude-mem"),gE=class{level=null;useColor;logFilePath=null;logFileInitialized=!1;constructor(){this.useColor=process.stdout.isTTY??!1}ensureLogFileInitialized(){if(!this.logFileInitialized){this.logFileInitialized=!0;try{let e=(0,Md.join)(XN,"logs");(0,_s.existsSync)(e)||(0,_s.mkdirSync)(e,{recursive:!0});let r=new Date().toISOString().split("T")[0];this.logFilePath=(0,Md.join)(e,`claude-mem-${r}.log`)}catch(e){console.error("[LOGGER] Failed to initialize log file:",e),this.logFilePath=null}}}getLevel(){if(this.level===null)try{let e=(0,Md.join)(XN,"settings.json");if((0,_s.existsSync)(e)){let r=(0,_s.readFileSync)(e,"utf-8"),i=(JSON.parse(r).CLAUDE_MEM_LOG_LEVEL||"INFO").toUpperCase();this.level=hE[i]??1}else this.level=1}catch{this.level=1}return this.level}correlationId(e,r){return`obs-${e}-${r}`}sessionId(e){return`session-${e}`}formatData(e){if(e==null)return"";if(typeof e=="string")return e;if(typeof e=="number"||typeof e=="boolean")return e.toString();if(typeof e=="object"){if(e instanceof Error)return this.getLevel()===0?`${e.message} -${e.stack}`:e.message;if(Array.isArray(e))return`[${e.length} items]`;let r=Object.keys(e);return r.length===0?"{}":r.length<=3?JSON.stringify(e):`{${r.length} keys: ${r.slice(0,3).join(", ")}...}`}return String(e)}formatTool(e,r){if(!r)return e;let n=r;if(typeof r=="string")try{n=JSON.parse(r)}catch{n=r}if(e==="Bash"&&n.command)return`${e}(${n.command})`;if(n.file_path)return`${e}(${n.file_path})`;if(n.notebook_path)return`${e}(${n.notebook_path})`;if(e==="Glob"&&n.pattern)return`${e}(${n.pattern})`;if(e==="Grep"&&n.pattern)return`${e}(${n.pattern})`;if(n.url)return`${e}(${n.url})`;if(n.query)return`${e}(${n.query})`;if(e==="Task"){if(n.subagent_type)return`${e}(${n.subagent_type})`;if(n.description)return`${e}(${n.description})`}return e==="Skill"&&n.skill?`${e}(${n.skill})`:e==="LSP"&&n.operation?`${e}(${n.operation})`:e}formatTimestamp(e){let r=e.getFullYear(),n=String(e.getMonth()+1).padStart(2,"0"),i=String(e.getDate()).padStart(2,"0"),s=String(e.getHours()).padStart(2,"0"),o=String(e.getMinutes()).padStart(2,"0"),a=String(e.getSeconds()).padStart(2,"0"),c=String(e.getMilliseconds()).padStart(3,"0");return`${r}-${n}-${i} ${s}:${o}:${a}.${c}`}log(e,r,n,i,s){if(e{for(let u of a)(0,Zd.checkReportMissingProp)(t,u)}):(r.if((0,G0._)`${c} && (${(0,Zd.checkMissingProp)(t,a,s)})`),(0,Zd.reportMissingProp)(t,s),r.else())}}Fi.validatePropertyDeps=DA;function jA(t,e=t.schema){let{gen:r,data:n,keyword:i,it:s}=t,o=r.name("valid");for(let a in e)(0,PJ.alwaysValidSchema)(s,e[a])||(r.if((0,Zd.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:i,schemaProp:a},o);t.mergeValidEvaluated(c,o)},()=>r.var(o,!0)),t.ok(o))}Fi.validateSchemaDeps=jA;Fi.default=AJ});var UA=$(W0=>{"use strict";Object.defineProperty(W0,"__esModule",{value:!0});var LA=Ue(),MJ=tt(),DJ={message:"property name must be valid",params:({params:t})=>(0,LA._)`{propertyName: ${t.propertyName}}`},jJ={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:DJ,code(t){let{gen:e,schema:r,data:n,it:i}=t;if((0,MJ.alwaysValidSchema)(i,r))return;let s=e.name("valid");e.forIn("key",n,o=>{t.setParams({propertyName:o}),t.subschema({keyword:"propertyNames",data:o,dataTypes:["string"],propertyName:o,compositeRule:!0},s),e.if((0,LA.not)(s),()=>{t.error(!0),i.allErrors||e.break()})}),t.ok(s)}};W0.default=jJ});var K0=$(V0=>{"use strict";Object.defineProperty(V0,"__esModule",{value:!0});var Vh=Bn(),mi=Ue(),zJ=Ss(),Kh=tt(),LJ={message:"must NOT have additional properties",params:({params:t})=>(0,mi._)`{additionalProperty: ${t.additionalProperty}}`},UJ={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:LJ,code(t){let{gen:e,schema:r,parentSchema:n,data:i,errsCount:s,it:o}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=o;if(o.props=!0,c.removeAdditional!=="all"&&(0,Kh.alwaysValidSchema)(o,r))return;let u=(0,Vh.allSchemaProperties)(n.properties),l=(0,Vh.allSchemaProperties)(n.patternProperties);d(),t.ok((0,mi._)`${s} === ${zJ.default.errors}`);function d(){e.forIn("key",i,g=>{!u.length&&!l.length?m(g):e.if(p(g),()=>m(g))})}function p(g){let v;if(u.length>8){let y=(0,Kh.schemaRefOrVal)(o,n.properties,"properties");v=(0,Vh.isOwnProperty)(e,y,g)}else u.length?v=(0,mi.or)(...u.map(y=>(0,mi._)`${g} === ${y}`)):v=mi.nil;return l.length&&(v=(0,mi.or)(v,...l.map(y=>(0,mi._)`${(0,Vh.usePattern)(t,y)}.test(${g})`))),(0,mi.not)(v)}function f(g){e.code((0,mi._)`delete ${i}[${g}]`)}function m(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){f(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,Kh.alwaysValidSchema)(o,r)){let v=e.name("valid");c.removeAdditional==="failing"?(h(g,v,!1),e.if((0,mi.not)(v),()=>{t.reset(),f(g)})):(h(g,v),a||e.if((0,mi.not)(v),()=>e.break()))}}function h(g,v,y){let b={keyword:"additionalProperties",dataProp:g,dataPropType:Kh.Type.Str};y===!1&&Object.assign(b,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(b,v)}}};V0.default=UJ});var HA=$(X0=>{"use strict";Object.defineProperty(X0,"__esModule",{value:!0});var FJ=Od(),FA=Bn(),J0=tt(),qA=K0(),qJ={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:i,it:s}=t;s.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&qA.default.code(new FJ.KeywordCxt(s,qA.default,"additionalProperties"));let o=(0,FA.allSchemaProperties)(r);for(let d of o)s.definedProperties.add(d);s.opts.unevaluated&&o.length&&s.props!==!0&&(s.props=J0.mergeEvaluated.props(e,(0,J0.toHash)(o),s.props));let a=o.filter(d=>!(0,J0.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let c=e.name("valid");for(let d of a)u(d)?l(d):(e.if((0,FA.propertyInData)(e,i,d,s.opts.ownProperties)),l(d),s.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};X0.default=qJ});var WA=$(Y0=>{"use strict";Object.defineProperty(Y0,"__esModule",{value:!0});var ZA=Bn(),Jh=Ue(),BA=tt(),GA=tt(),HJ={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:i,it:s}=t,{opts:o}=s,a=(0,ZA.allSchemaProperties)(r),c=a.filter(h=>(0,BA.alwaysValidSchema)(s,r[h]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=o.strictSchema&&!o.allowMatchingProperties&&i.properties,l=e.name("valid");s.props!==!0&&!(s.props instanceof Jh.Name)&&(s.props=(0,GA.evaluatedPropsToName)(e,s.props));let{props:d}=s;p();function p(){for(let h of a)u&&f(h),s.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function f(h){for(let g in u)new RegExp(h).test(g)&&(0,BA.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,g=>{e.if((0,Jh._)`${(0,ZA.usePattern)(t,h)}.test(${g})`,()=>{let v=c.includes(h);v||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:GA.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,Jh._)`${d}[${g}]`,!0):!v&&!s.allErrors&&e.if((0,Jh.not)(l),()=>e.break())})})}}};Y0.default=HJ});var VA=$(Q0=>{"use strict";Object.defineProperty(Q0,"__esModule",{value:!0});var ZJ=tt(),BJ={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,ZJ.alwaysValidSchema)(n,r)){t.fail();return}let i=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},i),t.failResult(i,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};Q0.default=BJ});var KA=$(eE=>{"use strict";Object.defineProperty(eE,"__esModule",{value:!0});var GJ=Bn(),WJ={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:GJ.validateUnion,error:{message:"must match a schema in anyOf"}};eE.default=WJ});var JA=$(tE=>{"use strict";Object.defineProperty(tE,"__esModule",{value:!0});var Xh=Ue(),VJ=tt(),KJ={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Xh._)`{passingSchemas: ${t.passing}}`},JJ={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:KJ,code(t){let{gen:e,schema:r,parentSchema:n,it:i}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(i.opts.discriminator&&n.discriminator)return;let s=r,o=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(o,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let p;(0,VJ.alwaysValidSchema)(i,l)?e.var(c,!0):p=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Xh._)`${c} && ${o}`).assign(o,!1).assign(a,(0,Xh._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(o,!0),e.assign(a,d),p&&t.mergeEvaluated(p,Xh.Name)})})}}};tE.default=JJ});var XA=$(rE=>{"use strict";Object.defineProperty(rE,"__esModule",{value:!0});var XJ=tt(),YJ={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let i=e.name("valid");r.forEach((s,o)=>{if((0,XJ.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:o},i);t.ok(i),t.mergeEvaluated(a)})}};rE.default=YJ});var eN=$(nE=>{"use strict";Object.defineProperty(nE,"__esModule",{value:!0});var Yh=Ue(),QA=tt(),QJ={message:({params:t})=>(0,Yh.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Yh._)`{failingKeyword: ${t.ifClause}}`},eX={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:QJ,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,QA.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let i=YA(n,"then"),s=YA(n,"else");if(!i&&!s)return;let o=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),i&&s){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(a,u("then",l),u("else",l))}else i?e.if(a,u("then")):e.if((0,Yh.not)(a),u("else"));t.pass(o,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let p=t.subschema({keyword:l},a);e.assign(o,a),t.mergeValidEvaluated(p,o),d?e.assign(d,(0,Yh._)`${l}`):t.setParams({ifClause:l})}}}};function YA(t,e){let r=t.schema[e];return r!==void 0&&!(0,QA.alwaysValidSchema)(t,r)}nE.default=eX});var tN=$(iE=>{"use strict";Object.defineProperty(iE,"__esModule",{value:!0});var tX=tt(),rX={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,tX.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};iE.default=rX});var rN=$(sE=>{"use strict";Object.defineProperty(sE,"__esModule",{value:!0});var nX=F0(),iX=PA(),sX=q0(),oX=NA(),aX=MA(),cX=zA(),uX=UA(),lX=K0(),dX=HA(),pX=WA(),fX=VA(),mX=KA(),hX=JA(),gX=XA(),vX=eN(),yX=tN();function _X(t=!1){let e=[fX.default,mX.default,hX.default,gX.default,vX.default,yX.default,uX.default,lX.default,cX.default,dX.default,pX.default];return t?e.push(iX.default,oX.default):e.push(nX.default,sX.default),e.push(aX.default),e}sE.default=_X});var nN=$(oE=>{"use strict";Object.defineProperty(oE,"__esModule",{value:!0});var Xt=Ue(),bX={message:({schemaCode:t})=>(0,Xt.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Xt._)`{format: ${t}}`},SX={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:bX,code(t,e){let{gen:r,data:n,$data:i,schema:s,schemaCode:o,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;i?p():f();function p(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,Xt._)`${m}[${o}]`),g=r.let("fType"),v=r.let("format");r.if((0,Xt._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,Xt._)`${h}.type || "string"`).assign(v,(0,Xt._)`${h}.validate`),()=>r.assign(g,(0,Xt._)`"string"`).assign(v,h)),t.fail$data((0,Xt.or)(y(),b()));function y(){return c.strictSchema===!1?Xt.nil:(0,Xt._)`${o} && !${v}`}function b(){let S=l.$async?(0,Xt._)`(${h}.async ? await ${v}(${n}) : ${v}(${n}))`:(0,Xt._)`${v}(${n})`,x=(0,Xt._)`(typeof ${v} == "function" ? ${S} : ${v}.test(${n}))`;return(0,Xt._)`${v} && ${v} !== true && ${g} === ${e} && !${x}`}}function f(){let m=d.formats[s];if(!m){y();return}if(m===!0)return;let[h,g,v]=b(m);h===e&&t.pass(S());function y(){if(c.strictSchema===!1){d.logger.warn(x());return}throw new Error(x());function x(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function b(x){let w=x instanceof RegExp?(0,Xt.regexpCode)(x):c.code.formats?(0,Xt._)`${c.code.formats}${(0,Xt.getProperty)(s)}`:void 0,E=r.scopeValue("formats",{key:s,ref:x,code:w});return typeof x=="object"&&!(x instanceof RegExp)?[x.type||"string",x.validate,(0,Xt._)`${E}.validate`]:["string",x,E]}function S(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Xt._)`await ${v}(${n})`}return typeof g=="function"?(0,Xt._)`${v}(${n})`:(0,Xt._)`${v}.test(${n})`}}}};oE.default=SX});var iN=$(aE=>{"use strict";Object.defineProperty(aE,"__esModule",{value:!0});var xX=nN(),wX=[xX.default];aE.default=wX});var sN=$(Ic=>{"use strict";Object.defineProperty(Ic,"__esModule",{value:!0});Ic.contentVocabulary=Ic.metadataVocabulary=void 0;Ic.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Ic.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var aN=$(cE=>{"use strict";Object.defineProperty(cE,"__esModule",{value:!0});var EX=mA(),kX=IA(),TX=rN(),$X=iN(),oN=sN(),IX=[EX.default,kX.default,(0,TX.default)(),$X.default,oN.metadataVocabulary,oN.contentVocabulary];cE.default=IX});var uN=$(Qh=>{"use strict";Object.defineProperty(Qh,"__esModule",{value:!0});Qh.DiscrError=void 0;var cN;(function(t){t.Tag="tag",t.Mapping="mapping"})(cN||(Qh.DiscrError=cN={}))});var dN=$(lE=>{"use strict";Object.defineProperty(lE,"__esModule",{value:!0});var Rc=Ue(),uE=uN(),lN=Mh(),RX=Cd(),OX=tt(),CX={message:({params:{discrError:t,tagName:e}})=>t===uE.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Rc._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},PX={keyword:"discriminator",type:"object",schemaType:"object",error:CX,code(t){let{gen:e,data:r,schema:n,parentSchema:i,it:s}=t,{oneOf:o}=i;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!o)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,Rc._)`${r}${(0,Rc.getProperty)(a)}`);e.if((0,Rc._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:uE.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let f=p();e.if(!1);for(let m in f)e.elseIf((0,Rc._)`${u} === ${m}`),e.assign(c,d(f[m]));e.else(),t.error(!1,{discrError:uE.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(f){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:f},m);return t.mergeEvaluated(h,Rc.Name),m}function p(){var f;let m={},h=v(i),g=!0;for(let S=0;S{AX.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var pE=$((Mt,dE)=>{"use strict";Object.defineProperty(Mt,"__esModule",{value:!0});Mt.MissingRefError=Mt.ValidationError=Mt.CodeGen=Mt.Name=Mt.nil=Mt.stringify=Mt.str=Mt._=Mt.KeywordCxt=Mt.Ajv=void 0;var NX=cA(),MX=aN(),DX=dN(),fN=pN(),jX=["/properties"],eg="http://json-schema.org/draft-07/schema",Oc=class extends NX.default{_addVocabularies(){super._addVocabularies(),MX.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(DX.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(fN,jX):fN;this.addMetaSchema(e,eg,!1),this.refs["http://json-schema.org/schema"]=eg}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(eg)?eg:void 0)}};Mt.Ajv=Oc;dE.exports=Mt=Oc;dE.exports.Ajv=Oc;Object.defineProperty(Mt,"__esModule",{value:!0});Mt.default=Oc;var zX=Od();Object.defineProperty(Mt,"KeywordCxt",{enumerable:!0,get:function(){return zX.KeywordCxt}});var Cc=Ue();Object.defineProperty(Mt,"_",{enumerable:!0,get:function(){return Cc._}});Object.defineProperty(Mt,"str",{enumerable:!0,get:function(){return Cc.str}});Object.defineProperty(Mt,"stringify",{enumerable:!0,get:function(){return Cc.stringify}});Object.defineProperty(Mt,"nil",{enumerable:!0,get:function(){return Cc.nil}});Object.defineProperty(Mt,"Name",{enumerable:!0,get:function(){return Cc.Name}});Object.defineProperty(Mt,"CodeGen",{enumerable:!0,get:function(){return Cc.CodeGen}});var LX=Ah();Object.defineProperty(Mt,"ValidationError",{enumerable:!0,get:function(){return LX.default}});var UX=Cd();Object.defineProperty(Mt,"MissingRefError",{enumerable:!0,get:function(){return UX.default}})});var SN=$(Hi=>{"use strict";Object.defineProperty(Hi,"__esModule",{value:!0});Hi.formatNames=Hi.fastFormats=Hi.fullFormats=void 0;function qi(t,e){return{validate:t,compare:e}}Hi.fullFormats={date:qi(vN,gE),time:qi(mE(!0),vE),"date-time":qi(mN(!0),_N),"iso-time":qi(mE(),yN),"iso-date-time":qi(mN(),bN),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:GX,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:QX,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:WX,int32:{type:"number",validate:JX},int64:{type:"number",validate:XX},float:{type:"number",validate:gN},double:{type:"number",validate:gN},password:!0,binary:!0};Hi.fastFormats={...Hi.fullFormats,date:qi(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,gE),time:qi(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,vE),"date-time":qi(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,_N),"iso-time":qi(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,yN),"iso-date-time":qi(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,bN),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};Hi.formatNames=Object.keys(Hi.fullFormats);function FX(t){return t%4===0&&(t%100!==0||t%400===0)}var qX=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,HX=[0,31,28,31,30,31,30,31,31,30,31,30,31];function vN(t){let e=qX.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],i=+e[3];return n>=1&&n<=12&&i>=1&&i<=(n===2&&FX(r)?29:HX[n])}function gE(t,e){if(t&&e)return t>e?1:t23||l>59||t&&!a)return!1;if(i<=23&&s<=59&&o<60)return!0;let d=s-l*c,p=i-u*c-(d<0?1:0);return(p===23||p===-1)&&(d===59||d===-1)&&o<61}}function vE(t,e){if(!(t&&e))return;let r=new Date("2020-01-01T"+t).valueOf(),n=new Date("2020-01-01T"+e).valueOf();if(r&&n)return r-n}function yN(t,e){if(!(t&&e))return;let r=fE.exec(t),n=fE.exec(e);if(r&&n)return t=r[1]+r[2]+r[3],e=n[1]+n[2]+n[3],t>e?1:t=VX}function XX(t){return Number.isInteger(t)}function gN(){return!0}var YX=/[^\\]\\Z/;function QX(t){if(YX.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var xN=$(Pc=>{"use strict";Object.defineProperty(Pc,"__esModule",{value:!0});Pc.formatLimitDefinition=void 0;var eY=pE(),hi=Ue(),go=hi.operators,tg={formatMaximum:{okStr:"<=",ok:go.LTE,fail:go.GT},formatMinimum:{okStr:">=",ok:go.GTE,fail:go.LT},formatExclusiveMaximum:{okStr:"<",ok:go.LT,fail:go.GTE},formatExclusiveMinimum:{okStr:">",ok:go.GT,fail:go.LTE}},tY={message:({keyword:t,schemaCode:e})=>(0,hi.str)`should be ${tg[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,hi._)`{comparison: ${tg[t].okStr}, limit: ${e}}`};Pc.formatLimitDefinition={keyword:Object.keys(tg),type:"string",schemaType:"string",$data:!0,error:tY,code(t){let{gen:e,data:r,schemaCode:n,keyword:i,it:s}=t,{opts:o,self:a}=s;if(!o.validateFormats)return;let c=new eY.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let p=e.scopeValue("formats",{ref:a.formats,code:o.code.formats}),f=e.const("fmt",(0,hi._)`${p}[${c.schemaCode}]`);t.fail$data((0,hi.or)((0,hi._)`typeof ${f} != "object"`,(0,hi._)`${f} instanceof RegExp`,(0,hi._)`typeof ${f}.compare != "function"`,d(f)))}function l(){let p=c.schema,f=a.formats[p];if(!f||f===!0)return;if(typeof f!="object"||f instanceof RegExp||typeof f.compare!="function")throw new Error(`"${i}": format "${p}" does not define "compare" function`);let m=e.scopeValue("formats",{key:p,ref:f,code:o.code.formats?(0,hi._)`${o.code.formats}${(0,hi.getProperty)(p)}`:void 0});t.fail$data(d(m))}function d(p){return(0,hi._)`${p}.compare(${r}, ${n}) ${tg[i].fail} 0`}},dependencies:["format"]};var rY=t=>(t.addKeyword(Pc.formatLimitDefinition),t);Pc.default=rY});var TN=$((Bd,kN)=>{"use strict";Object.defineProperty(Bd,"__esModule",{value:!0});var Ac=SN(),nY=xN(),yE=Ue(),wN=new yE.Name("fullFormats"),iY=new yE.Name("fastFormats"),_E=(t,e={keywords:!0})=>{if(Array.isArray(e))return EN(t,e,Ac.fullFormats,wN),t;let[r,n]=e.mode==="fast"?[Ac.fastFormats,iY]:[Ac.fullFormats,wN],i=e.formats||Ac.formatNames;return EN(t,i,r,n),e.keywords&&(0,nY.default)(t),t};_E.get=(t,e="full")=>{let n=(e==="fast"?Ac.fastFormats:Ac.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function EN(t,e,r,n){var i,s;(i=(s=t.opts.code).formats)!==null&&i!==void 0||(s.formats=(0,yE._)`require("ajv-formats/dist/formats").${n}`);for(let o of e)t.addFormat(o,r[o])}kN.exports=Bd=_E;Object.defineProperty(Bd,"__esModule",{value:!0});Bd.default=_E});var MN=$((lCe,NN)=>{NN.exports=AN;AN.sync=cY;var CN=require("fs");function aY(t,e){var r=e.pathExt!==void 0?e.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var n=0;n{LN.exports=jN;jN.sync=uY;var DN=require("fs");function jN(t,e,r){DN.stat(t,function(n,i){r(n,n?!1:zN(i,e))})}function uY(t,e){return zN(DN.statSync(t),e)}function zN(t,e){return t.isFile()&&lY(t,e)}function lY(t,e){var r=t.mode,n=t.uid,i=t.gid,s=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),o=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),a=parseInt("100",8),c=parseInt("010",8),u=parseInt("001",8),l=a|c,d=r&u||r&c&&i===o||r&a&&n===s||r&l&&s===0;return d}});var qN=$((fCe,FN)=>{var pCe=require("fs"),sg;process.platform==="win32"||global.TESTING_WINDOWS?sg=MN():sg=UN();FN.exports=bE;bE.sync=dY;function bE(t,e,r){if(typeof e=="function"&&(r=e,e={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(n,i){bE(t,e||{},function(s,o){s?i(s):n(o)})})}sg(t,e||{},function(n,i){n&&(n.code==="EACCES"||e&&e.ignoreErrors)&&(n=null,i=!1),r(n,i)})}function dY(t,e){try{return sg.sync(t,e||{})}catch(r){if(e&&e.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var KN=$((mCe,VN)=>{var Mc=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",HN=require("path"),pY=Mc?";":":",ZN=qN(),BN=t=>Object.assign(new Error(`not found: ${t}`),{code:"ENOENT"}),GN=(t,e)=>{let r=e.colon||pY,n=t.match(/\//)||Mc&&t.match(/\\/)?[""]:[...Mc?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(r)],i=Mc?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",s=Mc?i.split(r):[""];return Mc&&t.indexOf(".")!==-1&&s[0]!==""&&s.unshift(""),{pathEnv:n,pathExt:s,pathExtExe:i}},WN=(t,e,r)=>{typeof e=="function"&&(r=e,e={}),e||(e={});let{pathEnv:n,pathExt:i,pathExtExe:s}=GN(t,e),o=[],a=u=>new Promise((l,d)=>{if(u===n.length)return e.all&&o.length?l(o):d(BN(t));let p=n[u],f=/^".*"$/.test(p)?p.slice(1,-1):p,m=HN.join(f,t),h=!f&&/^\.[\\\/]/.test(t)?t.slice(0,2)+m:m;l(c(h,u,0))}),c=(u,l,d)=>new Promise((p,f)=>{if(d===i.length)return p(a(l+1));let m=i[d];ZN(u+m,{pathExt:s},(h,g)=>{if(!h&&g)if(e.all)o.push(u+m);else return p(u+m);return p(c(u,l,d+1))})});return r?a(0).then(u=>r(null,u),r):a(0)},fY=(t,e)=>{e=e||{};let{pathEnv:r,pathExt:n,pathExtExe:i}=GN(t,e),s=[];for(let o=0;o{"use strict";var JN=(t={})=>{let e=t.env||process.env;return(t.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};SE.exports=JN;SE.exports.default=JN});var tM=$((gCe,eM)=>{"use strict";var YN=require("path"),mY=KN(),hY=XN();function QN(t,e){let r=t.options.env||process.env,n=process.cwd(),i=t.options.cwd!=null,s=i&&process.chdir!==void 0&&!process.chdir.disabled;if(s)try{process.chdir(t.options.cwd)}catch{}let o;try{o=mY.sync(t.command,{path:r[hY({env:r})],pathExt:e?YN.delimiter:void 0})}catch{}finally{s&&process.chdir(n)}return o&&(o=YN.resolve(i?t.options.cwd:"",o)),o}function gY(t){return QN(t)||QN(t,!0)}eM.exports=gY});var rM=$((vCe,wE)=>{"use strict";var xE=/([()\][%!^"`<>&|;, *?])/g;function vY(t){return t=t.replace(xE,"^$1"),t}function yY(t,e){return t=`${t}`,t=t.replace(/(?=(\\+?)?)\1"/g,'$1$1\\"'),t=t.replace(/(?=(\\+?)?)\1$/,"$1$1"),t=`"${t}"`,t=t.replace(xE,"^$1"),e&&(t=t.replace(xE,"^$1")),t}wE.exports.command=vY;wE.exports.argument=yY});var iM=$((yCe,nM)=>{"use strict";nM.exports=/^#!(.*)/});var oM=$((_Ce,sM)=>{"use strict";var _Y=iM();sM.exports=(t="")=>{let e=t.match(_Y);if(!e)return null;let[r,n]=e[0].replace(/#! ?/,"").split(" "),i=r.split("/").pop();return i==="env"?n:n?`${i} ${n}`:i}});var cM=$((bCe,aM)=>{"use strict";var EE=require("fs"),bY=oM();function SY(t){let r=Buffer.alloc(150),n;try{n=EE.openSync(t,"r"),EE.readSync(n,r,0,150,0),EE.closeSync(n)}catch{}return bY(r.toString())}aM.exports=SY});var pM=$((SCe,dM)=>{"use strict";var xY=require("path"),uM=tM(),lM=rM(),wY=cM(),EY=process.platform==="win32",kY=/\.(?:com|exe)$/i,TY=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function $Y(t){t.file=uM(t);let e=t.file&&wY(t.file);return e?(t.args.unshift(t.file),t.command=e,uM(t)):t.file}function IY(t){if(!EY)return t;let e=$Y(t),r=!kY.test(e);if(t.options.forceShell||r){let n=TY.test(e);t.command=xY.normalize(t.command),t.command=lM.command(t.command),t.args=t.args.map(s=>lM.argument(s,n));let i=[t.command].concat(t.args).join(" ");t.args=["/d","/s","/c",`"${i}"`],t.command=process.env.comspec||"cmd.exe",t.options.windowsVerbatimArguments=!0}return t}function RY(t,e,r){e&&!Array.isArray(e)&&(r=e,e=null),e=e?e.slice(0):[],r=Object.assign({},r);let n={command:t,args:e,options:r,file:void 0,original:{command:t,args:e}};return r.shell?n:IY(n)}dM.exports=RY});var hM=$((xCe,mM)=>{"use strict";var kE=process.platform==="win32";function TE(t,e){return Object.assign(new Error(`${e} ${t.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${e} ${t.command}`,path:t.command,spawnargs:t.args})}function OY(t,e){if(!kE)return;let r=t.emit;t.emit=function(n,i){if(n==="exit"){let s=fM(i,e);if(s)return r.call(t,"error",s)}return r.apply(t,arguments)}}function fM(t,e){return kE&&t===1&&!e.file?TE(e.original,"spawn"):null}function CY(t,e){return kE&&t===1&&!e.file?TE(e.original,"spawnSync"):null}mM.exports={hookChildProcess:OY,verifyENOENT:fM,verifyENOENTSync:CY,notFoundError:TE}});var yM=$((wCe,Dc)=>{"use strict";var gM=require("child_process"),$E=pM(),IE=hM();function vM(t,e,r){let n=$E(t,e,r),i=gM.spawn(n.command,n.args,n.options);return IE.hookChildProcess(i,n),i}function PY(t,e,r){let n=$E(t,e,r),i=gM.spawnSync(n.command,n.args,n.options);return i.error=i.error||IE.verifyENOENTSync(i.status,n),i}Dc.exports=vM;Dc.exports.spawn=vM;Dc.exports.sync=PY;Dc.exports._parse=$E;Dc.exports._enoent=IE});var Es,Wd,wM,RE,xM,OE,_,re=we(()=>{"use strict";Es=require("fs"),Wd=require("path"),wM=require("os"),RE=(s=>(s[s.DEBUG=0]="DEBUG",s[s.INFO=1]="INFO",s[s.WARN=2]="WARN",s[s.ERROR=3]="ERROR",s[s.SILENT=4]="SILENT",s))(RE||{}),xM=(0,Wd.join)((0,wM.homedir)(),".claude-mem"),OE=class{level=null;useColor;logFilePath=null;logFileInitialized=!1;constructor(){this.useColor=process.stdout.isTTY??!1}ensureLogFileInitialized(){if(!this.logFileInitialized){this.logFileInitialized=!0;try{let e=(0,Wd.join)(xM,"logs");(0,Es.existsSync)(e)||(0,Es.mkdirSync)(e,{recursive:!0});let r=new Date().toISOString().split("T")[0];this.logFilePath=(0,Wd.join)(e,`claude-mem-${r}.log`)}catch(e){console.error("[LOGGER] Failed to initialize log file:",e),this.logFilePath=null}}}getLevel(){if(this.level===null)try{let e=(0,Wd.join)(xM,"settings.json");if((0,Es.existsSync)(e)){let r=(0,Es.readFileSync)(e,"utf-8"),i=(JSON.parse(r).CLAUDE_MEM_LOG_LEVEL||"INFO").toUpperCase();this.level=RE[i]??1}else this.level=1}catch{this.level=1}return this.level}correlationId(e,r){return`obs-${e}-${r}`}sessionId(e){return`session-${e}`}formatData(e){if(e==null)return"";if(typeof e=="string")return e;if(typeof e=="number"||typeof e=="boolean")return e.toString();if(typeof e=="object"){if(e instanceof Error)return this.getLevel()===0?`${e.message} +${e.stack}`:e.message;if(Array.isArray(e))return`[${e.length} items]`;let r=Object.keys(e);return r.length===0?"{}":r.length<=3?JSON.stringify(e):`{${r.length} keys: ${r.slice(0,3).join(", ")}...}`}return String(e)}formatTool(e,r){if(!r)return e;let n=r;if(typeof r=="string")try{n=JSON.parse(r)}catch{n=r}if(e==="Bash"&&n.command)return`${e}(${n.command})`;if(n.file_path)return`${e}(${n.file_path})`;if(n.notebook_path)return`${e}(${n.notebook_path})`;if(e==="Glob"&&n.pattern)return`${e}(${n.pattern})`;if(e==="Grep"&&n.pattern)return`${e}(${n.pattern})`;if(n.url)return`${e}(${n.url})`;if(n.query)return`${e}(${n.query})`;if(e==="Task"){if(n.subagent_type)return`${e}(${n.subagent_type})`;if(n.description)return`${e}(${n.description})`}return e==="Skill"&&n.skill?`${e}(${n.skill})`:e==="LSP"&&n.operation?`${e}(${n.operation})`:e}formatTimestamp(e){let r=e.getFullYear(),n=String(e.getMonth()+1).padStart(2,"0"),i=String(e.getDate()).padStart(2,"0"),s=String(e.getHours()).padStart(2,"0"),o=String(e.getMinutes()).padStart(2,"0"),a=String(e.getSeconds()).padStart(2,"0"),c=String(e.getMilliseconds()).padStart(3,"0");return`${r}-${n}-${i} ${s}:${o}:${a}.${c}`}log(e,r,n,i,s){if(e0&&(d=` {${Object.entries(g).map(([S,b])=>`${S}=${b}`).join(", ")}}`)}let p=`[${o}] [${a}] [${c}] ${u}${n}${d}${l}`;if(this.logFilePath)try{(0,_s.appendFileSync)(this.logFilePath,p+` +`+JSON.stringify(s,null,2):l=" "+this.formatData(s));let d="";if(i){let{sessionId:f,memorySessionId:m,correlationId:h,...g}=i;Object.keys(g).length>0&&(d=` {${Object.entries(g).map(([y,b])=>`${y}=${b}`).join(", ")}}`)}let p=`[${o}] [${a}] [${c}] ${u}${n}${d}${l}`;if(this.logFilePath)try{(0,Es.appendFileSync)(this.logFilePath,p+` `,"utf8")}catch(f){process.stderr.write(`[LOGGER] Failed to write to log file: ${f} `)}else process.stderr.write(p+` `)}debug(e,r,n,i){this.log(0,e,r,n,i)}info(e,r,n,i){this.log(1,e,r,n,i)}warn(e,r,n,i){this.log(2,e,r,n,i)}error(e,r,n,i){this.log(3,e,r,n,i)}dataIn(e,r,n,i){this.info(e,`\u2192 ${r}`,n,i)}dataOut(e,r,n,i){this.info(e,`\u2190 ${r}`,n,i)}success(e,r,n,i){this.info(e,`\u2713 ${r}`,n,i)}failure(e,r,n,i){this.error(e,`\u2717 ${r}`,n,i)}timing(e,r,n,i){this.info(e,`\u23F1 ${r}`,i,{duration:`${n}ms`})}happyPathError(e,r,n,i,s=""){let u=((new Error().stack||"").split(` -`)[2]||"").match(/at\s+(?:.*\s+)?\(?([^:]+):(\d+):(\d+)\)?/),l=u?`${u[1].split("/").pop()}:${u[2]}`:"unknown",d={...n,location:l};return this.warn(e,`[HAPPY-PATH] ${r}`,d,i),s}},_=new gE});function Gh(t){return process.platform==="win32"?Math.round(t*Er.WINDOWS_MULTIPLIER):t}var Er,rt,Tn=Oe(()=>{"use strict";Er={DEFAULT:3e5,HEALTH_CHECK:3e3,POST_SPAWN_WAIT:5e3,READINESS_WAIT:3e4,PORT_IN_USE_WAIT:3e3,WORKER_STARTUP_WAIT:1e3,PRE_RESTART_SETTLE_DELAY:2e3,POWERSHELL_COMMAND:1e4,WINDOWS_MULTIPLIER:1.5},rt={SUCCESS:0,FAILURE:1,BLOCKING_ERROR:2,USER_MESSAGE_ONLY:3}});var eM={};_n(eM,{SettingsDefaultsManager:()=>Se});var Li,Wh,QN,Se,rr=Oe(()=>{"use strict";Li=require("fs"),Wh=require("path"),QN=require("os"),Se=class{static DEFAULTS={CLAUDE_MEM_MODEL:"claude-sonnet-4-5",CLAUDE_MEM_CONTEXT_OBSERVATIONS:"50",CLAUDE_MEM_WORKER_PORT:"37777",CLAUDE_MEM_WORKER_HOST:"127.0.0.1",CLAUDE_MEM_SKIP_TOOLS:"ListMcpResourcesTool,SlashCommand,Skill,TodoWrite,AskUserQuestion",CLAUDE_MEM_PROVIDER:"claude",CLAUDE_MEM_CLAUDE_AUTH_METHOD:"cli",CLAUDE_MEM_GEMINI_API_KEY:"",CLAUDE_MEM_GEMINI_MODEL:"gemini-2.5-flash-lite",CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED:"true",CLAUDE_MEM_OPENROUTER_API_KEY:"",CLAUDE_MEM_OPENROUTER_MODEL:"xiaomi/mimo-v2-flash:free",CLAUDE_MEM_OPENROUTER_SITE_URL:"",CLAUDE_MEM_OPENROUTER_APP_NAME:"claude-mem",CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES:"20",CLAUDE_MEM_OPENROUTER_MAX_TOKENS:"100000",CLAUDE_MEM_DATA_DIR:(0,Wh.join)((0,QN.homedir)(),".claude-mem"),CLAUDE_MEM_LOG_LEVEL:"INFO",CLAUDE_MEM_PYTHON_VERSION:"3.13",CLAUDE_CODE_PATH:"",CLAUDE_MEM_MODE:"code",CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT:"true",CLAUDE_MEM_CONTEXT_FULL_COUNT:"0",CLAUDE_MEM_CONTEXT_FULL_FIELD:"narrative",CLAUDE_MEM_CONTEXT_SESSION_COUNT:"10",CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY:"true",CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE:"false",CLAUDE_MEM_CONTEXT_SHOW_TERMINAL_OUTPUT:"true",CLAUDE_MEM_FOLDER_CLAUDEMD_ENABLED:"false",CLAUDE_MEM_MAX_CONCURRENT_AGENTS:"2",CLAUDE_MEM_EXCLUDED_PROJECTS:"",CLAUDE_MEM_FOLDER_MD_EXCLUDE:"[]",CLAUDE_MEM_SEMANTIC_INJECT:"false",CLAUDE_MEM_SEMANTIC_INJECT_LIMIT:"5",CLAUDE_MEM_TIER_ROUTING_ENABLED:"true",CLAUDE_MEM_TIER_SIMPLE_MODEL:"haiku",CLAUDE_MEM_TIER_SUMMARY_MODEL:"",CLAUDE_MEM_CHROMA_ENABLED:"true",CLAUDE_MEM_CHROMA_MODE:"local",CLAUDE_MEM_CHROMA_HOST:"127.0.0.1",CLAUDE_MEM_CHROMA_PORT:"8000",CLAUDE_MEM_CHROMA_SSL:"false",CLAUDE_MEM_CHROMA_API_KEY:"",CLAUDE_MEM_CHROMA_TENANT:"default_tenant",CLAUDE_MEM_CHROMA_DATABASE:"default_database"};static getAllDefaults(){return{...this.DEFAULTS}}static get(e){return process.env[e]??this.DEFAULTS[e]}static getInt(e){let r=this.get(e);return parseInt(r,10)}static getBool(e){let r=this.get(e);return r==="true"||r===!0}static applyEnvOverrides(e){let r={...e};for(let n of Object.keys(this.DEFAULTS))process.env[n]!==void 0&&(r[n]=process.env[n]);return r}static loadFromFile(e){try{if(!(0,Li.existsSync)(e)){let o=this.getAllDefaults();try{let a=(0,Wh.dirname)(e);(0,Li.existsSync)(a)||(0,Li.mkdirSync)(a,{recursive:!0}),(0,Li.writeFileSync)(e,JSON.stringify(o,null,2),"utf-8"),console.log("[SETTINGS] Created settings file with defaults:",e)}catch(a){console.warn("[SETTINGS] Failed to create settings file, using in-memory defaults:",e,a)}return this.applyEnvOverrides(o)}let r=(0,Li.readFileSync)(e,"utf-8"),n=JSON.parse(r),i=n;if(n.env&&typeof n.env=="object"){i=n.env;try{(0,Li.writeFileSync)(e,JSON.stringify(i,null,2),"utf-8"),console.log("[SETTINGS] Migrated settings file from nested to flat schema:",e)}catch(o){console.warn("[SETTINGS] Failed to auto-migrate settings file:",e,o)}}let s={...this.DEFAULTS};for(let o of Object.keys(this.DEFAULTS))i[o]!==void 0&&(s[o]=i[o]);return this.applyEnvOverrides(s)}catch(r){return console.warn("[SETTINGS] Failed to load settings, using defaults:",e,r),this.applyEnvOverrides(this.getAllDefaults())}}}});var cM={};_n(cM,{ARCHIVES_DIR:()=>yE,BACKUPS_DIR:()=>sM,CLAUDE_COMMANDS_DIR:()=>oM,CLAUDE_CONFIG_DIR:()=>bs,CLAUDE_MD_PATH:()=>bY,CLAUDE_SETTINGS_PATH:()=>_Y,DATA_DIR:()=>ur,DB_PATH:()=>Dd,LOGS_DIR:()=>nM,MARKETPLACE_ROOT:()=>Ss,MODES_DIR:()=>_E,OBSERVER_SESSIONS_DIR:()=>Kh,TRASH_DIR:()=>iM,USER_SETTINGS_PATH:()=>jt,VECTOR_DB_DIR:()=>yY,createBackupFilename:()=>$Y,ensureAllClaudeDirs:()=>kY,ensureAllDataDirs:()=>wY,ensureDir:()=>Mr,ensureModesDir:()=>EY,getCurrentProjectName:()=>aM,getPackageCommandsDir:()=>TY,getPackageRoot:()=>dn,getProjectArchiveDir:()=>SY,getWorkerSocketPath:()=>xY});function hY(){return typeof __dirname<"u"?__dirname:(0,lt.dirname)((0,rM.fileURLToPath)(IY.url))}function vY(){if(process.env.CLAUDE_MEM_DATA_DIR)return process.env.CLAUDE_MEM_DATA_DIR;let t=(0,lt.join)((0,vE.homedir)(),".claude-mem"),e=(0,lt.join)(t,"settings.json");try{if((0,Vh.existsSync)(e)){let{readFileSync:r}=require("fs"),n=JSON.parse(r(e,"utf-8")),i=n.env??n;if(i.CLAUDE_MEM_DATA_DIR)return i.CLAUDE_MEM_DATA_DIR}}catch{}return t}function SY(t){return(0,lt.join)(yE,t)}function xY(t){return(0,lt.join)(ur,`worker-${t}.sock`)}function Mr(t){(0,Vh.mkdirSync)(t,{recursive:!0})}function wY(){Mr(ur),Mr(yE),Mr(nM),Mr(iM),Mr(sM),Mr(_E)}function EY(){Mr(_E)}function kY(){Mr(bs),Mr(oM)}function aM(){try{let t=(0,tM.execSync)("git rev-parse --show-toplevel",{cwd:process.cwd(),encoding:"utf8",stdio:["pipe","pipe","ignore"],windowsHide:!0}).trim();return(0,lt.basename)((0,lt.dirname)(t))+"/"+(0,lt.basename)(t)}catch(t){_.debug("SYSTEM","Git root detection failed, using cwd basename",{cwd:process.cwd()},t);let e=process.cwd();return(0,lt.basename)((0,lt.dirname)(e))+"/"+(0,lt.basename)(e)}}function dn(){return(0,lt.join)(gY,"..")}function TY(){let t=dn();return(0,lt.join)(t,"commands")}function $Y(t){let e=new Date().toISOString().replace(/[:.]/g,"-").replace("T","_").slice(0,19);return`${t}.backup.${e}`}var lt,vE,Vh,tM,rM,IY,gY,ur,bs,Ss,yE,nM,iM,sM,_E,jt,Dd,yY,Kh,_Y,oM,bY,zt=Oe(()=>{"use strict";lt=require("path"),vE=require("os"),Vh=require("fs"),tM=require("child_process"),rM=require("url");re();IY={};gY=hY();ur=vY(),bs=process.env.CLAUDE_CONFIG_DIR||(0,lt.join)((0,vE.homedir)(),".claude"),Ss=(0,lt.join)(bs,"plugins","marketplaces","thedotmack"),yE=(0,lt.join)(ur,"archives"),nM=(0,lt.join)(ur,"logs"),iM=(0,lt.join)(ur,"trash"),sM=(0,lt.join)(ur,"backups"),_E=(0,lt.join)(ur,"modes"),jt=(0,lt.join)(ur,"settings.json"),Dd=(0,lt.join)(ur,"claude-mem.db"),yY=(0,lt.join)(ur,"vector-db"),Kh=(0,lt.join)(ur,"observer-sessions"),_Y=(0,lt.join)(bs,"settings.json"),oM=(0,lt.join)(bs,"commands"),bY=(0,lt.join)(bs,"CLAUDE.md")});function RY(t,e={},r){return new Promise((n,i)=>{let s=setTimeout(()=>i(new Error(`Request timed out after ${r}ms`)),r);fetch(t,e).then(o=>{clearTimeout(s),n(o)},o=>{clearTimeout(s),i(o)})})}function Jr(){if(jd!==null)return jd;let t=Jh.default.join(Se.get("CLAUDE_MEM_DATA_DIR"),"settings.json"),e=Se.loadFromFile(t);return jd=parseInt(e.CLAUDE_MEM_WORKER_PORT,10),jd}function SE(){if(zd!==null)return zd;let t=Jh.default.join(Se.get("CLAUDE_MEM_DATA_DIR"),"settings.json");return zd=Se.loadFromFile(t).CLAUDE_MEM_WORKER_HOST,zd}function lM(){jd=null,zd=null}function OY(t){return`http://${SE()}:${Jr()}${t}`}function dt(t,e={}){let r=e.method??"GET",n=e.timeoutMs??bE,i=OY(t),s={method:r};return e.headers&&(s.headers=e.headers),e.body&&(s.body=e.body),n>0?RY(i,s,n):fetch(i,s)}async function CY(){return(await dt("/api/health",{timeoutMs:bE})).ok}function PY(){try{let t=Jh.default.join(Ss,"package.json");return JSON.parse((0,uM.readFileSync)(t,"utf-8")).version}catch(t){let e=t.code;if(e==="ENOENT"||e==="EBUSY")return _.debug("SYSTEM","Could not read plugin version (shutdown race)",{code:e}),"unknown";throw t}}async function AY(){let t=await dt("/api/version",{timeoutMs:bE});if(!t.ok)throw new Error(`Failed to get worker version: ${t.status}`);return(await t.json()).version}async function NY(){try{let t=PY();if(t==="unknown")return;let e=await AY();if(e==="unknown")return;t!==e&&_.debug("SYSTEM","Version check",{pluginVersion:t,workerVersion:e,note:"Mismatch will be auto-restarted by worker-service start command"})}catch(t){_.debug("SYSTEM","Version check failed",{error:t instanceof Error?t.message:String(t)})}}async function kr(){try{if(await CY())return await NY(),!0}catch(t){_.debug("SYSTEM","Worker health check failed",{error:t instanceof Error?t.message:String(t)})}return _.warn("SYSTEM","Worker not healthy, hook will proceed gracefully"),!1}var Jh,uM,bE,jd,zd,Dr=Oe(()=>{"use strict";Jh=Pe(require("path"),1),uM=require("fs");re();Tn();rr();zt();bE=(()=>{let t=process.env.CLAUDE_MEM_HEALTH_TIMEOUT_MS;if(t){let e=parseInt(t,10);if(Number.isFinite(e)&&e>=500&&e<=3e5)return e;_.warn("SYSTEM","Invalid CLAUDE_MEM_HEALTH_TIMEOUT_MS, using default",{value:t,min:500,max:3e5})}return Gh(Er.HEALTH_CHECK)})();jd=null,zd=null});function tg(t,e,r){return(0,OM.createHash)("sha256").update((t||"")+(e||"")+(r||"")).digest("hex").slice(0,16)}function rg(t,e,r){let n=r-eQ;return t.prepare("SELECT id, created_at_epoch FROM observations WHERE content_hash = ? AND created_at_epoch > ?").get(e,n)}var OM,eQ,CM=Oe(()=>{"use strict";OM=require("crypto");re();zt();eQ=3e4});var PM,Es,ng=Oe(()=>{"use strict";PM=require("bun:sqlite");zt();re();CM();Es=class{db;constructor(e=Dd){e!==":memory:"&&Mr(ur),this.db=new PM.Database(e),this.db.run("PRAGMA journal_mode = WAL"),this.db.run("PRAGMA synchronous = NORMAL"),this.db.run("PRAGMA foreign_keys = ON"),this.initializeSchema(),this.ensureWorkerPortColumn(),this.ensurePromptTrackingColumns(),this.removeSessionSummariesUniqueConstraint(),this.addObservationHierarchicalFields(),this.makeObservationsTextNullable(),this.createUserPromptsTable(),this.ensureDiscoveryTokensColumn(),this.createPendingMessagesTable(),this.renameSessionIdColumns(),this.repairSessionIdColumnRename(),this.addFailedAtEpochColumn(),this.addOnUpdateCascadeToForeignKeys(),this.addObservationContentHashColumn(),this.addSessionCustomTitleColumn()}initializeSchema(){this.db.run(` +`)[2]||"").match(/at\s+(?:.*\s+)?\(?([^:]+):(\d+):(\d+)\)?/),l=u?`${u[1].split("/").pop()}:${u[2]}`:"unknown",d={...n,location:l};return this.warn(e,`[HAPPY-PATH] ${r}`,d,i),s}},_=new OE});function ag(t){return process.platform==="win32"?Math.round(t*$r.WINDOWS_MULTIPLIER):t}var $r,nt,On=we(()=>{"use strict";$r={DEFAULT:3e5,HEALTH_CHECK:3e3,POST_SPAWN_WAIT:15e3,READINESS_WAIT:3e4,PORT_IN_USE_WAIT:3e3,WORKER_STARTUP_WAIT:1e3,PRE_RESTART_SETTLE_DELAY:2e3,POWERSHELL_COMMAND:1e4,WINDOWS_MULTIPLIER:1.5},nt={SUCCESS:0,FAILURE:1,BLOCKING_ERROR:2,USER_MESSAGE_ONLY:3}});var EM={};wn(EM,{SettingsDefaultsManager:()=>ve});var Zi,Vd,CE,ve,tr=we(()=>{"use strict";Zi=require("fs"),Vd=require("path"),CE=require("os"),ve=class{static DEFAULTS={CLAUDE_MEM_MODEL:"claude-sonnet-4-6",CLAUDE_MEM_CONTEXT_OBSERVATIONS:"50",CLAUDE_MEM_WORKER_PORT:"37777",CLAUDE_MEM_WORKER_HOST:"127.0.0.1",CLAUDE_MEM_SKIP_TOOLS:"ListMcpResourcesTool,SlashCommand,Skill,TodoWrite,AskUserQuestion",CLAUDE_MEM_PROVIDER:"claude",CLAUDE_MEM_CLAUDE_AUTH_METHOD:"cli",CLAUDE_MEM_GEMINI_API_KEY:"",CLAUDE_MEM_GEMINI_MODEL:"gemini-2.5-flash-lite",CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED:"true",CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES:"20",CLAUDE_MEM_GEMINI_MAX_TOKENS:"100000",CLAUDE_MEM_OPENROUTER_API_KEY:"",CLAUDE_MEM_OPENROUTER_MODEL:"xiaomi/mimo-v2-flash:free",CLAUDE_MEM_OPENROUTER_SITE_URL:"",CLAUDE_MEM_OPENROUTER_APP_NAME:"claude-mem",CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES:"20",CLAUDE_MEM_OPENROUTER_MAX_TOKENS:"100000",CLAUDE_MEM_DATA_DIR:(0,Vd.join)((0,CE.homedir)(),".claude-mem"),CLAUDE_MEM_LOG_LEVEL:"INFO",CLAUDE_MEM_PYTHON_VERSION:"3.13",CLAUDE_CODE_PATH:"",CLAUDE_MEM_MODE:"code",CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT:"true",CLAUDE_MEM_CONTEXT_FULL_COUNT:"0",CLAUDE_MEM_CONTEXT_FULL_FIELD:"narrative",CLAUDE_MEM_CONTEXT_SESSION_COUNT:"10",CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY:"true",CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE:"false",CLAUDE_MEM_CONTEXT_SHOW_TERMINAL_OUTPUT:"true",CLAUDE_MEM_FOLDER_CLAUDEMD_ENABLED:"false",CLAUDE_MEM_FOLDER_USE_LOCAL_MD:"false",CLAUDE_MEM_TRANSCRIPTS_ENABLED:"true",CLAUDE_MEM_TRANSCRIPTS_CONFIG_PATH:(0,Vd.join)((0,CE.homedir)(),".claude-mem","transcript-watch.json"),CLAUDE_MEM_MAX_CONCURRENT_AGENTS:"2",CLAUDE_MEM_EXCLUDED_PROJECTS:"",CLAUDE_MEM_FOLDER_MD_EXCLUDE:"[]",CLAUDE_MEM_SEMANTIC_INJECT:"false",CLAUDE_MEM_SEMANTIC_INJECT_LIMIT:"5",CLAUDE_MEM_TIER_ROUTING_ENABLED:"true",CLAUDE_MEM_TIER_SIMPLE_MODEL:"haiku",CLAUDE_MEM_TIER_SUMMARY_MODEL:"",CLAUDE_MEM_CHROMA_ENABLED:"true",CLAUDE_MEM_CHROMA_MODE:"local",CLAUDE_MEM_CHROMA_HOST:"127.0.0.1",CLAUDE_MEM_CHROMA_PORT:"8000",CLAUDE_MEM_CHROMA_SSL:"false",CLAUDE_MEM_CHROMA_API_KEY:"",CLAUDE_MEM_CHROMA_TENANT:"default_tenant",CLAUDE_MEM_CHROMA_DATABASE:"default_database"};static getAllDefaults(){return{...this.DEFAULTS}}static get(e){return process.env[e]??this.DEFAULTS[e]}static getInt(e){let r=this.get(e);return parseInt(r,10)}static getBool(e){let r=this.get(e);return r==="true"||r===!0}static applyEnvOverrides(e){let r={...e};for(let n of Object.keys(this.DEFAULTS))process.env[n]!==void 0&&(r[n]=process.env[n]);return r}static loadFromFile(e){try{if(!(0,Zi.existsSync)(e)){let o=this.getAllDefaults();try{let a=(0,Vd.dirname)(e);(0,Zi.existsSync)(a)||(0,Zi.mkdirSync)(a,{recursive:!0}),(0,Zi.writeFileSync)(e,JSON.stringify(o,null,2),"utf-8"),console.log("[SETTINGS] Created settings file with defaults:",e)}catch(a){console.warn("[SETTINGS] Failed to create settings file, using in-memory defaults:",e,a)}return this.applyEnvOverrides(o)}let r=(0,Zi.readFileSync)(e,"utf-8"),n=JSON.parse(r),i=n;if(n.env&&typeof n.env=="object"){i=n.env;try{(0,Zi.writeFileSync)(e,JSON.stringify(i,null,2),"utf-8"),console.log("[SETTINGS] Migrated settings file from nested to flat schema:",e)}catch(o){console.warn("[SETTINGS] Failed to auto-migrate settings file:",e,o)}}let s={...this.DEFAULTS};for(let o of Object.keys(this.DEFAULTS))i[o]!==void 0&&(s[o]=i[o]);return this.applyEnvOverrides(s)}catch(r){return console.warn("[SETTINGS] Failed to load settings, using defaults:",e,r),this.applyEnvOverrides(this.getAllDefaults())}}}});var PM={};wn(PM,{ARCHIVES_DIR:()=>AE,BACKUPS_DIR:()=>RM,CLAUDE_COMMANDS_DIR:()=>OM,CLAUDE_CONFIG_DIR:()=>ks,CLAUDE_MD_PATH:()=>qY,CLAUDE_SETTINGS_PATH:()=>FY,DATA_DIR:()=>pr,DB_PATH:()=>Kd,LOGS_DIR:()=>$M,MARKETPLACE_ROOT:()=>vo,MODES_DIR:()=>NE,OBSERVER_SESSIONS_DIR:()=>ug,TRASH_DIR:()=>IM,USER_SETTINGS_PATH:()=>vt,VECTOR_DB_DIR:()=>UY,createBackupFilename:()=>KY,ensureAllClaudeDirs:()=>WY,ensureAllDataDirs:()=>BY,ensureDir:()=>jr,ensureModesDir:()=>GY,getCurrentProjectName:()=>CM,getPackageCommandsDir:()=>VY,getPackageRoot:()=>fn,getProjectArchiveDir:()=>HY,getWorkerSocketPath:()=>ZY});function jY(){return typeof __dirname<"u"?__dirname:(0,dt.dirname)((0,TM.fileURLToPath)(JY.url))}function LY(){if(process.env.CLAUDE_MEM_DATA_DIR)return process.env.CLAUDE_MEM_DATA_DIR;let t=(0,dt.join)((0,PE.homedir)(),".claude-mem"),e=(0,dt.join)(t,"settings.json");try{if((0,cg.existsSync)(e)){let{readFileSync:r}=require("fs"),n=JSON.parse(r(e,"utf-8")),i=n.env??n;if(i.CLAUDE_MEM_DATA_DIR)return i.CLAUDE_MEM_DATA_DIR}}catch{}return t}function HY(t){return(0,dt.join)(AE,t)}function ZY(t){return(0,dt.join)(pr,`worker-${t}.sock`)}function jr(t){(0,cg.mkdirSync)(t,{recursive:!0})}function BY(){jr(pr),jr(AE),jr($M),jr(IM),jr(RM),jr(NE)}function GY(){jr(NE)}function WY(){jr(ks),jr(OM)}function CM(){try{let t=(0,kM.execSync)("git rev-parse --show-toplevel",{cwd:process.cwd(),encoding:"utf8",stdio:["pipe","pipe","ignore"],windowsHide:!0}).trim();return(0,dt.basename)((0,dt.dirname)(t))+"/"+(0,dt.basename)(t)}catch(t){_.debug("SYSTEM","Git root detection failed, using cwd basename",{cwd:process.cwd()},t);let e=process.cwd();return(0,dt.basename)((0,dt.dirname)(e))+"/"+(0,dt.basename)(e)}}function fn(){return(0,dt.join)(zY,"..")}function VY(){let t=fn();return(0,dt.join)(t,"commands")}function KY(t){let e=new Date().toISOString().replace(/[:.]/g,"-").replace("T","_").slice(0,19);return`${t}.backup.${e}`}var dt,PE,cg,kM,TM,JY,zY,pr,ks,vo,AE,$M,IM,RM,NE,vt,Kd,UY,ug,FY,OM,qY,It=we(()=>{"use strict";dt=require("path"),PE=require("os"),cg=require("fs"),kM=require("child_process"),TM=require("url");re();JY={};zY=jY();pr=LY(),ks=process.env.CLAUDE_CONFIG_DIR||(0,dt.join)((0,PE.homedir)(),".claude"),vo=(0,dt.join)(ks,"plugins","marketplaces","thedotmack"),AE=(0,dt.join)(pr,"archives"),$M=(0,dt.join)(pr,"logs"),IM=(0,dt.join)(pr,"trash"),RM=(0,dt.join)(pr,"backups"),NE=(0,dt.join)(pr,"modes"),vt=(0,dt.join)(pr,"settings.json"),Kd=(0,dt.join)(pr,"claude-mem.db"),UY=(0,dt.join)(pr,"vector-db"),ug=(0,dt.join)(pr,"observer-sessions"),FY=(0,dt.join)(ks,"settings.json"),OM=(0,dt.join)(ks,"commands"),qY=(0,dt.join)(ks,"CLAUDE.md")});function XY(t,e={},r){return new Promise((n,i)=>{let s=setTimeout(()=>i(new Error(`Request timed out after ${r}ms`)),r);fetch(t,e).then(o=>{clearTimeout(s),n(o)},o=>{clearTimeout(s),i(o)})})}function Yr(){if(Jd!==null)return Jd;let t=lg.default.join(ve.get("CLAUDE_MEM_DATA_DIR"),"settings.json"),e=ve.loadFromFile(t);return Jd=parseInt(e.CLAUDE_MEM_WORKER_PORT,10),Jd}function DE(){if(Xd!==null)return Xd;let t=lg.default.join(ve.get("CLAUDE_MEM_DATA_DIR"),"settings.json");return Xd=ve.loadFromFile(t).CLAUDE_MEM_WORKER_HOST,Xd}function NM(){Jd=null,Xd=null}function YY(t){return`http://${DE()}:${Yr()}${t}`}function at(t,e={}){let r=e.method??"GET",n=e.timeoutMs??ME,i=YY(t),s={method:r};return e.headers&&(s.headers=e.headers),e.body&&(s.body=e.body),n>0?XY(i,s,n):fetch(i,s)}async function QY(){return(await at("/api/health",{timeoutMs:ME})).ok}function eQ(){try{let t=lg.default.join(vo,"package.json");return JSON.parse((0,AM.readFileSync)(t,"utf-8")).version}catch(t){let e=t.code;if(e==="ENOENT"||e==="EBUSY")return _.debug("SYSTEM","Could not read plugin version (shutdown race)",{code:e}),"unknown";throw t}}async function tQ(){let t=await at("/api/version",{timeoutMs:ME});if(!t.ok)throw new Error(`Failed to get worker version: ${t.status}`);return(await t.json()).version}async function rQ(){try{let t=eQ();if(t==="unknown")return;let e=await tQ();if(e==="unknown")return;t!==e&&_.debug("SYSTEM","Version check",{pluginVersion:t,workerVersion:e,note:"Mismatch will be auto-restarted by worker-service start command"})}catch(t){_.debug("SYSTEM","Version check failed",{error:t instanceof Error?t.message:String(t)})}}async function sr(){try{if(await QY())return await rQ(),!0}catch(t){_.debug("SYSTEM","Worker health check failed",{error:t instanceof Error?t.message:String(t)})}return _.warn("SYSTEM","Worker not healthy, hook will proceed gracefully"),!1}var lg,AM,ME,Jd,Xd,Ir=we(()=>{"use strict";lg=Pe(require("path"),1),AM=require("fs");re();On();tr();It();ME=(()=>{let t=process.env.CLAUDE_MEM_HEALTH_TIMEOUT_MS;if(t){let e=parseInt(t,10);if(Number.isFinite(e)&&e>=500&&e<=3e5)return e;_.warn("SYSTEM","Invalid CLAUDE_MEM_HEALTH_TIMEOUT_MS, using default",{value:t,min:500,max:3e5})}return ag($r.HEALTH_CHECK)})();Jd=null,Xd=null});function hg(t,e,r){return(0,eD.createHash)("sha256").update([t||"",e||"",r||""].join("\0")).digest("hex").slice(0,16)}function gg(t,e,r){let n=r-xQ;return t.prepare("SELECT id, created_at_epoch FROM observations WHERE content_hash = ? AND created_at_epoch > ?").get(e,n)}var eD,xQ,tD=we(()=>{"use strict";eD=require("crypto");re();It();xQ=3e4});function Fc(t){if(!t)return[];try{let e=JSON.parse(t);return Array.isArray(e)?e:[String(e)]}catch{return[t]}}var XE=we(()=>{"use strict"});function wQ(t){return t.trim().toLowerCase().replace(/\s+/g,"-")}function Rt(t){if(!t)return zr;let e=wQ(t);return e?e==="transcript"||e.includes("codex")?"codex":e.includes("cursor")?"cursor":e.includes("claude")?"claude":e:zr}function rD(t){let e=["claude","codex","cursor"];return[...t].sort((r,n)=>{let i=e.indexOf(r),s=e.indexOf(n);return i!==-1||s!==-1?i===-1?1:s===-1?-1:i-s:r.localeCompare(n)})}var zr,Gi=we(()=>{"use strict";zr="claude"});function EQ(t,e){return{customTitle:t,platformSource:e?Rt(e):void 0}}var nD,Is,vg=we(()=>{"use strict";nD=require("bun:sqlite");It();re();tD();XE();Gi();Is=class{db;constructor(e=Kd){e!==":memory:"&&jr(pr),this.db=new nD.Database(e),this.db.run("PRAGMA journal_mode = WAL"),this.db.run("PRAGMA synchronous = NORMAL"),this.db.run("PRAGMA foreign_keys = ON"),this.initializeSchema(),this.ensureWorkerPortColumn(),this.ensurePromptTrackingColumns(),this.removeSessionSummariesUniqueConstraint(),this.addObservationHierarchicalFields(),this.makeObservationsTextNullable(),this.createUserPromptsTable(),this.ensureDiscoveryTokensColumn(),this.createPendingMessagesTable(),this.renameSessionIdColumns(),this.repairSessionIdColumnRename(),this.addFailedAtEpochColumn(),this.addOnUpdateCascadeToForeignKeys(),this.addObservationContentHashColumn(),this.addSessionCustomTitleColumn(),this.addSessionPlatformSourceColumn(),this.addObservationModelColumns()}initializeSchema(){this.db.run(` CREATE TABLE IF NOT EXISTS schema_versions ( id INTEGER PRIMARY KEY, version INTEGER UNIQUE NOT NULL, @@ -28,6 +28,7 @@ ${s.stack}`:` ${s.message}`:this.getLevel()===0&&typeof s=="object"?l=` content_session_id TEXT UNIQUE NOT NULL, memory_session_id TEXT UNIQUE, project TEXT NOT NULL, + platform_source TEXT NOT NULL DEFAULT 'claude', user_prompt TEXT, started_at TEXT NOT NULL, started_at_epoch INTEGER NOT NULL, @@ -296,11 +297,19 @@ ${s.stack}`:` ${s.message}`:this.getLevel()===0&&typeof s=="object"?l=` INSERT INTO session_summaries_fts(rowid, request, investigated, learned, completed, next_steps, notes) VALUES (new.id, new.request, new.investigated, new.learned, new.completed, new.next_steps, new.notes); END; - `),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(21,new Date().toISOString()),this.db.run("COMMIT"),this.db.run("PRAGMA foreign_keys = ON"),_.debug("DB","Successfully added ON UPDATE CASCADE to FK constraints")}catch(r){throw this.db.run("ROLLBACK"),this.db.run("PRAGMA foreign_keys = ON"),r}}}addObservationContentHashColumn(){if(this.db.query("PRAGMA table_info(observations)").all().some(n=>n.name==="content_hash")){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(22,new Date().toISOString());return}this.db.run("ALTER TABLE observations ADD COLUMN content_hash TEXT"),this.db.run("UPDATE observations SET content_hash = substr(hex(randomblob(8)), 1, 16) WHERE content_hash IS NULL"),this.db.run("CREATE INDEX IF NOT EXISTS idx_observations_content_hash ON observations(content_hash, created_at_epoch)"),_.debug("DB","Added content_hash column to observations table with backfill and index"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(22,new Date().toISOString())}addSessionCustomTitleColumn(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(23))return;this.db.query("PRAGMA table_info(sdk_sessions)").all().some(i=>i.name==="custom_title")||(this.db.run("ALTER TABLE sdk_sessions ADD COLUMN custom_title TEXT"),_.debug("DB","Added custom_title column to sdk_sessions table")),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(23,new Date().toISOString())}updateMemorySessionId(e,r){this.db.prepare(` + `),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(21,new Date().toISOString()),this.db.run("COMMIT"),this.db.run("PRAGMA foreign_keys = ON"),_.debug("DB","Successfully added ON UPDATE CASCADE to FK constraints")}catch(r){throw this.db.run("ROLLBACK"),this.db.run("PRAGMA foreign_keys = ON"),r}}}addObservationContentHashColumn(){if(this.db.query("PRAGMA table_info(observations)").all().some(n=>n.name==="content_hash")){this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(22,new Date().toISOString());return}this.db.run("ALTER TABLE observations ADD COLUMN content_hash TEXT"),this.db.run("UPDATE observations SET content_hash = substr(hex(randomblob(8)), 1, 16) WHERE content_hash IS NULL"),this.db.run("CREATE INDEX IF NOT EXISTS idx_observations_content_hash ON observations(content_hash, created_at_epoch)"),_.debug("DB","Added content_hash column to observations table with backfill and index"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(22,new Date().toISOString())}addSessionCustomTitleColumn(){if(this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(23))return;this.db.query("PRAGMA table_info(sdk_sessions)").all().some(i=>i.name==="custom_title")||(this.db.run("ALTER TABLE sdk_sessions ADD COLUMN custom_title TEXT"),_.debug("DB","Added custom_title column to sdk_sessions table")),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(23,new Date().toISOString())}addSessionPlatformSourceColumn(){let r=this.db.query("PRAGMA table_info(sdk_sessions)").all().some(o=>o.name==="platform_source"),i=this.db.query("PRAGMA index_list(sdk_sessions)").all().some(o=>o.name==="idx_sdk_sessions_platform_source");this.db.prepare("SELECT version FROM schema_versions WHERE version = ?").get(24)&&r&&i||(r||(this.db.run(`ALTER TABLE sdk_sessions ADD COLUMN platform_source TEXT NOT NULL DEFAULT '${zr}'`),_.debug("DB","Added platform_source column to sdk_sessions table")),this.db.run(` + UPDATE sdk_sessions + SET platform_source = '${zr}' + WHERE platform_source IS NULL OR platform_source = '' + `),i||this.db.run("CREATE INDEX IF NOT EXISTS idx_sdk_sessions_platform_source ON sdk_sessions(platform_source)"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(24,new Date().toISOString()))}addObservationModelColumns(){let e=this.db.query("PRAGMA table_info(observations)").all(),r=e.some(i=>i.name==="generated_by_model"),n=e.some(i=>i.name==="relevance_count");r&&n||(r||this.db.run("ALTER TABLE observations ADD COLUMN generated_by_model TEXT"),n||this.db.run("ALTER TABLE observations ADD COLUMN relevance_count INTEGER DEFAULT 0"),this.db.prepare("INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)").run(26,new Date().toISOString()))}updateMemorySessionId(e,r){this.db.prepare(` UPDATE sdk_sessions SET memory_session_id = ? WHERE id = ? - `).run(r,e)}ensureMemorySessionIdRegistered(e,r){let n=this.db.prepare(` + `).run(r,e)}markSessionCompleted(e){let r=Date.now(),n=new Date(r).toISOString();this.db.prepare(` + UPDATE sdk_sessions + SET status = 'completed', completed_at = ?, completed_at_epoch = ? + WHERE id = ? + `).run(n,r,e)}ensureMemorySessionIdRegistered(e,r){let n=this.db.prepare(` SELECT id, memory_session_id FROM sdk_sessions WHERE id = ? `).get(e);if(!n)throw new Error(`Session ${e} not found in sdk_sessions`);n.memory_session_id!==r&&(this.db.prepare(` UPDATE sdk_sessions SET memory_session_id = ? WHERE id = ? @@ -327,22 +336,47 @@ ${s.stack}`:` ${s.message}`:this.getLevel()===0&&typeof s=="object"?l=` ORDER BY created_at_epoch DESC LIMIT ? `).all(e,r)}getAllRecentObservations(e=100){return this.db.prepare(` - SELECT id, type, title, subtitle, text, project, prompt_number, created_at, created_at_epoch - FROM observations - ORDER BY created_at_epoch DESC + SELECT + o.id, + o.type, + o.title, + o.subtitle, + o.text, + o.project, + COALESCE(s.platform_source, '${zr}') as platform_source, + o.prompt_number, + o.created_at, + o.created_at_epoch + FROM observations o + LEFT JOIN sdk_sessions s ON o.memory_session_id = s.memory_session_id + ORDER BY o.created_at_epoch DESC LIMIT ? `).all(e)}getAllRecentSummaries(e=50){return this.db.prepare(` - SELECT id, request, investigated, learned, completed, next_steps, - files_read, files_edited, notes, project, prompt_number, - created_at, created_at_epoch - FROM session_summaries - ORDER BY created_at_epoch DESC + SELECT + ss.id, + ss.request, + ss.investigated, + ss.learned, + ss.completed, + ss.next_steps, + ss.files_read, + ss.files_edited, + ss.notes, + ss.project, + COALESCE(s.platform_source, '${zr}') as platform_source, + ss.prompt_number, + ss.created_at, + ss.created_at_epoch + FROM session_summaries ss + LEFT JOIN sdk_sessions s ON ss.memory_session_id = s.memory_session_id + ORDER BY ss.created_at_epoch DESC LIMIT ? `).all(e)}getAllRecentUserPrompts(e=100){return this.db.prepare(` SELECT up.id, up.content_session_id, s.project, + COALESCE(s.platform_source, '${zr}') as platform_source, up.prompt_number, up.prompt_text, up.created_at, @@ -351,16 +385,25 @@ ${s.stack}`:` ${s.message}`:this.getLevel()===0&&typeof s=="object"?l=` LEFT JOIN sdk_sessions s ON up.content_session_id = s.content_session_id ORDER BY up.created_at_epoch DESC LIMIT ? - `).all(e)}getAllProjects(){return this.db.prepare(` + `).all(e)}getAllProjects(e){let r=e?Rt(e):void 0,n=` SELECT DISTINCT project FROM sdk_sessions WHERE project IS NOT NULL AND project != '' - ORDER BY project ASC - `).all().map(n=>n.project)}getLatestUserPrompt(e){return this.db.prepare(` + `,i=[];return r&&(n+=" AND COALESCE(platform_source, ?) = ?",i.push(zr,r)),n+=" ORDER BY project ASC",this.db.prepare(n).all(...i).map(o=>o.project)}getProjectCatalog(){let e=this.db.prepare(` + SELECT + COALESCE(platform_source, '${zr}') as platform_source, + project, + MAX(started_at_epoch) as latest_epoch + FROM sdk_sessions + WHERE project IS NOT NULL AND project != '' + GROUP BY COALESCE(platform_source, '${zr}'), project + ORDER BY latest_epoch DESC + `).all(),r=[],n=new Set,i={};for(let o of e){let a=Rt(o.platform_source);i[a]||(i[a]=[]),i[a].includes(o.project)||i[a].push(o.project),n.has(o.project)||(n.add(o.project),r.push(o.project))}let s=rD(Object.keys(i));return{projects:r,sources:s,projectsBySource:Object.fromEntries(s.map(o=>[o,i[o]||[]]))}}getLatestUserPrompt(e){return this.db.prepare(` SELECT up.*, s.memory_session_id, - s.project + s.project, + COALESCE(s.platform_source, '${zr}') as platform_source FROM user_prompts up JOIN sdk_sessions s ON up.content_session_id = s.content_session_id WHERE up.content_session_id = ? @@ -392,7 +435,7 @@ ${s.stack}`:` ${s.message}`:this.getLevel()===0&&typeof s=="object"?l=` SELECT * FROM observations WHERE id = ? - `).get(e)||null}getObservationsByIds(e,r={}){if(e.length===0)return[];let{orderBy:n="date_desc",limit:i,project:s,type:o,concepts:a,files:c}=r,u=n==="date_asc"?"ASC":"DESC",l=i?`LIMIT ${i}`:"",d=e.map(()=>"?").join(","),p=[...e],f=[];if(s&&(f.push("project = ?"),p.push(s)),o)if(Array.isArray(o)){let g=o.map(()=>"?").join(",");f.push(`type IN (${g})`),p.push(...o)}else f.push("type = ?"),p.push(o);if(a){let g=Array.isArray(a)?a:[a],v=g.map(()=>"EXISTS (SELECT 1 FROM json_each(concepts) WHERE value = ?)");p.push(...g),f.push(`(${v.join(" OR ")})`)}if(c){let g=Array.isArray(c)?c:[c],v=g.map(()=>"(EXISTS (SELECT 1 FROM json_each(files_read) WHERE value LIKE ?) OR EXISTS (SELECT 1 FROM json_each(files_modified) WHERE value LIKE ?))");g.forEach(S=>{p.push(`%${S}%`,`%${S}%`)}),f.push(`(${v.join(" OR ")})`)}let m=f.length>0?`WHERE id IN (${d}) AND ${f.join(" AND ")}`:`WHERE id IN (${d})`;return this.db.prepare(` + `).get(e)||null}getObservationsByIds(e,r={}){if(e.length===0)return[];let{orderBy:n="date_desc",limit:i,project:s,type:o,concepts:a,files:c}=r,u=n==="date_asc"?"ASC":"DESC",l=i?`LIMIT ${i}`:"",d=e.map(()=>"?").join(","),p=[...e],f=[];if(s&&(f.push("project = ?"),p.push(s)),o)if(Array.isArray(o)){let g=o.map(()=>"?").join(",");f.push(`type IN (${g})`),p.push(...o)}else f.push("type = ?"),p.push(o);if(a){let g=Array.isArray(a)?a:[a],v=g.map(()=>"EXISTS (SELECT 1 FROM json_each(concepts) WHERE value = ?)");p.push(...g),f.push(`(${v.join(" OR ")})`)}if(c){let g=Array.isArray(c)?c:[c],v=g.map(()=>"(EXISTS (SELECT 1 FROM json_each(files_read) WHERE value LIKE ?) OR EXISTS (SELECT 1 FROM json_each(files_modified) WHERE value LIKE ?))");g.forEach(y=>{p.push(`%${y}%`,`%${y}%`)}),f.push(`(${v.join(" OR ")})`)}let m=f.length>0?`WHERE id IN (${d}) AND ${f.join(" AND ")}`:`WHERE id IN (${d})`;return this.db.prepare(` SELECT * FROM observations ${m} @@ -411,32 +454,40 @@ ${s.stack}`:` ${s.message}`:this.getLevel()===0&&typeof s=="object"?l=` SELECT files_read, files_modified FROM observations WHERE memory_session_id = ? - `).all(e),i=new Set,s=new Set;for(let o of n){if(o.files_read){let a=JSON.parse(o.files_read);Array.isArray(a)&&a.forEach(c=>i.add(c))}if(o.files_modified){let a=JSON.parse(o.files_modified);Array.isArray(a)&&a.forEach(c=>s.add(c))}}return{filesRead:Array.from(i),filesModified:Array.from(s)}}getSessionById(e){return this.db.prepare(` - SELECT id, content_session_id, memory_session_id, project, user_prompt, custom_title + `).all(e),i=new Set,s=new Set;for(let o of n)Fc(o.files_read).forEach(a=>i.add(a)),Fc(o.files_modified).forEach(a=>s.add(a));return{filesRead:Array.from(i),filesModified:Array.from(s)}}getSessionById(e){return this.db.prepare(` + SELECT id, content_session_id, memory_session_id, project, + COALESCE(platform_source, '${zr}') as platform_source, + user_prompt, custom_title FROM sdk_sessions WHERE id = ? LIMIT 1 `).get(e)||null}getSdkSessionsBySessionIds(e){if(e.length===0)return[];let r=e.map(()=>"?").join(",");return this.db.prepare(` - SELECT id, content_session_id, memory_session_id, project, user_prompt, custom_title, + SELECT id, content_session_id, memory_session_id, project, + COALESCE(platform_source, '${zr}') as platform_source, + user_prompt, custom_title, started_at, started_at_epoch, completed_at, completed_at_epoch, status FROM sdk_sessions WHERE memory_session_id IN (${r}) ORDER BY started_at_epoch DESC `).all(...e)}getPromptNumberFromUserPrompts(e){return this.db.prepare(` SELECT COUNT(*) as count FROM user_prompts WHERE content_session_id = ? - `).get(e).count}createSDKSession(e,r,n,i){let s=new Date,o=s.getTime(),a=this.db.prepare(` - SELECT id FROM sdk_sessions WHERE content_session_id = ? - `).get(e);return a?(r&&this.db.prepare(` + `).get(e).count}createSDKSession(e,r,n,i,s){let o=new Date,a=o.getTime(),c=EQ(i,s),u=c.platformSource??zr,l=this.db.prepare(` + SELECT id, platform_source FROM sdk_sessions WHERE content_session_id = ? + `).get(e);if(l){if(r&&this.db.prepare(` UPDATE sdk_sessions SET project = ? WHERE content_session_id = ? AND (project IS NULL OR project = '') - `).run(r,e),i&&this.db.prepare(` + `).run(r,e),c.customTitle&&this.db.prepare(` UPDATE sdk_sessions SET custom_title = ? WHERE content_session_id = ? AND custom_title IS NULL - `).run(i,e),a.id):(this.db.prepare(` + `).run(c.customTitle,e),c.platformSource){let p=l.platform_source?.trim()?Rt(l.platform_source):void 0;if(!p)this.db.prepare(` + UPDATE sdk_sessions SET platform_source = ? + WHERE content_session_id = ? + AND COALESCE(platform_source, '') = '' + `).run(c.platformSource,e);else if(p!==c.platformSource)throw new Error(`Platform source conflict for session ${e}: existing=${p}, received=${c.platformSource}`)}return l.id}return this.db.prepare(` INSERT INTO sdk_sessions - (content_session_id, memory_session_id, project, user_prompt, custom_title, started_at, started_at_epoch, status) - VALUES (?, NULL, ?, ?, ?, ?, ?, 'active') - `).run(e,r,n,i||null,s.toISOString(),o),this.db.prepare("SELECT id FROM sdk_sessions WHERE content_session_id = ?").get(e).id)}saveUserPrompt(e,r,n){let i=new Date,s=i.getTime();return this.db.prepare(` + (content_session_id, memory_session_id, project, platform_source, user_prompt, custom_title, started_at, started_at_epoch, status) + VALUES (?, NULL, ?, ?, ?, ?, ?, ?, 'active') + `).run(e,r,u,n,c.customTitle||null,o.toISOString(),a),this.db.prepare("SELECT id FROM sdk_sessions WHERE content_session_id = ?").get(e).id}saveUserPrompt(e,r,n){let i=new Date,s=i.getTime();return this.db.prepare(` INSERT INTO user_prompts (content_session_id, prompt_number, prompt_text, created_at, created_at_epoch) VALUES (?, ?, ?, ?, ?) @@ -445,37 +496,40 @@ ${s.stack}`:` ${s.message}`:this.getLevel()===0&&typeof s=="object"?l=` FROM user_prompts WHERE content_session_id = ? AND prompt_number = ? LIMIT 1 - `).get(e,r)?.prompt_text??null}storeObservation(e,r,n,i,s=0,o){let a=o??Date.now(),c=new Date(a).toISOString(),u=tg(e,n.title,n.narrative),l=rg(this.db,u,a);if(l)return{id:l.id,createdAtEpoch:l.created_at_epoch};let p=this.db.prepare(` + `).get(e,r)?.prompt_text??null}storeObservation(e,r,n,i,s=0,o,a){let c=o??Date.now(),u=new Date(c).toISOString(),l=hg(e,n.title,n.narrative),d=gg(this.db,l,c);if(d)return{id:d.id,createdAtEpoch:d.created_at_epoch};let f=this.db.prepare(` INSERT INTO observations (memory_session_id, project, type, title, subtitle, facts, narrative, concepts, - files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch) - VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) - `).run(e,r,n.type,n.title,n.subtitle,JSON.stringify(n.facts),n.narrative,JSON.stringify(n.concepts),JSON.stringify(n.files_read),JSON.stringify(n.files_modified),i||null,s,u,c,a);return{id:Number(p.lastInsertRowid),createdAtEpoch:a}}storeSummary(e,r,n,i,s=0,o){let a=o??Date.now(),c=new Date(a).toISOString(),l=this.db.prepare(` + files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch, + generated_by_model) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `).run(e,r,n.type,n.title,n.subtitle,JSON.stringify(n.facts),n.narrative,JSON.stringify(n.concepts),JSON.stringify(n.files_read),JSON.stringify(n.files_modified),i||null,s,l,u,c,a||null);return{id:Number(f.lastInsertRowid),createdAtEpoch:c}}storeSummary(e,r,n,i,s=0,o){let a=o??Date.now(),c=new Date(a).toISOString(),l=this.db.prepare(` INSERT INTO session_summaries (memory_session_id, project, request, investigated, learned, completed, next_steps, notes, prompt_number, discovery_tokens, created_at, created_at_epoch) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) - `).run(e,r,n.request,n.investigated,n.learned,n.completed,n.next_steps,n.notes,i||null,s,c,a);return{id:Number(l.lastInsertRowid),createdAtEpoch:a}}storeObservations(e,r,n,i,s,o=0,a){let c=a??Date.now(),u=new Date(c).toISOString();return this.db.transaction(()=>{let d=[],p=this.db.prepare(` + `).run(e,r,n.request,n.investigated,n.learned,n.completed,n.next_steps,n.notes,i||null,s,c,a);return{id:Number(l.lastInsertRowid),createdAtEpoch:a}}storeObservations(e,r,n,i,s,o=0,a,c){let u=a??Date.now(),l=new Date(u).toISOString();return this.db.transaction(()=>{let p=[],f=this.db.prepare(` INSERT INTO observations (memory_session_id, project, type, title, subtitle, facts, narrative, concepts, - files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch) - VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) - `);for(let m of n){let h=tg(e,m.title,m.narrative),g=rg(this.db,h,c);if(g){d.push(g.id);continue}let v=p.run(e,r,m.type,m.title,m.subtitle,JSON.stringify(m.facts),m.narrative,JSON.stringify(m.concepts),JSON.stringify(m.files_read),JSON.stringify(m.files_modified),s||null,o,h,u,c);d.push(Number(v.lastInsertRowid))}let f=null;if(i){let h=this.db.prepare(` + files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch, + generated_by_model) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `);for(let h of n){let g=hg(e,h.title,h.narrative),v=gg(this.db,g,u);if(v){p.push(v.id);continue}let y=f.run(e,r,h.type,h.title,h.subtitle,JSON.stringify(h.facts),h.narrative,JSON.stringify(h.concepts),JSON.stringify(h.files_read),JSON.stringify(h.files_modified),s||null,o,g,l,u,c||null);p.push(Number(y.lastInsertRowid))}let m=null;if(i){let g=this.db.prepare(` INSERT INTO session_summaries (memory_session_id, project, request, investigated, learned, completed, next_steps, notes, prompt_number, discovery_tokens, created_at, created_at_epoch) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) - `).run(e,r,i.request,i.investigated,i.learned,i.completed,i.next_steps,i.notes,s||null,o,u,c);f=Number(h.lastInsertRowid)}return{observationIds:d,summaryId:f,createdAtEpoch:c}})()}storeObservationsAndMarkComplete(e,r,n,i,s,o,a,c=0,u){let l=u??Date.now(),d=new Date(l).toISOString();return this.db.transaction(()=>{let f=[],m=this.db.prepare(` + `).run(e,r,i.request,i.investigated,i.learned,i.completed,i.next_steps,i.notes,s||null,o,l,u);m=Number(g.lastInsertRowid)}return{observationIds:p,summaryId:m,createdAtEpoch:u}})()}storeObservationsAndMarkComplete(e,r,n,i,s,o,a,c=0,u,l){let d=u??Date.now(),p=new Date(d).toISOString();return this.db.transaction(()=>{let m=[],h=this.db.prepare(` INSERT INTO observations (memory_session_id, project, type, title, subtitle, facts, narrative, concepts, - files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch) - VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) - `);for(let v of n){let S=tg(e,v.title,v.narrative),b=rg(this.db,S,l);if(b){f.push(b.id);continue}let y=m.run(e,r,v.type,v.title,v.subtitle,JSON.stringify(v.facts),v.narrative,JSON.stringify(v.concepts),JSON.stringify(v.files_read),JSON.stringify(v.files_modified),a||null,c,S,d,l);f.push(Number(y.lastInsertRowid))}let h;if(i){let S=this.db.prepare(` + files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch, + generated_by_model) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `);for(let y of n){let b=hg(e,y.title,y.narrative),S=gg(this.db,b,d);if(S){m.push(S.id);continue}let x=h.run(e,r,y.type,y.title,y.subtitle,JSON.stringify(y.facts),y.narrative,JSON.stringify(y.concepts),JSON.stringify(y.files_read),JSON.stringify(y.files_modified),a||null,c,b,p,d,l||null);m.push(Number(x.lastInsertRowid))}let g;if(i){let b=this.db.prepare(` INSERT INTO session_summaries (memory_session_id, project, request, investigated, learned, completed, next_steps, notes, prompt_number, discovery_tokens, created_at, created_at_epoch) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) - `).run(e,r,i.request,i.investigated,i.learned,i.completed,i.next_steps,i.notes,a||null,c,d,l);h=Number(S.lastInsertRowid)}return this.db.prepare(` + `).run(e,r,i.request,i.investigated,i.learned,i.completed,i.next_steps,i.notes,a||null,c,p,d);g=Number(b.lastInsertRowid)}return this.db.prepare(` UPDATE pending_messages SET status = 'processed', @@ -483,7 +537,7 @@ ${s.stack}`:` ${s.message}`:this.getLevel()===0&&typeof s=="object"?l=` tool_input = NULL, tool_response = NULL WHERE id = ? AND status = 'processing' - `).run(l,s),{observationIds:f,summaryId:h,createdAtEpoch:l}})()}getSessionSummariesByIds(e,r={}){if(e.length===0)return[];let{orderBy:n="date_desc",limit:i,project:s}=r,o=n==="date_asc"?"ASC":"DESC",a=i?`LIMIT ${i}`:"",c=e.map(()=>"?").join(","),u=[...e],l=s?`WHERE id IN (${c}) AND project = ?`:`WHERE id IN (${c})`;return s&&u.push(s),this.db.prepare(` + `).run(d,s),{observationIds:m,summaryId:g,createdAtEpoch:d}})()}getSessionSummariesByIds(e,r={}){if(e.length===0)return[];let{orderBy:n="date_desc",limit:i,project:s}=r,o=n==="date_asc"?"ASC":"DESC",a=i?`LIMIT ${i}`:"",c=e.map(()=>"?").join(","),u=[...e],l=s?`WHERE id IN (${c}) AND project = ?`:`WHERE id IN (${c})`;return s&&u.push(s),this.db.prepare(` SELECT * FROM session_summaries ${l} ORDER BY created_at_epoch ${o} @@ -510,7 +564,7 @@ ${s.stack}`:` ${s.message}`:this.getLevel()===0&&typeof s=="object"?l=` WHERE id >= ? ${o} ORDER BY id ASC LIMIT ? - `;try{let S=this.db.prepare(g).all(e,...a,n+1),b=this.db.prepare(v).all(e,...a,i+1);if(S.length===0&&b.length===0)return{observations:[],sessions:[],prompts:[]};c=S.length>0?S[S.length-1].created_at_epoch:r,u=b.length>0?b[b.length-1].created_at_epoch:r}catch(S){return _.error("DB","Error getting boundary observations",void 0,{error:S,project:s}),{observations:[],sessions:[],prompts:[]}}}else{let g=` + `;try{let y=this.db.prepare(g).all(e,...a,n+1),b=this.db.prepare(v).all(e,...a,i+1);if(y.length===0&&b.length===0)return{observations:[],sessions:[],prompts:[]};c=y.length>0?y[y.length-1].created_at_epoch:r,u=b.length>0?b[b.length-1].created_at_epoch:r}catch(y){return _.error("DB","Error getting boundary observations",void 0,{error:y,project:s}),{observations:[],sessions:[],prompts:[]}}}else{let g=` SELECT created_at_epoch FROM observations WHERE created_at_epoch <= ? ${o} @@ -522,7 +576,7 @@ ${s.stack}`:` ${s.message}`:this.getLevel()===0&&typeof s=="object"?l=` WHERE created_at_epoch >= ? ${o} ORDER BY created_at_epoch ASC LIMIT ? - `;try{let S=this.db.prepare(g).all(r,...a,n),b=this.db.prepare(v).all(r,...a,i+1);if(S.length===0&&b.length===0)return{observations:[],sessions:[],prompts:[]};c=S.length>0?S[S.length-1].created_at_epoch:r,u=b.length>0?b[b.length-1].created_at_epoch:r}catch(S){return _.error("DB","Error getting boundary timestamps",void 0,{error:S,project:s}),{observations:[],sessions:[],prompts:[]}}}let l=` + `;try{let y=this.db.prepare(g).all(r,...a,n),b=this.db.prepare(v).all(r,...a,i+1);if(y.length===0&&b.length===0)return{observations:[],sessions:[],prompts:[]};c=y.length>0?y[y.length-1].created_at_epoch:r,u=b.length>0?b[b.length-1].created_at_epoch:r}catch(y){return _.error("DB","Error getting boundary timestamps",void 0,{error:y,project:s}),{observations:[],sessions:[],prompts:[]}}}let l=` SELECT * FROM observations WHERE created_at_epoch >= ? AND created_at_epoch <= ? ${o} @@ -580,14 +634,14 @@ ${s.stack}`:` ${s.message}`:this.getLevel()===0&&typeof s=="object"?l=` WHERE id = ? LIMIT 1 `).get(e)||null}getOrCreateManualSession(e){let r=`manual-${e}`,n=`manual-content-${e}`;if(this.db.prepare("SELECT memory_session_id FROM sdk_sessions WHERE memory_session_id = ?").get(r))return r;let s=new Date;return this.db.prepare(` - INSERT INTO sdk_sessions (memory_session_id, content_session_id, project, started_at, started_at_epoch, status) - VALUES (?, ?, ?, ?, ?, 'active') - `).run(r,n,e,s.toISOString(),s.getTime()),_.info("SESSION","Created manual session",{memorySessionId:r,project:e}),r}close(){this.db.close()}importSdkSession(e){let r=this.db.prepare("SELECT id FROM sdk_sessions WHERE content_session_id = ?").get(e.content_session_id);return r?{imported:!1,id:r.id}:{imported:!0,id:this.db.prepare(` + INSERT INTO sdk_sessions (memory_session_id, content_session_id, project, platform_source, started_at, started_at_epoch, status) + VALUES (?, ?, ?, ?, ?, ?, 'active') + `).run(r,n,e,zr,s.toISOString(),s.getTime()),_.info("SESSION","Created manual session",{memorySessionId:r,project:e}),r}close(){this.db.close()}importSdkSession(e){let r=this.db.prepare("SELECT id FROM sdk_sessions WHERE content_session_id = ?").get(e.content_session_id);return r?{imported:!1,id:r.id}:{imported:!0,id:this.db.prepare(` INSERT INTO sdk_sessions ( - content_session_id, memory_session_id, project, user_prompt, + content_session_id, memory_session_id, project, platform_source, user_prompt, started_at, started_at_epoch, completed_at, completed_at_epoch, status - ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?) - `).run(e.content_session_id,e.memory_session_id,e.project,e.user_prompt,e.started_at,e.started_at_epoch,e.completed_at,e.completed_at_epoch,e.status).lastInsertRowid}}importSessionSummary(e){let r=this.db.prepare("SELECT id FROM session_summaries WHERE memory_session_id = ?").get(e.memory_session_id);return r?{imported:!1,id:r.id}:{imported:!0,id:this.db.prepare(` + ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + `).run(e.content_session_id,e.memory_session_id,e.project,Rt(e.platform_source),e.user_prompt,e.started_at,e.started_at_epoch,e.completed_at,e.completed_at_epoch,e.status).lastInsertRowid}}importSessionSummary(e){let r=this.db.prepare("SELECT id FROM session_summaries WHERE memory_session_id = ?").get(e.memory_session_id);return r?{imported:!1,id:r.id}:{imported:!0,id:this.db.prepare(` INSERT INTO session_summaries ( memory_session_id, project, request, investigated, learned, completed, next_steps, files_read, files_edited, notes, @@ -610,26 +664,26 @@ ${s.stack}`:` ${s.message}`:this.getLevel()===0&&typeof s=="object"?l=` content_session_id, prompt_number, prompt_text, created_at, created_at_epoch ) VALUES (?, ?, ?, ?, ?) - `).run(e.content_session_id,e.prompt_number,e.prompt_text,e.created_at,e.created_at_epoch).lastInsertRowid}}}});var Hi=$((JCe,tD)=>{var lQ=require("path").relative;tD.exports=hQ;var dQ=process.cwd();function QM(t,e){for(var r=t.split(/[ ,]+/),n=String(e).toLowerCase(),i=0;i0}function vQ(t){if(process.noDeprecation)return!0;var e=process.env.NO_DEPRECATION||"";return QM(e,t)}function yQ(t){if(process.traceDeprecation)return!0;var e=process.env.TRACE_DEPRECATION||"";return QM(e,t)}function cg(t,e){var r=gQ(process,"deprecation");if(!(!r&&this._ignored)){var n,i,s,o,a=0,c=!1,u=ug(),l=this._file;for(e?(o=e,s=Pc(u[1]),s.name=o.name,l=s[0]):(a=2,o=Pc(u[a]),s=o);a",r=t.getLineNumber(),n=t.getColumnNumber();t.isEval()&&(e=t.getEvalOrigin()+", "+e);var i=[e,r,n];return i.callSite=t,i.name=t.getFunctionName(),i}function YM(t){var e=t.callSite,r=t.name;r||(r="");var n=e.getThis(),i=n&&e.getTypeName();return i==="Object"&&(i=void 0),i==="Function"&&(i=n.name||i),i&&e.getMethodName()?i+"."+r:r}function _Q(t,e,r){var n=new Date().toUTCString(),i=n+" "+this._namespace+" deprecated "+t;if(this._traced){for(var s=0;s{var PQ=require("path").relative;xD.exports=jQ;var AQ=process.cwd();function bD(t,e){for(var r=t.split(/[ ,]+/),n=String(e).toLowerCase(),i=0;i0}function LQ(t){if(process.noDeprecation)return!0;var e=process.env.NO_DEPRECATION||"";return bD(e,t)}function UQ(t){if(process.traceDeprecation)return!0;var e=process.env.TRACE_DEPRECATION||"";return bD(e,t)}function bg(t,e){var r=zQ(process,"deprecation");if(!(!r&&this._ignored)){var n,i,s,o,a=0,c=!1,u=Sg(),l=this._file;for(e?(o=e,s=Bc(u[1]),s.name=o.name,l=s[0]):(a=2,o=Bc(u[a]),s=o);a",r=t.getLineNumber(),n=t.getColumnNumber();t.isEval()&&(e=t.getEvalOrigin()+", "+e);var i=[e,r,n];return i.callSite=t,i.name=t.getFunctionName(),i}function _D(t){var e=t.callSite,r=t.name;r||(r="");var n=e.getThis(),i=n&&e.getTypeName();return i==="Object"&&(i=void 0),i==="Function"&&(i=n.name||i),i&&e.getMethodName()?i+"."+r:r}function FQ(t,e,r){var n=new Date().toUTCString(),i=n+" "+this._namespace+" deprecated "+t;if(this._traced){for(var s=0;s{"use strict";lg.exports=$Q;lg.exports.format=rD;lg.exports.parse=nD;var EQ=/\B(?=(\d{3})+(?!\d))/g,kQ=/(?:\.0*|(\.[^0]+)0+)$/,oo={b:1,kb:1024,mb:1<<20,gb:1<<30,tb:Math.pow(1024,4),pb:Math.pow(1024,5)},TQ=/^((-|\+)?(\d+(?:\.\d+)?)) *(kb|mb|gb|tb|pb)$/i;function $Q(t,e){return typeof t=="string"?nD(t):typeof t=="number"?rD(t,e):null}function rD(t,e){if(!Number.isFinite(t))return null;var r=Math.abs(t),n=e&&e.thousandsSeparator||"",i=e&&e.unitSeparator||"",s=e&&e.decimalPlaces!==void 0?e.decimalPlaces:2,o=!!(e&&e.fixedDecimals),a=e&&e.unit||"";(!a||!oo[a.toLowerCase()])&&(r>=oo.pb?a="PB":r>=oo.tb?a="TB":r>=oo.gb?a="GB":r>=oo.mb?a="MB":r>=oo.kb?a="KB":a="B");var c=t/oo[a.toLowerCase()],u=c.toFixed(s);return o||(u=u.replace(kQ,"$1")),n&&(u=u.split(".").map(function(l,d){return d===0?l.replace(EQ,n):l}).join(".")),u+i+a}function nD(t){if(typeof t=="number"&&!isNaN(t))return t;if(typeof t!="string")return null;var e=TQ.exec(t),r,n="b";return e?(r=parseFloat(e[1]),n=e[4].toLowerCase()):(r=parseInt(t,10),n="b"),isNaN(r)?null:Math.floor(oo[n]*r)}});var Fd=$(ZE=>{"use strict";var iD=/; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g,IQ=/^[\u000b\u0020-\u007e\u0080-\u00ff]+$/,sD=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/,RQ=/\\([\u000b\u0020-\u00ff])/g,OQ=/([\\"])/g,oD=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;ZE.format=CQ;ZE.parse=PQ;function CQ(t){if(!t||typeof t!="object")throw new TypeError("argument obj is required");var e=t.parameters,r=t.type;if(!r||!oD.test(r))throw new TypeError("invalid type");var n=r;if(e&&typeof e=="object")for(var i,s=Object.keys(e).sort(),o=0;o0&&!IQ.test(e))throw new TypeError("invalid parameter value");return'"'+e.replace(OQ,"\\$1")+'"'}function MQ(t){this.parameters=Object.create(null),this.type=t}});var qd=$((QCe,aD)=>{"use strict";aD.exports=Object.setPrototypeOf||({__proto__:[]}instanceof Array?DQ:jQ);function DQ(t,e){return t.__proto__=e,t}function jQ(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(t,r)||(t[r]=e[r]);return t}});var cD=$((ePe,zQ)=>{zQ.exports={"100":"Continue","101":"Switching Protocols","102":"Processing","103":"Early Hints","200":"OK","201":"Created","202":"Accepted","203":"Non-Authoritative Information","204":"No Content","205":"Reset Content","206":"Partial Content","207":"Multi-Status","208":"Already Reported","226":"IM Used","300":"Multiple Choices","301":"Moved Permanently","302":"Found","303":"See Other","304":"Not Modified","305":"Use Proxy","307":"Temporary Redirect","308":"Permanent Redirect","400":"Bad Request","401":"Unauthorized","402":"Payment Required","403":"Forbidden","404":"Not Found","405":"Method Not Allowed","406":"Not Acceptable","407":"Proxy Authentication Required","408":"Request Timeout","409":"Conflict","410":"Gone","411":"Length Required","412":"Precondition Failed","413":"Payload Too Large","414":"URI Too Long","415":"Unsupported Media Type","416":"Range Not Satisfiable","417":"Expectation Failed","418":"I'm a Teapot","421":"Misdirected Request","422":"Unprocessable Entity","423":"Locked","424":"Failed Dependency","425":"Too Early","426":"Upgrade Required","428":"Precondition Required","429":"Too Many Requests","431":"Request Header Fields Too Large","451":"Unavailable For Legal Reasons","500":"Internal Server Error","501":"Not Implemented","502":"Bad Gateway","503":"Service Unavailable","504":"Gateway Timeout","505":"HTTP Version Not Supported","506":"Variant Also Negotiates","507":"Insufficient Storage","508":"Loop Detected","509":"Bandwidth Limit Exceeded","510":"Not Extended","511":"Network Authentication Required"}});var Hd=$((tPe,lD)=>{"use strict";var BE=cD();lD.exports=pi;pi.message=BE;pi.code=LQ(BE);pi.codes=UQ(BE);pi.redirect={300:!0,301:!0,302:!0,303:!0,305:!0,307:!0,308:!0};pi.empty={204:!0,205:!0,304:!0};pi.retry={502:!0,503:!0,504:!0};function LQ(t){var e={};return Object.keys(t).forEach(function(n){var i=t[n],s=Number(n);e[i.toLowerCase()]=s}),e}function UQ(t){return Object.keys(t).map(function(r){return Number(r)})}function FQ(t){var e=t.toLowerCase();if(!Object.prototype.hasOwnProperty.call(pi.code,e))throw new Error('invalid status message: "'+t+'"');return pi.code[e]}function uD(t){if(!Object.prototype.hasOwnProperty.call(pi.message,t))throw new Error("invalid status code: "+t);return pi.message[t]}function pi(t){if(typeof t=="number")return uD(t);if(typeof t!="string")throw new TypeError("code must be a number or string");var e=parseInt(t,10);return isNaN(e)?FQ(t):uD(e)}});var dD=$((rPe,GE)=>{typeof Object.create=="function"?GE.exports=function(e,r){r&&(e.super_=r,e.prototype=Object.create(r.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:GE.exports=function(e,r){if(r){e.super_=r;var n=function(){};n.prototype=r.prototype,e.prototype=new n,e.prototype.constructor=e}}});var pD=$((nPe,VE)=>{try{if(WE=require("util"),typeof WE.inherits!="function")throw"";VE.exports=WE.inherits}catch{VE.exports=dD()}var WE});var mD=$((iPe,fD)=>{"use strict";fD.exports=qQ;function qQ(t){return t.split(" ").map(function(e){return e.slice(0,1).toUpperCase()+e.slice(1)}).join("").replace(/[^ _0-9a-z]/gi,"")}});var ea=$((sPe,Qo)=>{"use strict";var HQ=Hi()("http-errors"),hD=qd(),Nc=Hd(),KE=pD(),ZQ=mD();Qo.exports=dg;Qo.exports.HttpError=BQ();Qo.exports.isHttpError=WQ(Qo.exports.HttpError);KQ(Qo.exports,Nc.codes,Qo.exports.HttpError);function gD(t){return+(String(t).charAt(0)+"00")}function dg(){for(var t,e,r=500,n={},i=0;i=600)&&HQ("non-error status code; use only 4xx or 5xx status codes"),(typeof r!="number"||!Nc.message[r]&&(r<400||r>=600))&&(r=500);var a=dg[r]||dg[gD(r)];t||(t=a?new a(e):new Error(e||Nc.message[r]),Error.captureStackTrace(t,dg)),(!a||!(t instanceof a)||t.status!==r)&&(t.expose=r<500,t.status=t.statusCode=r);for(var c in n)c!=="status"&&c!=="statusCode"&&(t[c]=n[c]);return t}function BQ(){function t(){throw new TypeError("cannot construct abstract class")}return KE(t,Error),t}function GQ(t,e,r){var n=yD(e);function i(s){var o=s??Nc.message[r],a=new Error(o);return Error.captureStackTrace(a,i),hD(a,i.prototype),Object.defineProperty(a,"message",{enumerable:!0,configurable:!0,value:o,writable:!0}),Object.defineProperty(a,"name",{enumerable:!1,configurable:!0,value:n,writable:!0}),a}return KE(i,t),vD(i,n),i.prototype.status=r,i.prototype.statusCode=r,i.prototype.expose=!0,i}function WQ(t){return function(r){return!r||typeof r!="object"?!1:r instanceof t?!0:r instanceof Error&&typeof r.expose=="boolean"&&typeof r.statusCode=="number"&&r.status===r.statusCode}}function VQ(t,e,r){var n=yD(e);function i(s){var o=s??Nc.message[r],a=new Error(o);return Error.captureStackTrace(a,i),hD(a,i.prototype),Object.defineProperty(a,"message",{enumerable:!0,configurable:!0,value:o,writable:!0}),Object.defineProperty(a,"name",{enumerable:!1,configurable:!0,value:n,writable:!0}),a}return KE(i,t),vD(i,n),i.prototype.status=r,i.prototype.statusCode=r,i.prototype.expose=!1,i}function vD(t,e){var r=Object.getOwnPropertyDescriptor(t,"name");r&&r.configurable&&(r.value=e,Object.defineProperty(t,"name",r))}function KQ(t,e,r){e.forEach(function(i){var s,o=ZQ(Nc.message[i]);switch(gD(i)){case 400:s=GQ(r,o,i);break;case 500:s=VQ(r,o,i);break}s&&(t[i]=s,t[o]=s)})}function yD(t){return t.slice(-5)==="Error"?t:t+"Error"}});var bD=$((oPe,_D)=>{var Zd=1e3,Bd=Zd*60,Gd=Bd*60,Wd=Gd*24,JQ=Wd*365.25;_D.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return XQ(t);if(r==="number"&&isNaN(t)===!1)return e.long?QQ(t):YQ(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function XQ(t){if(t=String(t),!(t.length>100)){var e=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*JQ;case"days":case"day":case"d":return r*Wd;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Gd;case"minutes":case"minute":case"mins":case"min":case"m":return r*Bd;case"seconds":case"second":case"secs":case"sec":case"s":return r*Zd;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function YQ(t){return t>=Wd?Math.round(t/Wd)+"d":t>=Gd?Math.round(t/Gd)+"h":t>=Bd?Math.round(t/Bd)+"m":t>=Zd?Math.round(t/Zd)+"s":t+"ms"}function QQ(t){return pg(t,Wd,"day")||pg(t,Gd,"hour")||pg(t,Bd,"minute")||pg(t,Zd,"second")||t+" ms"}function pg(t,e,r){if(!(t{pt=SD.exports=XE.debug=XE.default=XE;pt.coerce=iee;pt.disable=ree;pt.enable=tee;pt.enabled=nee;pt.humanize=bD();pt.names=[];pt.skips=[];pt.formatters={};var JE;function eee(t){var e=0,r;for(r in t)e=(e<<5)-e+t.charCodeAt(r),e|=0;return pt.colors[Math.abs(e)%pt.colors.length]}function XE(t){function e(){if(e.enabled){var r=e,n=+new Date,i=n-(JE||n);r.diff=i,r.prev=JE,r.curr=n,JE=n;for(var s=new Array(arguments.length),o=0;o{Xr=wD.exports=YE();Xr.log=aee;Xr.formatArgs=oee;Xr.save=cee;Xr.load=xD;Xr.useColors=see;Xr.storage=typeof chrome<"u"&&typeof chrome.storage<"u"?chrome.storage.local:uee();Xr.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function see(){return typeof window<"u"&&window.process&&window.process.type==="renderer"?!0:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}Xr.formatters.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}};function oee(t){var e=this.useColors;if(t[0]=(e?"%c":"")+this.namespace+(e?" %c":" ")+t[0]+(e?"%c ":" ")+"+"+Xr.humanize(this.diff),!!e){var r="color: "+this.color;t.splice(1,0,r,"color: inherit");var n=0,i=0;t[0].replace(/%[a-zA-Z%]/g,function(s){s!=="%%"&&(n++,s==="%c"&&(i=n))}),t.splice(i,0,r)}}function aee(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function cee(t){try{t==null?Xr.storage.removeItem("debug"):Xr.storage.debug=t}catch{}}function xD(){var t;try{t=Xr.storage.debug}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}Xr.enable(xD());function uee(){try{return window.localStorage}catch{}}});var ID=$((lr,$D)=>{var kD=require("tty"),Vd=require("util");lr=$D.exports=YE();lr.init=gee;lr.log=fee;lr.formatArgs=pee;lr.save=mee;lr.load=TD;lr.useColors=dee;lr.colors=[6,2,3,4,5,1];lr.inspectOpts=Object.keys(process.env).filter(function(t){return/^debug_/i.test(t)}).reduce(function(t,e){var r=e.substring(6).toLowerCase().replace(/_([a-z])/g,function(i,s){return s.toUpperCase()}),n=process.env[e];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),t[r]=n,t},{});var Mc=parseInt(process.env.DEBUG_FD,10)||2;Mc!==1&&Mc!==2&&Vd.deprecate(function(){},"except for stderr(2) and stdout(1), any other usage of DEBUG_FD is deprecated. Override debug.log if you want to use a different log function (https://git.io/debug_fd)")();var lee=Mc===1?process.stdout:Mc===2?process.stderr:hee(Mc);function dee(){return"colors"in lr.inspectOpts?!!lr.inspectOpts.colors:kD.isatty(Mc)}lr.formatters.o=function(t){return this.inspectOpts.colors=this.useColors,Vd.inspect(t,this.inspectOpts).split(` -`).map(function(e){return e.trim()}).join(" ")};lr.formatters.O=function(t){return this.inspectOpts.colors=this.useColors,Vd.inspect(t,this.inspectOpts)};function pee(t){var e=this.namespace,r=this.useColors;if(r){var n=this.color,i=" \x1B[3"+n+";1m"+e+" \x1B[0m";t[0]=i+t[0].split(` +}`)(t,bg,this,e,i);return s}function BQ(t,e,r){if(!t||typeof t!="object"&&typeof t!="function")throw new TypeError("argument obj must be object");var n=Object.getOwnPropertyDescriptor(t,e);if(!n)throw new TypeError("must call property on owner object");if(!n.configurable)throw new TypeError("property must be configurable");var i=this,s=Sg(),o=Bc(s[1]);o.name=e,"value"in n&&(n=NQ(t,e,r));var a=n.get,c=n.set;typeof a=="function"&&(n.get=function(){return bg.call(i,r,o),a.apply(this,arguments)}),typeof c=="function"&&(n.set=function(){return bg.call(i,r,o),c.apply(this,arguments)}),Object.defineProperty(t,e,n)}function SD(t,e,r){var n=new Error,i;return Object.defineProperty(n,"constructor",{value:SD}),Object.defineProperty(n,"message",{configurable:!0,enumerable:!1,value:e,writable:!0}),Object.defineProperty(n,"name",{enumerable:!1,configurable:!0,value:"DeprecationError",writable:!0}),Object.defineProperty(n,"namespace",{configurable:!0,enumerable:!1,value:t,writable:!0}),Object.defineProperty(n,"stack",{configurable:!0,enumerable:!1,get:function(){return i!==void 0?i:i=DQ.call(this,r)},set:function(o){i=o}}),n}});var Gc=$((zPe,xg)=>{"use strict";xg.exports=KQ;xg.exports.format=wD;xg.exports.parse=ED;var GQ=/\B(?=(\d{3})+(?!\d))/g,WQ=/(?:\.0*|(\.[^0]+)0+)$/,yo={b:1,kb:1024,mb:1<<20,gb:1<<30,tb:Math.pow(1024,4),pb:Math.pow(1024,5)},VQ=/^((-|\+)?(\d+(?:\.\d+)?)) *(kb|mb|gb|tb|pb)$/i;function KQ(t,e){return typeof t=="string"?ED(t):typeof t=="number"?wD(t,e):null}function wD(t,e){if(!Number.isFinite(t))return null;var r=Math.abs(t),n=e&&e.thousandsSeparator||"",i=e&&e.unitSeparator||"",s=e&&e.decimalPlaces!==void 0?e.decimalPlaces:2,o=!!(e&&e.fixedDecimals),a=e&&e.unit||"";(!a||!yo[a.toLowerCase()])&&(r>=yo.pb?a="PB":r>=yo.tb?a="TB":r>=yo.gb?a="GB":r>=yo.mb?a="MB":r>=yo.kb?a="KB":a="B");var c=t/yo[a.toLowerCase()],u=c.toFixed(s);return o||(u=u.replace(WQ,"$1")),n&&(u=u.split(".").map(function(l,d){return d===0?l.replace(GQ,n):l}).join(".")),u+i+a}function ED(t){if(typeof t=="number"&&!isNaN(t))return t;if(typeof t!="string")return null;var e=VQ.exec(t),r,n="b";return e?(r=parseFloat(e[1]),n=e[4].toLowerCase()):(r=parseInt(t,10),n="b"),isNaN(r)?null:Math.floor(yo[n]*r)}});var ep=$(ck=>{"use strict";var kD=/; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g,JQ=/^[\u000b\u0020-\u007e\u0080-\u00ff]+$/,TD=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/,XQ=/\\([\u000b\u0020-\u00ff])/g,YQ=/([\\"])/g,$D=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;ck.format=QQ;ck.parse=eee;function QQ(t){if(!t||typeof t!="object")throw new TypeError("argument obj is required");var e=t.parameters,r=t.type;if(!r||!$D.test(r))throw new TypeError("invalid type");var n=r;if(e&&typeof e=="object")for(var i,s=Object.keys(e).sort(),o=0;o0&&!JQ.test(e))throw new TypeError("invalid parameter value");return'"'+e.replace(YQ,"\\$1")+'"'}function nee(t){this.parameters=Object.create(null),this.type=t}});var tp=$((UPe,ID)=>{"use strict";ID.exports=Object.setPrototypeOf||({__proto__:[]}instanceof Array?iee:see);function iee(t,e){return t.__proto__=e,t}function see(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(t,r)||(t[r]=e[r]);return t}});var RD=$((FPe,oee)=>{oee.exports={"100":"Continue","101":"Switching Protocols","102":"Processing","103":"Early Hints","200":"OK","201":"Created","202":"Accepted","203":"Non-Authoritative Information","204":"No Content","205":"Reset Content","206":"Partial Content","207":"Multi-Status","208":"Already Reported","226":"IM Used","300":"Multiple Choices","301":"Moved Permanently","302":"Found","303":"See Other","304":"Not Modified","305":"Use Proxy","307":"Temporary Redirect","308":"Permanent Redirect","400":"Bad Request","401":"Unauthorized","402":"Payment Required","403":"Forbidden","404":"Not Found","405":"Method Not Allowed","406":"Not Acceptable","407":"Proxy Authentication Required","408":"Request Timeout","409":"Conflict","410":"Gone","411":"Length Required","412":"Precondition Failed","413":"Payload Too Large","414":"URI Too Long","415":"Unsupported Media Type","416":"Range Not Satisfiable","417":"Expectation Failed","418":"I'm a Teapot","421":"Misdirected Request","422":"Unprocessable Entity","423":"Locked","424":"Failed Dependency","425":"Too Early","426":"Upgrade Required","428":"Precondition Required","429":"Too Many Requests","431":"Request Header Fields Too Large","451":"Unavailable For Legal Reasons","500":"Internal Server Error","501":"Not Implemented","502":"Bad Gateway","503":"Service Unavailable","504":"Gateway Timeout","505":"HTTP Version Not Supported","506":"Variant Also Negotiates","507":"Insufficient Storage","508":"Loop Detected","509":"Bandwidth Limit Exceeded","510":"Not Extended","511":"Network Authentication Required"}});var rp=$((qPe,CD)=>{"use strict";var uk=RD();CD.exports=gi;gi.message=uk;gi.code=aee(uk);gi.codes=cee(uk);gi.redirect={300:!0,301:!0,302:!0,303:!0,305:!0,307:!0,308:!0};gi.empty={204:!0,205:!0,304:!0};gi.retry={502:!0,503:!0,504:!0};function aee(t){var e={};return Object.keys(t).forEach(function(n){var i=t[n],s=Number(n);e[i.toLowerCase()]=s}),e}function cee(t){return Object.keys(t).map(function(r){return Number(r)})}function uee(t){var e=t.toLowerCase();if(!Object.prototype.hasOwnProperty.call(gi.code,e))throw new Error('invalid status message: "'+t+'"');return gi.code[e]}function OD(t){if(!Object.prototype.hasOwnProperty.call(gi.message,t))throw new Error("invalid status code: "+t);return gi.message[t]}function gi(t){if(typeof t=="number")return OD(t);if(typeof t!="string")throw new TypeError("code must be a number or string");var e=parseInt(t,10);return isNaN(e)?uee(t):OD(e)}});var PD=$((HPe,lk)=>{typeof Object.create=="function"?lk.exports=function(e,r){r&&(e.super_=r,e.prototype=Object.create(r.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:lk.exports=function(e,r){if(r){e.super_=r;var n=function(){};n.prototype=r.prototype,e.prototype=new n,e.prototype.constructor=e}}});var AD=$((ZPe,pk)=>{try{if(dk=require("util"),typeof dk.inherits!="function")throw"";pk.exports=dk.inherits}catch{pk.exports=PD()}var dk});var MD=$((BPe,ND)=>{"use strict";ND.exports=lee;function lee(t){return t.split(" ").map(function(e){return e.slice(0,1).toUpperCase()+e.slice(1)}).join("").replace(/[^ _0-9a-z]/gi,"")}});var ca=$((GPe,aa)=>{"use strict";var dee=Vi()("http-errors"),DD=tp(),Wc=rp(),fk=AD(),pee=MD();aa.exports=wg;aa.exports.HttpError=fee();aa.exports.isHttpError=hee(aa.exports.HttpError);vee(aa.exports,Wc.codes,aa.exports.HttpError);function jD(t){return+(String(t).charAt(0)+"00")}function wg(){for(var t,e,r=500,n={},i=0;i=600)&&dee("non-error status code; use only 4xx or 5xx status codes"),(typeof r!="number"||!Wc.message[r]&&(r<400||r>=600))&&(r=500);var a=wg[r]||wg[jD(r)];t||(t=a?new a(e):new Error(e||Wc.message[r]),Error.captureStackTrace(t,wg)),(!a||!(t instanceof a)||t.status!==r)&&(t.expose=r<500,t.status=t.statusCode=r);for(var c in n)c!=="status"&&c!=="statusCode"&&(t[c]=n[c]);return t}function fee(){function t(){throw new TypeError("cannot construct abstract class")}return fk(t,Error),t}function mee(t,e,r){var n=LD(e);function i(s){var o=s??Wc.message[r],a=new Error(o);return Error.captureStackTrace(a,i),DD(a,i.prototype),Object.defineProperty(a,"message",{enumerable:!0,configurable:!0,value:o,writable:!0}),Object.defineProperty(a,"name",{enumerable:!1,configurable:!0,value:n,writable:!0}),a}return fk(i,t),zD(i,n),i.prototype.status=r,i.prototype.statusCode=r,i.prototype.expose=!0,i}function hee(t){return function(r){return!r||typeof r!="object"?!1:r instanceof t?!0:r instanceof Error&&typeof r.expose=="boolean"&&typeof r.statusCode=="number"&&r.status===r.statusCode}}function gee(t,e,r){var n=LD(e);function i(s){var o=s??Wc.message[r],a=new Error(o);return Error.captureStackTrace(a,i),DD(a,i.prototype),Object.defineProperty(a,"message",{enumerable:!0,configurable:!0,value:o,writable:!0}),Object.defineProperty(a,"name",{enumerable:!1,configurable:!0,value:n,writable:!0}),a}return fk(i,t),zD(i,n),i.prototype.status=r,i.prototype.statusCode=r,i.prototype.expose=!1,i}function zD(t,e){var r=Object.getOwnPropertyDescriptor(t,"name");r&&r.configurable&&(r.value=e,Object.defineProperty(t,"name",r))}function vee(t,e,r){e.forEach(function(i){var s,o=pee(Wc.message[i]);switch(jD(i)){case 400:s=mee(r,o,i);break;case 500:s=gee(r,o,i);break}s&&(t[i]=s,t[o]=s)})}function LD(t){return t.slice(-5)==="Error"?t:t+"Error"}});var FD=$((WPe,UD)=>{var np=1e3,ip=np*60,sp=ip*60,op=sp*24,yee=op*365.25;UD.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return _ee(t);if(r==="number"&&isNaN(t)===!1)return e.long?See(t):bee(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function _ee(t){if(t=String(t),!(t.length>100)){var e=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*yee;case"days":case"day":case"d":return r*op;case"hours":case"hour":case"hrs":case"hr":case"h":return r*sp;case"minutes":case"minute":case"mins":case"min":case"m":return r*ip;case"seconds":case"second":case"secs":case"sec":case"s":return r*np;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function bee(t){return t>=op?Math.round(t/op)+"d":t>=sp?Math.round(t/sp)+"h":t>=ip?Math.round(t/ip)+"m":t>=np?Math.round(t/np)+"s":t+"ms"}function See(t){return Eg(t,op,"day")||Eg(t,sp,"hour")||Eg(t,ip,"minute")||Eg(t,np,"second")||t+" ms"}function Eg(t,e,r){if(!(t{pt=qD.exports=hk.debug=hk.default=hk;pt.coerce=Tee;pt.disable=Eee;pt.enable=wee;pt.enabled=kee;pt.humanize=FD();pt.names=[];pt.skips=[];pt.formatters={};var mk;function xee(t){var e=0,r;for(r in t)e=(e<<5)-e+t.charCodeAt(r),e|=0;return pt.colors[Math.abs(e)%pt.colors.length]}function hk(t){function e(){if(e.enabled){var r=e,n=+new Date,i=n-(mk||n);r.diff=i,r.prev=mk,r.curr=n,mk=n;for(var s=new Array(arguments.length),o=0;o{Qr=ZD.exports=gk();Qr.log=Ree;Qr.formatArgs=Iee;Qr.save=Oee;Qr.load=HD;Qr.useColors=$ee;Qr.storage=typeof chrome<"u"&&typeof chrome.storage<"u"?chrome.storage.local:Cee();Qr.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function $ee(){return typeof window<"u"&&window.process&&window.process.type==="renderer"?!0:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}Qr.formatters.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}};function Iee(t){var e=this.useColors;if(t[0]=(e?"%c":"")+this.namespace+(e?" %c":" ")+t[0]+(e?"%c ":" ")+"+"+Qr.humanize(this.diff),!!e){var r="color: "+this.color;t.splice(1,0,r,"color: inherit");var n=0,i=0;t[0].replace(/%[a-zA-Z%]/g,function(s){s!=="%%"&&(n++,s==="%c"&&(i=n))}),t.splice(i,0,r)}}function Ree(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function Oee(t){try{t==null?Qr.storage.removeItem("debug"):Qr.storage.debug=t}catch{}}function HD(){var t;try{t=Qr.storage.debug}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}Qr.enable(HD());function Cee(){try{return window.localStorage}catch{}}});var KD=$((fr,VD)=>{var GD=require("tty"),ap=require("util");fr=VD.exports=gk();fr.init=zee;fr.log=Mee;fr.formatArgs=Nee;fr.save=Dee;fr.load=WD;fr.useColors=Aee;fr.colors=[6,2,3,4,5,1];fr.inspectOpts=Object.keys(process.env).filter(function(t){return/^debug_/i.test(t)}).reduce(function(t,e){var r=e.substring(6).toLowerCase().replace(/_([a-z])/g,function(i,s){return s.toUpperCase()}),n=process.env[e];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),t[r]=n,t},{});var Vc=parseInt(process.env.DEBUG_FD,10)||2;Vc!==1&&Vc!==2&&ap.deprecate(function(){},"except for stderr(2) and stdout(1), any other usage of DEBUG_FD is deprecated. Override debug.log if you want to use a different log function (https://git.io/debug_fd)")();var Pee=Vc===1?process.stdout:Vc===2?process.stderr:jee(Vc);function Aee(){return"colors"in fr.inspectOpts?!!fr.inspectOpts.colors:GD.isatty(Vc)}fr.formatters.o=function(t){return this.inspectOpts.colors=this.useColors,ap.inspect(t,this.inspectOpts).split(` +`).map(function(e){return e.trim()}).join(" ")};fr.formatters.O=function(t){return this.inspectOpts.colors=this.useColors,ap.inspect(t,this.inspectOpts)};function Nee(t){var e=this.namespace,r=this.useColors;if(r){var n=this.color,i=" \x1B[3"+n+";1m"+e+" \x1B[0m";t[0]=i+t[0].split(` `).join(` -`+i),t.push("\x1B[3"+n+"m+"+lr.humanize(this.diff)+"\x1B[0m")}else t[0]=new Date().toUTCString()+" "+e+" "+t[0]}function fee(){return lee.write(Vd.format.apply(Vd,arguments)+` -`)}function mee(t){t==null?delete process.env.DEBUG:process.env.DEBUG=t}function TD(){return process.env.DEBUG}function hee(t){var e,r=process.binding("tty_wrap");switch(r.guessHandleType(t)){case"TTY":e=new kD.WriteStream(t),e._type="tty",e._handle&&e._handle.unref&&e._handle.unref();break;case"FILE":var n=require("fs");e=new n.SyncWriteStream(t,{autoClose:!1}),e._type="fs";break;case"PIPE":case"TCP":var i=require("net");e=new i.Socket({fd:t,readable:!1,writable:!0}),e.readable=!1,e.read=null,e._type="pipe",e._handle&&e._handle.unref&&e._handle.unref();break;default:throw new Error("Implement me. Unknown stream file type!")}return e.fd=t,e._isStdio=!0,e}function gee(t){t.inspectOpts={};for(var e=Object.keys(lr.inspectOpts),r=0;r{typeof process<"u"&&process.type==="renderer"?QE.exports=ED():QE.exports=ID()});var ek=$((cPe,OD)=>{"use strict";var vee=require("events").EventEmitter,yee=require("fs").ReadStream,RD=require("stream"),ta=require("zlib");OD.exports=_ee;function _ee(t,e){return kee(t)?bee(t):Tee(t)?xee(t):wee(t)&&t.destroy(),Eee(t)&&e&&(t.removeAllListeners("error"),t.addListener("error",$ee)),t}function bee(t){t.destroy(),typeof t.close=="function"&&t.on("open",Ree)}function See(t){if(t._hadError===!0){var e=t._binding===null?"_binding":"_handle";t[e]={close:function(){this[e]=null}}}t.close()}function xee(t){typeof t.destroy=="function"?t._binding?(t.destroy(),t._processing?(t._needDrain=!0,t.once("drain",Iee)):t._binding.clear()):t._destroy&&t._destroy!==RD.Transform.prototype._destroy?t.destroy():t._destroy&&typeof t.close=="function"?(t.destroyed=!0,t.close()):t.destroy():typeof t.close=="function"&&See(t)}function wee(t){return t instanceof RD&&typeof t.destroy=="function"}function Eee(t){return t instanceof vee}function kee(t){return t instanceof yee}function Tee(t){return t instanceof ta.Gzip||t instanceof ta.Gunzip||t instanceof ta.Deflate||t instanceof ta.DeflateRaw||t instanceof ta.Inflate||t instanceof ta.InflateRaw||t instanceof ta.Unzip}function $ee(){}function Iee(){this._binding.clear()}function Ree(){typeof this.fd=="number"&&this.close()}});var ra=$((uPe,CD)=>{"use strict";var fg=require("buffer"),Dc=fg.Buffer,Bn={},Gn;for(Gn in fg)fg.hasOwnProperty(Gn)&&(Gn==="SlowBuffer"||Gn==="Buffer"||(Bn[Gn]=fg[Gn]));var jc=Bn.Buffer={};for(Gn in Dc)Dc.hasOwnProperty(Gn)&&(Gn==="allocUnsafe"||Gn==="allocUnsafeSlow"||(jc[Gn]=Dc[Gn]));Bn.Buffer.prototype=Dc.prototype;(!jc.from||jc.from===Uint8Array.from)&&(jc.from=function(t,e,r){if(typeof t=="number")throw new TypeError('The "value" argument must not be of type number. Received type '+typeof t);if(t&&typeof t.length>"u")throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);return Dc(t,e,r)});jc.alloc||(jc.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError('The "size" argument must be of type number. Received type '+typeof t);if(t<0||t>=2*(1<<30))throw new RangeError('The value "'+t+'" is invalid for option "size"');var n=Dc(t);return!e||e.length===0?n.fill(0):typeof r=="string"?n.fill(e,r):n.fill(e),n});if(!Bn.kStringMaxLength)try{Bn.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch{}Bn.constants||(Bn.constants={MAX_LENGTH:Bn.kMaxLength},Bn.kStringMaxLength&&(Bn.constants.MAX_STRING_LENGTH=Bn.kStringMaxLength));CD.exports=Bn});var AD=$(nk=>{"use strict";var PD="\uFEFF";nk.PrependBOM=tk;function tk(t,e){this.encoder=t,this.addBOM=!0}tk.prototype.write=function(t){return this.addBOM&&(t=PD+t,this.addBOM=!1),this.encoder.write(t)};tk.prototype.end=function(){return this.encoder.end()};nk.StripBOM=rk;function rk(t,e){this.decoder=t,this.pass=!1,this.options=e||{}}rk.prototype.write=function(t){var e=this.decoder.write(t);return this.pass||!e||(e[0]===PD&&(e=e.slice(1),typeof this.options.stripBOM=="function"&&this.options.stripBOM()),this.pass=!0),e};rk.prototype.end=function(){return this.decoder.end()}});var DD=$((dPe,MD)=>{"use strict";var Kd=ra().Buffer;MD.exports={utf8:{type:"_internal",bomAware:!0},cesu8:{type:"_internal",bomAware:!0},unicode11utf8:"utf8",ucs2:{type:"_internal",bomAware:!0},utf16le:"ucs2",binary:{type:"_internal"},base64:{type:"_internal"},hex:{type:"_internal"},_internal:ik};function ik(t,e){this.enc=t.encodingName,this.bomAware=t.bomAware,this.enc==="base64"?this.encoder=ok:this.enc==="cesu8"&&(this.enc="utf8",this.encoder=ak,Kd.from("eda0bdedb2a9","hex").toString()!=="\u{1F4A9}"&&(this.decoder=ck,this.defaultCharUnicode=e.defaultCharUnicode))}ik.prototype.encoder=sk;ik.prototype.decoder=ND;var mg=require("string_decoder").StringDecoder;mg.prototype.end||(mg.prototype.end=function(){});function ND(t,e){mg.call(this,e.enc)}ND.prototype=mg.prototype;function sk(t,e){this.enc=e.enc}sk.prototype.write=function(t){return Kd.from(t,this.enc)};sk.prototype.end=function(){};function ok(t,e){this.prevStr=""}ok.prototype.write=function(t){t=this.prevStr+t;var e=t.length-t.length%4;return this.prevStr=t.slice(e),t=t.slice(0,e),Kd.from(t,"base64")};ok.prototype.end=function(){return Kd.from(this.prevStr,"base64")};function ak(t,e){}ak.prototype.write=function(t){for(var e=Kd.alloc(t.length*3),r=0,n=0;n>>6),e[r++]=128+(i&63)):(e[r++]=224+(i>>>12),e[r++]=128+(i>>>6&63),e[r++]=128+(i&63))}return e.slice(0,r)};ak.prototype.end=function(){};function ck(t,e){this.acc=0,this.contBytes=0,this.accBytes=0,this.defaultCharUnicode=e.defaultCharUnicode}ck.prototype.write=function(t){for(var e=this.acc,r=this.contBytes,n=this.accBytes,i="",s=0;s0&&(i+=this.defaultCharUnicode,r=0),o<128?i+=String.fromCharCode(o):o<224?(e=o&31,r=1,n=1):o<240?(e=o&15,r=2,n=1):i+=this.defaultCharUnicode):r>0?(e=e<<6|o&63,r--,n++,r===0&&(n===2&&e<128&&e>0?i+=this.defaultCharUnicode:n===3&&e<2048?i+=this.defaultCharUnicode:i+=String.fromCharCode(e))):i+=this.defaultCharUnicode}return this.acc=e,this.contBytes=r,this.accBytes=n,i};ck.prototype.end=function(){var t=0;return this.contBytes>0&&(t+=this.defaultCharUnicode),t}});var zD=$(mk=>{"use strict";var hg=ra().Buffer;mk.utf16be=gg;function gg(){}gg.prototype.encoder=uk;gg.prototype.decoder=lk;gg.prototype.bomAware=!0;function uk(){}uk.prototype.write=function(t){for(var e=hg.from(t,"ucs2"),r=0;r=2)if(t[0]==254&&t[1]==255)r="utf-16be";else if(t[0]==255&&t[1]==254)r="utf-16le";else{for(var n=0,i=0,s=Math.min(t.length-t.length%2,64),o=0;on?r="utf-16be":i{"use strict";var Zi=ra().Buffer;_g.utf7=vg;_g.unicode11utf7="utf7";function vg(t,e){this.iconv=e}vg.prototype.encoder=gk;vg.prototype.decoder=vk;vg.prototype.bomAware=!0;var Oee=/[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;function gk(t,e){this.iconv=e.iconv}gk.prototype.write=function(t){return Zi.from(t.replace(Oee,function(e){return"+"+(e==="+"?"":this.iconv.encode(e,"utf16-be").toString("base64").replace(/=+$/,""))+"-"}.bind(this)))};gk.prototype.end=function(){};function vk(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=""}var Cee=/[A-Za-z0-9\/+]/,yk=[];for(Jd=0;Jd<256;Jd++)yk[Jd]=Cee.test(String.fromCharCode(Jd));var Jd,Pee=43,na=45,hk=38;vk.prototype.write=function(t){for(var e="",r=0,n=this.inBase64,i=this.base64Accum,s=0;s0&&(t=this.iconv.decode(Zi.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",t};_g.utf7imap=yg;function yg(t,e){this.iconv=e}yg.prototype.encoder=_k;yg.prototype.decoder=bk;yg.prototype.bomAware=!0;function _k(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=Zi.alloc(6),this.base64AccumIdx=0}_k.prototype.write=function(t){for(var e=this.inBase64,r=this.base64Accum,n=this.base64AccumIdx,i=Zi.alloc(t.length*5+10),s=0,o=0;o0&&(s+=i.write(r.slice(0,n).toString("base64").replace(/\//g,",").replace(/=+$/,""),s),n=0),i[s++]=na,e=!1),e||(i[s++]=a,a===hk&&(i[s++]=na))):(e||(i[s++]=hk,e=!0),e&&(r[n++]=a>>8,r[n++]=a&255,n==r.length&&(s+=i.write(r.toString("base64").replace(/\//g,","),s),n=0)))}return this.inBase64=e,this.base64AccumIdx=n,i.slice(0,s)};_k.prototype.end=function(){var t=Zi.alloc(10),e=0;return this.inBase64&&(this.base64AccumIdx>0&&(e+=t.write(this.base64Accum.slice(0,this.base64AccumIdx).toString("base64").replace(/\//g,",").replace(/=+$/,""),e),this.base64AccumIdx=0),t[e++]=na,this.inBase64=!1),t.slice(0,e)};function bk(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=""}var LD=yk.slice();LD[44]=!0;bk.prototype.write=function(t){for(var e="",r=0,n=this.inBase64,i=this.base64Accum,s=0;s0&&(t=this.iconv.decode(Zi.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",t}});var qD=$(FD=>{"use strict";var bg=ra().Buffer;FD._sbcs=Sk;function Sk(t,e){if(!t)throw new Error("SBCS codec is called without the data.");if(!t.chars||t.chars.length!==128&&t.chars.length!==256)throw new Error("Encoding '"+t.type+"' has incorrect 'chars' (must be of len 128 or 256)");if(t.chars.length===128){for(var r="",n=0;n<128;n++)r+=String.fromCharCode(n);t.chars=r+t.chars}this.decodeBuf=bg.from(t.chars,"ucs2");for(var i=bg.alloc(65536,e.defaultCharSingleByte.charCodeAt(0)),n=0;n{"use strict";HD.exports={10029:"maccenteuro",maccenteuro:{type:"_sbcs",chars:"\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7"},808:"cp808",ibm808:"cp808",cp808:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0"},mik:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ascii8bit:"ascii",usascii:"ascii",ansix34:"ascii",ansix341968:"ascii",ansix341986:"ascii",csascii:"ascii",cp367:"ascii",ibm367:"ascii",isoir6:"ascii",iso646us:"ascii",iso646irv:"ascii",us:"ascii",latin1:"iso88591",latin2:"iso88592",latin3:"iso88593",latin4:"iso88594",latin5:"iso88599",latin6:"iso885910",latin7:"iso885913",latin8:"iso885914",latin9:"iso885915",latin10:"iso885916",csisolatin1:"iso88591",csisolatin2:"iso88592",csisolatin3:"iso88593",csisolatin4:"iso88594",csisolatincyrillic:"iso88595",csisolatinarabic:"iso88596",csisolatingreek:"iso88597",csisolatinhebrew:"iso88598",csisolatin5:"iso88599",csisolatin6:"iso885910",l1:"iso88591",l2:"iso88592",l3:"iso88593",l4:"iso88594",l5:"iso88599",l6:"iso885910",l7:"iso885913",l8:"iso885914",l9:"iso885915",l10:"iso885916",isoir14:"iso646jp",isoir57:"iso646cn",isoir100:"iso88591",isoir101:"iso88592",isoir109:"iso88593",isoir110:"iso88594",isoir144:"iso88595",isoir127:"iso88596",isoir126:"iso88597",isoir138:"iso88598",isoir148:"iso88599",isoir157:"iso885910",isoir166:"tis620",isoir179:"iso885913",isoir199:"iso885914",isoir203:"iso885915",isoir226:"iso885916",cp819:"iso88591",ibm819:"iso88591",cyrillic:"iso88595",arabic:"iso88596",arabic8:"iso88596",ecma114:"iso88596",asmo708:"iso88596",greek:"iso88597",greek8:"iso88597",ecma118:"iso88597",elot928:"iso88597",hebrew:"iso88598",hebrew8:"iso88598",turkish:"iso88599",turkish8:"iso88599",thai:"iso885911",thai8:"iso885911",celtic:"iso885914",celtic8:"iso885914",isoceltic:"iso885914",tis6200:"tis620",tis62025291:"tis620",tis62025330:"tis620",1e4:"macroman",10006:"macgreek",10007:"maccyrillic",10079:"maciceland",10081:"macturkish",cspc8codepage437:"cp437",cspc775baltic:"cp775",cspc850multilingual:"cp850",cspcp852:"cp852",cspc862latinhebrew:"cp862",cpgr:"cp869",msee:"cp1250",mscyrl:"cp1251",msansi:"cp1252",msgreek:"cp1253",msturk:"cp1254",mshebr:"cp1255",msarab:"cp1256",winbaltrim:"cp1257",cp20866:"koi8r",20866:"koi8r",ibm878:"koi8r",cskoi8r:"koi8r",cp21866:"koi8u",21866:"koi8u",ibm1168:"koi8u",strk10482002:"rk1048",tcvn5712:"tcvn",tcvn57121:"tcvn",gb198880:"iso646cn",cn:"iso646cn",csiso14jisc6220ro:"iso646jp",jisc62201969ro:"iso646jp",jp:"iso646jp",cshproman8:"hproman8",r8:"hproman8",roman8:"hproman8",xroman8:"hproman8",ibm1051:"hproman8",mac:"macintosh",csmacintosh:"macintosh"}});var GD=$((gPe,BD)=>{"use strict";BD.exports={437:"cp437",737:"cp737",775:"cp775",850:"cp850",852:"cp852",855:"cp855",856:"cp856",857:"cp857",858:"cp858",860:"cp860",861:"cp861",862:"cp862",863:"cp863",864:"cp864",865:"cp865",866:"cp866",869:"cp869",874:"windows874",922:"cp922",1046:"cp1046",1124:"cp1124",1125:"cp1125",1129:"cp1129",1133:"cp1133",1161:"cp1161",1162:"cp1162",1163:"cp1163",1250:"windows1250",1251:"windows1251",1252:"windows1252",1253:"windows1253",1254:"windows1254",1255:"windows1255",1256:"windows1256",1257:"windows1257",1258:"windows1258",28591:"iso88591",28592:"iso88592",28593:"iso88593",28594:"iso88594",28595:"iso88595",28596:"iso88596",28597:"iso88597",28598:"iso88598",28599:"iso88599",28600:"iso885910",28601:"iso885911",28603:"iso885913",28604:"iso885914",28605:"iso885915",28606:"iso885916",windows874:{type:"_sbcs",chars:"\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},win874:"windows874",cp874:"windows874",windows1250:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},win1250:"windows1250",cp1250:"windows1250",windows1251:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},win1251:"windows1251",cp1251:"windows1251",windows1252:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},win1252:"windows1252",cp1252:"windows1252",windows1253:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},win1253:"windows1253",cp1253:"windows1253",windows1254:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},win1254:"windows1254",cp1254:"windows1254",windows1255:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},win1255:"windows1255",cp1255:"windows1255",windows1256:{type:"_sbcs",chars:"\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2"},win1256:"windows1256",cp1256:"windows1256",windows1257:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9"},win1257:"windows1257",cp1257:"windows1257",windows1258:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},win1258:"windows1258",cp1258:"windows1258",iso88591:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28591:"iso88591",iso88592:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},cp28592:"iso88592",iso88593:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9"},cp28593:"iso88593",iso88594:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9"},cp28594:"iso88594",iso88595:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},cp28595:"iso88595",iso88596:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},cp28596:"iso88596",iso88597:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},cp28597:"iso88597",iso88598:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},cp28598:"iso88598",iso88599:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},cp28599:"iso88599",iso885910:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138"},cp28600:"iso885910",iso885911:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},cp28601:"iso885911",iso885913:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019"},cp28603:"iso885913",iso885914:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF"},cp28604:"iso885914",iso885915:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28605:"iso885915",iso885916:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF"},cp28606:"iso885916",cp437:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm437:"cp437",csibm437:"cp437",cp737:{type:"_sbcs",chars:"\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm737:"cp737",csibm737:"cp737",cp775:{type:"_sbcs",chars:"\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm775:"cp775",csibm775:"cp775",cp850:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm850:"cp850",csibm850:"cp850",cp852:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0"},ibm852:"cp852",csibm852:"cp852",cp855:{type:"_sbcs",chars:"\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0"},ibm855:"cp855",csibm855:"cp855",cp856:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm856:"cp856",csibm856:"cp856",cp857:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm857:"cp857",csibm857:"cp857",cp858:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm858:"cp858",csibm858:"cp858",cp860:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm860:"cp860",csibm860:"cp860",cp861:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm861:"cp861",csibm861:"cp861",cp862:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm862:"cp862",csibm862:"cp862",cp863:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm863:"cp863",csibm863:"cp863",cp864:{type:"_sbcs",chars:`\0\x07\b +`+i),t.push("\x1B[3"+n+"m+"+fr.humanize(this.diff)+"\x1B[0m")}else t[0]=new Date().toUTCString()+" "+e+" "+t[0]}function Mee(){return Pee.write(ap.format.apply(ap,arguments)+` +`)}function Dee(t){t==null?delete process.env.DEBUG:process.env.DEBUG=t}function WD(){return process.env.DEBUG}function jee(t){var e,r=process.binding("tty_wrap");switch(r.guessHandleType(t)){case"TTY":e=new GD.WriteStream(t),e._type="tty",e._handle&&e._handle.unref&&e._handle.unref();break;case"FILE":var n=require("fs");e=new n.SyncWriteStream(t,{autoClose:!1}),e._type="fs";break;case"PIPE":case"TCP":var i=require("net");e=new i.Socket({fd:t,readable:!1,writable:!0}),e.readable=!1,e.read=null,e._type="pipe",e._handle&&e._handle.unref&&e._handle.unref();break;default:throw new Error("Implement me. Unknown stream file type!")}return e.fd=t,e._isStdio=!0,e}function zee(t){t.inspectOpts={};for(var e=Object.keys(fr.inspectOpts),r=0;r{typeof process<"u"&&process.type==="renderer"?vk.exports=BD():vk.exports=KD()});var yk=$((KPe,XD)=>{"use strict";var Lee=require("events").EventEmitter,Uee=require("fs").ReadStream,JD=require("stream"),ua=require("zlib");XD.exports=Fee;function Fee(t,e){return Wee(t)?qee(t):Vee(t)?Zee(t):Bee(t)&&t.destroy(),Gee(t)&&e&&(t.removeAllListeners("error"),t.addListener("error",Kee)),t}function qee(t){t.destroy(),typeof t.close=="function"&&t.on("open",Xee)}function Hee(t){if(t._hadError===!0){var e=t._binding===null?"_binding":"_handle";t[e]={close:function(){this[e]=null}}}t.close()}function Zee(t){typeof t.destroy=="function"?t._binding?(t.destroy(),t._processing?(t._needDrain=!0,t.once("drain",Jee)):t._binding.clear()):t._destroy&&t._destroy!==JD.Transform.prototype._destroy?t.destroy():t._destroy&&typeof t.close=="function"?(t.destroyed=!0,t.close()):t.destroy():typeof t.close=="function"&&Hee(t)}function Bee(t){return t instanceof JD&&typeof t.destroy=="function"}function Gee(t){return t instanceof Lee}function Wee(t){return t instanceof Uee}function Vee(t){return t instanceof ua.Gzip||t instanceof ua.Gunzip||t instanceof ua.Deflate||t instanceof ua.DeflateRaw||t instanceof ua.Inflate||t instanceof ua.InflateRaw||t instanceof ua.Unzip}function Kee(){}function Jee(){this._binding.clear()}function Xee(){typeof this.fd=="number"&&this.close()}});var la=$((JPe,YD)=>{"use strict";var kg=require("buffer"),Kc=kg.Buffer,Kn={},Jn;for(Jn in kg)kg.hasOwnProperty(Jn)&&(Jn==="SlowBuffer"||Jn==="Buffer"||(Kn[Jn]=kg[Jn]));var Jc=Kn.Buffer={};for(Jn in Kc)Kc.hasOwnProperty(Jn)&&(Jn==="allocUnsafe"||Jn==="allocUnsafeSlow"||(Jc[Jn]=Kc[Jn]));Kn.Buffer.prototype=Kc.prototype;(!Jc.from||Jc.from===Uint8Array.from)&&(Jc.from=function(t,e,r){if(typeof t=="number")throw new TypeError('The "value" argument must not be of type number. Received type '+typeof t);if(t&&typeof t.length>"u")throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);return Kc(t,e,r)});Jc.alloc||(Jc.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError('The "size" argument must be of type number. Received type '+typeof t);if(t<0||t>=2*(1<<30))throw new RangeError('The value "'+t+'" is invalid for option "size"');var n=Kc(t);return!e||e.length===0?n.fill(0):typeof r=="string"?n.fill(e,r):n.fill(e),n});if(!Kn.kStringMaxLength)try{Kn.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch{}Kn.constants||(Kn.constants={MAX_LENGTH:Kn.kMaxLength},Kn.kStringMaxLength&&(Kn.constants.MAX_STRING_LENGTH=Kn.kStringMaxLength));YD.exports=Kn});var ej=$(Sk=>{"use strict";var QD="\uFEFF";Sk.PrependBOM=_k;function _k(t,e){this.encoder=t,this.addBOM=!0}_k.prototype.write=function(t){return this.addBOM&&(t=QD+t,this.addBOM=!1),this.encoder.write(t)};_k.prototype.end=function(){return this.encoder.end()};Sk.StripBOM=bk;function bk(t,e){this.decoder=t,this.pass=!1,this.options=e||{}}bk.prototype.write=function(t){var e=this.decoder.write(t);return this.pass||!e||(e[0]===QD&&(e=e.slice(1),typeof this.options.stripBOM=="function"&&this.options.stripBOM()),this.pass=!0),e};bk.prototype.end=function(){return this.decoder.end()}});var nj=$((YPe,rj)=>{"use strict";var cp=la().Buffer;rj.exports={utf8:{type:"_internal",bomAware:!0},cesu8:{type:"_internal",bomAware:!0},unicode11utf8:"utf8",ucs2:{type:"_internal",bomAware:!0},utf16le:"ucs2",binary:{type:"_internal"},base64:{type:"_internal"},hex:{type:"_internal"},_internal:xk};function xk(t,e){this.enc=t.encodingName,this.bomAware=t.bomAware,this.enc==="base64"?this.encoder=Ek:this.enc==="cesu8"&&(this.enc="utf8",this.encoder=kk,cp.from("eda0bdedb2a9","hex").toString()!=="\u{1F4A9}"&&(this.decoder=Tk,this.defaultCharUnicode=e.defaultCharUnicode))}xk.prototype.encoder=wk;xk.prototype.decoder=tj;var Tg=require("string_decoder").StringDecoder;Tg.prototype.end||(Tg.prototype.end=function(){});function tj(t,e){Tg.call(this,e.enc)}tj.prototype=Tg.prototype;function wk(t,e){this.enc=e.enc}wk.prototype.write=function(t){return cp.from(t,this.enc)};wk.prototype.end=function(){};function Ek(t,e){this.prevStr=""}Ek.prototype.write=function(t){t=this.prevStr+t;var e=t.length-t.length%4;return this.prevStr=t.slice(e),t=t.slice(0,e),cp.from(t,"base64")};Ek.prototype.end=function(){return cp.from(this.prevStr,"base64")};function kk(t,e){}kk.prototype.write=function(t){for(var e=cp.alloc(t.length*3),r=0,n=0;n>>6),e[r++]=128+(i&63)):(e[r++]=224+(i>>>12),e[r++]=128+(i>>>6&63),e[r++]=128+(i&63))}return e.slice(0,r)};kk.prototype.end=function(){};function Tk(t,e){this.acc=0,this.contBytes=0,this.accBytes=0,this.defaultCharUnicode=e.defaultCharUnicode}Tk.prototype.write=function(t){for(var e=this.acc,r=this.contBytes,n=this.accBytes,i="",s=0;s0&&(i+=this.defaultCharUnicode,r=0),o<128?i+=String.fromCharCode(o):o<224?(e=o&31,r=1,n=1):o<240?(e=o&15,r=2,n=1):i+=this.defaultCharUnicode):r>0?(e=e<<6|o&63,r--,n++,r===0&&(n===2&&e<128&&e>0?i+=this.defaultCharUnicode:n===3&&e<2048?i+=this.defaultCharUnicode:i+=String.fromCharCode(e))):i+=this.defaultCharUnicode}return this.acc=e,this.contBytes=r,this.accBytes=n,i};Tk.prototype.end=function(){var t=0;return this.contBytes>0&&(t+=this.defaultCharUnicode),t}});var sj=$(Pk=>{"use strict";var $g=la().Buffer;Pk.utf16be=Ig;function Ig(){}Ig.prototype.encoder=$k;Ig.prototype.decoder=Ik;Ig.prototype.bomAware=!0;function $k(){}$k.prototype.write=function(t){for(var e=$g.from(t,"ucs2"),r=0;r=2)if(t[0]==254&&t[1]==255)r="utf-16be";else if(t[0]==255&&t[1]==254)r="utf-16le";else{for(var n=0,i=0,s=Math.min(t.length-t.length%2,64),o=0;on?r="utf-16be":i{"use strict";var Ki=la().Buffer;Cg.utf7=Rg;Cg.unicode11utf7="utf7";function Rg(t,e){this.iconv=e}Rg.prototype.encoder=Nk;Rg.prototype.decoder=Mk;Rg.prototype.bomAware=!0;var Yee=/[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;function Nk(t,e){this.iconv=e.iconv}Nk.prototype.write=function(t){return Ki.from(t.replace(Yee,function(e){return"+"+(e==="+"?"":this.iconv.encode(e,"utf16-be").toString("base64").replace(/=+$/,""))+"-"}.bind(this)))};Nk.prototype.end=function(){};function Mk(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=""}var Qee=/[A-Za-z0-9\/+]/,Dk=[];for(up=0;up<256;up++)Dk[up]=Qee.test(String.fromCharCode(up));var up,ete=43,da=45,Ak=38;Mk.prototype.write=function(t){for(var e="",r=0,n=this.inBase64,i=this.base64Accum,s=0;s0&&(t=this.iconv.decode(Ki.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",t};Cg.utf7imap=Og;function Og(t,e){this.iconv=e}Og.prototype.encoder=jk;Og.prototype.decoder=zk;Og.prototype.bomAware=!0;function jk(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=Ki.alloc(6),this.base64AccumIdx=0}jk.prototype.write=function(t){for(var e=this.inBase64,r=this.base64Accum,n=this.base64AccumIdx,i=Ki.alloc(t.length*5+10),s=0,o=0;o0&&(s+=i.write(r.slice(0,n).toString("base64").replace(/\//g,",").replace(/=+$/,""),s),n=0),i[s++]=da,e=!1),e||(i[s++]=a,a===Ak&&(i[s++]=da))):(e||(i[s++]=Ak,e=!0),e&&(r[n++]=a>>8,r[n++]=a&255,n==r.length&&(s+=i.write(r.toString("base64").replace(/\//g,","),s),n=0)))}return this.inBase64=e,this.base64AccumIdx=n,i.slice(0,s)};jk.prototype.end=function(){var t=Ki.alloc(10),e=0;return this.inBase64&&(this.base64AccumIdx>0&&(e+=t.write(this.base64Accum.slice(0,this.base64AccumIdx).toString("base64").replace(/\//g,",").replace(/=+$/,""),e),this.base64AccumIdx=0),t[e++]=da,this.inBase64=!1),t.slice(0,e)};function zk(t,e){this.iconv=e.iconv,this.inBase64=!1,this.base64Accum=""}var oj=Dk.slice();oj[44]=!0;zk.prototype.write=function(t){for(var e="",r=0,n=this.inBase64,i=this.base64Accum,s=0;s0&&(t=this.iconv.decode(Ki.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",t}});var uj=$(cj=>{"use strict";var Pg=la().Buffer;cj._sbcs=Lk;function Lk(t,e){if(!t)throw new Error("SBCS codec is called without the data.");if(!t.chars||t.chars.length!==128&&t.chars.length!==256)throw new Error("Encoding '"+t.type+"' has incorrect 'chars' (must be of len 128 or 256)");if(t.chars.length===128){for(var r="",n=0;n<128;n++)r+=String.fromCharCode(n);t.chars=r+t.chars}this.decodeBuf=Pg.from(t.chars,"ucs2");for(var i=Pg.alloc(65536,e.defaultCharSingleByte.charCodeAt(0)),n=0;n{"use strict";lj.exports={10029:"maccenteuro",maccenteuro:{type:"_sbcs",chars:"\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7"},808:"cp808",ibm808:"cp808",cp808:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0"},mik:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ascii8bit:"ascii",usascii:"ascii",ansix34:"ascii",ansix341968:"ascii",ansix341986:"ascii",csascii:"ascii",cp367:"ascii",ibm367:"ascii",isoir6:"ascii",iso646us:"ascii",iso646irv:"ascii",us:"ascii",latin1:"iso88591",latin2:"iso88592",latin3:"iso88593",latin4:"iso88594",latin5:"iso88599",latin6:"iso885910",latin7:"iso885913",latin8:"iso885914",latin9:"iso885915",latin10:"iso885916",csisolatin1:"iso88591",csisolatin2:"iso88592",csisolatin3:"iso88593",csisolatin4:"iso88594",csisolatincyrillic:"iso88595",csisolatinarabic:"iso88596",csisolatingreek:"iso88597",csisolatinhebrew:"iso88598",csisolatin5:"iso88599",csisolatin6:"iso885910",l1:"iso88591",l2:"iso88592",l3:"iso88593",l4:"iso88594",l5:"iso88599",l6:"iso885910",l7:"iso885913",l8:"iso885914",l9:"iso885915",l10:"iso885916",isoir14:"iso646jp",isoir57:"iso646cn",isoir100:"iso88591",isoir101:"iso88592",isoir109:"iso88593",isoir110:"iso88594",isoir144:"iso88595",isoir127:"iso88596",isoir126:"iso88597",isoir138:"iso88598",isoir148:"iso88599",isoir157:"iso885910",isoir166:"tis620",isoir179:"iso885913",isoir199:"iso885914",isoir203:"iso885915",isoir226:"iso885916",cp819:"iso88591",ibm819:"iso88591",cyrillic:"iso88595",arabic:"iso88596",arabic8:"iso88596",ecma114:"iso88596",asmo708:"iso88596",greek:"iso88597",greek8:"iso88597",ecma118:"iso88597",elot928:"iso88597",hebrew:"iso88598",hebrew8:"iso88598",turkish:"iso88599",turkish8:"iso88599",thai:"iso885911",thai8:"iso885911",celtic:"iso885914",celtic8:"iso885914",isoceltic:"iso885914",tis6200:"tis620",tis62025291:"tis620",tis62025330:"tis620",1e4:"macroman",10006:"macgreek",10007:"maccyrillic",10079:"maciceland",10081:"macturkish",cspc8codepage437:"cp437",cspc775baltic:"cp775",cspc850multilingual:"cp850",cspcp852:"cp852",cspc862latinhebrew:"cp862",cpgr:"cp869",msee:"cp1250",mscyrl:"cp1251",msansi:"cp1252",msgreek:"cp1253",msturk:"cp1254",mshebr:"cp1255",msarab:"cp1256",winbaltrim:"cp1257",cp20866:"koi8r",20866:"koi8r",ibm878:"koi8r",cskoi8r:"koi8r",cp21866:"koi8u",21866:"koi8u",ibm1168:"koi8u",strk10482002:"rk1048",tcvn5712:"tcvn",tcvn57121:"tcvn",gb198880:"iso646cn",cn:"iso646cn",csiso14jisc6220ro:"iso646jp",jisc62201969ro:"iso646jp",jp:"iso646jp",cshproman8:"hproman8",r8:"hproman8",roman8:"hproman8",xroman8:"hproman8",ibm1051:"hproman8",mac:"macintosh",csmacintosh:"macintosh"}});var fj=$((nAe,pj)=>{"use strict";pj.exports={437:"cp437",737:"cp737",775:"cp775",850:"cp850",852:"cp852",855:"cp855",856:"cp856",857:"cp857",858:"cp858",860:"cp860",861:"cp861",862:"cp862",863:"cp863",864:"cp864",865:"cp865",866:"cp866",869:"cp869",874:"windows874",922:"cp922",1046:"cp1046",1124:"cp1124",1125:"cp1125",1129:"cp1129",1133:"cp1133",1161:"cp1161",1162:"cp1162",1163:"cp1163",1250:"windows1250",1251:"windows1251",1252:"windows1252",1253:"windows1253",1254:"windows1254",1255:"windows1255",1256:"windows1256",1257:"windows1257",1258:"windows1258",28591:"iso88591",28592:"iso88592",28593:"iso88593",28594:"iso88594",28595:"iso88595",28596:"iso88596",28597:"iso88597",28598:"iso88598",28599:"iso88599",28600:"iso885910",28601:"iso885911",28603:"iso885913",28604:"iso885914",28605:"iso885915",28606:"iso885916",windows874:{type:"_sbcs",chars:"\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},win874:"windows874",cp874:"windows874",windows1250:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},win1250:"windows1250",cp1250:"windows1250",windows1251:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},win1251:"windows1251",cp1251:"windows1251",windows1252:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},win1252:"windows1252",cp1252:"windows1252",windows1253:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},win1253:"windows1253",cp1253:"windows1253",windows1254:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},win1254:"windows1254",cp1254:"windows1254",windows1255:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},win1255:"windows1255",cp1255:"windows1255",windows1256:{type:"_sbcs",chars:"\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2"},win1256:"windows1256",cp1256:"windows1256",windows1257:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9"},win1257:"windows1257",cp1257:"windows1257",windows1258:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},win1258:"windows1258",cp1258:"windows1258",iso88591:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28591:"iso88591",iso88592:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},cp28592:"iso88592",iso88593:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9"},cp28593:"iso88593",iso88594:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9"},cp28594:"iso88594",iso88595:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},cp28595:"iso88595",iso88596:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},cp28596:"iso88596",iso88597:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},cp28597:"iso88597",iso88598:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},cp28598:"iso88598",iso88599:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},cp28599:"iso88599",iso885910:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138"},cp28600:"iso885910",iso885911:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},cp28601:"iso885911",iso885913:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019"},cp28603:"iso885913",iso885914:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF"},cp28604:"iso885914",iso885915:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28605:"iso885915",iso885916:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF"},cp28606:"iso885916",cp437:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm437:"cp437",csibm437:"cp437",cp737:{type:"_sbcs",chars:"\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm737:"cp737",csibm737:"cp737",cp775:{type:"_sbcs",chars:"\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm775:"cp775",csibm775:"cp775",cp850:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm850:"cp850",csibm850:"cp850",cp852:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0"},ibm852:"cp852",csibm852:"cp852",cp855:{type:"_sbcs",chars:"\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0"},ibm855:"cp855",csibm855:"cp855",cp856:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm856:"cp856",csibm856:"cp856",cp857:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm857:"cp857",csibm857:"cp857",cp858:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm858:"cp858",csibm858:"cp858",cp860:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm860:"cp860",csibm860:"cp860",cp861:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm861:"cp861",csibm861:"cp861",cp862:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm862:"cp862",csibm862:"cp862",cp863:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm863:"cp863",csibm863:"cp863",cp864:{type:"_sbcs",chars:`\0\x07\b \v\f\r\x1B !"#$\u066A&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xB0\xB7\u2219\u221A\u2592\u2500\u2502\u253C\u2524\u252C\u251C\u2534\u2510\u250C\u2514\u2518\u03B2\u221E\u03C6\xB1\xBD\xBC\u2248\xAB\xBB\uFEF7\uFEF8\uFFFD\uFFFD\uFEFB\uFEFC\uFFFD\xA0\xAD\uFE82\xA3\xA4\uFE84\uFFFD\uFFFD\uFE8E\uFE8F\uFE95\uFE99\u060C\uFE9D\uFEA1\uFEA5\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFED1\u061B\uFEB1\uFEB5\uFEB9\u061F\xA2\uFE80\uFE81\uFE83\uFE85\uFECA\uFE8B\uFE8D\uFE91\uFE93\uFE97\uFE9B\uFE9F\uFEA3\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uFEB3\uFEB7\uFEBB\uFEBF\uFEC1\uFEC5\uFECB\uFECF\xA6\xAC\xF7\xD7\uFEC9\u0640\uFED3\uFED7\uFEDB\uFEDF\uFEE3\uFEE7\uFEEB\uFEED\uFEEF\uFEF3\uFEBD\uFECC\uFECE\uFECD\uFEE1\uFE7D\u0651\uFEE5\uFEE9\uFEEC\uFEF0\uFEF2\uFED0\uFED5\uFEF5\uFEF6\uFEDD\uFED9\uFEF1\u25A0\uFFFD`},ibm864:"cp864",csibm864:"cp864",cp865:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xA4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm865:"cp865",csibm865:"cp865",cp866:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\xA4\u25A0\xA0"},ibm866:"cp866",csibm866:"cp866",cp869:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0386\uFFFD\xB7\xAC\xA6\u2018\u2019\u0388\u2015\u0389\u038A\u03AA\u038C\uFFFD\uFFFD\u038E\u03AB\xA9\u038F\xB2\xB3\u03AC\xA3\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03CD\u0391\u0392\u0393\u0394\u0395\u0396\u0397\xBD\u0398\u0399\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u039A\u039B\u039C\u039D\u2563\u2551\u2557\u255D\u039E\u039F\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u03A0\u03A1\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u2518\u250C\u2588\u2584\u03B4\u03B5\u2580\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u0384\xAD\xB1\u03C5\u03C6\u03C7\xA7\u03C8\u0385\xB0\xA8\u03C9\u03CB\u03B0\u03CE\u25A0\xA0"},ibm869:"cp869",csibm869:"cp869",cp922:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\u203E\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0160\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\u017D\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0161\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\u017E\xFF"},ibm922:"cp922",csibm922:"cp922",cp1046:{type:"_sbcs",chars:"\uFE88\xD7\xF7\uF8F6\uF8F5\uF8F4\uF8F7\uFE71\x88\u25A0\u2502\u2500\u2510\u250C\u2514\u2518\uFE79\uFE7B\uFE7D\uFE7F\uFE77\uFE8A\uFEF0\uFEF3\uFEF2\uFECE\uFECF\uFED0\uFEF6\uFEF8\uFEFA\uFEFC\xA0\uF8FA\uF8F9\uF8F8\xA4\uF8FB\uFE8B\uFE91\uFE97\uFE9B\uFE9F\uFEA3\u060C\xAD\uFEA7\uFEB3\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFEB7\u061B\uFEBB\uFEBF\uFECA\u061F\uFECB\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\uFEC7\u0639\u063A\uFECC\uFE82\uFE84\uFE8E\uFED3\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFED7\uFEDB\uFEDF\uF8FC\uFEF5\uFEF7\uFEF9\uFEFB\uFEE3\uFEE7\uFEEC\uFEE9\uFFFD"},ibm1046:"cp1046",csibm1046:"cp1046",cp1124:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0490\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0491\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},ibm1124:"cp1124",csibm1124:"cp1124",cp1125:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0490\u0491\u0404\u0454\u0406\u0456\u0407\u0457\xB7\u221A\u2116\xA4\u25A0\xA0"},ibm1125:"cp1125",csibm1125:"cp1125",cp1129:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},ibm1129:"cp1129",csibm1129:"cp1129",cp1133:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E81\u0E82\u0E84\u0E87\u0E88\u0EAA\u0E8A\u0E8D\u0E94\u0E95\u0E96\u0E97\u0E99\u0E9A\u0E9B\u0E9C\u0E9D\u0E9E\u0E9F\u0EA1\u0EA2\u0EA3\u0EA5\u0EA7\u0EAB\u0EAD\u0EAE\uFFFD\uFFFD\uFFFD\u0EAF\u0EB0\u0EB2\u0EB3\u0EB4\u0EB5\u0EB6\u0EB7\u0EB8\u0EB9\u0EBC\u0EB1\u0EBB\u0EBD\uFFFD\uFFFD\uFFFD\u0EC0\u0EC1\u0EC2\u0EC3\u0EC4\u0EC8\u0EC9\u0ECA\u0ECB\u0ECC\u0ECD\u0EC6\uFFFD\u0EDC\u0EDD\u20AD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0ED0\u0ED1\u0ED2\u0ED3\u0ED4\u0ED5\u0ED6\u0ED7\u0ED8\u0ED9\uFFFD\uFFFD\xA2\xAC\xA6\uFFFD"},ibm1133:"cp1133",csibm1133:"cp1133",cp1161:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E48\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\u0E49\u0E4A\u0E4B\u20AC\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\xA2\xAC\xA6\xA0"},ibm1161:"cp1161",csibm1161:"cp1161",cp1162:{type:"_sbcs",chars:"\u20AC\x81\x82\x83\x84\u2026\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},ibm1162:"cp1162",csibm1162:"cp1162",cp1163:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},ibm1163:"cp1163",csibm1163:"cp1163",maccroatian:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u2126\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uFFFD\xA9\u2044\xA4\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7"},maccyrillic:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\xA2\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u2202\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"},macgreek:{type:"_sbcs",chars:"\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\xAD\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\u0387\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\uFFFD"},maciceland:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macroman:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macromania:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u015E\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\u0103\u015F\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\u0162\u0163\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macthai:{type:"_sbcs",chars:"\xAB\xBB\u2026\uF88C\uF88F\uF892\uF895\uF898\uF88B\uF88E\uF891\uF894\uF897\u201C\u201D\uF899\uFFFD\u2022\uF884\uF889\uF885\uF886\uF887\uF888\uF88A\uF88D\uF890\uF893\uF896\u2018\u2019\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFEFF\u200B\u2013\u2014\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u2122\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\xAE\xA9\uFFFD\uFFFD\uFFFD\uFFFD"},macturkish:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\uFFFD\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macukraine:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"},koi8r:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556\u2557\u2558\u2559\u255A\u255B\u255C\u255D\u255E\u255F\u2560\u2561\u0401\u2562\u2563\u2564\u2565\u2566\u2567\u2568\u2569\u256A\u256B\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8u:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u255D\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8ru:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u045E\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u040E\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8t:{type:"_sbcs",chars:"\u049B\u0493\u201A\u0492\u201E\u2026\u2020\u2021\uFFFD\u2030\u04B3\u2039\u04B2\u04B7\u04B6\uFFFD\u049A\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u04EF\u04EE\u0451\xA4\u04E3\xA6\xA7\uFFFD\uFFFD\uFFFD\xAB\xAC\xAD\xAE\uFFFD\xB0\xB1\xB2\u0401\uFFFD\u04E2\xB6\xB7\uFFFD\u2116\uFFFD\xBB\uFFFD\uFFFD\uFFFD\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},armscii8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\u0587\u0589)(\xBB\xAB\u2014.\u055D,-\u058A\u2026\u055C\u055B\u055E\u0531\u0561\u0532\u0562\u0533\u0563\u0534\u0564\u0535\u0565\u0536\u0566\u0537\u0567\u0538\u0568\u0539\u0569\u053A\u056A\u053B\u056B\u053C\u056C\u053D\u056D\u053E\u056E\u053F\u056F\u0540\u0570\u0541\u0571\u0542\u0572\u0543\u0573\u0544\u0574\u0545\u0575\u0546\u0576\u0547\u0577\u0548\u0578\u0549\u0579\u054A\u057A\u054B\u057B\u054C\u057C\u054D\u057D\u054E\u057E\u054F\u057F\u0550\u0580\u0551\u0581\u0552\u0582\u0553\u0583\u0554\u0584\u0555\u0585\u0556\u0586\u055A\uFFFD"},rk1048:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u049A\u04BA\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u049B\u04BB\u045F\xA0\u04B0\u04B1\u04D8\xA4\u04E8\xA6\xA7\u0401\xA9\u0492\xAB\xAC\xAD\xAE\u04AE\xB0\xB1\u0406\u0456\u04E9\xB5\xB6\xB7\u0451\u2116\u0493\xBB\u04D9\u04A2\u04A3\u04AF\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},tcvn:{type:"_sbcs",chars:`\0\xDA\u1EE4\u1EEA\u1EEC\u1EEE\x07\b \v\f\r\u1EE8\u1EF0\u1EF2\u1EF6\u1EF8\xDD\u1EF4\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC0\u1EA2\xC3\xC1\u1EA0\u1EB6\u1EAC\xC8\u1EBA\u1EBC\xC9\u1EB8\u1EC6\xCC\u1EC8\u0128\xCD\u1ECA\xD2\u1ECE\xD5\xD3\u1ECC\u1ED8\u1EDC\u1EDE\u1EE0\u1EDA\u1EE2\xD9\u1EE6\u0168\xA0\u0102\xC2\xCA\xD4\u01A0\u01AF\u0110\u0103\xE2\xEA\xF4\u01A1\u01B0\u0111\u1EB0\u0300\u0309\u0303\u0301\u0323\xE0\u1EA3\xE3\xE1\u1EA1\u1EB2\u1EB1\u1EB3\u1EB5\u1EAF\u1EB4\u1EAE\u1EA6\u1EA8\u1EAA\u1EA4\u1EC0\u1EB7\u1EA7\u1EA9\u1EAB\u1EA5\u1EAD\xE8\u1EC2\u1EBB\u1EBD\xE9\u1EB9\u1EC1\u1EC3\u1EC5\u1EBF\u1EC7\xEC\u1EC9\u1EC4\u1EBE\u1ED2\u0129\xED\u1ECB\xF2\u1ED4\u1ECF\xF5\xF3\u1ECD\u1ED3\u1ED5\u1ED7\u1ED1\u1ED9\u1EDD\u1EDF\u1EE1\u1EDB\u1EE3\xF9\u1ED6\u1EE7\u0169\xFA\u1EE5\u1EEB\u1EED\u1EEF\u1EE9\u1EF1\u1EF3\u1EF7\u1EF9\xFD\u1EF5\u1ED0`},georgianacademy:{type:"_sbcs",chars:"\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10EF\u10F0\u10F1\u10F2\u10F3\u10F4\u10F5\u10F6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},georgianps:{type:"_sbcs",chars:"\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10F1\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10F2\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10F3\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10F4\u10EF\u10F0\u10F5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},pt154:{type:"_sbcs",chars:"\u0496\u0492\u04EE\u0493\u201E\u2026\u04B6\u04AE\u04B2\u04AF\u04A0\u04E2\u04A2\u049A\u04BA\u04B8\u0497\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u04B3\u04B7\u04A1\u04E3\u04A3\u049B\u04BB\u04B9\xA0\u040E\u045E\u0408\u04E8\u0498\u04B0\xA7\u0401\xA9\u04D8\xAB\xAC\u04EF\xAE\u049C\xB0\u04B1\u0406\u0456\u0499\u04E9\xB6\xB7\u0451\u2116\u04D9\xBB\u0458\u04AA\u04AB\u049D\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},viscii:{type:"_sbcs",chars:`\0\u1EB2\u1EB4\u1EAA\x07\b \v\f\r\u1EF6\u1EF8\x1B\u1EF4 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u1EA0\u1EAE\u1EB0\u1EB6\u1EA4\u1EA6\u1EA8\u1EAC\u1EBC\u1EB8\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EE2\u1EDA\u1EDC\u1EDE\u1ECA\u1ECE\u1ECC\u1EC8\u1EE6\u0168\u1EE4\u1EF2\xD5\u1EAF\u1EB1\u1EB7\u1EA5\u1EA7\u1EA9\u1EAD\u1EBD\u1EB9\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1ED1\u1ED3\u1ED5\u1ED7\u1EE0\u01A0\u1ED9\u1EDD\u1EDF\u1ECB\u1EF0\u1EE8\u1EEA\u1EEC\u01A1\u1EDB\u01AF\xC0\xC1\xC2\xC3\u1EA2\u0102\u1EB3\u1EB5\xC8\xC9\xCA\u1EBA\xCC\xCD\u0128\u1EF3\u0110\u1EE9\xD2\xD3\xD4\u1EA1\u1EF7\u1EEB\u1EED\xD9\xDA\u1EF9\u1EF5\xDD\u1EE1\u01B0\xE0\xE1\xE2\xE3\u1EA3\u0103\u1EEF\u1EAB\xE8\xE9\xEA\u1EBB\xEC\xED\u0129\u1EC9\u0111\u1EF1\xF2\xF3\xF4\xF5\u1ECF\u1ECD\u1EE5\xF9\xFA\u0169\u1EE7\xFD\u1EE3\u1EEE`},iso646cn:{type:"_sbcs",chars:`\0\x07\b \v\f\r\x1B !"#\xA5%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},iso646jp:{type:"_sbcs",chars:`\0\x07\b -\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},hproman8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"},macintosh:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},ascii:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},tis620:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"}}});var KD=$(VD=>{"use strict";var Lc=ra().Buffer;VD._dbcs=$s;var pn=-1,WD=-2,Wn=-10,Bi=-1e3,zc=new Array(256),Xd=-1;for(Sg=0;Sg<256;Sg++)zc[Sg]=pn;var Sg;function $s(t,e){if(this.encodingName=t.encodingName,!t)throw new Error("DBCS codec is called without the data.");if(!t.table)throw new Error("Encoding '"+this.encodingName+"' has no data.");var r=t.table();this.decodeTables=[],this.decodeTables[0]=zc.slice(0),this.decodeTableSeq=[];for(var n=0;n0;t>>=8)e.push(t&255);e.length==0&&e.push(0);for(var r=this.decodeTables[0],n=e.length-1;n>0;n--){var i=r[e[n]];if(i==pn)r[e[n]]=Bi-this.decodeTables.length,this.decodeTables.push(r=zc.slice(0));else if(i<=Bi)r=this.decodeTables[Bi-i];else throw new Error("Overwrite byte in "+this.encodingName+", addr: "+t.toString(16))}return r};$s.prototype._addDecodeChunk=function(t){var e=parseInt(t[0],16),r=this._getDecodeTrieNode(e);e=e&255;for(var n=1;n255)throw new Error("Incorrect chunk in "+this.encodingName+" at addr "+t[0]+": too long"+e)};$s.prototype._getEncodeBucket=function(t){var e=t>>8;return this.encodeTable[e]===void 0&&(this.encodeTable[e]=zc.slice(0)),this.encodeTable[e]};$s.prototype._setEncodeChar=function(t,e){var r=this._getEncodeBucket(t),n=t&255;r[n]<=Wn?this.encodeTableSeq[Wn-r[n]][Xd]=e:r[n]==pn&&(r[n]=e)};$s.prototype._setEncodeSequence=function(t,e){var r=t[0],n=this._getEncodeBucket(r),i=r&255,s;n[i]<=Wn?s=this.encodeTableSeq[Wn-n[i]]:(s={},n[i]!==pn&&(s[Xd]=n[i]),n[i]=Wn-this.encodeTableSeq.length,this.encodeTableSeq.push(s));for(var o=1;o=0?this._setEncodeChar(s,o):s<=Bi?this._fillEncodeTable(Bi-s,o<<8,r):s<=Wn&&this._setEncodeSequence(this.decodeTableSeq[Wn-s],o))}};function xg(t,e){this.leadSurrogate=-1,this.seqObj=void 0,this.encodeTable=e.encodeTable,this.encodeTableSeq=e.encodeTableSeq,this.defaultCharSingleByte=e.defCharSB,this.gb18030=e.gb18030}xg.prototype.write=function(t){for(var e=Lc.alloc(t.length*(this.gb18030?4:3)),r=this.leadSurrogate,n=this.seqObj,i=-1,s=0,o=0;;){if(i===-1){if(s==t.length)break;var a=t.charCodeAt(s++)}else{var a=i;i=-1}if(55296<=a&&a<57344)if(a<56320)if(r===-1){r=a;continue}else r=a,a=pn;else r!==-1?(a=65536+(r-55296)*1024+(a-56320),r=-1):a=pn;else r!==-1&&(i=a,a=pn,r=-1);var c=pn;if(n!==void 0&&a!=pn){var u=n[a];if(typeof u=="object"){n=u;continue}else typeof u=="number"?c=u:u==null&&(u=n[Xd],u!==void 0&&(c=u,i=a));n=void 0}else if(a>=0){var l=this.encodeTable[a>>8];if(l!==void 0&&(c=l[a&255]),c<=Wn){n=this.encodeTableSeq[Wn-c];continue}if(c==pn&&this.gb18030){var d=kk(this.gb18030.uChars,a);if(d!=-1){var c=this.gb18030.gbChars[d]+(a-this.gb18030.uChars[d]);e[o++]=129+Math.floor(c/12600),c=c%12600,e[o++]=48+Math.floor(c/1260),c=c%1260,e[o++]=129+Math.floor(c/10),c=c%10,e[o++]=48+c;continue}}}c===pn&&(c=this.defaultCharSingleByte),c<256?e[o++]=c:c<65536?(e[o++]=c>>8,e[o++]=c&255):(e[o++]=c>>16,e[o++]=c>>8&255,e[o++]=c&255)}return this.seqObj=n,this.leadSurrogate=r,e.slice(0,o)};xg.prototype.end=function(){if(!(this.leadSurrogate===-1&&this.seqObj===void 0)){var t=Lc.alloc(10),e=0;if(this.seqObj){var r=this.seqObj[Xd];r!==void 0&&(r<256?t[e++]=r:(t[e++]=r>>8,t[e++]=r&255)),this.seqObj=void 0}return this.leadSurrogate!==-1&&(t[e++]=this.defaultCharSingleByte,this.leadSurrogate=-1),t.slice(0,e)}};xg.prototype.findIdx=kk;function Ek(t,e){this.nodeIdx=0,this.prevBuf=Lc.alloc(0),this.decodeTables=e.decodeTables,this.decodeTableSeq=e.decodeTableSeq,this.defaultCharUnicode=e.defaultCharUnicode,this.gb18030=e.gb18030}Ek.prototype.write=function(t){var e=Lc.alloc(t.length*2),r=this.nodeIdx,n=this.prevBuf,i=this.prevBuf.length,s=-this.prevBuf.length,o;i>0&&(n=Lc.concat([n,t.slice(0,10)]));for(var a=0,c=0;a=0?t[a]:n[a+i],o=this.decodeTables[r][u];if(!(o>=0))if(o===pn)a=s,o=this.defaultCharUnicode.charCodeAt(0);else if(o===WD){var l=s>=0?t.slice(s,a+1):n.slice(s+i,a+1+i),d=(l[0]-129)*12600+(l[1]-48)*1260+(l[2]-129)*10+(l[3]-48),p=kk(this.gb18030.gbChars,d);o=this.gb18030.uChars[p]+d-this.gb18030.gbChars[p]}else if(o<=Bi){r=Bi-o;continue}else if(o<=Wn){for(var f=this.decodeTableSeq[Wn-o],m=0;m>8;o=f[f.length-1]}else throw new Error("iconv-lite internal error: invalid decoding table value "+o+" at "+r+"/"+u);if(o>65535){o-=65536;var h=55296+Math.floor(o/1024);e[c++]=h&255,e[c++]=h>>8,o=56320+o%1024}e[c++]=o&255,e[c++]=o>>8,r=0,s=a+1}return this.nodeIdx=r,this.prevBuf=s>=0?t.slice(s):n.slice(s+i),e.slice(0,c).toString("ucs2")};Ek.prototype.end=function(){for(var t="";this.prevBuf.length>0;){t+=this.defaultCharUnicode;var e=this.prevBuf.slice(1);this.prevBuf=Lc.alloc(0),this.nodeIdx=0,e.length>0&&(t+=this.write(e))}return this.nodeIdx=0,t};function kk(t,e){if(t[0]>e)return-1;for(var r=0,n=t.length;r{Aee.exports=[["0","\0",128],["a1","\uFF61",62],["8140","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7"],["8180","\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["81b8","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["81c8","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["81da","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["81f0","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["81fc","\u25EF"],["824f","\uFF10",9],["8260","\uFF21",25],["8281","\uFF41",25],["829f","\u3041",82],["8340","\u30A1",62],["8380","\u30E0",22],["839f","\u0391",16,"\u03A3",6],["83bf","\u03B1",16,"\u03C3",6],["8440","\u0410",5,"\u0401\u0416",25],["8470","\u0430",5,"\u0451\u0436",7],["8480","\u043E",17],["849f","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["8740","\u2460",19,"\u2160",9],["875f","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["877e","\u337B"],["8780","\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["889f","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["8940","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],["8980","\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["8a40","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],["8a80","\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["8b40","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],["8b80","\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["8c40","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],["8c80","\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["8d40","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],["8d80","\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["8e40","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],["8e80","\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["8f40","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],["8f80","\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["9040","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],["9080","\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["9140","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],["9180","\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["9240","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],["9280","\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["9340","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],["9380","\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["9440","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],["9480","\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["9540","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],["9580","\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["9640","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],["9680","\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["9740","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],["9780","\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["9840","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["989f","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["9940","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],["9980","\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["9a40","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],["9a80","\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["9b40","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],["9b80","\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["9c40","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],["9c80","\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["9d40","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],["9d80","\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["9e40","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],["9e80","\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["9f40","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],["9f80","\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["e040","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],["e080","\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e140","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],["e180","\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e240","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],["e280","\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e340","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],["e380","\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e440","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],["e480","\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e540","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],["e580","\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["e640","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],["e680","\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["e740","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],["e780","\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["e840","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],["e880","\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["e940","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],["e980","\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["ea40","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],["ea80","\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],["ed40","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],["ed80","\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["ee40","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],["ee80","\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["eeef","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["f040","\uE000",62],["f080","\uE03F",124],["f140","\uE0BC",62],["f180","\uE0FB",124],["f240","\uE178",62],["f280","\uE1B7",124],["f340","\uE234",62],["f380","\uE273",124],["f440","\uE2F0",62],["f480","\uE32F",124],["f540","\uE3AC",62],["f580","\uE3EB",124],["f640","\uE468",62],["f680","\uE4A7",124],["f740","\uE524",62],["f780","\uE563",124],["f840","\uE5E0",62],["f880","\uE61F",124],["f940","\uE69C"],["fa40","\u2170",9,"\u2160",9,"\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],["fa80","\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],["fb40","\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],["fb80","\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],["fc40","\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]]});var XD=$((_Pe,Nee)=>{Nee.exports=[["0","\0",127],["8ea1","\uFF61",62],["a1a1","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],["a2a1","\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["a2ba","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["a2ca","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["a2dc","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["a2f2","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["a2fe","\u25EF"],["a3b0","\uFF10",9],["a3c1","\uFF21",25],["a3e1","\uFF41",25],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a8a1","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["ada1","\u2460",19,"\u2160",9],["adc0","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["addf","\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["b0a1","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["b1a1","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],["b2a1","\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["b3a1","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],["b4a1","\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["b5a1","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],["b6a1","\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["b7a1","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],["b8a1","\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["b9a1","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],["baa1","\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["bba1","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],["bca1","\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["bda1","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],["bea1","\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["bfa1","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],["c0a1","\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["c1a1","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],["c2a1","\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["c3a1","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],["c4a1","\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["c5a1","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],["c6a1","\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["c7a1","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],["c8a1","\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["c9a1","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],["caa1","\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["cba1","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],["cca1","\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["cda1","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],["cea1","\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["cfa1","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["d0a1","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["d1a1","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],["d2a1","\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["d3a1","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],["d4a1","\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["d5a1","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],["d6a1","\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["d7a1","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],["d8a1","\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["d9a1","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],["daa1","\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["dba1","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],["dca1","\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["dda1","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],["dea1","\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["dfa1","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],["e0a1","\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e1a1","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],["e2a1","\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e3a1","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],["e4a1","\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e5a1","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],["e6a1","\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e7a1","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],["e8a1","\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e9a1","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],["eaa1","\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["eba1","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],["eca1","\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["eda1","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],["eea1","\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["efa1","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],["f0a1","\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["f1a1","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],["f2a1","\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["f3a1","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],["f4a1","\u582F\u69C7\u9059\u7464\u51DC\u7199"],["f9a1","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],["faa1","\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["fba1","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],["fca1","\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["fcf1","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["8fa2af","\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],["8fa2c2","\xA1\xA6\xBF"],["8fa2eb","\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],["8fa6e1","\u0386\u0388\u0389\u038A\u03AA"],["8fa6e7","\u038C"],["8fa6e9","\u038E\u03AB"],["8fa6ec","\u038F"],["8fa6f1","\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],["8fa7c2","\u0402",10,"\u040E\u040F"],["8fa7f2","\u0452",10,"\u045E\u045F"],["8fa9a1","\xC6\u0110"],["8fa9a4","\u0126"],["8fa9a6","\u0132"],["8fa9a8","\u0141\u013F"],["8fa9ab","\u014A\xD8\u0152"],["8fa9af","\u0166\xDE"],["8fa9c1","\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],["8faaa1","\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],["8faaba","\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],["8faba1","\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],["8fabbd","\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],["8fabc5","\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],["8fb0a1","\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],["8fb1a1","\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],["8fb2a1","\u5092\u5093\u5094\u5096\u509B\u509C\u509E",4,"\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],["8fb3a1","\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],["8fb4a1","\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],["8fb5a1","\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],["8fb6a1","\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D",5,"\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4",4,"\u56F1\u56EB\u56ED"],["8fb7a1","\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D",4,"\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],["8fb8a1","\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],["8fb9a1","\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],["8fbaa1","\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6",4,"\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],["8fbba1","\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],["8fbca1","\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A",4,"\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],["8fbda1","\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0",4,"\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],["8fbea1","\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110",4,"\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],["8fbfa1","\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],["8fc0a1","\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],["8fc1a1","\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],["8fc2a1","\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],["8fc3a1","\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E",4,"\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],["8fc4a1","\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],["8fc5a1","\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],["8fc6a1","\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],["8fc7a1","\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],["8fc8a1","\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],["8fc9a1","\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094",4,"\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103",4,"\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],["8fcaa1","\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],["8fcba1","\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],["8fcca1","\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428",9,"\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],["8fcda1","\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579",5,"\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],["8fcea1","\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2",6,"\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],["8fcfa1","\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],["8fd0a1","\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],["8fd1a1","\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],["8fd2a1","\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59",5],["8fd3a1","\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],["8fd4a1","\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2",4,"\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],["8fd5a1","\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],["8fd6a1","\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],["8fd7a1","\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],["8fd8a1","\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],["8fd9a1","\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F",4,"\u8556\u8559\u855C",6,"\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],["8fdaa1","\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660",4,"\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],["8fdba1","\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783",6,"\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],["8fdca1","\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA",4,"\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],["8fdda1","\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4",4,"\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],["8fdea1","\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42",4,"\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],["8fdfa1","\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],["8fe0a1","\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],["8fe1a1","\u8F43\u8F47\u8F4F\u8F51",4,"\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],["8fe2a1","\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],["8fe3a1","\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC",5,"\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275",4,"\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],["8fe4a1","\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF",4,"\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],["8fe5a1","\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9",4,"\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],["8fe6a1","\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],["8fe7a1","\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],["8fe8a1","\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931",4,"\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],["8fe9a1","\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF",4],["8feaa1","\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A",4,"\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],["8feba1","\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26",4,"\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],["8feca1","\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],["8feda1","\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43",4,"\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D",4,"\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]]});var wg=$((bPe,Mee)=>{Mee.exports=[["0","\0",127,"\u20AC"],["8140","\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A",5,"\u4E72\u4E74",9,"\u4E7F",6,"\u4E87\u4E8A"],["8180","\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02",6,"\u4F0B\u4F0C\u4F12",4,"\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E",4,"\u4F44\u4F45\u4F47",5,"\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],["8240","\u4FA4\u4FAB\u4FAD\u4FB0",4,"\u4FB6",8,"\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2",4,"\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF",11],["8280","\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F",10,"\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050",4,"\u5056\u5057\u5058\u5059\u505B\u505D",7,"\u5066",5,"\u506D",8,"\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E",20,"\u50A4\u50A6\u50AA\u50AB\u50AD",4,"\u50B3",6,"\u50BC"],["8340","\u50BD",17,"\u50D0",5,"\u50D7\u50D8\u50D9\u50DB",10,"\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6",4,"\u50FC",9,"\u5108"],["8380","\u5109\u510A\u510C",5,"\u5113",13,"\u5122",28,"\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D",4,"\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6",4,"\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2",5],["8440","\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5",5,"\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244",5,"\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],["8480","\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273",9,"\u527E\u5280\u5283",4,"\u5289",6,"\u5291\u5292\u5294",6,"\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4",9,"\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9",5,"\u52E0\u52E1\u52E2\u52E3\u52E5",10,"\u52F1",7,"\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],["8540","\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F",9,"\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],["8580","\u5390",4,"\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF",6,"\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3",4,"\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D",4,"\u5463\u5465\u5467\u5469",7,"\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],["8640","\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0",4,"\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4",5,"\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A",4,"\u5512\u5513\u5515",5,"\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],["8680","\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B",4,"\u5551\u5552\u5553\u5554\u5557",4,"\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F",5,"\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0",6,"\u55A8",8,"\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF",4,"\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7",4,"\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8",4,"\u55FF\u5602\u5603\u5604\u5605"],["8740","\u5606\u5607\u560A\u560B\u560D\u5610",7,"\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640",11,"\u564F",4,"\u5655\u5656\u565A\u565B\u565D",4],["8780","\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D",7,"\u5687",6,"\u5690\u5691\u5692\u5694",14,"\u56A4",10,"\u56B0",6,"\u56B8\u56B9\u56BA\u56BB\u56BD",12,"\u56CB",8,"\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5",5,"\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B",6],["8840","\u5712",9,"\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734",4,"\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752",4,"\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],["8880","\u5781\u5787\u5788\u5789\u578A\u578D",4,"\u5794",6,"\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9",8,"\u57C4",6,"\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5",7,"\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825",4,"\u582B",4,"\u5831\u5832\u5833\u5834\u5836",7],["8940","\u583E",5,"\u5845",6,"\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859",4,"\u585F",5,"\u5866",4,"\u586D",16,"\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],["8980","\u588D",4,"\u5894",4,"\u589B\u589C\u589D\u58A0",7,"\u58AA",17,"\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6",10,"\u58D2\u58D3\u58D4\u58D6",13,"\u58E5",5,"\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA",7,"\u5903\u5905\u5906\u5908",4,"\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],["8a40","\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B",4,"\u5961\u5963\u5964\u5966",12,"\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],["8a80","\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3",5,"\u59BA\u59BC\u59BD\u59BF",6,"\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE",4,"\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED",11,"\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A",6,"\u5A33\u5A35\u5A37",4,"\u5A3D\u5A3E\u5A3F\u5A41",4,"\u5A47\u5A48\u5A4B",9,"\u5A56\u5A57\u5A58\u5A59\u5A5B",5],["8b40","\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B",8,"\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80",17,"\u5A93",6,"\u5A9C",13,"\u5AAB\u5AAC"],["8b80","\u5AAD",4,"\u5AB4\u5AB6\u5AB7\u5AB9",4,"\u5ABF\u5AC0\u5AC3",5,"\u5ACA\u5ACB\u5ACD",4,"\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC",4,"\u5AF2",22,"\u5B0A",11,"\u5B18",25,"\u5B33\u5B35\u5B36\u5B38",7,"\u5B41",6],["8c40","\u5B48",7,"\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],["8c80","\u5BD1\u5BD4",8,"\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9",4,"\u5BEF\u5BF1",6,"\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67",6,"\u5C70\u5C72",6,"\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83",4,"\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D",4,"\u5CA4",4],["8d40","\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5",5,"\u5CCC",5,"\u5CD3",5,"\u5CDA",6,"\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1",9,"\u5CFC",4],["8d80","\u5D01\u5D04\u5D05\u5D08",5,"\u5D0F",4,"\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F",4,"\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F",4,"\u5D35",7,"\u5D3F",7,"\u5D48\u5D49\u5D4D",10,"\u5D59\u5D5A\u5D5C\u5D5E",10,"\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75",12,"\u5D83",21,"\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],["8e40","\u5DA1",21,"\u5DB8",12,"\u5DC6",6,"\u5DCE",12,"\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],["8e80","\u5DF0\u5DF5\u5DF6\u5DF8",4,"\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E",7,"\u5E28",4,"\u5E2F\u5E30\u5E32",4,"\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46",5,"\u5E4D",6,"\u5E56",4,"\u5E5C\u5E5D\u5E5F\u5E60\u5E63",14,"\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8",4,"\u5EAE",4,"\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF",6],["8f40","\u5EC6\u5EC7\u5EC8\u5ECB",5,"\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC",11,"\u5EE9\u5EEB",8,"\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],["8f80","\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32",6,"\u5F3B\u5F3D\u5F3E\u5F3F\u5F41",14,"\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2",5,"\u5FA9\u5FAB\u5FAC\u5FAF",5,"\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE",4,"\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],["9040","\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030",4,"\u6036",4,"\u603D\u603E\u6040\u6044",6,"\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],["9080","\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD",7,"\u60C7\u60C8\u60C9\u60CC",4,"\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1",4,"\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB",4,"\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110",4,"\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C",18,"\u6140",6],["9140","\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156",6,"\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169",6,"\u6171\u6172\u6173\u6174\u6176\u6178",18,"\u618C\u618D\u618F",4,"\u6195"],["9180","\u6196",6,"\u619E",8,"\u61AA\u61AB\u61AD",9,"\u61B8",5,"\u61BF\u61C0\u61C1\u61C3",4,"\u61C9\u61CC",4,"\u61D3\u61D5",16,"\u61E7",13,"\u61F6",8,"\u6200",5,"\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238",4,"\u6242\u6244\u6245\u6246\u624A"],["9240","\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C",6,"\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B",5,"\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],["9280","\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333",5,"\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356",7,"\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399",6,"\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],["9340","\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7",6,"\u63DF\u63E2\u63E4",4,"\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406",4,"\u640D\u640E\u6411\u6412\u6415",5,"\u641D\u641F\u6422\u6423\u6424"],["9380","\u6425\u6427\u6428\u6429\u642B\u642E",5,"\u6435",4,"\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B",6,"\u6453\u6455\u6456\u6457\u6459",4,"\u645F",7,"\u6468\u646A\u646B\u646C\u646E",9,"\u647B",6,"\u6483\u6486\u6488",8,"\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F",4,"\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6",6,"\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],["9440","\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7",24,"\u6501",7,"\u650A",7,"\u6513",4,"\u6519",8],["9480","\u6522\u6523\u6524\u6526",4,"\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540",4,"\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578",14,"\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1",7,"\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8",7,"\u65E1\u65E3\u65E4\u65EA\u65EB"],["9540","\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB",4,"\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637",4,"\u663D\u663F\u6640\u6642\u6644",6,"\u664D\u664E\u6650\u6651\u6658"],["9580","\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669",4,"\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698",4,"\u669E",8,"\u66A9",4,"\u66AF",4,"\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF",25,"\u66DA\u66DE",7,"\u66E7\u66E8\u66EA",5,"\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],["9640","\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720",5,"\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757",4,"\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],["9680","\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9",7,"\u67C2\u67C5",9,"\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5",7,"\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818",4,"\u681E\u681F\u6820\u6822",6,"\u682B",6,"\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856",5],["9740","\u685C\u685D\u685E\u685F\u686A\u686C",7,"\u6875\u6878",8,"\u6882\u6884\u6887",7,"\u6890\u6891\u6892\u6894\u6895\u6896\u6898",9,"\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],["9780","\u68B9",6,"\u68C1\u68C3",5,"\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB",4,"\u68E1\u68E2\u68E4",9,"\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906",4,"\u690C\u690F\u6911\u6913",11,"\u6921\u6922\u6923\u6925",7,"\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943",16,"\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],["9840","\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972",4,"\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E",5,"\u6996\u6997\u6999\u699A\u699D",9,"\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],["9880","\u69BE\u69BF\u69C0\u69C2",7,"\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5",5,"\u69DC\u69DD\u69DE\u69E1",11,"\u69EE\u69EF\u69F0\u69F1\u69F3",9,"\u69FE\u6A00",9,"\u6A0B",11,"\u6A19",5,"\u6A20\u6A22",5,"\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36",6,"\u6A3F",4,"\u6A45\u6A46\u6A48",7,"\u6A51",6,"\u6A5A"],["9940","\u6A5C",4,"\u6A62\u6A63\u6A64\u6A66",10,"\u6A72",6,"\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85",8,"\u6A8F\u6A92",4,"\u6A98",7,"\u6AA1",5],["9980","\u6AA7\u6AA8\u6AAA\u6AAD",114,"\u6B25\u6B26\u6B28",6],["9a40","\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D",11,"\u6B5A",7,"\u6B68\u6B69\u6B6B",13,"\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],["9a80","\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C",4,"\u6BA2",7,"\u6BAB",7,"\u6BB6\u6BB8",6,"\u6BC0\u6BC3\u6BC4\u6BC6",4,"\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC",4,"\u6BE2",7,"\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE",6,"\u6C08",4,"\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B",4,"\u6C51\u6C52\u6C53\u6C56\u6C58"],["9b40","\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B",4,"\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],["9b80","\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F",5,"\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D",4,"\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96",4,"\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9",5,"\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],["9c40","\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD",7,"\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],["9c80","\u6E36\u6E37\u6E39\u6E3B",7,"\u6E45",7,"\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60",10,"\u6E6C\u6E6D\u6E6F",14,"\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A",4,"\u6E91",6,"\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA",5],["9d40","\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA",7,"\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A",4,"\u6F10\u6F11\u6F12\u6F16",9,"\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37",6,"\u6F3F\u6F40\u6F41\u6F42"],["9d80","\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E",9,"\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67",5,"\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D",6,"\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F",12,"\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2",4,"\u6FA8",10,"\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA",5,"\u6FC1\u6FC3",5,"\u6FCA",6,"\u6FD3",10,"\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],["9e40","\u6FE6",7,"\u6FF0",32,"\u7012",7,"\u701C",6,"\u7024",6],["9e80","\u702B",9,"\u7036\u7037\u7038\u703A",17,"\u704D\u704E\u7050",13,"\u705F",11,"\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E",12,"\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB",12,"\u70DA"],["9f40","\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0",6,"\u70F8\u70FA\u70FB\u70FC\u70FE",10,"\u710B",4,"\u7111\u7112\u7114\u7117\u711B",10,"\u7127",7,"\u7132\u7133\u7134"],["9f80","\u7135\u7137",13,"\u7146\u7147\u7148\u7149\u714B\u714D\u714F",12,"\u715D\u715F",4,"\u7165\u7169",4,"\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E",5,"\u7185",4,"\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A",4,"\u71A1",6,"\u71A9\u71AA\u71AB\u71AD",5,"\u71B4\u71B6\u71B7\u71B8\u71BA",8,"\u71C4",9,"\u71CF",4],["a040","\u71D6",9,"\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8",5,"\u71EF",9,"\u71FA",11,"\u7207",19],["a080","\u721B\u721C\u721E",9,"\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240",6,"\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285",4,"\u728C\u728E\u7290\u7291\u7293",11,"\u72A0",11,"\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA",6,"\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],["a1a1","\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008",7,"\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],["a2a1","\u2170",9],["a2b1","\u2488",19,"\u2474",19,"\u2460",9],["a2e5","\u3220",9],["a2f1","\u2160",11],["a3a1","\uFF01\uFF02\uFF03\uFFE5\uFF05",88,"\uFFE3"],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a6e0","\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],["a6ee","\uFE3B\uFE3C\uFE37\uFE38\uFE31"],["a6f4","\uFE33\uFE34"],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a840","\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550",35,"\u2581",6],["a880","\u2588",7,"\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],["a8a1","\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],["a8bd","\u0144\u0148"],["a8c0","\u0261"],["a8c5","\u3105",36],["a940","\u3021",8,"\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],["a959","\u2121\u3231"],["a95c","\u2010"],["a960","\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49",9,"\uFE54\uFE55\uFE56\uFE57\uFE59",8],["a980","\uFE62",4,"\uFE68\uFE69\uFE6A\uFE6B"],["a996","\u3007"],["a9a4","\u2500",75],["aa40","\u72DC\u72DD\u72DF\u72E2",5,"\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304",5,"\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340",8],["aa80","\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358",7,"\u7361",10,"\u736E\u7370\u7371"],["ab40","\u7372",11,"\u737F",4,"\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3",5,"\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3",4],["ab80","\u73CB\u73CC\u73CE\u73D2",6,"\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3",4],["ac40","\u73F8",10,"\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411",8,"\u741C",5,"\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437",4,"\u743D\u743E\u743F\u7440\u7442",11],["ac80","\u744E",6,"\u7456\u7458\u745D\u7460",12,"\u746E\u746F\u7471",4,"\u7478\u7479\u747A"],["ad40","\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491",10,"\u749D\u749F",7,"\u74AA",15,"\u74BB",12],["ad80","\u74C8",9,"\u74D3",8,"\u74DD\u74DF\u74E1\u74E5\u74E7",6,"\u74F0\u74F1\u74F2"],["ae40","\u74F3\u74F5\u74F8",6,"\u7500\u7501\u7502\u7503\u7505",7,"\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520",4,"\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],["ae80","\u755D",7,"\u7567\u7568\u7569\u756B",6,"\u7573\u7575\u7576\u7577\u757A",4,"\u7580\u7581\u7582\u7584\u7585\u7587"],["af40","\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6",4,"\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],["af80","\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],["b040","\u7645",6,"\u764E",5,"\u7655\u7657",4,"\u765D\u765F\u7660\u7661\u7662\u7664",6,"\u766C\u766D\u766E\u7670",7,"\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],["b080","\u769C",7,"\u76A5",8,"\u76AF\u76B0\u76B3\u76B5",9,"\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],["b140","\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0",4,"\u76E6",7,"\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E",10,"\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],["b180","\u772C\u772E\u7730",4,"\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748",7,"\u7752",7,"\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],["b240","\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D",11,"\u777A\u777B\u777C\u7781\u7782\u7783\u7786",5,"\u778F\u7790\u7793",11,"\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6",4],["b280","\u77BC\u77BE\u77C0",12,"\u77CE",8,"\u77D8\u77D9\u77DA\u77DD",4,"\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],["b340","\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803",5,"\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],["b380","\u785B\u785C\u785E",11,"\u786F",7,"\u7878\u7879\u787A\u787B\u787D",6,"\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],["b440","\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8",7,"\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA",9],["b480","\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED",4,"\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB",5,"\u7902\u7903\u7904\u7906",6,"\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],["b540","\u790D",5,"\u7914",9,"\u791F",4,"\u7925",14,"\u7935",4,"\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A",8,"\u7954\u7955\u7958\u7959\u7961\u7963"],["b580","\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970",6,"\u7979\u797B",4,"\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],["b640","\u7993",6,"\u799B",11,"\u79A8",10,"\u79B4",4,"\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9",5,"\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],["b680","\u79EC\u79EE\u79F1",6,"\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F",4,"\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],["b740","\u7A1D\u7A1F\u7A21\u7A22\u7A24",14,"\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40",5,"\u7A47",9,"\u7A52",4,"\u7A58",16],["b780","\u7A69",6,"\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],["b840","\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE",4,"\u7AB4",10,"\u7AC0",10,"\u7ACC",9,"\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7",5,"\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],["b880","\u7AF4",4,"\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],["b940","\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F",5,"\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63",10,"\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86",6,"\u7B8E\u7B8F"],["b980","\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9",7,"\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],["ba40","\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4",4,"\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2",4,"\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF",7,"\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10",5,"\u7C17\u7C18\u7C19"],["ba80","\u7C1A",4,"\u7C20",5,"\u7C28\u7C29\u7C2B",12,"\u7C39",5,"\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],["bb40","\u7C43",9,"\u7C4E",36,"\u7C75",5,"\u7C7E",9],["bb80","\u7C88\u7C8A",6,"\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4",4,"\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],["bc40","\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE",6,"\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1",6,"\u7CE9",5,"\u7CF0",7,"\u7CF9\u7CFA\u7CFC",13,"\u7D0B",5],["bc80","\u7D11",14,"\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30",6,"\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],["bd40","\u7D37",54,"\u7D6F",7],["bd80","\u7D78",32,"\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],["be40","\u7D99",12,"\u7DA7",6,"\u7DAF",42],["be80","\u7DDA",32,"\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],["bf40","\u7DFB",62],["bf80","\u7E3A\u7E3C",4,"\u7E42",4,"\u7E48",21,"\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],["c040","\u7E5E",35,"\u7E83",23,"\u7E9C\u7E9D\u7E9E"],["c080","\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B",6,"\u7F43\u7F46",9,"\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],["c140","\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63",4,"\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82",7,"\u7F8B\u7F8D\u7F8F",4,"\u7F95",4,"\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8",6,"\u7FB1"],["c180","\u7FB3",4,"\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF",4,"\u7FD6\u7FD7\u7FD9",5,"\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],["c240","\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4",6,"\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B",5,"\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],["c280","\u8059\u805B",13,"\u806B",5,"\u8072",11,"\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],["c340","\u807E\u8081\u8082\u8085\u8088\u808A\u808D",5,"\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7",4,"\u80CF",6,"\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],["c380","\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F",12,"\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139",4,"\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],["c440","\u8140",5,"\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B",4,"\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183",4,"\u8189\u818B\u818C\u818D\u818E\u8190\u8192",5,"\u8199\u819A\u819E",4,"\u81A4\u81A5"],["c480","\u81A7\u81A9\u81AB",7,"\u81B4",5,"\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD",6,"\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],["c540","\u81D4",14,"\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE",4,"\u81F5",5,"\u81FD\u81FF\u8203\u8207",4,"\u820E\u820F\u8211\u8213\u8215",5,"\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],["c580","\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250",7,"\u8259\u825B\u825C\u825D\u825E\u8260",7,"\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],["c640","\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],["c680","\u82FA\u82FC",4,"\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D",9,"\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],["c740","\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A",4,"\u8353\u8355",4,"\u835D\u8362\u8370",6,"\u8379\u837A\u837E",6,"\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1",6,"\u83AC\u83AD\u83AE"],["c780","\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],["c840","\u83EE\u83EF\u83F3",4,"\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412",5,"\u8419\u841A\u841B\u841E",5,"\u8429",7,"\u8432",5,"\u8439\u843A\u843B\u843E",7,"\u8447\u8448\u8449"],["c880","\u844A",6,"\u8452",4,"\u8458\u845D\u845E\u845F\u8460\u8462\u8464",4,"\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],["c940","\u847D",4,"\u8483\u8484\u8485\u8486\u848A\u848D\u848F",7,"\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2",12,"\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],["c980","\u84D8",4,"\u84DE\u84E1\u84E2\u84E4\u84E7",4,"\u84ED\u84EE\u84EF\u84F1",10,"\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],["ca40","\u8503",8,"\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522",8,"\u852D",9,"\u853E",4,"\u8544\u8545\u8546\u8547\u854B",10],["ca80","\u8557\u8558\u855A\u855B\u855C\u855D\u855F",4,"\u8565\u8566\u8567\u8569",8,"\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],["cb40","\u8582\u8583\u8586\u8588",6,"\u8590",10,"\u859D",6,"\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1",5,"\u85B8\u85BA",6,"\u85C2",6,"\u85CA",4,"\u85D1\u85D2"],["cb80","\u85D4\u85D6",5,"\u85DD",6,"\u85E5\u85E6\u85E7\u85E8\u85EA",14,"\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],["cc40","\u85F9\u85FA\u85FC\u85FD\u85FE\u8600",4,"\u8606",10,"\u8612\u8613\u8614\u8615\u8617",15,"\u8628\u862A",13,"\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],["cc80","\u8641",11,"\u8652\u8653\u8655",4,"\u865B\u865C\u865D\u865F\u8660\u8661\u8663",7,"\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],["cd40","\u866D\u866F\u8670\u8672",6,"\u8683",6,"\u868E",4,"\u8694\u8696",5,"\u869E",4,"\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB",4,"\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],["cd80","\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],["ce40","\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740",6,"\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A",5,"\u8761\u8762\u8766",7,"\u876F\u8771\u8772\u8773\u8775"],["ce80","\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E",4,"\u8794\u8795\u8796\u8798",6,"\u87A0",4,"\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],["cf40","\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1",4,"\u87C7\u87C8\u87C9\u87CC",4,"\u87D4",6,"\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF",9],["cf80","\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804",5,"\u880B",7,"\u8814\u8817\u8818\u8819\u881A\u881C",4,"\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],["d040","\u8824",13,"\u8833",5,"\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846",5,"\u884E",5,"\u8855\u8856\u8858\u885A",6,"\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],["d080","\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897",4,"\u889D",4,"\u88A3\u88A5",5,"\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],["d140","\u88AC\u88AE\u88AF\u88B0\u88B2",4,"\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA",4,"\u88E0\u88E1\u88E6\u88E7\u88E9",6,"\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903",5],["d180","\u8909\u890B",4,"\u8911\u8914",4,"\u891C",4,"\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],["d240","\u8938",8,"\u8942\u8943\u8945",24,"\u8960",5,"\u8967",19,"\u897C"],["d280","\u897D\u897E\u8980\u8982\u8984\u8985\u8987",26,"\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],["d340","\u89A2",30,"\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4",6],["d380","\u89FB",4,"\u8A01",5,"\u8A08",21,"\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],["d440","\u8A1E",31,"\u8A3F",8,"\u8A49",21],["d480","\u8A5F",25,"\u8A7A",6,"\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],["d540","\u8A81",7,"\u8A8B",7,"\u8A94",46],["d580","\u8AC3",32,"\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],["d640","\u8AE4",34,"\u8B08",27],["d680","\u8B24\u8B25\u8B27",30,"\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],["d740","\u8B46",31,"\u8B67",4,"\u8B6D",25],["d780","\u8B87",24,"\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],["d840","\u8C38",8,"\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D",7,"\u8C56\u8C57\u8C58\u8C59\u8C5B",5,"\u8C63",6,"\u8C6C",6,"\u8C74\u8C75\u8C76\u8C77\u8C7B",6,"\u8C83\u8C84\u8C86\u8C87"],["d880","\u8C88\u8C8B\u8C8D",6,"\u8C95\u8C96\u8C97\u8C99",20,"\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],["d940","\u8CAE",62],["d980","\u8CED",32,"\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],["da40","\u8D0E",14,"\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78",8,"\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C",4,"\u8D92\u8D93\u8D95",9,"\u8DA0\u8DA1"],["da80","\u8DA2\u8DA4",12,"\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],["db40","\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE",6,"\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15",7,"\u8E20\u8E21\u8E24",4,"\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],["db80","\u8E3F\u8E43\u8E45\u8E46\u8E4C",4,"\u8E53",5,"\u8E5A",11,"\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],["dc40","\u8E73\u8E75\u8E77",4,"\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88",6,"\u8E91\u8E92\u8E93\u8E95",6,"\u8E9D\u8E9F",11,"\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3",6,"\u8EBB",7],["dc80","\u8EC3",10,"\u8ECF",21,"\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],["dd40","\u8EE5",62],["dd80","\u8F24",32,"\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],["de40","\u8F45",32,"\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],["de80","\u8FC9",4,"\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],["df40","\u9019\u901C\u9023\u9024\u9025\u9027",5,"\u9030",4,"\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048",4,"\u904E\u9054\u9055\u9056\u9059\u905A\u905C",5,"\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F",4,"\u9076",6,"\u907E\u9081"],["df80","\u9084\u9085\u9086\u9087\u9089\u908A\u908C",4,"\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],["e040","\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105",19,"\u911A\u911B\u911C"],["e080","\u911D\u911F\u9120\u9121\u9124",10,"\u9130\u9132",6,"\u913A",8,"\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],["e140","\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180",4,"\u9186\u9188\u918A\u918E\u918F\u9193",6,"\u919C",5,"\u91A4",5,"\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],["e180","\u91BC",10,"\u91C8\u91CB\u91D0\u91D2",9,"\u91DD",8,"\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],["e240","\u91E6",62],["e280","\u9225",32,"\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967",5,"\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],["e340","\u9246",45,"\u9275",16],["e380","\u9286",7,"\u928F",24,"\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],["e440","\u92A8",5,"\u92AF",24,"\u92C9",31],["e480","\u92E9",32,"\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],["e540","\u930A",51,"\u933F",10],["e580","\u934A",31,"\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],["e640","\u936C",34,"\u9390",27],["e680","\u93AC",29,"\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],["e740","\u93CE",7,"\u93D7",54],["e780","\u940E",32,"\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21",6,"\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F",4,"\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],["e840","\u942F",14,"\u943F",43,"\u946C\u946D\u946E\u946F"],["e880","\u9470",20,"\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],["e940","\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577",7,"\u9580",42],["e980","\u95AB",32,"\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],["ea40","\u95CC",27,"\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623",6,"\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],["ea80","\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D",4,"\u9673\u9678",12,"\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],["eb40","\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D",9,"\u96A8",7,"\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6",9,"\u96E1",6,"\u96EB"],["eb80","\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717",4,"\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],["ec40","\u9721",8,"\u972B\u972C\u972E\u972F\u9731\u9733",4,"\u973A\u973B\u973C\u973D\u973F",18,"\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A",7],["ec80","\u9772\u9775\u9777",4,"\u977D",7,"\u9786",4,"\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799",4,"\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],["ed40","\u979E\u979F\u97A1\u97A2\u97A4",6,"\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5",46],["ed80","\u97E4\u97E5\u97E8\u97EE",4,"\u97F4\u97F7",23,"\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],["ee40","\u980F",62],["ee80","\u984E",32,"\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6",4,"\u94BC\u94BD\u94BF\u94C4\u94C8",6,"\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],["ef40","\u986F",5,"\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8",37,"\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0",4],["ef80","\u98E5\u98E6\u98E9",30,"\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512",4,"\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564",8,"\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],["f040","\u9908",4,"\u990E\u990F\u9911",28,"\u992F",26],["f080","\u994A",9,"\u9956",12,"\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28",4,"\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66",6,"\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],["f140","\u998C\u998E\u999A",10,"\u99A6\u99A7\u99A9",47],["f180","\u99D9",32,"\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],["f240","\u99FA",62],["f280","\u9A39",32,"\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],["f340","\u9A5A",17,"\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9",6,"\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6",4,"\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],["f380","\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0",8,"\u9AFA\u9AFC",6,"\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],["f440","\u9B07\u9B09",5,"\u9B10\u9B11\u9B12\u9B14",10,"\u9B20\u9B21\u9B22\u9B24",10,"\u9B30\u9B31\u9B33",7,"\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55",5],["f480","\u9B5B",32,"\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],["f540","\u9B7C",62],["f580","\u9BBB",32,"\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],["f640","\u9BDC",62],["f680","\u9C1B",32,"\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85",5,"\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E",5,"\u9CA5",4,"\u9CAB\u9CAD\u9CAE\u9CB0",7,"\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],["f740","\u9C3C",62],["f780","\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE",4,"\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC",4,"\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],["f840","\u9CE3",62],["f880","\u9D22",32],["f940","\u9D43",62],["f980","\u9D82",32],["fa40","\u9DA3",62],["fa80","\u9DE2",32],["fb40","\u9E03",27,"\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74",9,"\u9E80"],["fb80","\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C",5,"\u9E94",8,"\u9E9E\u9EA0",5,"\u9EA7\u9EA8\u9EA9\u9EAA"],["fc40","\u9EAB",8,"\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF",4,"\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0",8,"\u9EFA\u9EFD\u9EFF",6],["fc80","\u9F06",4,"\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A",5,"\u9F21\u9F23",8,"\u9F2D\u9F2E\u9F30\u9F31"],["fd40","\u9F32",4,"\u9F38\u9F3A\u9F3C\u9F3F",4,"\u9F45",10,"\u9F52",38],["fd80","\u9F79",5,"\u9F81\u9F82\u9F8D",11,"\u9F9C\u9F9D\u9F9E\u9FA1",4,"\uF92C\uF979\uF995\uF9E7\uF9F1"],["fe40","\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]]});var Tk=$((SPe,Dee)=>{Dee.exports=[["a140","\uE4C6",62],["a180","\uE505",32],["a240","\uE526",62],["a280","\uE565",32],["a2ab","\uE766",5],["a2e3","\u20AC\uE76D"],["a2ef","\uE76E\uE76F"],["a2fd","\uE770\uE771"],["a340","\uE586",62],["a380","\uE5C5",31,"\u3000"],["a440","\uE5E6",62],["a480","\uE625",32],["a4f4","\uE772",10],["a540","\uE646",62],["a580","\uE685",32],["a5f7","\uE77D",7],["a640","\uE6A6",62],["a680","\uE6E5",32],["a6b9","\uE785",7],["a6d9","\uE78D",6],["a6ec","\uE794\uE795"],["a6f3","\uE796"],["a6f6","\uE797",8],["a740","\uE706",62],["a780","\uE745",32],["a7c2","\uE7A0",14],["a7f2","\uE7AF",12],["a896","\uE7BC",10],["a8bc","\uE7C7"],["a8bf","\u01F9"],["a8c1","\uE7C9\uE7CA\uE7CB\uE7CC"],["a8ea","\uE7CD",20],["a958","\uE7E2"],["a95b","\uE7E3"],["a95d","\uE7E4\uE7E5\uE7E6"],["a989","\u303E\u2FF0",11],["a997","\uE7F4",12],["a9f0","\uE801",14],["aaa1","\uE000",93],["aba1","\uE05E",93],["aca1","\uE0BC",93],["ada1","\uE11A",93],["aea1","\uE178",93],["afa1","\uE1D6",93],["d7fa","\uE810",4],["f8a1","\uE234",93],["f9a1","\uE292",93],["faa1","\uE2F0",93],["fba1","\uE34E",93],["fca1","\uE3AC",93],["fda1","\uE40A",93],["fe50","\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],["fe80","\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13",6,"\u4DAE\uE864\uE468",93]]});var YD=$((xPe,jee)=>{jee.exports={uChars:[128,165,169,178,184,216,226,235,238,244,248,251,253,258,276,284,300,325,329,334,364,463,465,467,469,471,473,475,477,506,594,610,712,716,730,930,938,962,970,1026,1104,1106,8209,8215,8218,8222,8231,8241,8244,8246,8252,8365,8452,8454,8458,8471,8482,8556,8570,8596,8602,8713,8720,8722,8726,8731,8737,8740,8742,8748,8751,8760,8766,8777,8781,8787,8802,8808,8816,8854,8858,8870,8896,8979,9322,9372,9548,9588,9616,9622,9634,9652,9662,9672,9676,9680,9702,9735,9738,9793,9795,11906,11909,11913,11917,11928,11944,11947,11951,11956,11960,11964,11979,12284,12292,12312,12319,12330,12351,12436,12447,12535,12543,12586,12842,12850,12964,13200,13215,13218,13253,13263,13267,13270,13384,13428,13727,13839,13851,14617,14703,14801,14816,14964,15183,15471,15585,16471,16736,17208,17325,17330,17374,17623,17997,18018,18212,18218,18301,18318,18760,18811,18814,18820,18823,18844,18848,18872,19576,19620,19738,19887,40870,59244,59336,59367,59413,59417,59423,59431,59437,59443,59452,59460,59478,59493,63789,63866,63894,63976,63986,64016,64018,64021,64025,64034,64037,64042,65074,65093,65107,65112,65127,65132,65375,65510,65536],gbChars:[0,36,38,45,50,81,89,95,96,100,103,104,105,109,126,133,148,172,175,179,208,306,307,308,309,310,311,312,313,341,428,443,544,545,558,741,742,749,750,805,819,820,7922,7924,7925,7927,7934,7943,7944,7945,7950,8062,8148,8149,8152,8164,8174,8236,8240,8262,8264,8374,8380,8381,8384,8388,8390,8392,8393,8394,8396,8401,8406,8416,8419,8424,8437,8439,8445,8482,8485,8496,8521,8603,8936,8946,9046,9050,9063,9066,9076,9092,9100,9108,9111,9113,9131,9162,9164,9218,9219,11329,11331,11334,11336,11346,11361,11363,11366,11370,11372,11375,11389,11682,11686,11687,11692,11694,11714,11716,11723,11725,11730,11736,11982,11989,12102,12336,12348,12350,12384,12393,12395,12397,12510,12553,12851,12962,12973,13738,13823,13919,13933,14080,14298,14585,14698,15583,15847,16318,16434,16438,16481,16729,17102,17122,17315,17320,17402,17418,17859,17909,17911,17915,17916,17936,17939,17961,18664,18703,18814,18962,19043,33469,33470,33471,33484,33485,33490,33497,33501,33505,33513,33520,33536,33550,37845,37921,37948,38029,38038,38064,38065,38066,38069,38075,38076,38078,39108,39109,39113,39114,39115,39116,39265,39394,189e3]}});var QD=$((wPe,zee)=>{zee.exports=[["0","\0",127],["8141","\uAC02\uAC03\uAC05\uAC06\uAC0B",4,"\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25",6,"\uAC2E\uAC32\uAC33\uAC34"],["8161","\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41",9,"\uAC4C\uAC4E",5,"\uAC55"],["8181","\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D",18,"\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B",4,"\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95",6,"\uAC9E\uACA2",5,"\uACAB\uACAD\uACAE\uACB1",6,"\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD",7,"\uACD6\uACD8",7,"\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7",4,"\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07",4,"\uAD0E\uAD10\uAD12\uAD13"],["8241","\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21",7,"\uAD2A\uAD2B\uAD2E",5],["8261","\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D",6,"\uAD46\uAD48\uAD4A",5,"\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],["8281","\uAD59",7,"\uAD62\uAD64",7,"\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83",4,"\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91",10,"\uAD9E",5,"\uADA5",17,"\uADB8",7,"\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9",6,"\uADD2\uADD4",7,"\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5",18],["8341","\uADFA\uADFB\uADFD\uADFE\uAE02",5,"\uAE0A\uAE0C\uAE0E",5,"\uAE15",7],["8361","\uAE1D",18,"\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],["8381","\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57",4,"\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71",6,"\uAE7A\uAE7E",5,"\uAE86",5,"\uAE8D",46,"\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5",6,"\uAECE\uAED2",5,"\uAEDA\uAEDB\uAEDD",8],["8441","\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE",5,"\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD",8],["8461","\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11",18],["8481","\uAF24",7,"\uAF2E\uAF2F\uAF31\uAF33\uAF35",6,"\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A",5,"\uAF51",10,"\uAF5E",5,"\uAF66",18,"\uAF7A",5,"\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89",6,"\uAF92\uAF93\uAF94\uAF96",5,"\uAF9D",26,"\uAFBA\uAFBB\uAFBD\uAFBE"],["8541","\uAFBF\uAFC1",5,"\uAFCA\uAFCC\uAFCF",4,"\uAFD5",6,"\uAFDD",4],["8561","\uAFE2",5,"\uAFEA",5,"\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9",6,"\uB002\uB003"],["8581","\uB005",6,"\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015",6,"\uB01E",9,"\uB029",26,"\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E",29,"\uB07E\uB07F\uB081\uB082\uB083\uB085",6,"\uB08E\uB090\uB092",5,"\uB09B\uB09D\uB09E\uB0A3\uB0A4"],["8641","\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD",6,"\uB0C6\uB0CA",5,"\uB0D2"],["8661","\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9",6,"\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6",10],["8681","\uB0F1",22,"\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E",4,"\uB126\uB127\uB129\uB12A\uB12B\uB12D",6,"\uB136\uB13A",5,"\uB142\uB143\uB145\uB146\uB147\uB149",6,"\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161",22,"\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183",4,"\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],["8741","\uB19E",9,"\uB1A9",15],["8761","\uB1B9",18,"\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],["8781","\uB1D6",5,"\uB1DE\uB1E0",7,"\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1",7,"\uB1FA\uB1FC\uB1FE",5,"\uB206\uB207\uB209\uB20A\uB20D",6,"\uB216\uB218\uB21A",5,"\uB221",18,"\uB235",6,"\uB23D",26,"\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261",6,"\uB26A",4],["8841","\uB26F",4,"\uB276",5,"\uB27D",6,"\uB286\uB287\uB288\uB28A",4],["8861","\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B",4,"\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],["8881","\uB2B8",15,"\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3",4,"\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309",6,"\uB312\uB316",5,"\uB31D",54,"\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],["8941","\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379",6,"\uB382\uB386",5,"\uB38D"],["8961","\uB38E\uB38F\uB391\uB392\uB393\uB395",10,"\uB3A2",5,"\uB3A9\uB3AA\uB3AB\uB3AD"],["8981","\uB3AE",21,"\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9",18,"\uB3FD",18,"\uB411",6,"\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421",6,"\uB42A\uB42C",7,"\uB435",15],["8a41","\uB445",10,"\uB452\uB453\uB455\uB456\uB457\uB459",6,"\uB462\uB464\uB466"],["8a61","\uB467",4,"\uB46D",18,"\uB481\uB482"],["8a81","\uB483",4,"\uB489",19,"\uB49E",5,"\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD",7,"\uB4B6\uB4B8\uB4BA",5,"\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9",6,"\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6",5,"\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7",4,"\uB4EE\uB4F0\uB4F2",5,"\uB4F9",26,"\uB516\uB517\uB519\uB51A\uB51D"],["8b41","\uB51E",5,"\uB526\uB52B",4,"\uB532\uB533\uB535\uB536\uB537\uB539",6,"\uB542\uB546"],["8b61","\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555",6,"\uB55E\uB562",8],["8b81","\uB56B",52,"\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6",4,"\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5",6,"\uB5CE\uB5D2",5,"\uB5D9",18,"\uB5ED",18],["8c41","\uB600",15,"\uB612\uB613\uB615\uB616\uB617\uB619",4],["8c61","\uB61E",6,"\uB626",5,"\uB62D",6,"\uB635",5],["8c81","\uB63B",12,"\uB649",26,"\uB665\uB666\uB667\uB669",50,"\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5",5,"\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2",16],["8d41","\uB6C3",16,"\uB6D5",8],["8d61","\uB6DE",17,"\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],["8d81","\uB6FB",4,"\uB702\uB703\uB704\uB706",33,"\uB72A\uB72B\uB72D\uB72E\uB731",6,"\uB73A\uB73C",7,"\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D",6,"\uB756",9,"\uB761\uB762\uB763\uB765\uB766\uB767\uB769",6,"\uB772\uB774\uB776",5,"\uB77E\uB77F\uB781\uB782\uB783\uB785",6,"\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],["8e41","\uB79F\uB7A1",6,"\uB7AA\uB7AE",5,"\uB7B6\uB7B7\uB7B9",8],["8e61","\uB7C2",4,"\uB7C8\uB7CA",19],["8e81","\uB7DE",13,"\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5",6,"\uB7FE\uB802",4,"\uB80A\uB80B\uB80D\uB80E\uB80F\uB811",6,"\uB81A\uB81C\uB81E",5,"\uB826\uB827\uB829\uB82A\uB82B\uB82D",6,"\uB836\uB83A",5,"\uB841\uB842\uB843\uB845",11,"\uB852\uB854",7,"\uB85E\uB85F\uB861\uB862\uB863\uB865",6,"\uB86E\uB870\uB872",5,"\uB879\uB87A\uB87B\uB87D",7],["8f41","\uB885",7,"\uB88E",17],["8f61","\uB8A0",7,"\uB8A9",6,"\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9",4],["8f81","\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6",5,"\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5",7,"\uB8DE\uB8E0\uB8E2",5,"\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1",6,"\uB8FA\uB8FC\uB8FE",5,"\uB905",18,"\uB919",6,"\uB921",26,"\uB93E\uB93F\uB941\uB942\uB943\uB945",6,"\uB94D\uB94E\uB950\uB952",5],["9041","\uB95A\uB95B\uB95D\uB95E\uB95F\uB961",6,"\uB96A\uB96C\uB96E",5,"\uB976\uB977\uB979\uB97A\uB97B\uB97D"],["9061","\uB97E",5,"\uB986\uB988\uB98B\uB98C\uB98F",15],["9081","\uB99F",12,"\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5",6,"\uB9BE\uB9C0\uB9C2",5,"\uB9CA\uB9CB\uB9CD\uB9D3",4,"\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED",6,"\uB9F6\uB9FB",4,"\uBA02",5,"\uBA09",11,"\uBA16",33,"\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],["9141","\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D",6,"\uBA66\uBA6A",5],["9161","\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79",9,"\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D",5],["9181","\uBA93",20,"\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3",4,"\uBABA\uBABC\uBABE",5,"\uBAC5\uBAC6\uBAC7\uBAC9",14,"\uBADA",33,"\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05",7,"\uBB0E\uBB10\uBB12",5,"\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21",6],["9241","\uBB28\uBB2A\uBB2C",7,"\uBB37\uBB39\uBB3A\uBB3F",4,"\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],["9261","\uBB53\uBB55\uBB56\uBB57\uBB59",7,"\uBB62\uBB64",7,"\uBB6D",4],["9281","\uBB72",21,"\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91",18,"\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD",6,"\uBBB5\uBBB6\uBBB8",7,"\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9",6,"\uBBD1\uBBD2\uBBD4",35,"\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],["9341","\uBC03",4,"\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],["9361","\uBC36\uBC37\uBC39",6,"\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51",8],["9381","\uBC5A\uBC5B\uBC5C\uBC5E",37,"\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F",4,"\uBC96\uBC98\uBC9B",4,"\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9",6,"\uBCB2\uBCB6",5,"\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5",7,"\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD",22,"\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],["9441","\uBCFE",5,"\uBD06\uBD08\uBD0A",5,"\uBD11\uBD12\uBD13\uBD15",8],["9461","\uBD1E",5,"\uBD25",6,"\uBD2D",12],["9481","\uBD3A",5,"\uBD41",6,"\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51",6,"\uBD5A",9,"\uBD65\uBD66\uBD67\uBD69",22,"\uBD82\uBD83\uBD85\uBD86\uBD8B",4,"\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D",6,"\uBDA5",10,"\uBDB1",6,"\uBDB9",24],["9541","\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD",11,"\uBDEA",5,"\uBDF1"],["9561","\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9",6,"\uBE01\uBE02\uBE04\uBE06",5,"\uBE0E\uBE0F\uBE11\uBE12\uBE13"],["9581","\uBE15",6,"\uBE1E\uBE20",35,"\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F",4,"\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B",4,"\uBE72\uBE76",4,"\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85",6,"\uBE8E\uBE92",5,"\uBE9A",13,"\uBEA9",14],["9641","\uBEB8",23,"\uBED2\uBED3"],["9661","\uBED5\uBED6\uBED9",6,"\uBEE1\uBEE2\uBEE6",5,"\uBEED",8],["9681","\uBEF6",10,"\uBF02",5,"\uBF0A",13,"\uBF1A\uBF1E",33,"\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49",6,"\uBF52\uBF53\uBF54\uBF56",44],["9741","\uBF83",16,"\uBF95",8],["9761","\uBF9E",17,"\uBFB1",7],["9781","\uBFB9",11,"\uBFC6",5,"\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5",6,"\uBFDD\uBFDE\uBFE0\uBFE2",89,"\uC03D\uC03E\uC03F"],["9841","\uC040",16,"\uC052",5,"\uC059\uC05A\uC05B"],["9861","\uC05D\uC05E\uC05F\uC061",6,"\uC06A",15],["9881","\uC07A",21,"\uC092\uC093\uC095\uC096\uC097\uC099",6,"\uC0A2\uC0A4\uC0A6",5,"\uC0AE\uC0B1\uC0B2\uC0B7",4,"\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1",6,"\uC0DA\uC0DE",5,"\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED",6,"\uC0F6\uC0F8\uC0FA",5,"\uC101\uC102\uC103\uC105\uC106\uC107\uC109",6,"\uC111\uC112\uC113\uC114\uC116",5,"\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],["9941","\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141",6,"\uC14A\uC14E",5,"\uC156\uC157"],["9961","\uC159\uC15A\uC15B\uC15D",6,"\uC166\uC16A",5,"\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],["9981","\uC17C",8,"\uC186",5,"\uC18F\uC191\uC192\uC193\uC195\uC197",4,"\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1",11,"\uC1BE",5,"\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD",6,"\uC1D5\uC1D6\uC1D9",6,"\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9",6,"\uC1F2\uC1F4",7,"\uC1FE\uC1FF\uC201\uC202\uC203\uC205",6,"\uC20E\uC210\uC212",5,"\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],["9a41","\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235",16],["9a61","\uC246\uC247\uC249",6,"\uC252\uC253\uC255\uC256\uC257\uC259",6,"\uC261\uC262\uC263\uC264\uC266"],["9a81","\uC267",4,"\uC26E\uC26F\uC271\uC272\uC273\uC275",6,"\uC27E\uC280\uC282",5,"\uC28A",5,"\uC291",6,"\uC299\uC29A\uC29C\uC29E",5,"\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE",5,"\uC2B6\uC2B8\uC2BA",33,"\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5",5,"\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301",6,"\uC30A\uC30B\uC30E\uC30F"],["9b41","\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D",6,"\uC326\uC327\uC32A",8],["9b61","\uC333",17,"\uC346",7],["9b81","\uC34E",25,"\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373",4,"\uC37A\uC37B\uC37E",5,"\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D",50,"\uC3C1",22,"\uC3DA"],["9c41","\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3",4,"\uC3EA\uC3EB\uC3EC\uC3EE",5,"\uC3F6\uC3F7\uC3F9",5],["9c61","\uC3FF",8,"\uC409",6,"\uC411",9],["9c81","\uC41B",8,"\uC425",6,"\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435",6,"\uC43E",9,"\uC449",26,"\uC466\uC467\uC469\uC46A\uC46B\uC46D",6,"\uC476\uC477\uC478\uC47A",5,"\uC481",18,"\uC495",6,"\uC49D",12],["9d41","\uC4AA",13,"\uC4B9\uC4BA\uC4BB\uC4BD",8],["9d61","\uC4C6",25],["9d81","\uC4E0",8,"\uC4EA",5,"\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502",9,"\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515",6,"\uC51D",10,"\uC52A\uC52B\uC52D\uC52E\uC52F\uC531",6,"\uC53A\uC53C\uC53E",5,"\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569",6,"\uC572\uC576",5,"\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],["9e41","\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1",7,"\uC5AA",9,"\uC5B6"],["9e61","\uC5B7\uC5BA\uC5BF",4,"\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9",6,"\uC5E2\uC5E4\uC5E6\uC5E7"],["9e81","\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611",6,"\uC61A\uC61D",6,"\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649",6,"\uC652\uC656",5,"\uC65E\uC65F\uC661",10,"\uC66D\uC66E\uC670\uC672",5,"\uC67A\uC67B\uC67D\uC67E\uC67F\uC681",6,"\uC68A\uC68C\uC68E",5,"\uC696\uC697\uC699\uC69A\uC69B\uC69D",6,"\uC6A6"],["9f41","\uC6A8\uC6AA",5,"\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB",4,"\uC6C2\uC6C4\uC6C6",5,"\uC6CE"],["9f61","\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5",6,"\uC6DE\uC6DF\uC6E2",5,"\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],["9f81","\uC6F3",4,"\uC6FA\uC6FB\uC6FC\uC6FE",5,"\uC706\uC707\uC709\uC70A\uC70B\uC70D",6,"\uC716\uC718\uC71A",5,"\uC722\uC723\uC725\uC726\uC727\uC729",6,"\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745",4,"\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761",6,"\uC769\uC76A\uC76C",7,"\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B",4,"\uC7A2\uC7A7",4,"\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],["a041","\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2",5,"\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1",6,"\uC7D9\uC7DA\uC7DB\uC7DC"],["a061","\uC7DE",5,"\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED",13],["a081","\uC7FB",4,"\uC802\uC803\uC805\uC806\uC807\uC809\uC80B",4,"\uC812\uC814\uC817",4,"\uC81E\uC81F\uC821\uC822\uC823\uC825",6,"\uC82E\uC830\uC832",5,"\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841",6,"\uC84A\uC84B\uC84E",5,"\uC855",26,"\uC872\uC873\uC875\uC876\uC877\uC879\uC87B",4,"\uC882\uC884\uC888\uC889\uC88A\uC88E",5,"\uC895",7,"\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],["a141","\uC8A5\uC8A6\uC8A7\uC8A9",18,"\uC8BE\uC8BF\uC8C0\uC8C1"],["a161","\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD",6,"\uC8D6\uC8D8\uC8DA",5,"\uC8E2\uC8E3\uC8E5"],["a181","\uC8E6",14,"\uC8F6",5,"\uC8FE\uC8FF\uC901\uC902\uC903\uC907",4,"\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008",9,"\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],["a241","\uC910\uC912",5,"\uC919",18],["a261","\uC92D",6,"\uC935",18],["a281","\uC948",7,"\uC952\uC953\uC955\uC956\uC957\uC959",6,"\uC962\uC964",7,"\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],["a341","\uC971\uC972\uC973\uC975",6,"\uC97D",10,"\uC98A\uC98B\uC98D\uC98E\uC98F"],["a361","\uC991",6,"\uC99A\uC99C\uC99E",16],["a381","\uC9AF",16,"\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB",4,"\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01",58,"\uFFE6\uFF3D",32,"\uFFE3"],["a441","\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2",5,"\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],["a461","\uCA05\uCA06\uCA07\uCA0A\uCA0E",5,"\uCA15\uCA16\uCA17\uCA19",12],["a481","\uCA26\uCA27\uCA28\uCA2A",28,"\u3131",93],["a541","\uCA47",4,"\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55",6,"\uCA5E\uCA62",5,"\uCA69\uCA6A"],["a561","\uCA6B",17,"\uCA7E",5,"\uCA85\uCA86"],["a581","\uCA87",16,"\uCA99",14,"\u2170",9],["a5b0","\u2160",9],["a5c1","\u0391",16,"\u03A3",6],["a5e1","\u03B1",16,"\u03C3",6],["a641","\uCAA8",19,"\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],["a661","\uCAC6",5,"\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA",5,"\uCAE1",6],["a681","\uCAE8\uCAE9\uCAEA\uCAEB\uCAED",6,"\uCAF5",18,"\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543",7],["a741","\uCB0B",4,"\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19",6,"\uCB22",7],["a761","\uCB2A",22,"\uCB42\uCB43\uCB44"],["a781","\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51",6,"\uCB5A\uCB5B\uCB5C\uCB5E",5,"\uCB65",7,"\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399",9,"\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0",9,"\u3380",4,"\u33BA",5,"\u3390",4,"\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],["a841","\uCB6D",10,"\uCB7A",14],["a861","\uCB89",18,"\uCB9D",6],["a881","\uCBA4",19,"\uCBB9",11,"\xC6\xD0\xAA\u0126"],["a8a6","\u0132"],["a8a8","\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],["a8b1","\u3260",27,"\u24D0",25,"\u2460",14,"\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],["a941","\uCBC5",14,"\uCBD5",10],["a961","\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA",18],["a981","\uCBFD",14,"\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15",6,"\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200",27,"\u249C",25,"\u2474",14,"\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],["aa41","\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31",6,"\uCC3A\uCC3F",4,"\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],["aa61","\uCC4F",4,"\uCC56\uCC5A",5,"\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69",6,"\uCC71\uCC72"],["aa81","\uCC73\uCC74\uCC76",29,"\u3041",82],["ab41","\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1",6,"\uCCAA\uCCAE",5,"\uCCB6\uCCB7\uCCB9"],["ab61","\uCCBA\uCCBB\uCCBD",6,"\uCCC6\uCCC8\uCCCA",5,"\uCCD1\uCCD2\uCCD3\uCCD5",5],["ab81","\uCCDB",8,"\uCCE5",6,"\uCCED\uCCEE\uCCEF\uCCF1",12,"\u30A1",85],["ac41","\uCCFE\uCCFF\uCD00\uCD02",5,"\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11",6,"\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],["ac61","\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D",11,"\uCD3A",4],["ac81","\uCD3F",28,"\uCD5D\uCD5E\uCD5F\u0410",5,"\u0401\u0416",25],["acd1","\u0430",5,"\u0451\u0436",25],["ad41","\uCD61\uCD62\uCD63\uCD65",6,"\uCD6E\uCD70\uCD72",5,"\uCD79",7],["ad61","\uCD81",6,"\uCD89",10,"\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],["ad81","\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA",5,"\uCDB1",18,"\uCDC5"],["ae41","\uCDC6",5,"\uCDCD\uCDCE\uCDCF\uCDD1",16],["ae61","\uCDE2",5,"\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1",6,"\uCDFA\uCDFC\uCDFE",4],["ae81","\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D",6,"\uCE15\uCE16\uCE17\uCE18\uCE1A",5,"\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],["af41","\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36",19],["af61","\uCE4A",13,"\uCE5A\uCE5B\uCE5D\uCE5E\uCE62",5,"\uCE6A\uCE6C"],["af81","\uCE6E",5,"\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D",6,"\uCE86\uCE88\uCE8A",5,"\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],["b041","\uCE9A",5,"\uCEA2\uCEA6",5,"\uCEAE",12],["b061","\uCEBB",5,"\uCEC2",19],["b081","\uCED6",13,"\uCEE6\uCEE7\uCEE9\uCEEA\uCEED",6,"\uCEF6\uCEFA",5,"\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10",7,"\uAC19",4,"\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],["b141","\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09",6,"\uCF12\uCF14\uCF16",5,"\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],["b161","\uCF25",6,"\uCF2E\uCF32",5,"\uCF39",11],["b181","\uCF45",14,"\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D",6,"\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],["b241","\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79",6,"\uCF81\uCF82\uCF83\uCF84\uCF86",5,"\uCF8D"],["b261","\uCF8E",18,"\uCFA2",5,"\uCFA9"],["b281","\uCFAA",5,"\uCFB1",18,"\uCFC5",6,"\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],["b341","\uCFCC",19,"\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],["b361","\uCFEA",5,"\uCFF2\uCFF4\uCFF6",5,"\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005",5],["b381","\uD00B",5,"\uD012",5,"\uD019",19,"\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB",4,"\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],["b441","\uD02E",5,"\uD036\uD037\uD039\uD03A\uD03B\uD03D",6,"\uD046\uD048\uD04A",5],["b461","\uD051\uD052\uD053\uD055\uD056\uD057\uD059",6,"\uD061",10,"\uD06E\uD06F"],["b481","\uD071\uD072\uD073\uD075",6,"\uD07E\uD07F\uD080\uD082",18,"\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB",4,"\uB2F3\uB2F4\uB2F5\uB2F7",4,"\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],["b541","\uD095",14,"\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD",5],["b561","\uD0B3\uD0B6\uD0B8\uD0BA",5,"\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA",5,"\uD0D2\uD0D6",4],["b581","\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5",6,"\uD0EE\uD0F2",5,"\uD0F9",11,"\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],["b641","\uD105",7,"\uD10E",17],["b661","\uD120",15,"\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],["b681","\uD13F\uD142\uD146",5,"\uD14E\uD14F\uD151\uD152\uD153\uD155",6,"\uD15E\uD160\uD162",5,"\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],["b741","\uD16E",13,"\uD17D",6,"\uD185\uD186\uD187\uD189\uD18A"],["b761","\uD18B",20,"\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],["b781","\uD1A9",6,"\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1",14,"\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],["b841","\uD1D0",7,"\uD1D9",17],["b861","\uD1EB",8,"\uD1F5\uD1F6\uD1F7\uD1F9",13],["b881","\uD208\uD20A",5,"\uD211",24,"\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE",4,"\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],["b941","\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235",6,"\uD23E\uD240\uD242",5,"\uD249\uD24A\uD24B\uD24C"],["b961","\uD24D",14,"\uD25D",6,"\uD265\uD266\uD267\uD268"],["b981","\uD269",22,"\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14",4,"\uBC1B",4,"\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],["ba41","\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296",5,"\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5",6,"\uD2AD"],["ba61","\uD2AE\uD2AF\uD2B0\uD2B2",5,"\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3",4,"\uD2CA\uD2CC",5],["ba81","\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD",6,"\uD2E6",9,"\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],["bb41","\uD2FB",4,"\uD302\uD304\uD306",5,"\uD30F\uD311\uD312\uD313\uD315\uD317",4,"\uD31E\uD322\uD323"],["bb61","\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331",6,"\uD33A\uD33E",5,"\uD346\uD347\uD348\uD349"],["bb81","\uD34A",31,"\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],["bc41","\uD36A",17,"\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],["bc61","\uD388\uD389\uD38A\uD38B\uD38E\uD392",5,"\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1",6,"\uD3AA\uD3AC\uD3AE"],["bc81","\uD3AF",4,"\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD",6,"\uD3C6\uD3C7\uD3CA",5,"\uD3D1",5,"\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C",4,"\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],["bd41","\uD3D7\uD3D9",7,"\uD3E2\uD3E4",7,"\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],["bd61","\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402",5,"\uD409",13],["bd81","\uD417",5,"\uD41E",25,"\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],["be41","\uD438",7,"\uD441\uD442\uD443\uD445",14],["be61","\uD454",7,"\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465",7,"\uD46E\uD470\uD471\uD472"],["be81","\uD473",4,"\uD47A\uD47B\uD47D\uD47E\uD481\uD483",4,"\uD48A\uD48C\uD48E",5,"\uD495",8,"\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4",6,"\uC5CC\uC5CE"],["bf41","\uD49E",10,"\uD4AA",14],["bf61","\uD4B9",18,"\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],["bf81","\uD4D6",5,"\uD4DD\uD4DE\uD4E0",7,"\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1",6,"\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC",5,"\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],["c041","\uD4FE",5,"\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D",6,"\uD516\uD518",5],["c061","\uD51E",25],["c081","\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545",6,"\uD54E\uD550\uD552",5,"\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751",7,"\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],["c141","\uD564\uD566\uD567\uD56A\uD56C\uD56E",5,"\uD576\uD577\uD579\uD57A\uD57B\uD57D",6,"\uD586\uD58A\uD58B"],["c161","\uD58C\uD58D\uD58E\uD58F\uD591",19,"\uD5A6\uD5A7"],["c181","\uD5A8",31,"\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],["c241","\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3",4,"\uD5DA\uD5DC\uD5DE",5,"\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],["c261","\uD5EF",4,"\uD5F6\uD5F8\uD5FA",5,"\uD602\uD603\uD605\uD606\uD607\uD609",6,"\uD612"],["c281","\uD616",5,"\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625",7,"\uD62E",9,"\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],["c341","\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D",4],["c361","\uD662",4,"\uD668\uD66A",5,"\uD672\uD673\uD675",11],["c381","\uD681\uD682\uD684\uD686",5,"\uD68E\uD68F\uD691\uD692\uD693\uD695",7,"\uD69E\uD6A0\uD6A2",5,"\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],["c441","\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1",7,"\uD6BA\uD6BC",7,"\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],["c461","\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA",5,"\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9",4],["c481","\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6",5,"\uD6FE\uD6FF\uD701\uD702\uD703\uD705",11,"\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],["c541","\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721",6,"\uD72A\uD72C\uD72E",5,"\uD736\uD737\uD739"],["c561","\uD73A\uD73B\uD73D",6,"\uD745\uD746\uD748\uD74A",5,"\uD752\uD753\uD755\uD75A",4],["c581","\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775",6,"\uD77E\uD77F\uD780\uD782",5,"\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],["c641","\uD78D\uD78E\uD78F\uD791",6,"\uD79A\uD79C\uD79E",5],["c6a1","\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],["c7a1","\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],["c8a1","\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],["caa1","\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],["cba1","\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],["cca1","\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],["cda1","\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],["cea1","\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],["cfa1","\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],["d0a1","\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],["d1a1","\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E",5,"\u90A3\uF914",4,"\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],["d2a1","\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928",4,"\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933",5,"\u99D1\uF939",10,"\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A",7,"\u5AE9\u8A25\u677B\u7D10\uF952",5,"\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],["d3a1","\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],["d4a1","\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],["d5a1","\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],["d6a1","\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],["d7a1","\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],["d8a1","\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],["d9a1","\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],["daa1","\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],["dba1","\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],["dca1","\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],["dda1","\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],["dea1","\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],["dfa1","\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],["e0a1","\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],["e1a1","\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],["e2a1","\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],["e3a1","\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],["e4a1","\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],["e5a1","\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],["e6a1","\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],["e7a1","\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],["e8a1","\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],["e9a1","\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],["eaa1","\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],["eba1","\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],["eca1","\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],["eda1","\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],["eea1","\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],["efa1","\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],["f0a1","\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],["f1a1","\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],["f2a1","\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],["f3a1","\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],["f4a1","\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],["f5a1","\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],["f6a1","\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],["f7a1","\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],["f8a1","\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],["f9a1","\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],["faa1","\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],["fba1","\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],["fca1","\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],["fda1","\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]]});var $k=$((EPe,Lee)=>{Lee.exports=[["0","\0",127],["a140","\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],["a1a1","\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62",4,"\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],["a240","\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581",7,"\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],["a2a1","\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10",9,"\u2160",9,"\u3021",8,"\u5341\u5344\u5345\uFF21",25,"\uFF41",21],["a340","\uFF57\uFF58\uFF59\uFF5A\u0391",16,"\u03A3",6,"\u03B1",16,"\u03C3",6,"\u3105",10],["a3a1","\u3110",25,"\u02D9\u02C9\u02CA\u02C7\u02CB"],["a3e1","\u20AC"],["a440","\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],["a4a1","\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],["a540","\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],["a5a1","\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],["a640","\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],["a6a1","\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],["a740","\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],["a7a1","\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],["a840","\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],["a8a1","\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],["a940","\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],["a9a1","\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],["aa40","\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],["aaa1","\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],["ab40","\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],["aba1","\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],["ac40","\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],["aca1","\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],["ad40","\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],["ada1","\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],["ae40","\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],["aea1","\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],["af40","\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],["afa1","\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],["b040","\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],["b0a1","\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],["b140","\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],["b1a1","\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],["b240","\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],["b2a1","\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],["b340","\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],["b3a1","\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],["b440","\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],["b4a1","\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],["b540","\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],["b5a1","\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],["b640","\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],["b6a1","\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],["b740","\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],["b7a1","\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],["b840","\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],["b8a1","\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],["b940","\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],["b9a1","\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],["ba40","\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],["baa1","\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],["bb40","\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],["bba1","\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],["bc40","\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],["bca1","\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],["bd40","\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],["bda1","\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],["be40","\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],["bea1","\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],["bf40","\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],["bfa1","\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],["c040","\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],["c0a1","\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],["c140","\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],["c1a1","\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],["c240","\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],["c2a1","\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],["c340","\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],["c3a1","\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],["c440","\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],["c4a1","\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],["c540","\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],["c5a1","\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],["c640","\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],["c940","\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],["c9a1","\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],["ca40","\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],["caa1","\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],["cb40","\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],["cba1","\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],["cc40","\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],["cca1","\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],["cd40","\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],["cda1","\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],["ce40","\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],["cea1","\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],["cf40","\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],["cfa1","\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],["d040","\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],["d0a1","\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],["d140","\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],["d1a1","\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],["d240","\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],["d2a1","\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],["d340","\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],["d3a1","\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],["d440","\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],["d4a1","\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],["d540","\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],["d5a1","\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],["d640","\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],["d6a1","\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],["d740","\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],["d7a1","\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],["d840","\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],["d8a1","\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],["d940","\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],["d9a1","\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],["da40","\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],["daa1","\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],["db40","\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],["dba1","\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],["dc40","\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],["dca1","\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],["dd40","\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],["dda1","\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],["de40","\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],["dea1","\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],["df40","\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],["dfa1","\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],["e040","\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],["e0a1","\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],["e140","\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],["e1a1","\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],["e240","\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],["e2a1","\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],["e340","\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],["e3a1","\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],["e440","\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],["e4a1","\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],["e540","\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],["e5a1","\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],["e640","\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],["e6a1","\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],["e740","\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],["e7a1","\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],["e840","\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],["e8a1","\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],["e940","\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],["e9a1","\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],["ea40","\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],["eaa1","\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],["eb40","\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],["eba1","\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],["ec40","\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],["eca1","\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],["ed40","\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],["eda1","\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],["ee40","\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],["eea1","\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],["ef40","\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],["efa1","\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],["f040","\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],["f0a1","\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],["f140","\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],["f1a1","\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],["f240","\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],["f2a1","\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],["f340","\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],["f3a1","\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],["f440","\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],["f4a1","\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],["f540","\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],["f5a1","\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],["f640","\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],["f6a1","\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],["f740","\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],["f7a1","\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],["f840","\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],["f8a1","\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],["f940","\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],["f9a1","\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]]});var ej=$((kPe,Uee)=>{Uee.exports=[["8740","\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],["8767","\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],["87a1","\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],["8840","\u31C0",4,"\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],["88a1","\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],["8940","\u{2A3A9}\u{21145}"],["8943","\u650A"],["8946","\u4E3D\u6EDD\u9D4E\u91DF"],["894c","\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],["89a1","\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],["89ab","\u918C\u78B8\u915E\u80BC"],["89b0","\u8D0B\u80F6\u{209E7}"],["89b5","\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],["89c1","\u6E9A\u823E\u7519"],["89c5","\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],["8a40","\u{27D84}\u5525"],["8a43","\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],["8a64","\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],["8a76","\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],["8aa1","\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],["8aac","\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],["8ab2","\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],["8abb","\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],["8ac9","\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],["8ace","\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],["8adf","\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],["8af6","\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],["8b40","\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],["8b55","\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],["8ba1","\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],["8bde","\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],["8c40","\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],["8ca1","\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],["8ca7","\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],["8cc9","\u9868\u676B\u4276\u573D"],["8cce","\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],["8ce6","\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],["8d40","\u{20B9F}"],["8d42","\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],["8da1","\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],["8e40","\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],["8ea1","\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],["8f40","\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],["8fa1","\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],["9040","\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],["90a1","\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],["9140","\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],["91a1","\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],["9240","\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],["92a1","\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],["9340","\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],["93a1","\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],["9440","\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],["94a1","\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],["9540","\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],["95a1","\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],["9640","\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],["96a1","\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],["9740","\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],["97a1","\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],["9840","\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],["98a1","\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],["9940","\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],["99a1","\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],["9a40","\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],["9aa1","\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],["9b40","\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],["9b62","\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],["9ba1","\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],["9c40","\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],["9ca1","\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],["9d40","\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],["9da1","\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],["9e40","\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],["9ea1","\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],["9ead","\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],["9ec5","\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],["9ef5","\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],["9f40","\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],["9f4f","\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],["9fa1","\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],["9fae","\u9159\u9681\u915C"],["9fb2","\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],["9fc1","\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],["9fc9","\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],["9fdb","\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],["9fe7","\u6BFA\u8818\u7F78"],["9feb","\u5620\u{2A64A}\u8E77\u9F53"],["9ff0","\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],["a040","\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],["a055","\u{2183B}\u{26E05}"],["a058","\u8A7E\u{2251B}"],["a05b","\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],["a063","\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],["a073","\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],["a0a1","\u5D57\u{28BC2}\u8FDA\u{28E39}"],["a0a6","\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],["a0ae","\u77FE"],["a0b0","\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],["a0d4","\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],["a0e2","\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],["a3c0","\u2400",31,"\u2421"],["c6a1","\u2460",9,"\u2474",9,"\u2170",9,"\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041",23],["c740","\u3059",58,"\u30A1\u30A2\u30A3\u30A4"],["c7a1","\u30A5",81,"\u0410",5,"\u0401\u0416",4],["c840","\u041B",26,"\u0451\u0436",25,"\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],["c8a1","\u9FB0\u5188\u9FB1\u{27607}"],["c8cd","\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],["c8f5","\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],["f9fe","\uFFED"],["fa40","\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],["faa1","\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],["fb40","\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],["fba1","\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],["fc40","\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],["fca1","\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],["fd40","\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],["fda1","\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],["fe40","\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],["fea1","\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]]});var rj=$((TPe,tj)=>{"use strict";tj.exports={shiftjis:{type:"_dbcs",table:function(){return JD()},encodeAdd:{"\xA5":92,"\u203E":126},encodeSkipVals:[{from:60736,to:63808}]},csshiftjis:"shiftjis",mskanji:"shiftjis",sjis:"shiftjis",windows31j:"shiftjis",ms31j:"shiftjis",xsjis:"shiftjis",windows932:"shiftjis",ms932:"shiftjis",932:"shiftjis",cp932:"shiftjis",eucjp:{type:"_dbcs",table:function(){return XD()},encodeAdd:{"\xA5":92,"\u203E":126}},gb2312:"cp936",gb231280:"cp936",gb23121980:"cp936",csgb2312:"cp936",csiso58gb231280:"cp936",euccn:"cp936",windows936:"cp936",ms936:"cp936",936:"cp936",cp936:{type:"_dbcs",table:function(){return wg()}},gbk:{type:"_dbcs",table:function(){return wg().concat(Tk())}},xgbk:"gbk",isoir58:"gbk",gb18030:{type:"_dbcs",table:function(){return wg().concat(Tk())},gb18030:function(){return YD()},encodeSkipVals:[128],encodeAdd:{"\u20AC":41699}},chinese:"gb18030",windows949:"cp949",ms949:"cp949",949:"cp949",cp949:{type:"_dbcs",table:function(){return QD()}},cseuckr:"cp949",csksc56011987:"cp949",euckr:"cp949",isoir149:"cp949",korean:"cp949",ksc56011987:"cp949",ksc56011989:"cp949",ksc5601:"cp949",windows950:"cp950",ms950:"cp950",950:"cp950",cp950:{type:"_dbcs",table:function(){return $k()}},big5:"big5hkscs",big5hkscs:{type:"_dbcs",table:function(){return $k().concat(ej())},encodeSkipVals:[41676]},cnbig5:"big5hkscs",csbig5:"big5hkscs",xxbig5:"big5hkscs"}});var sj=$((ij,Uc)=>{"use strict";var nj=[DD(),zD(),UD(),qD(),ZD(),GD(),KD(),rj()];for(Eg=0;Eg{"use strict";var oj=require("buffer").Buffer,Tg=require("stream").Transform;aj.exports=function(t){t.encodeStream=function(r,n){return new ia(t.getEncoder(r,n),n)},t.decodeStream=function(r,n){return new ao(t.getDecoder(r,n),n)},t.supportsStreams=!0,t.IconvLiteEncoderStream=ia,t.IconvLiteDecoderStream=ao,t._collect=ao.prototype.collect};function ia(t,e){this.conv=t,e=e||{},e.decodeStrings=!1,Tg.call(this,e)}ia.prototype=Object.create(Tg.prototype,{constructor:{value:ia}});ia.prototype._transform=function(t,e,r){if(typeof t!="string")return r(new Error("Iconv encoding stream needs strings as its input."));try{var n=this.conv.write(t);n&&n.length&&this.push(n),r()}catch(i){r(i)}};ia.prototype._flush=function(t){try{var e=this.conv.end();e&&e.length&&this.push(e),t()}catch(r){t(r)}};ia.prototype.collect=function(t){var e=[];return this.on("error",t),this.on("data",function(r){e.push(r)}),this.on("end",function(){t(null,oj.concat(e))}),this};function ao(t,e){this.conv=t,e=e||{},e.encoding=this.encoding="utf8",Tg.call(this,e)}ao.prototype=Object.create(Tg.prototype,{constructor:{value:ao}});ao.prototype._transform=function(t,e,r){if(!oj.isBuffer(t))return r(new Error("Iconv decoding stream needs buffers as its input."));try{var n=this.conv.write(t);n&&n.length&&this.push(n,this.encoding),r()}catch(i){r(i)}};ao.prototype._flush=function(t){try{var e=this.conv.end();e&&e.length&&this.push(e,this.encoding),t()}catch(r){t(r)}};ao.prototype.collect=function(t){var e="";return this.on("error",t),this.on("data",function(r){e+=r}),this.on("end",function(){t(null,e)}),this}});var lj=$((IPe,uj)=>{"use strict";var Wt=require("buffer").Buffer;uj.exports=function(t){var e=void 0;t.supportsNodeEncodingsExtension=!(Wt.from||new Wt(0)instanceof Uint8Array),t.extendNodeEncodings=function(){if(!e){if(e={},!t.supportsNodeEncodingsExtension){console.error("ACTION NEEDED: require('iconv-lite').extendNodeEncodings() is not supported in your version of Node"),console.error("See more info at https://github.com/ashtuchkin/iconv-lite/wiki/Node-v4-compatibility");return}var n={hex:!0,utf8:!0,"utf-8":!0,ascii:!0,binary:!0,base64:!0,ucs2:!0,"ucs-2":!0,utf16le:!0,"utf-16le":!0};Wt.isNativeEncoding=function(o){return o&&n[o.toLowerCase()]};var i=require("buffer").SlowBuffer;if(e.SlowBufferToString=i.prototype.toString,i.prototype.toString=function(o,a,c){return o=String(o||"utf8").toLowerCase(),Wt.isNativeEncoding(o)?e.SlowBufferToString.call(this,o,a,c):(typeof a>"u"&&(a=0),typeof c>"u"&&(c=this.length),t.decode(this.slice(a,c),o))},e.SlowBufferWrite=i.prototype.write,i.prototype.write=function(o,a,c,u){if(isFinite(a))isFinite(c)||(u=c,c=void 0);else{var l=u;u=a,a=c,c=l}a=+a||0;var d=this.length-a;if(c?(c=+c,c>d&&(c=d)):c=d,u=String(u||"utf8").toLowerCase(),Wt.isNativeEncoding(u))return e.SlowBufferWrite.call(this,o,a,c,u);if(o.length>0&&(c<0||a<0))throw new RangeError("attempt to write beyond buffer bounds");var p=t.encode(o,u);return p.length"u"&&(a=0),typeof c>"u"&&(c=this.length),t.decode(this.slice(a,c),o))},e.BufferWrite=Wt.prototype.write,Wt.prototype.write=function(o,a,c,u){var l=a,d=c,p=u;if(isFinite(a))isFinite(c)||(u=c,c=void 0);else{var f=u;u=a,a=c,c=f}if(u=String(u||"utf8").toLowerCase(),Wt.isNativeEncoding(u))return e.BufferWrite.call(this,o,l,d,p);a=+a||0;var m=this.length-a;if(c?(c=+c,c>m&&(c=m)):c=m,o.length>0&&(c<0||a<0))throw new RangeError("attempt to write beyond buffer bounds");var h=t.encode(o,u);return h.length{"use strict";var pj=ra().Buffer,fj=AD(),ut=mj.exports;ut.encodings=null;ut.defaultCharUnicode="\uFFFD";ut.defaultCharSingleByte="?";ut.encode=function(e,r,n){e=""+(e||"");var i=ut.getEncoder(r,n),s=i.write(e),o=i.end();return o&&o.length>0?pj.concat([s,o]):s};ut.decode=function(e,r,n){typeof e=="string"&&(ut.skipDecodeWarning||(console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"),ut.skipDecodeWarning=!0),e=pj.from(""+(e||""),"binary"));var i=ut.getDecoder(r,n),s=i.write(e),o=i.end();return o?s+o:s};ut.encodingExists=function(e){try{return ut.getCodec(e),!0}catch{return!1}};ut.toEncoding=ut.encode;ut.fromEncoding=ut.decode;ut._codecDataCache={};ut.getCodec=function(e){ut.encodings||(ut.encodings=sj());for(var r=ut._canonicalizeEncoding(e),n={};;){var i=ut._codecDataCache[r];if(i)return i;var s=ut.encodings[r];switch(typeof s){case"string":r=s;break;case"object":for(var o in s)n[o]=s[o];n.encodingName||(n.encodingName=r),r=s.type;break;case"function":return n.encodingName||(n.encodingName=r),i=new s(n,ut),ut._codecDataCache[n.encodingName]=i,i;default:throw new Error("Encoding not recognized: '"+e+"' (searched as: '"+r+"')")}}};ut._canonicalizeEncoding=function(t){return(""+t).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g,"")};ut.getEncoder=function(e,r){var n=ut.getCodec(e),i=new n.encoder(r,n);return n.bomAware&&r&&r.addBOM&&(i=new fj.PrependBOM(i,r)),i};ut.getDecoder=function(e,r){var n=ut.getCodec(e),i=new n.decoder(r,n);return n.bomAware&&!(r&&r.stripBOM===!1)&&(i=new fj.StripBOM(i,r)),i};var dj=typeof process<"u"&&process.versions&&process.versions.node;dj&&(Ik=dj.split(".").map(Number),(Ik[0]>0||Ik[1]>=10)&&cj()(ut),lj()(ut));var Ik});var $g=$((OPe,hj)=>{"use strict";hj.exports=qee;function Fee(t){for(var e=t.listeners("data"),r=0;r{"use strict";var gj=Jee(),Hee=Ac(),sa=ea(),Zee=Rk(),Bee=$g();yj.exports=Vee;var Gee=/^Encoding not recognized: /;function Wee(t){if(!t)return null;try{return Zee.getDecoder(t)}catch(e){throw Gee.test(e.message)?sa(415,"specified encoding unsupported",{encoding:t,type:"encoding.unsupported"}):e}}function Vee(t,e,r){var n=r,i=e||{};if(t===void 0)throw new TypeError("argument stream is required");if(typeof t!="object"||t===null||typeof t.on!="function")throw new TypeError("argument stream must be a stream");if((e===!0||typeof e=="string")&&(i={encoding:e}),typeof e=="function"&&(n=e,i={}),n!==void 0&&typeof n!="function")throw new TypeError("argument callback must be a function");if(!n&&!global.Promise)throw new TypeError("argument callback is required");var s=i.encoding!==!0?i.encoding:"utf-8",o=Hee.parse(i.limit),a=i.length!=null&&!isNaN(i.length)?parseInt(i.length,10):null;return n?vj(t,s,a,o,Xee(n)):new Promise(function(u,l){vj(t,s,a,o,function(p,f){if(p)return l(p);u(f)})})}function Kee(t){Bee(t),typeof t.pause=="function"&&t.pause()}function vj(t,e,r,n,i){var s=!1,o=!0;if(n!==null&&r!==null&&r>n)return d(sa(413,"request entity too large",{expected:r,length:r,limit:n,type:"entity.too.large"}));var a=t._readableState;if(t._decoder||a&&(a.encoding||a.decoder))return d(sa(500,"stream encoding should not be set",{type:"stream.encoding.set"}));if(typeof t.readable<"u"&&!t.readable)return d(sa(500,"stream is not readable",{type:"stream.not.readable"}));var c=0,u;try{u=Wee(e)}catch(g){return d(g)}var l=u?"":[];t.on("aborted",p),t.on("close",h),t.on("data",f),t.on("end",m),t.on("error",m),o=!1;function d(){for(var g=new Array(arguments.length),v=0;vn?d(sa(413,"request entity too large",{limit:n,received:c,type:"entity.too.large"})):u?l+=u.write(g):l.push(g))}function m(g){if(!s){if(g)return d(g);if(r!==null&&c!==r)d(sa(400,"request size did not match content length",{expected:r,length:r,received:c,type:"request.size.invalid"}));else{var v=u?l+(u.end()||""):Buffer.concat(l);d(null,v)}}}function h(){l=null,t.removeListener("aborted",p),t.removeListener("data",f),t.removeListener("end",m),t.removeListener("error",m),t.removeListener("close",h)}}function Jee(){try{return require("async_hooks")}catch{return{}}}function Xee(t){var e;return gj.AsyncResource&&(e=new gj.AsyncResource(t.name||"bound-anonymous-fn")),!e||!e.runInAsyncScope?t:e.runInAsyncScope.bind(e,t,null)}});var Sj=$((PPe,bj)=>{"use strict";bj.exports=Yee;function Yee(t,e){if(!Array.isArray(t))throw new TypeError("arg must be an array of [ee, events...] arrays");for(var r=[],n=0;n{"use strict";Ok.exports=tte;Ok.exports.isFinished=Ej;var xj=ote(),wj=Sj(),ete=typeof setImmediate=="function"?setImmediate:function(t){process.nextTick(t.bind.apply(t,arguments))};function tte(t,e){return Ej(t)!==!1?(ete(e,null,t),t):(nte(t,ate(e)),t)}function Ej(t){var e=t.socket;if(typeof t.finished=="boolean")return!!(t.finished||e&&!e.writable);if(typeof t.complete=="boolean")return!!(t.upgrade||!e||!e.readable||t.complete&&!t.readable)}function rte(t,e){var r,n,i=!1;function s(a){r.cancel(),n.cancel(),i=!0,e(a)}r=n=wj([[t,"end","finish"]],s);function o(a){t.removeListener("socket",o),!i&&r===n&&(n=wj([[a,"error","close"]],s))}if(t.socket){o(t.socket);return}t.on("socket",o),t.socket===void 0&&ste(t,o)}function nte(t,e){var r=t.__onFinished;(!r||!r.queue)&&(r=t.__onFinished=ite(t),rte(t,r)),r.queue.push(e)}function ite(t){function e(r){if(t.__onFinished===e&&(t.__onFinished=null),!!e.queue){var n=e.queue;e.queue=null;for(var i=0;i{"use strict";var co=ea(),cte=ek(),ute=_j(),kj=Rk(),Tj=Yd(),lte=$g(),$j=require("zlib");Ij.exports=dte;function dte(t,e,r,n,i,s){var o,a=s,c;t._body=!0;var u=a.encoding!==null?a.encoding:null,l=a.verify;try{c=pte(t,i,a.inflate),o=c.length,c.length=void 0}catch(d){return r(d)}if(a.length=o,a.encoding=l?null:u,a.encoding===null&&u!==null&&!kj.encodingExists(u))return r(co(415,'unsupported charset "'+u.toUpperCase()+'"',{charset:u.toLowerCase(),type:"charset.unsupported"}));i("read body"),ute(c,a,function(d,p){if(d){var f;d.type==="encoding.unsupported"?f=co(415,'unsupported charset "'+u.toUpperCase()+'"',{charset:u.toLowerCase(),type:"charset.unsupported"}):f=co(400,d),c!==t&&(lte(t),cte(c,!0)),fte(t,function(){r(co(400,f))});return}if(l)try{i("verify body"),l(t,e,p,u)}catch(h){r(co(403,h,{body:p,type:h.type||"entity.verify.failed"}));return}var m=p;try{i("parse body"),m=typeof p!="string"&&u!==null?kj.decode(p,u):p,t.body=n(m)}catch(h){r(co(400,h,{body:m,type:h.type||"entity.parse.failed"}));return}r()})}function pte(t,e,r){var n=(t.headers["content-encoding"]||"identity").toLowerCase(),i=t.headers["content-length"],s;if(e('content-encoding "%s"',n),r===!1&&n!=="identity")throw co(415,"content encoding unsupported",{encoding:n,type:"encoding.unsupported"});switch(n){case"deflate":s=$j.createInflate(),e("inflate body"),t.pipe(s);break;case"gzip":s=$j.createGunzip(),e("gunzip body"),t.pipe(s);break;case"identity":s=t,s.length=i;break;default:throw co(415,'unsupported content encoding "'+n+'"',{encoding:n,type:"encoding.unsupported"})}return s}function fte(t,e){Tj.isFinished(t)?e(null):(Tj(t,e),t.resume())}});var Pj=$(Ck=>{var Rj=/; *([!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+) *= *("(?:[ !\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u0020-\u007e])*"|[!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+) */g,mte=/^[\u0020-\u007e\u0080-\u00ff]+$/,Cj=/^[!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+$/,hte=/\\([\u0000-\u007f])/g,gte=/([\\"])/g,vte=/^[A-Za-z0-9][A-Za-z0-9!#$&^_.-]{0,126}$/,Oj=/^[A-Za-z0-9][A-Za-z0-9!#$&^_-]{0,126}$/,yte=/^ *([A-Za-z0-9][A-Za-z0-9!#$&^_-]{0,126})\/([A-Za-z0-9][A-Za-z0-9!#$&^_.+-]{0,126}) *$/;Ck.format=_te;Ck.parse=bte;function _te(t){if(!t||typeof t!="object")throw new TypeError("argument obj is required");var e=t.parameters,r=t.subtype,n=t.suffix,i=t.type;if(!i||!Oj.test(i))throw new TypeError("invalid type");if(!r||!vte.test(r))throw new TypeError("invalid subtype");var s=i+"/"+r;if(n){if(!Oj.test(n))throw new TypeError("invalid suffix");s+="+"+n}if(e&&typeof e=="object")for(var o,a=Object.keys(e).sort(),c=0;c0&&!mte.test(e))throw new TypeError("invalid parameter value");return'"'+e.replace(gte,"\\$1")+'"'}function wte(t){var e=yte.exec(t.toLowerCase());if(!e)throw new TypeError("invalid media type");var r=e[1],n=e[2],i,s=n.lastIndexOf("+");s!==-1&&(i=n.substr(s+1),n=n.substr(0,s));var o={type:r,subtype:n,suffix:i};return o}});var Aj=$((DPe,Ete)=>{Ete.exports={"application/1d-interleaved-parityfec":{source:"iana"},"application/3gpdash-qoe-report+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/3gpp-ims+xml":{source:"iana",compressible:!0},"application/3gpphal+json":{source:"iana",compressible:!0},"application/3gpphalforms+json":{source:"iana",compressible:!0},"application/a2l":{source:"iana"},"application/ace+cbor":{source:"iana"},"application/activemessage":{source:"iana"},"application/activity+json":{source:"iana",compressible:!0},"application/alto-costmap+json":{source:"iana",compressible:!0},"application/alto-costmapfilter+json":{source:"iana",compressible:!0},"application/alto-directory+json":{source:"iana",compressible:!0},"application/alto-endpointcost+json":{source:"iana",compressible:!0},"application/alto-endpointcostparams+json":{source:"iana",compressible:!0},"application/alto-endpointprop+json":{source:"iana",compressible:!0},"application/alto-endpointpropparams+json":{source:"iana",compressible:!0},"application/alto-error+json":{source:"iana",compressible:!0},"application/alto-networkmap+json":{source:"iana",compressible:!0},"application/alto-networkmapfilter+json":{source:"iana",compressible:!0},"application/alto-updatestreamcontrol+json":{source:"iana",compressible:!0},"application/alto-updatestreamparams+json":{source:"iana",compressible:!0},"application/aml":{source:"iana"},"application/andrew-inset":{source:"iana",extensions:["ez"]},"application/applefile":{source:"iana"},"application/applixware":{source:"apache",extensions:["aw"]},"application/at+jwt":{source:"iana"},"application/atf":{source:"iana"},"application/atfx":{source:"iana"},"application/atom+xml":{source:"iana",compressible:!0,extensions:["atom"]},"application/atomcat+xml":{source:"iana",compressible:!0,extensions:["atomcat"]},"application/atomdeleted+xml":{source:"iana",compressible:!0,extensions:["atomdeleted"]},"application/atomicmail":{source:"iana"},"application/atomsvc+xml":{source:"iana",compressible:!0,extensions:["atomsvc"]},"application/atsc-dwd+xml":{source:"iana",compressible:!0,extensions:["dwd"]},"application/atsc-dynamic-event-message":{source:"iana"},"application/atsc-held+xml":{source:"iana",compressible:!0,extensions:["held"]},"application/atsc-rdt+json":{source:"iana",compressible:!0},"application/atsc-rsat+xml":{source:"iana",compressible:!0,extensions:["rsat"]},"application/atxml":{source:"iana"},"application/auth-policy+xml":{source:"iana",compressible:!0},"application/bacnet-xdd+zip":{source:"iana",compressible:!1},"application/batch-smtp":{source:"iana"},"application/bdoc":{compressible:!1,extensions:["bdoc"]},"application/beep+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/calendar+json":{source:"iana",compressible:!0},"application/calendar+xml":{source:"iana",compressible:!0,extensions:["xcs"]},"application/call-completion":{source:"iana"},"application/cals-1840":{source:"iana"},"application/captive+json":{source:"iana",compressible:!0},"application/cbor":{source:"iana"},"application/cbor-seq":{source:"iana"},"application/cccex":{source:"iana"},"application/ccmp+xml":{source:"iana",compressible:!0},"application/ccxml+xml":{source:"iana",compressible:!0,extensions:["ccxml"]},"application/cdfx+xml":{source:"iana",compressible:!0,extensions:["cdfx"]},"application/cdmi-capability":{source:"iana",extensions:["cdmia"]},"application/cdmi-container":{source:"iana",extensions:["cdmic"]},"application/cdmi-domain":{source:"iana",extensions:["cdmid"]},"application/cdmi-object":{source:"iana",extensions:["cdmio"]},"application/cdmi-queue":{source:"iana",extensions:["cdmiq"]},"application/cdni":{source:"iana"},"application/cea":{source:"iana"},"application/cea-2018+xml":{source:"iana",compressible:!0},"application/cellml+xml":{source:"iana",compressible:!0},"application/cfw":{source:"iana"},"application/city+json":{source:"iana",compressible:!0},"application/clr":{source:"iana"},"application/clue+xml":{source:"iana",compressible:!0},"application/clue_info+xml":{source:"iana",compressible:!0},"application/cms":{source:"iana"},"application/cnrp+xml":{source:"iana",compressible:!0},"application/coap-group+json":{source:"iana",compressible:!0},"application/coap-payload":{source:"iana"},"application/commonground":{source:"iana"},"application/conference-info+xml":{source:"iana",compressible:!0},"application/cose":{source:"iana"},"application/cose-key":{source:"iana"},"application/cose-key-set":{source:"iana"},"application/cpl+xml":{source:"iana",compressible:!0,extensions:["cpl"]},"application/csrattrs":{source:"iana"},"application/csta+xml":{source:"iana",compressible:!0},"application/cstadata+xml":{source:"iana",compressible:!0},"application/csvm+json":{source:"iana",compressible:!0},"application/cu-seeme":{source:"apache",extensions:["cu"]},"application/cwt":{source:"iana"},"application/cybercash":{source:"iana"},"application/dart":{compressible:!0},"application/dash+xml":{source:"iana",compressible:!0,extensions:["mpd"]},"application/dash-patch+xml":{source:"iana",compressible:!0,extensions:["mpp"]},"application/dashdelta":{source:"iana"},"application/davmount+xml":{source:"iana",compressible:!0,extensions:["davmount"]},"application/dca-rft":{source:"iana"},"application/dcd":{source:"iana"},"application/dec-dx":{source:"iana"},"application/dialog-info+xml":{source:"iana",compressible:!0},"application/dicom":{source:"iana"},"application/dicom+json":{source:"iana",compressible:!0},"application/dicom+xml":{source:"iana",compressible:!0},"application/dii":{source:"iana"},"application/dit":{source:"iana"},"application/dns":{source:"iana"},"application/dns+json":{source:"iana",compressible:!0},"application/dns-message":{source:"iana"},"application/docbook+xml":{source:"apache",compressible:!0,extensions:["dbk"]},"application/dots+cbor":{source:"iana"},"application/dskpp+xml":{source:"iana",compressible:!0},"application/dssc+der":{source:"iana",extensions:["dssc"]},"application/dssc+xml":{source:"iana",compressible:!0,extensions:["xdssc"]},"application/dvcs":{source:"iana"},"application/ecmascript":{source:"iana",compressible:!0,extensions:["es","ecma"]},"application/edi-consent":{source:"iana"},"application/edi-x12":{source:"iana",compressible:!1},"application/edifact":{source:"iana",compressible:!1},"application/efi":{source:"iana"},"application/elm+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/elm+xml":{source:"iana",compressible:!0},"application/emergencycalldata.cap+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/emergencycalldata.comment+xml":{source:"iana",compressible:!0},"application/emergencycalldata.control+xml":{source:"iana",compressible:!0},"application/emergencycalldata.deviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.ecall.msd":{source:"iana"},"application/emergencycalldata.providerinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.serviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.subscriberinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.veds+xml":{source:"iana",compressible:!0},"application/emma+xml":{source:"iana",compressible:!0,extensions:["emma"]},"application/emotionml+xml":{source:"iana",compressible:!0,extensions:["emotionml"]},"application/encaprtp":{source:"iana"},"application/epp+xml":{source:"iana",compressible:!0},"application/epub+zip":{source:"iana",compressible:!1,extensions:["epub"]},"application/eshop":{source:"iana"},"application/exi":{source:"iana",extensions:["exi"]},"application/expect-ct-report+json":{source:"iana",compressible:!0},"application/express":{source:"iana",extensions:["exp"]},"application/fastinfoset":{source:"iana"},"application/fastsoap":{source:"iana"},"application/fdt+xml":{source:"iana",compressible:!0,extensions:["fdt"]},"application/fhir+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/fhir+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/fido.trusted-apps+json":{compressible:!0},"application/fits":{source:"iana"},"application/flexfec":{source:"iana"},"application/font-sfnt":{source:"iana"},"application/font-tdpfr":{source:"iana",extensions:["pfr"]},"application/font-woff":{source:"iana",compressible:!1},"application/framework-attributes+xml":{source:"iana",compressible:!0},"application/geo+json":{source:"iana",compressible:!0,extensions:["geojson"]},"application/geo+json-seq":{source:"iana"},"application/geopackage+sqlite3":{source:"iana"},"application/geoxacml+xml":{source:"iana",compressible:!0},"application/gltf-buffer":{source:"iana"},"application/gml+xml":{source:"iana",compressible:!0,extensions:["gml"]},"application/gpx+xml":{source:"apache",compressible:!0,extensions:["gpx"]},"application/gxf":{source:"apache",extensions:["gxf"]},"application/gzip":{source:"iana",compressible:!1,extensions:["gz"]},"application/h224":{source:"iana"},"application/held+xml":{source:"iana",compressible:!0},"application/hjson":{extensions:["hjson"]},"application/http":{source:"iana"},"application/hyperstudio":{source:"iana",extensions:["stk"]},"application/ibe-key-request+xml":{source:"iana",compressible:!0},"application/ibe-pkg-reply+xml":{source:"iana",compressible:!0},"application/ibe-pp-data":{source:"iana"},"application/iges":{source:"iana"},"application/im-iscomposing+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/index":{source:"iana"},"application/index.cmd":{source:"iana"},"application/index.obj":{source:"iana"},"application/index.response":{source:"iana"},"application/index.vnd":{source:"iana"},"application/inkml+xml":{source:"iana",compressible:!0,extensions:["ink","inkml"]},"application/iotp":{source:"iana"},"application/ipfix":{source:"iana",extensions:["ipfix"]},"application/ipp":{source:"iana"},"application/isup":{source:"iana"},"application/its+xml":{source:"iana",compressible:!0,extensions:["its"]},"application/java-archive":{source:"apache",compressible:!1,extensions:["jar","war","ear"]},"application/java-serialized-object":{source:"apache",compressible:!1,extensions:["ser"]},"application/java-vm":{source:"apache",compressible:!1,extensions:["class"]},"application/javascript":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["js","mjs"]},"application/jf2feed+json":{source:"iana",compressible:!0},"application/jose":{source:"iana"},"application/jose+json":{source:"iana",compressible:!0},"application/jrd+json":{source:"iana",compressible:!0},"application/jscalendar+json":{source:"iana",compressible:!0},"application/json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["json","map"]},"application/json-patch+json":{source:"iana",compressible:!0},"application/json-seq":{source:"iana"},"application/json5":{extensions:["json5"]},"application/jsonml+json":{source:"apache",compressible:!0,extensions:["jsonml"]},"application/jwk+json":{source:"iana",compressible:!0},"application/jwk-set+json":{source:"iana",compressible:!0},"application/jwt":{source:"iana"},"application/kpml-request+xml":{source:"iana",compressible:!0},"application/kpml-response+xml":{source:"iana",compressible:!0},"application/ld+json":{source:"iana",compressible:!0,extensions:["jsonld"]},"application/lgr+xml":{source:"iana",compressible:!0,extensions:["lgr"]},"application/link-format":{source:"iana"},"application/load-control+xml":{source:"iana",compressible:!0},"application/lost+xml":{source:"iana",compressible:!0,extensions:["lostxml"]},"application/lostsync+xml":{source:"iana",compressible:!0},"application/lpf+zip":{source:"iana",compressible:!1},"application/lxf":{source:"iana"},"application/mac-binhex40":{source:"iana",extensions:["hqx"]},"application/mac-compactpro":{source:"apache",extensions:["cpt"]},"application/macwriteii":{source:"iana"},"application/mads+xml":{source:"iana",compressible:!0,extensions:["mads"]},"application/manifest+json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["webmanifest"]},"application/marc":{source:"iana",extensions:["mrc"]},"application/marcxml+xml":{source:"iana",compressible:!0,extensions:["mrcx"]},"application/mathematica":{source:"iana",extensions:["ma","nb","mb"]},"application/mathml+xml":{source:"iana",compressible:!0,extensions:["mathml"]},"application/mathml-content+xml":{source:"iana",compressible:!0},"application/mathml-presentation+xml":{source:"iana",compressible:!0},"application/mbms-associated-procedure-description+xml":{source:"iana",compressible:!0},"application/mbms-deregister+xml":{source:"iana",compressible:!0},"application/mbms-envelope+xml":{source:"iana",compressible:!0},"application/mbms-msk+xml":{source:"iana",compressible:!0},"application/mbms-msk-response+xml":{source:"iana",compressible:!0},"application/mbms-protection-description+xml":{source:"iana",compressible:!0},"application/mbms-reception-report+xml":{source:"iana",compressible:!0},"application/mbms-register+xml":{source:"iana",compressible:!0},"application/mbms-register-response+xml":{source:"iana",compressible:!0},"application/mbms-schedule+xml":{source:"iana",compressible:!0},"application/mbms-user-service-description+xml":{source:"iana",compressible:!0},"application/mbox":{source:"iana",extensions:["mbox"]},"application/media-policy-dataset+xml":{source:"iana",compressible:!0,extensions:["mpf"]},"application/media_control+xml":{source:"iana",compressible:!0},"application/mediaservercontrol+xml":{source:"iana",compressible:!0,extensions:["mscml"]},"application/merge-patch+json":{source:"iana",compressible:!0},"application/metalink+xml":{source:"apache",compressible:!0,extensions:["metalink"]},"application/metalink4+xml":{source:"iana",compressible:!0,extensions:["meta4"]},"application/mets+xml":{source:"iana",compressible:!0,extensions:["mets"]},"application/mf4":{source:"iana"},"application/mikey":{source:"iana"},"application/mipc":{source:"iana"},"application/missing-blocks+cbor-seq":{source:"iana"},"application/mmt-aei+xml":{source:"iana",compressible:!0,extensions:["maei"]},"application/mmt-usd+xml":{source:"iana",compressible:!0,extensions:["musd"]},"application/mods+xml":{source:"iana",compressible:!0,extensions:["mods"]},"application/moss-keys":{source:"iana"},"application/moss-signature":{source:"iana"},"application/mosskey-data":{source:"iana"},"application/mosskey-request":{source:"iana"},"application/mp21":{source:"iana",extensions:["m21","mp21"]},"application/mp4":{source:"iana",extensions:["mp4s","m4p"]},"application/mpeg4-generic":{source:"iana"},"application/mpeg4-iod":{source:"iana"},"application/mpeg4-iod-xmt":{source:"iana"},"application/mrb-consumer+xml":{source:"iana",compressible:!0},"application/mrb-publish+xml":{source:"iana",compressible:!0},"application/msc-ivr+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msc-mixer+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msword":{source:"iana",compressible:!1,extensions:["doc","dot"]},"application/mud+json":{source:"iana",compressible:!0},"application/multipart-core":{source:"iana"},"application/mxf":{source:"iana",extensions:["mxf"]},"application/n-quads":{source:"iana",extensions:["nq"]},"application/n-triples":{source:"iana",extensions:["nt"]},"application/nasdata":{source:"iana"},"application/news-checkgroups":{source:"iana",charset:"US-ASCII"},"application/news-groupinfo":{source:"iana",charset:"US-ASCII"},"application/news-transmission":{source:"iana"},"application/nlsml+xml":{source:"iana",compressible:!0},"application/node":{source:"iana",extensions:["cjs"]},"application/nss":{source:"iana"},"application/oauth-authz-req+jwt":{source:"iana"},"application/oblivious-dns-message":{source:"iana"},"application/ocsp-request":{source:"iana"},"application/ocsp-response":{source:"iana"},"application/octet-stream":{source:"iana",compressible:!1,extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{source:"iana",extensions:["oda"]},"application/odm+xml":{source:"iana",compressible:!0},"application/odx":{source:"iana"},"application/oebps-package+xml":{source:"iana",compressible:!0,extensions:["opf"]},"application/ogg":{source:"iana",compressible:!1,extensions:["ogx"]},"application/omdoc+xml":{source:"apache",compressible:!0,extensions:["omdoc"]},"application/onenote":{source:"apache",extensions:["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{source:"iana",compressible:!0},"application/oscore":{source:"iana"},"application/oxps":{source:"iana",extensions:["oxps"]},"application/p21":{source:"iana"},"application/p21+zip":{source:"iana",compressible:!1},"application/p2p-overlay+xml":{source:"iana",compressible:!0,extensions:["relo"]},"application/parityfec":{source:"iana"},"application/passport":{source:"iana"},"application/patch-ops-error+xml":{source:"iana",compressible:!0,extensions:["xer"]},"application/pdf":{source:"iana",compressible:!1,extensions:["pdf"]},"application/pdx":{source:"iana"},"application/pem-certificate-chain":{source:"iana"},"application/pgp-encrypted":{source:"iana",compressible:!1,extensions:["pgp"]},"application/pgp-keys":{source:"iana",extensions:["asc"]},"application/pgp-signature":{source:"iana",extensions:["asc","sig"]},"application/pics-rules":{source:"apache",extensions:["prf"]},"application/pidf+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pidf-diff+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pkcs10":{source:"iana",extensions:["p10"]},"application/pkcs12":{source:"iana"},"application/pkcs7-mime":{source:"iana",extensions:["p7m","p7c"]},"application/pkcs7-signature":{source:"iana",extensions:["p7s"]},"application/pkcs8":{source:"iana",extensions:["p8"]},"application/pkcs8-encrypted":{source:"iana"},"application/pkix-attr-cert":{source:"iana",extensions:["ac"]},"application/pkix-cert":{source:"iana",extensions:["cer"]},"application/pkix-crl":{source:"iana",extensions:["crl"]},"application/pkix-pkipath":{source:"iana",extensions:["pkipath"]},"application/pkixcmp":{source:"iana",extensions:["pki"]},"application/pls+xml":{source:"iana",compressible:!0,extensions:["pls"]},"application/poc-settings+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/postscript":{source:"iana",compressible:!0,extensions:["ai","eps","ps"]},"application/ppsp-tracker+json":{source:"iana",compressible:!0},"application/problem+json":{source:"iana",compressible:!0},"application/problem+xml":{source:"iana",compressible:!0},"application/provenance+xml":{source:"iana",compressible:!0,extensions:["provx"]},"application/prs.alvestrand.titrax-sheet":{source:"iana"},"application/prs.cww":{source:"iana",extensions:["cww"]},"application/prs.cyn":{source:"iana",charset:"7-BIT"},"application/prs.hpub+zip":{source:"iana",compressible:!1},"application/prs.nprend":{source:"iana"},"application/prs.plucker":{source:"iana"},"application/prs.rdf-xml-crypt":{source:"iana"},"application/prs.xsf+xml":{source:"iana",compressible:!0},"application/pskc+xml":{source:"iana",compressible:!0,extensions:["pskcxml"]},"application/pvd+json":{source:"iana",compressible:!0},"application/qsig":{source:"iana"},"application/raml+yaml":{compressible:!0,extensions:["raml"]},"application/raptorfec":{source:"iana"},"application/rdap+json":{source:"iana",compressible:!0},"application/rdf+xml":{source:"iana",compressible:!0,extensions:["rdf","owl"]},"application/reginfo+xml":{source:"iana",compressible:!0,extensions:["rif"]},"application/relax-ng-compact-syntax":{source:"iana",extensions:["rnc"]},"application/remote-printing":{source:"iana"},"application/reputon+json":{source:"iana",compressible:!0},"application/resource-lists+xml":{source:"iana",compressible:!0,extensions:["rl"]},"application/resource-lists-diff+xml":{source:"iana",compressible:!0,extensions:["rld"]},"application/rfc+xml":{source:"iana",compressible:!0},"application/riscos":{source:"iana"},"application/rlmi+xml":{source:"iana",compressible:!0},"application/rls-services+xml":{source:"iana",compressible:!0,extensions:["rs"]},"application/route-apd+xml":{source:"iana",compressible:!0,extensions:["rapd"]},"application/route-s-tsid+xml":{source:"iana",compressible:!0,extensions:["sls"]},"application/route-usd+xml":{source:"iana",compressible:!0,extensions:["rusd"]},"application/rpki-ghostbusters":{source:"iana",extensions:["gbr"]},"application/rpki-manifest":{source:"iana",extensions:["mft"]},"application/rpki-publication":{source:"iana"},"application/rpki-roa":{source:"iana",extensions:["roa"]},"application/rpki-updown":{source:"iana"},"application/rsd+xml":{source:"apache",compressible:!0,extensions:["rsd"]},"application/rss+xml":{source:"apache",compressible:!0,extensions:["rss"]},"application/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"application/rtploopback":{source:"iana"},"application/rtx":{source:"iana"},"application/samlassertion+xml":{source:"iana",compressible:!0},"application/samlmetadata+xml":{source:"iana",compressible:!0},"application/sarif+json":{source:"iana",compressible:!0},"application/sarif-external-properties+json":{source:"iana",compressible:!0},"application/sbe":{source:"iana"},"application/sbml+xml":{source:"iana",compressible:!0,extensions:["sbml"]},"application/scaip+xml":{source:"iana",compressible:!0},"application/scim+json":{source:"iana",compressible:!0},"application/scvp-cv-request":{source:"iana",extensions:["scq"]},"application/scvp-cv-response":{source:"iana",extensions:["scs"]},"application/scvp-vp-request":{source:"iana",extensions:["spq"]},"application/scvp-vp-response":{source:"iana",extensions:["spp"]},"application/sdp":{source:"iana",extensions:["sdp"]},"application/secevent+jwt":{source:"iana"},"application/senml+cbor":{source:"iana"},"application/senml+json":{source:"iana",compressible:!0},"application/senml+xml":{source:"iana",compressible:!0,extensions:["senmlx"]},"application/senml-etch+cbor":{source:"iana"},"application/senml-etch+json":{source:"iana",compressible:!0},"application/senml-exi":{source:"iana"},"application/sensml+cbor":{source:"iana"},"application/sensml+json":{source:"iana",compressible:!0},"application/sensml+xml":{source:"iana",compressible:!0,extensions:["sensmlx"]},"application/sensml-exi":{source:"iana"},"application/sep+xml":{source:"iana",compressible:!0},"application/sep-exi":{source:"iana"},"application/session-info":{source:"iana"},"application/set-payment":{source:"iana"},"application/set-payment-initiation":{source:"iana",extensions:["setpay"]},"application/set-registration":{source:"iana"},"application/set-registration-initiation":{source:"iana",extensions:["setreg"]},"application/sgml":{source:"iana"},"application/sgml-open-catalog":{source:"iana"},"application/shf+xml":{source:"iana",compressible:!0,extensions:["shf"]},"application/sieve":{source:"iana",extensions:["siv","sieve"]},"application/simple-filter+xml":{source:"iana",compressible:!0},"application/simple-message-summary":{source:"iana"},"application/simplesymbolcontainer":{source:"iana"},"application/sipc":{source:"iana"},"application/slate":{source:"iana"},"application/smil":{source:"iana"},"application/smil+xml":{source:"iana",compressible:!0,extensions:["smi","smil"]},"application/smpte336m":{source:"iana"},"application/soap+fastinfoset":{source:"iana"},"application/soap+xml":{source:"iana",compressible:!0},"application/sparql-query":{source:"iana",extensions:["rq"]},"application/sparql-results+xml":{source:"iana",compressible:!0,extensions:["srx"]},"application/spdx+json":{source:"iana",compressible:!0},"application/spirits-event+xml":{source:"iana",compressible:!0},"application/sql":{source:"iana"},"application/srgs":{source:"iana",extensions:["gram"]},"application/srgs+xml":{source:"iana",compressible:!0,extensions:["grxml"]},"application/sru+xml":{source:"iana",compressible:!0,extensions:["sru"]},"application/ssdl+xml":{source:"apache",compressible:!0,extensions:["ssdl"]},"application/ssml+xml":{source:"iana",compressible:!0,extensions:["ssml"]},"application/stix+json":{source:"iana",compressible:!0},"application/swid+xml":{source:"iana",compressible:!0,extensions:["swidtag"]},"application/tamp-apex-update":{source:"iana"},"application/tamp-apex-update-confirm":{source:"iana"},"application/tamp-community-update":{source:"iana"},"application/tamp-community-update-confirm":{source:"iana"},"application/tamp-error":{source:"iana"},"application/tamp-sequence-adjust":{source:"iana"},"application/tamp-sequence-adjust-confirm":{source:"iana"},"application/tamp-status-query":{source:"iana"},"application/tamp-status-response":{source:"iana"},"application/tamp-update":{source:"iana"},"application/tamp-update-confirm":{source:"iana"},"application/tar":{compressible:!0},"application/taxii+json":{source:"iana",compressible:!0},"application/td+json":{source:"iana",compressible:!0},"application/tei+xml":{source:"iana",compressible:!0,extensions:["tei","teicorpus"]},"application/tetra_isi":{source:"iana"},"application/thraud+xml":{source:"iana",compressible:!0,extensions:["tfi"]},"application/timestamp-query":{source:"iana"},"application/timestamp-reply":{source:"iana"},"application/timestamped-data":{source:"iana",extensions:["tsd"]},"application/tlsrpt+gzip":{source:"iana"},"application/tlsrpt+json":{source:"iana",compressible:!0},"application/tnauthlist":{source:"iana"},"application/token-introspection+jwt":{source:"iana"},"application/toml":{compressible:!0,extensions:["toml"]},"application/trickle-ice-sdpfrag":{source:"iana"},"application/trig":{source:"iana",extensions:["trig"]},"application/ttml+xml":{source:"iana",compressible:!0,extensions:["ttml"]},"application/tve-trigger":{source:"iana"},"application/tzif":{source:"iana"},"application/tzif-leap":{source:"iana"},"application/ubjson":{compressible:!1,extensions:["ubj"]},"application/ulpfec":{source:"iana"},"application/urc-grpsheet+xml":{source:"iana",compressible:!0},"application/urc-ressheet+xml":{source:"iana",compressible:!0,extensions:["rsheet"]},"application/urc-targetdesc+xml":{source:"iana",compressible:!0,extensions:["td"]},"application/urc-uisocketdesc+xml":{source:"iana",compressible:!0},"application/vcard+json":{source:"iana",compressible:!0},"application/vcard+xml":{source:"iana",compressible:!0},"application/vemmi":{source:"iana"},"application/vividence.scriptfile":{source:"apache"},"application/vnd.1000minds.decision-model+xml":{source:"iana",compressible:!0,extensions:["1km"]},"application/vnd.3gpp-prose+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-prose-pc3ch+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-v2x-local-service-information":{source:"iana"},"application/vnd.3gpp.5gnas":{source:"iana"},"application/vnd.3gpp.access-transfer-events+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.bsf+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gmop+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gtpc":{source:"iana"},"application/vnd.3gpp.interworking-data":{source:"iana"},"application/vnd.3gpp.lpp":{source:"iana"},"application/vnd.3gpp.mc-signalling-ear":{source:"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-payload":{source:"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-signalling":{source:"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-floor-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-signed+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-init-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-transmission-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mid-call+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ngap":{source:"iana"},"application/vnd.3gpp.pfcp":{source:"iana"},"application/vnd.3gpp.pic-bw-large":{source:"iana",extensions:["plb"]},"application/vnd.3gpp.pic-bw-small":{source:"iana",extensions:["psb"]},"application/vnd.3gpp.pic-bw-var":{source:"iana",extensions:["pvb"]},"application/vnd.3gpp.s1ap":{source:"iana"},"application/vnd.3gpp.sms":{source:"iana"},"application/vnd.3gpp.sms+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-ext+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.state-and-event-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ussd+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.bcmcsinfo+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.sms":{source:"iana"},"application/vnd.3gpp2.tcap":{source:"iana",extensions:["tcap"]},"application/vnd.3lightssoftware.imagescal":{source:"iana"},"application/vnd.3m.post-it-notes":{source:"iana",extensions:["pwn"]},"application/vnd.accpac.simply.aso":{source:"iana",extensions:["aso"]},"application/vnd.accpac.simply.imp":{source:"iana",extensions:["imp"]},"application/vnd.acucobol":{source:"iana",extensions:["acu"]},"application/vnd.acucorp":{source:"iana",extensions:["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{source:"apache",compressible:!1,extensions:["air"]},"application/vnd.adobe.flash.movie":{source:"iana"},"application/vnd.adobe.formscentral.fcdt":{source:"iana",extensions:["fcdt"]},"application/vnd.adobe.fxp":{source:"iana",extensions:["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{source:"iana"},"application/vnd.adobe.xdp+xml":{source:"iana",compressible:!0,extensions:["xdp"]},"application/vnd.adobe.xfdf":{source:"iana",extensions:["xfdf"]},"application/vnd.aether.imp":{source:"iana"},"application/vnd.afpc.afplinedata":{source:"iana"},"application/vnd.afpc.afplinedata-pagedef":{source:"iana"},"application/vnd.afpc.cmoca-cmresource":{source:"iana"},"application/vnd.afpc.foca-charset":{source:"iana"},"application/vnd.afpc.foca-codedfont":{source:"iana"},"application/vnd.afpc.foca-codepage":{source:"iana"},"application/vnd.afpc.modca":{source:"iana"},"application/vnd.afpc.modca-cmtable":{source:"iana"},"application/vnd.afpc.modca-formdef":{source:"iana"},"application/vnd.afpc.modca-mediummap":{source:"iana"},"application/vnd.afpc.modca-objectcontainer":{source:"iana"},"application/vnd.afpc.modca-overlay":{source:"iana"},"application/vnd.afpc.modca-pagesegment":{source:"iana"},"application/vnd.age":{source:"iana",extensions:["age"]},"application/vnd.ah-barcode":{source:"iana"},"application/vnd.ahead.space":{source:"iana",extensions:["ahead"]},"application/vnd.airzip.filesecure.azf":{source:"iana",extensions:["azf"]},"application/vnd.airzip.filesecure.azs":{source:"iana",extensions:["azs"]},"application/vnd.amadeus+json":{source:"iana",compressible:!0},"application/vnd.amazon.ebook":{source:"apache",extensions:["azw"]},"application/vnd.amazon.mobi8-ebook":{source:"iana"},"application/vnd.americandynamics.acc":{source:"iana",extensions:["acc"]},"application/vnd.amiga.ami":{source:"iana",extensions:["ami"]},"application/vnd.amundsen.maze+xml":{source:"iana",compressible:!0},"application/vnd.android.ota":{source:"iana"},"application/vnd.android.package-archive":{source:"apache",compressible:!1,extensions:["apk"]},"application/vnd.anki":{source:"iana"},"application/vnd.anser-web-certificate-issue-initiation":{source:"iana",extensions:["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{source:"apache",extensions:["fti"]},"application/vnd.antix.game-component":{source:"iana",extensions:["atx"]},"application/vnd.apache.arrow.file":{source:"iana"},"application/vnd.apache.arrow.stream":{source:"iana"},"application/vnd.apache.thrift.binary":{source:"iana"},"application/vnd.apache.thrift.compact":{source:"iana"},"application/vnd.apache.thrift.json":{source:"iana"},"application/vnd.api+json":{source:"iana",compressible:!0},"application/vnd.aplextor.warrp+json":{source:"iana",compressible:!0},"application/vnd.apothekende.reservation+json":{source:"iana",compressible:!0},"application/vnd.apple.installer+xml":{source:"iana",compressible:!0,extensions:["mpkg"]},"application/vnd.apple.keynote":{source:"iana",extensions:["key"]},"application/vnd.apple.mpegurl":{source:"iana",extensions:["m3u8"]},"application/vnd.apple.numbers":{source:"iana",extensions:["numbers"]},"application/vnd.apple.pages":{source:"iana",extensions:["pages"]},"application/vnd.apple.pkpass":{compressible:!1,extensions:["pkpass"]},"application/vnd.arastra.swi":{source:"iana"},"application/vnd.aristanetworks.swi":{source:"iana",extensions:["swi"]},"application/vnd.artisan+json":{source:"iana",compressible:!0},"application/vnd.artsquare":{source:"iana"},"application/vnd.astraea-software.iota":{source:"iana",extensions:["iota"]},"application/vnd.audiograph":{source:"iana",extensions:["aep"]},"application/vnd.autopackage":{source:"iana"},"application/vnd.avalon+json":{source:"iana",compressible:!0},"application/vnd.avistar+xml":{source:"iana",compressible:!0},"application/vnd.balsamiq.bmml+xml":{source:"iana",compressible:!0,extensions:["bmml"]},"application/vnd.balsamiq.bmpr":{source:"iana"},"application/vnd.banana-accounting":{source:"iana"},"application/vnd.bbf.usp.error":{source:"iana"},"application/vnd.bbf.usp.msg":{source:"iana"},"application/vnd.bbf.usp.msg+json":{source:"iana",compressible:!0},"application/vnd.bekitzur-stech+json":{source:"iana",compressible:!0},"application/vnd.bint.med-content":{source:"iana"},"application/vnd.biopax.rdf+xml":{source:"iana",compressible:!0},"application/vnd.blink-idb-value-wrapper":{source:"iana"},"application/vnd.blueice.multipass":{source:"iana",extensions:["mpm"]},"application/vnd.bluetooth.ep.oob":{source:"iana"},"application/vnd.bluetooth.le.oob":{source:"iana"},"application/vnd.bmi":{source:"iana",extensions:["bmi"]},"application/vnd.bpf":{source:"iana"},"application/vnd.bpf3":{source:"iana"},"application/vnd.businessobjects":{source:"iana",extensions:["rep"]},"application/vnd.byu.uapi+json":{source:"iana",compressible:!0},"application/vnd.cab-jscript":{source:"iana"},"application/vnd.canon-cpdl":{source:"iana"},"application/vnd.canon-lips":{source:"iana"},"application/vnd.capasystems-pg+json":{source:"iana",compressible:!0},"application/vnd.cendio.thinlinc.clientconf":{source:"iana"},"application/vnd.century-systems.tcp_stream":{source:"iana"},"application/vnd.chemdraw+xml":{source:"iana",compressible:!0,extensions:["cdxml"]},"application/vnd.chess-pgn":{source:"iana"},"application/vnd.chipnuts.karaoke-mmd":{source:"iana",extensions:["mmd"]},"application/vnd.ciedi":{source:"iana"},"application/vnd.cinderella":{source:"iana",extensions:["cdy"]},"application/vnd.cirpack.isdn-ext":{source:"iana"},"application/vnd.citationstyles.style+xml":{source:"iana",compressible:!0,extensions:["csl"]},"application/vnd.claymore":{source:"iana",extensions:["cla"]},"application/vnd.cloanto.rp9":{source:"iana",extensions:["rp9"]},"application/vnd.clonk.c4group":{source:"iana",extensions:["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{source:"iana",extensions:["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{source:"iana",extensions:["c11amz"]},"application/vnd.coffeescript":{source:"iana"},"application/vnd.collabio.xodocuments.document":{source:"iana"},"application/vnd.collabio.xodocuments.document-template":{source:"iana"},"application/vnd.collabio.xodocuments.presentation":{source:"iana"},"application/vnd.collabio.xodocuments.presentation-template":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{source:"iana"},"application/vnd.collection+json":{source:"iana",compressible:!0},"application/vnd.collection.doc+json":{source:"iana",compressible:!0},"application/vnd.collection.next+json":{source:"iana",compressible:!0},"application/vnd.comicbook+zip":{source:"iana",compressible:!1},"application/vnd.comicbook-rar":{source:"iana"},"application/vnd.commerce-battelle":{source:"iana"},"application/vnd.commonspace":{source:"iana",extensions:["csp"]},"application/vnd.contact.cmsg":{source:"iana",extensions:["cdbcmsg"]},"application/vnd.coreos.ignition+json":{source:"iana",compressible:!0},"application/vnd.cosmocaller":{source:"iana",extensions:["cmc"]},"application/vnd.crick.clicker":{source:"iana",extensions:["clkx"]},"application/vnd.crick.clicker.keyboard":{source:"iana",extensions:["clkk"]},"application/vnd.crick.clicker.palette":{source:"iana",extensions:["clkp"]},"application/vnd.crick.clicker.template":{source:"iana",extensions:["clkt"]},"application/vnd.crick.clicker.wordbank":{source:"iana",extensions:["clkw"]},"application/vnd.criticaltools.wbs+xml":{source:"iana",compressible:!0,extensions:["wbs"]},"application/vnd.cryptii.pipe+json":{source:"iana",compressible:!0},"application/vnd.crypto-shade-file":{source:"iana"},"application/vnd.cryptomator.encrypted":{source:"iana"},"application/vnd.cryptomator.vault":{source:"iana"},"application/vnd.ctc-posml":{source:"iana",extensions:["pml"]},"application/vnd.ctct.ws+xml":{source:"iana",compressible:!0},"application/vnd.cups-pdf":{source:"iana"},"application/vnd.cups-postscript":{source:"iana"},"application/vnd.cups-ppd":{source:"iana",extensions:["ppd"]},"application/vnd.cups-raster":{source:"iana"},"application/vnd.cups-raw":{source:"iana"},"application/vnd.curl":{source:"iana"},"application/vnd.curl.car":{source:"apache",extensions:["car"]},"application/vnd.curl.pcurl":{source:"apache",extensions:["pcurl"]},"application/vnd.cyan.dean.root+xml":{source:"iana",compressible:!0},"application/vnd.cybank":{source:"iana"},"application/vnd.cyclonedx+json":{source:"iana",compressible:!0},"application/vnd.cyclonedx+xml":{source:"iana",compressible:!0},"application/vnd.d2l.coursepackage1p0+zip":{source:"iana",compressible:!1},"application/vnd.d3m-dataset":{source:"iana"},"application/vnd.d3m-problem":{source:"iana"},"application/vnd.dart":{source:"iana",compressible:!0,extensions:["dart"]},"application/vnd.data-vision.rdz":{source:"iana",extensions:["rdz"]},"application/vnd.datapackage+json":{source:"iana",compressible:!0},"application/vnd.dataresource+json":{source:"iana",compressible:!0},"application/vnd.dbf":{source:"iana",extensions:["dbf"]},"application/vnd.debian.binary-package":{source:"iana"},"application/vnd.dece.data":{source:"iana",extensions:["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{source:"iana",compressible:!0,extensions:["uvt","uvvt"]},"application/vnd.dece.unspecified":{source:"iana",extensions:["uvx","uvvx"]},"application/vnd.dece.zip":{source:"iana",extensions:["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{source:"iana",extensions:["fe_launch"]},"application/vnd.desmume.movie":{source:"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{source:"iana"},"application/vnd.dm.delegation+xml":{source:"iana",compressible:!0},"application/vnd.dna":{source:"iana",extensions:["dna"]},"application/vnd.document+json":{source:"iana",compressible:!0},"application/vnd.dolby.mlp":{source:"apache",extensions:["mlp"]},"application/vnd.dolby.mobile.1":{source:"iana"},"application/vnd.dolby.mobile.2":{source:"iana"},"application/vnd.doremir.scorecloud-binary-document":{source:"iana"},"application/vnd.dpgraph":{source:"iana",extensions:["dpg"]},"application/vnd.dreamfactory":{source:"iana",extensions:["dfac"]},"application/vnd.drive+json":{source:"iana",compressible:!0},"application/vnd.ds-keypoint":{source:"apache",extensions:["kpxx"]},"application/vnd.dtg.local":{source:"iana"},"application/vnd.dtg.local.flash":{source:"iana"},"application/vnd.dtg.local.html":{source:"iana"},"application/vnd.dvb.ait":{source:"iana",extensions:["ait"]},"application/vnd.dvb.dvbisl+xml":{source:"iana",compressible:!0},"application/vnd.dvb.dvbj":{source:"iana"},"application/vnd.dvb.esgcontainer":{source:"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess2":{source:"iana"},"application/vnd.dvb.ipdcesgpdd":{source:"iana"},"application/vnd.dvb.ipdcroaming":{source:"iana"},"application/vnd.dvb.iptv.alfec-base":{source:"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{source:"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-container+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-generic+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-msglist+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-request+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-response+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-init+xml":{source:"iana",compressible:!0},"application/vnd.dvb.pfr":{source:"iana"},"application/vnd.dvb.service":{source:"iana",extensions:["svc"]},"application/vnd.dxr":{source:"iana"},"application/vnd.dynageo":{source:"iana",extensions:["geo"]},"application/vnd.dzr":{source:"iana"},"application/vnd.easykaraoke.cdgdownload":{source:"iana"},"application/vnd.ecdis-update":{source:"iana"},"application/vnd.ecip.rlp":{source:"iana"},"application/vnd.eclipse.ditto+json":{source:"iana",compressible:!0},"application/vnd.ecowin.chart":{source:"iana",extensions:["mag"]},"application/vnd.ecowin.filerequest":{source:"iana"},"application/vnd.ecowin.fileupdate":{source:"iana"},"application/vnd.ecowin.series":{source:"iana"},"application/vnd.ecowin.seriesrequest":{source:"iana"},"application/vnd.ecowin.seriesupdate":{source:"iana"},"application/vnd.efi.img":{source:"iana"},"application/vnd.efi.iso":{source:"iana"},"application/vnd.emclient.accessrequest+xml":{source:"iana",compressible:!0},"application/vnd.enliven":{source:"iana",extensions:["nml"]},"application/vnd.enphase.envoy":{source:"iana"},"application/vnd.eprints.data+xml":{source:"iana",compressible:!0},"application/vnd.epson.esf":{source:"iana",extensions:["esf"]},"application/vnd.epson.msf":{source:"iana",extensions:["msf"]},"application/vnd.epson.quickanime":{source:"iana",extensions:["qam"]},"application/vnd.epson.salt":{source:"iana",extensions:["slt"]},"application/vnd.epson.ssf":{source:"iana",extensions:["ssf"]},"application/vnd.ericsson.quickcall":{source:"iana"},"application/vnd.espass-espass+zip":{source:"iana",compressible:!1},"application/vnd.eszigno3+xml":{source:"iana",compressible:!0,extensions:["es3","et3"]},"application/vnd.etsi.aoc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.asic-e+zip":{source:"iana",compressible:!1},"application/vnd.etsi.asic-s+zip":{source:"iana",compressible:!1},"application/vnd.etsi.cug+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvcommand+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-bc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-cod+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-npvr+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvservice+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsync+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvueprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mcid+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mheg5":{source:"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{source:"iana",compressible:!0},"application/vnd.etsi.pstn+xml":{source:"iana",compressible:!0},"application/vnd.etsi.sci+xml":{source:"iana",compressible:!0},"application/vnd.etsi.simservs+xml":{source:"iana",compressible:!0},"application/vnd.etsi.timestamp-token":{source:"iana"},"application/vnd.etsi.tsl+xml":{source:"iana",compressible:!0},"application/vnd.etsi.tsl.der":{source:"iana"},"application/vnd.eu.kasparian.car+json":{source:"iana",compressible:!0},"application/vnd.eudora.data":{source:"iana"},"application/vnd.evolv.ecig.profile":{source:"iana"},"application/vnd.evolv.ecig.settings":{source:"iana"},"application/vnd.evolv.ecig.theme":{source:"iana"},"application/vnd.exstream-empower+zip":{source:"iana",compressible:!1},"application/vnd.exstream-package":{source:"iana"},"application/vnd.ezpix-album":{source:"iana",extensions:["ez2"]},"application/vnd.ezpix-package":{source:"iana",extensions:["ez3"]},"application/vnd.f-secure.mobile":{source:"iana"},"application/vnd.familysearch.gedcom+zip":{source:"iana",compressible:!1},"application/vnd.fastcopy-disk-image":{source:"iana"},"application/vnd.fdf":{source:"iana",extensions:["fdf"]},"application/vnd.fdsn.mseed":{source:"iana",extensions:["mseed"]},"application/vnd.fdsn.seed":{source:"iana",extensions:["seed","dataless"]},"application/vnd.ffsns":{source:"iana"},"application/vnd.ficlab.flb+zip":{source:"iana",compressible:!1},"application/vnd.filmit.zfc":{source:"iana"},"application/vnd.fints":{source:"iana"},"application/vnd.firemonkeys.cloudcell":{source:"iana"},"application/vnd.flographit":{source:"iana",extensions:["gph"]},"application/vnd.fluxtime.clip":{source:"iana",extensions:["ftc"]},"application/vnd.font-fontforge-sfd":{source:"iana"},"application/vnd.framemaker":{source:"iana",extensions:["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{source:"iana",extensions:["fnc"]},"application/vnd.frogans.ltf":{source:"iana",extensions:["ltf"]},"application/vnd.fsc.weblaunch":{source:"iana",extensions:["fsc"]},"application/vnd.fujifilm.fb.docuworks":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.container":{source:"iana"},"application/vnd.fujifilm.fb.jfi+xml":{source:"iana",compressible:!0},"application/vnd.fujitsu.oasys":{source:"iana",extensions:["oas"]},"application/vnd.fujitsu.oasys2":{source:"iana",extensions:["oa2"]},"application/vnd.fujitsu.oasys3":{source:"iana",extensions:["oa3"]},"application/vnd.fujitsu.oasysgp":{source:"iana",extensions:["fg5"]},"application/vnd.fujitsu.oasysprs":{source:"iana",extensions:["bh2"]},"application/vnd.fujixerox.art-ex":{source:"iana"},"application/vnd.fujixerox.art4":{source:"iana"},"application/vnd.fujixerox.ddd":{source:"iana",extensions:["ddd"]},"application/vnd.fujixerox.docuworks":{source:"iana",extensions:["xdw"]},"application/vnd.fujixerox.docuworks.binder":{source:"iana",extensions:["xbd"]},"application/vnd.fujixerox.docuworks.container":{source:"iana"},"application/vnd.fujixerox.hbpl":{source:"iana"},"application/vnd.fut-misnet":{source:"iana"},"application/vnd.futoin+cbor":{source:"iana"},"application/vnd.futoin+json":{source:"iana",compressible:!0},"application/vnd.fuzzysheet":{source:"iana",extensions:["fzs"]},"application/vnd.genomatix.tuxedo":{source:"iana",extensions:["txd"]},"application/vnd.gentics.grd+json":{source:"iana",compressible:!0},"application/vnd.geo+json":{source:"iana",compressible:!0},"application/vnd.geocube+xml":{source:"iana",compressible:!0},"application/vnd.geogebra.file":{source:"iana",extensions:["ggb"]},"application/vnd.geogebra.slides":{source:"iana"},"application/vnd.geogebra.tool":{source:"iana",extensions:["ggt"]},"application/vnd.geometry-explorer":{source:"iana",extensions:["gex","gre"]},"application/vnd.geonext":{source:"iana",extensions:["gxt"]},"application/vnd.geoplan":{source:"iana",extensions:["g2w"]},"application/vnd.geospace":{source:"iana",extensions:["g3w"]},"application/vnd.gerber":{source:"iana"},"application/vnd.globalplatform.card-content-mgt":{source:"iana"},"application/vnd.globalplatform.card-content-mgt-response":{source:"iana"},"application/vnd.gmx":{source:"iana",extensions:["gmx"]},"application/vnd.google-apps.document":{compressible:!1,extensions:["gdoc"]},"application/vnd.google-apps.presentation":{compressible:!1,extensions:["gslides"]},"application/vnd.google-apps.spreadsheet":{compressible:!1,extensions:["gsheet"]},"application/vnd.google-earth.kml+xml":{source:"iana",compressible:!0,extensions:["kml"]},"application/vnd.google-earth.kmz":{source:"iana",compressible:!1,extensions:["kmz"]},"application/vnd.gov.sk.e-form+xml":{source:"iana",compressible:!0},"application/vnd.gov.sk.e-form+zip":{source:"iana",compressible:!1},"application/vnd.gov.sk.xmldatacontainer+xml":{source:"iana",compressible:!0},"application/vnd.grafeq":{source:"iana",extensions:["gqf","gqs"]},"application/vnd.gridmp":{source:"iana"},"application/vnd.groove-account":{source:"iana",extensions:["gac"]},"application/vnd.groove-help":{source:"iana",extensions:["ghf"]},"application/vnd.groove-identity-message":{source:"iana",extensions:["gim"]},"application/vnd.groove-injector":{source:"iana",extensions:["grv"]},"application/vnd.groove-tool-message":{source:"iana",extensions:["gtm"]},"application/vnd.groove-tool-template":{source:"iana",extensions:["tpl"]},"application/vnd.groove-vcard":{source:"iana",extensions:["vcg"]},"application/vnd.hal+json":{source:"iana",compressible:!0},"application/vnd.hal+xml":{source:"iana",compressible:!0,extensions:["hal"]},"application/vnd.handheld-entertainment+xml":{source:"iana",compressible:!0,extensions:["zmm"]},"application/vnd.hbci":{source:"iana",extensions:["hbci"]},"application/vnd.hc+json":{source:"iana",compressible:!0},"application/vnd.hcl-bireports":{source:"iana"},"application/vnd.hdt":{source:"iana"},"application/vnd.heroku+json":{source:"iana",compressible:!0},"application/vnd.hhe.lesson-player":{source:"iana",extensions:["les"]},"application/vnd.hl7cda+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hl7v2+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hp-hpgl":{source:"iana",extensions:["hpgl"]},"application/vnd.hp-hpid":{source:"iana",extensions:["hpid"]},"application/vnd.hp-hps":{source:"iana",extensions:["hps"]},"application/vnd.hp-jlyt":{source:"iana",extensions:["jlt"]},"application/vnd.hp-pcl":{source:"iana",extensions:["pcl"]},"application/vnd.hp-pclxl":{source:"iana",extensions:["pclxl"]},"application/vnd.httphone":{source:"iana"},"application/vnd.hydrostatix.sof-data":{source:"iana",extensions:["sfd-hdstx"]},"application/vnd.hyper+json":{source:"iana",compressible:!0},"application/vnd.hyper-item+json":{source:"iana",compressible:!0},"application/vnd.hyperdrive+json":{source:"iana",compressible:!0},"application/vnd.hzn-3d-crossword":{source:"iana"},"application/vnd.ibm.afplinedata":{source:"iana"},"application/vnd.ibm.electronic-media":{source:"iana"},"application/vnd.ibm.minipay":{source:"iana",extensions:["mpy"]},"application/vnd.ibm.modcap":{source:"iana",extensions:["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{source:"iana",extensions:["irm"]},"application/vnd.ibm.secure-container":{source:"iana",extensions:["sc"]},"application/vnd.iccprofile":{source:"iana",extensions:["icc","icm"]},"application/vnd.ieee.1905":{source:"iana"},"application/vnd.igloader":{source:"iana",extensions:["igl"]},"application/vnd.imagemeter.folder+zip":{source:"iana",compressible:!1},"application/vnd.imagemeter.image+zip":{source:"iana",compressible:!1},"application/vnd.immervision-ivp":{source:"iana",extensions:["ivp"]},"application/vnd.immervision-ivu":{source:"iana",extensions:["ivu"]},"application/vnd.ims.imsccv1p1":{source:"iana"},"application/vnd.ims.imsccv1p2":{source:"iana"},"application/vnd.ims.imsccv1p3":{source:"iana"},"application/vnd.ims.lis.v2.result+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy.id+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings.simple+json":{source:"iana",compressible:!0},"application/vnd.informedcontrol.rms+xml":{source:"iana",compressible:!0},"application/vnd.informix-visionary":{source:"iana"},"application/vnd.infotech.project":{source:"iana"},"application/vnd.infotech.project+xml":{source:"iana",compressible:!0},"application/vnd.innopath.wamp.notification":{source:"iana"},"application/vnd.insors.igm":{source:"iana",extensions:["igm"]},"application/vnd.intercon.formnet":{source:"iana",extensions:["xpw","xpx"]},"application/vnd.intergeo":{source:"iana",extensions:["i2g"]},"application/vnd.intertrust.digibox":{source:"iana"},"application/vnd.intertrust.nncp":{source:"iana"},"application/vnd.intu.qbo":{source:"iana",extensions:["qbo"]},"application/vnd.intu.qfx":{source:"iana",extensions:["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.conceptitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.knowledgeitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsmessage+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.packageitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.planningitem+xml":{source:"iana",compressible:!0},"application/vnd.ipunplugged.rcprofile":{source:"iana",extensions:["rcprofile"]},"application/vnd.irepository.package+xml":{source:"iana",compressible:!0,extensions:["irp"]},"application/vnd.is-xpr":{source:"iana",extensions:["xpr"]},"application/vnd.isac.fcs":{source:"iana",extensions:["fcs"]},"application/vnd.iso11783-10+zip":{source:"iana",compressible:!1},"application/vnd.jam":{source:"iana",extensions:["jam"]},"application/vnd.japannet-directory-service":{source:"iana"},"application/vnd.japannet-jpnstore-wakeup":{source:"iana"},"application/vnd.japannet-payment-wakeup":{source:"iana"},"application/vnd.japannet-registration":{source:"iana"},"application/vnd.japannet-registration-wakeup":{source:"iana"},"application/vnd.japannet-setstore-wakeup":{source:"iana"},"application/vnd.japannet-verification":{source:"iana"},"application/vnd.japannet-verification-wakeup":{source:"iana"},"application/vnd.jcp.javame.midlet-rms":{source:"iana",extensions:["rms"]},"application/vnd.jisp":{source:"iana",extensions:["jisp"]},"application/vnd.joost.joda-archive":{source:"iana",extensions:["joda"]},"application/vnd.jsk.isdn-ngn":{source:"iana"},"application/vnd.kahootz":{source:"iana",extensions:["ktz","ktr"]},"application/vnd.kde.karbon":{source:"iana",extensions:["karbon"]},"application/vnd.kde.kchart":{source:"iana",extensions:["chrt"]},"application/vnd.kde.kformula":{source:"iana",extensions:["kfo"]},"application/vnd.kde.kivio":{source:"iana",extensions:["flw"]},"application/vnd.kde.kontour":{source:"iana",extensions:["kon"]},"application/vnd.kde.kpresenter":{source:"iana",extensions:["kpr","kpt"]},"application/vnd.kde.kspread":{source:"iana",extensions:["ksp"]},"application/vnd.kde.kword":{source:"iana",extensions:["kwd","kwt"]},"application/vnd.kenameaapp":{source:"iana",extensions:["htke"]},"application/vnd.kidspiration":{source:"iana",extensions:["kia"]},"application/vnd.kinar":{source:"iana",extensions:["kne","knp"]},"application/vnd.koan":{source:"iana",extensions:["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{source:"iana",extensions:["sse"]},"application/vnd.las":{source:"iana"},"application/vnd.las.las+json":{source:"iana",compressible:!0},"application/vnd.las.las+xml":{source:"iana",compressible:!0,extensions:["lasxml"]},"application/vnd.laszip":{source:"iana"},"application/vnd.leap+json":{source:"iana",compressible:!0},"application/vnd.liberty-request+xml":{source:"iana",compressible:!0},"application/vnd.llamagraphics.life-balance.desktop":{source:"iana",extensions:["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{source:"iana",compressible:!0,extensions:["lbe"]},"application/vnd.logipipe.circuit+zip":{source:"iana",compressible:!1},"application/vnd.loom":{source:"iana"},"application/vnd.lotus-1-2-3":{source:"iana",extensions:["123"]},"application/vnd.lotus-approach":{source:"iana",extensions:["apr"]},"application/vnd.lotus-freelance":{source:"iana",extensions:["pre"]},"application/vnd.lotus-notes":{source:"iana",extensions:["nsf"]},"application/vnd.lotus-organizer":{source:"iana",extensions:["org"]},"application/vnd.lotus-screencam":{source:"iana",extensions:["scm"]},"application/vnd.lotus-wordpro":{source:"iana",extensions:["lwp"]},"application/vnd.macports.portpkg":{source:"iana",extensions:["portpkg"]},"application/vnd.mapbox-vector-tile":{source:"iana",extensions:["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.conftoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.license+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.mdcf":{source:"iana"},"application/vnd.mason+json":{source:"iana",compressible:!0},"application/vnd.maxar.archive.3tz+zip":{source:"iana",compressible:!1},"application/vnd.maxmind.maxmind-db":{source:"iana"},"application/vnd.mcd":{source:"iana",extensions:["mcd"]},"application/vnd.medcalcdata":{source:"iana",extensions:["mc1"]},"application/vnd.mediastation.cdkey":{source:"iana",extensions:["cdkey"]},"application/vnd.meridian-slingshot":{source:"iana"},"application/vnd.mfer":{source:"iana",extensions:["mwf"]},"application/vnd.mfmp":{source:"iana",extensions:["mfm"]},"application/vnd.micro+json":{source:"iana",compressible:!0},"application/vnd.micrografx.flo":{source:"iana",extensions:["flo"]},"application/vnd.micrografx.igx":{source:"iana",extensions:["igx"]},"application/vnd.microsoft.portable-executable":{source:"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{source:"iana"},"application/vnd.miele+json":{source:"iana",compressible:!0},"application/vnd.mif":{source:"iana",extensions:["mif"]},"application/vnd.minisoft-hp3000-save":{source:"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{source:"iana"},"application/vnd.mobius.daf":{source:"iana",extensions:["daf"]},"application/vnd.mobius.dis":{source:"iana",extensions:["dis"]},"application/vnd.mobius.mbk":{source:"iana",extensions:["mbk"]},"application/vnd.mobius.mqy":{source:"iana",extensions:["mqy"]},"application/vnd.mobius.msl":{source:"iana",extensions:["msl"]},"application/vnd.mobius.plc":{source:"iana",extensions:["plc"]},"application/vnd.mobius.txf":{source:"iana",extensions:["txf"]},"application/vnd.mophun.application":{source:"iana",extensions:["mpn"]},"application/vnd.mophun.certificate":{source:"iana",extensions:["mpc"]},"application/vnd.motorola.flexsuite":{source:"iana"},"application/vnd.motorola.flexsuite.adsi":{source:"iana"},"application/vnd.motorola.flexsuite.fis":{source:"iana"},"application/vnd.motorola.flexsuite.gotap":{source:"iana"},"application/vnd.motorola.flexsuite.kmr":{source:"iana"},"application/vnd.motorola.flexsuite.ttc":{source:"iana"},"application/vnd.motorola.flexsuite.wem":{source:"iana"},"application/vnd.motorola.iprm":{source:"iana"},"application/vnd.mozilla.xul+xml":{source:"iana",compressible:!0,extensions:["xul"]},"application/vnd.ms-3mfdocument":{source:"iana"},"application/vnd.ms-artgalry":{source:"iana",extensions:["cil"]},"application/vnd.ms-asf":{source:"iana"},"application/vnd.ms-cab-compressed":{source:"iana",extensions:["cab"]},"application/vnd.ms-color.iccprofile":{source:"apache"},"application/vnd.ms-excel":{source:"iana",compressible:!1,extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{source:"iana",extensions:["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{source:"iana",extensions:["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{source:"iana",extensions:["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{source:"iana",extensions:["xltm"]},"application/vnd.ms-fontobject":{source:"iana",compressible:!0,extensions:["eot"]},"application/vnd.ms-htmlhelp":{source:"iana",extensions:["chm"]},"application/vnd.ms-ims":{source:"iana",extensions:["ims"]},"application/vnd.ms-lrm":{source:"iana",extensions:["lrm"]},"application/vnd.ms-office.activex+xml":{source:"iana",compressible:!0},"application/vnd.ms-officetheme":{source:"iana",extensions:["thmx"]},"application/vnd.ms-opentype":{source:"apache",compressible:!0},"application/vnd.ms-outlook":{compressible:!1,extensions:["msg"]},"application/vnd.ms-package.obfuscated-opentype":{source:"apache"},"application/vnd.ms-pki.seccat":{source:"apache",extensions:["cat"]},"application/vnd.ms-pki.stl":{source:"apache",extensions:["stl"]},"application/vnd.ms-playready.initiator+xml":{source:"iana",compressible:!0},"application/vnd.ms-powerpoint":{source:"iana",compressible:!1,extensions:["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{source:"iana",extensions:["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{source:"iana",extensions:["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{source:"iana",extensions:["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{source:"iana",extensions:["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{source:"iana",extensions:["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{source:"iana",compressible:!0},"application/vnd.ms-printing.printticket+xml":{source:"apache",compressible:!0},"application/vnd.ms-printschematicket+xml":{source:"iana",compressible:!0},"application/vnd.ms-project":{source:"iana",extensions:["mpp","mpt"]},"application/vnd.ms-tnef":{source:"iana"},"application/vnd.ms-windows.devicepairing":{source:"iana"},"application/vnd.ms-windows.nwprinting.oob":{source:"iana"},"application/vnd.ms-windows.printerpairing":{source:"iana"},"application/vnd.ms-windows.wsd.oob":{source:"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.lic-resp":{source:"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.meter-resp":{source:"iana"},"application/vnd.ms-word.document.macroenabled.12":{source:"iana",extensions:["docm"]},"application/vnd.ms-word.template.macroenabled.12":{source:"iana",extensions:["dotm"]},"application/vnd.ms-works":{source:"iana",extensions:["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{source:"iana",extensions:["wpl"]},"application/vnd.ms-xpsdocument":{source:"iana",compressible:!1,extensions:["xps"]},"application/vnd.msa-disk-image":{source:"iana"},"application/vnd.mseq":{source:"iana",extensions:["mseq"]},"application/vnd.msign":{source:"iana"},"application/vnd.multiad.creator":{source:"iana"},"application/vnd.multiad.creator.cif":{source:"iana"},"application/vnd.music-niff":{source:"iana"},"application/vnd.musician":{source:"iana",extensions:["mus"]},"application/vnd.muvee.style":{source:"iana",extensions:["msty"]},"application/vnd.mynfc":{source:"iana",extensions:["taglet"]},"application/vnd.nacamar.ybrid+json":{source:"iana",compressible:!0},"application/vnd.ncd.control":{source:"iana"},"application/vnd.ncd.reference":{source:"iana"},"application/vnd.nearst.inv+json":{source:"iana",compressible:!0},"application/vnd.nebumind.line":{source:"iana"},"application/vnd.nervana":{source:"iana"},"application/vnd.netfpx":{source:"iana"},"application/vnd.neurolanguage.nlu":{source:"iana",extensions:["nlu"]},"application/vnd.nimn":{source:"iana"},"application/vnd.nintendo.nitro.rom":{source:"iana"},"application/vnd.nintendo.snes.rom":{source:"iana"},"application/vnd.nitf":{source:"iana",extensions:["ntf","nitf"]},"application/vnd.noblenet-directory":{source:"iana",extensions:["nnd"]},"application/vnd.noblenet-sealer":{source:"iana",extensions:["nns"]},"application/vnd.noblenet-web":{source:"iana",extensions:["nnw"]},"application/vnd.nokia.catalogs":{source:"iana"},"application/vnd.nokia.conml+wbxml":{source:"iana"},"application/vnd.nokia.conml+xml":{source:"iana",compressible:!0},"application/vnd.nokia.iptv.config+xml":{source:"iana",compressible:!0},"application/vnd.nokia.isds-radio-presets":{source:"iana"},"application/vnd.nokia.landmark+wbxml":{source:"iana"},"application/vnd.nokia.landmark+xml":{source:"iana",compressible:!0},"application/vnd.nokia.landmarkcollection+xml":{source:"iana",compressible:!0},"application/vnd.nokia.n-gage.ac+xml":{source:"iana",compressible:!0,extensions:["ac"]},"application/vnd.nokia.n-gage.data":{source:"iana",extensions:["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{source:"iana",extensions:["n-gage"]},"application/vnd.nokia.ncd":{source:"iana"},"application/vnd.nokia.pcd+wbxml":{source:"iana"},"application/vnd.nokia.pcd+xml":{source:"iana",compressible:!0},"application/vnd.nokia.radio-preset":{source:"iana",extensions:["rpst"]},"application/vnd.nokia.radio-presets":{source:"iana",extensions:["rpss"]},"application/vnd.novadigm.edm":{source:"iana",extensions:["edm"]},"application/vnd.novadigm.edx":{source:"iana",extensions:["edx"]},"application/vnd.novadigm.ext":{source:"iana",extensions:["ext"]},"application/vnd.ntt-local.content-share":{source:"iana"},"application/vnd.ntt-local.file-transfer":{source:"iana"},"application/vnd.ntt-local.ogw_remote-access":{source:"iana"},"application/vnd.ntt-local.sip-ta_remote":{source:"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{source:"iana"},"application/vnd.oasis.opendocument.chart":{source:"iana",extensions:["odc"]},"application/vnd.oasis.opendocument.chart-template":{source:"iana",extensions:["otc"]},"application/vnd.oasis.opendocument.database":{source:"iana",extensions:["odb"]},"application/vnd.oasis.opendocument.formula":{source:"iana",extensions:["odf"]},"application/vnd.oasis.opendocument.formula-template":{source:"iana",extensions:["odft"]},"application/vnd.oasis.opendocument.graphics":{source:"iana",compressible:!1,extensions:["odg"]},"application/vnd.oasis.opendocument.graphics-template":{source:"iana",extensions:["otg"]},"application/vnd.oasis.opendocument.image":{source:"iana",extensions:["odi"]},"application/vnd.oasis.opendocument.image-template":{source:"iana",extensions:["oti"]},"application/vnd.oasis.opendocument.presentation":{source:"iana",compressible:!1,extensions:["odp"]},"application/vnd.oasis.opendocument.presentation-template":{source:"iana",extensions:["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{source:"iana",compressible:!1,extensions:["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{source:"iana",extensions:["ots"]},"application/vnd.oasis.opendocument.text":{source:"iana",compressible:!1,extensions:["odt"]},"application/vnd.oasis.opendocument.text-master":{source:"iana",extensions:["odm"]},"application/vnd.oasis.opendocument.text-template":{source:"iana",extensions:["ott"]},"application/vnd.oasis.opendocument.text-web":{source:"iana",extensions:["oth"]},"application/vnd.obn":{source:"iana"},"application/vnd.ocf+cbor":{source:"iana"},"application/vnd.oci.image.manifest.v1+json":{source:"iana",compressible:!0},"application/vnd.oftn.l10n+json":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessdownload+xml":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessstreaming+xml":{source:"iana",compressible:!0},"application/vnd.oipf.cspg-hexbinary":{source:"iana"},"application/vnd.oipf.dae.svg+xml":{source:"iana",compressible:!0},"application/vnd.oipf.dae.xhtml+xml":{source:"iana",compressible:!0},"application/vnd.oipf.mippvcontrolmessage+xml":{source:"iana",compressible:!0},"application/vnd.oipf.pae.gem":{source:"iana"},"application/vnd.oipf.spdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.oipf.spdlist+xml":{source:"iana",compressible:!0},"application/vnd.oipf.ueprofile+xml":{source:"iana",compressible:!0},"application/vnd.oipf.userprofile+xml":{source:"iana",compressible:!0},"application/vnd.olpc-sugar":{source:"iana",extensions:["xo"]},"application/vnd.oma-scws-config":{source:"iana"},"application/vnd.oma-scws-http-request":{source:"iana"},"application/vnd.oma-scws-http-response":{source:"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.drm-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.imd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.ltkm":{source:"iana"},"application/vnd.oma.bcast.notification+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.provisioningtrigger":{source:"iana"},"application/vnd.oma.bcast.sgboot":{source:"iana"},"application/vnd.oma.bcast.sgdd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sgdu":{source:"iana"},"application/vnd.oma.bcast.simple-symbol-container":{source:"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sprov+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.stkm":{source:"iana"},"application/vnd.oma.cab-address-book+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-feature-handler+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-pcc+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-subs-invite+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-user-prefs+xml":{source:"iana",compressible:!0},"application/vnd.oma.dcd":{source:"iana"},"application/vnd.oma.dcdc":{source:"iana"},"application/vnd.oma.dd2+xml":{source:"iana",compressible:!0,extensions:["dd2"]},"application/vnd.oma.drm.risd+xml":{source:"iana",compressible:!0},"application/vnd.oma.group-usage-list+xml":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+cbor":{source:"iana"},"application/vnd.oma.lwm2m+json":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+tlv":{source:"iana"},"application/vnd.oma.pal+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.detailed-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.final-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.groups+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.invocation-descriptor+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.optimized-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.push":{source:"iana"},"application/vnd.oma.scidm.messages+xml":{source:"iana",compressible:!0},"application/vnd.oma.xcap-directory+xml":{source:"iana",compressible:!0},"application/vnd.omads-email+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-file+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-folder+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omaloc-supl-init":{source:"iana"},"application/vnd.onepager":{source:"iana"},"application/vnd.onepagertamp":{source:"iana"},"application/vnd.onepagertamx":{source:"iana"},"application/vnd.onepagertat":{source:"iana"},"application/vnd.onepagertatp":{source:"iana"},"application/vnd.onepagertatx":{source:"iana"},"application/vnd.openblox.game+xml":{source:"iana",compressible:!0,extensions:["obgx"]},"application/vnd.openblox.game-binary":{source:"iana"},"application/vnd.openeye.oeb":{source:"iana"},"application/vnd.openofficeorg.extension":{source:"apache",extensions:["oxt"]},"application/vnd.openstreetmap.data+xml":{source:"iana",compressible:!0,extensions:["osm"]},"application/vnd.opentimestamps.ots":{source:"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawing+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{source:"iana",compressible:!1,extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slide":{source:"iana",extensions:["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{source:"iana",extensions:["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.template":{source:"iana",extensions:["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{source:"iana",compressible:!1,extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{source:"iana",extensions:["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.theme+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.vmldrawing":{source:"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{source:"iana",compressible:!1,extensions:["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{source:"iana",extensions:["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.core-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.relationships+xml":{source:"iana",compressible:!0},"application/vnd.oracle.resource+json":{source:"iana",compressible:!0},"application/vnd.orange.indata":{source:"iana"},"application/vnd.osa.netdeploy":{source:"iana"},"application/vnd.osgeo.mapguide.package":{source:"iana",extensions:["mgp"]},"application/vnd.osgi.bundle":{source:"iana"},"application/vnd.osgi.dp":{source:"iana",extensions:["dp"]},"application/vnd.osgi.subsystem":{source:"iana",extensions:["esa"]},"application/vnd.otps.ct-kip+xml":{source:"iana",compressible:!0},"application/vnd.oxli.countgraph":{source:"iana"},"application/vnd.pagerduty+json":{source:"iana",compressible:!0},"application/vnd.palm":{source:"iana",extensions:["pdb","pqa","oprc"]},"application/vnd.panoply":{source:"iana"},"application/vnd.paos.xml":{source:"iana"},"application/vnd.patentdive":{source:"iana"},"application/vnd.patientecommsdoc":{source:"iana"},"application/vnd.pawaafile":{source:"iana",extensions:["paw"]},"application/vnd.pcos":{source:"iana"},"application/vnd.pg.format":{source:"iana",extensions:["str"]},"application/vnd.pg.osasli":{source:"iana",extensions:["ei6"]},"application/vnd.piaccess.application-licence":{source:"iana"},"application/vnd.picsel":{source:"iana",extensions:["efif"]},"application/vnd.pmi.widget":{source:"iana",extensions:["wg"]},"application/vnd.poc.group-advertisement+xml":{source:"iana",compressible:!0},"application/vnd.pocketlearn":{source:"iana",extensions:["plf"]},"application/vnd.powerbuilder6":{source:"iana",extensions:["pbd"]},"application/vnd.powerbuilder6-s":{source:"iana"},"application/vnd.powerbuilder7":{source:"iana"},"application/vnd.powerbuilder7-s":{source:"iana"},"application/vnd.powerbuilder75":{source:"iana"},"application/vnd.powerbuilder75-s":{source:"iana"},"application/vnd.preminet":{source:"iana"},"application/vnd.previewsystems.box":{source:"iana",extensions:["box"]},"application/vnd.proteus.magazine":{source:"iana",extensions:["mgz"]},"application/vnd.psfs":{source:"iana"},"application/vnd.publishare-delta-tree":{source:"iana",extensions:["qps"]},"application/vnd.pvi.ptid1":{source:"iana",extensions:["ptid"]},"application/vnd.pwg-multiplexed":{source:"iana"},"application/vnd.pwg-xhtml-print+xml":{source:"iana",compressible:!0},"application/vnd.qualcomm.brew-app-res":{source:"iana"},"application/vnd.quarantainenet":{source:"iana"},"application/vnd.quark.quarkxpress":{source:"iana",extensions:["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{source:"iana"},"application/vnd.radisys.moml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conn+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-stream+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-base+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-detect+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-group+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-speech+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-transform+xml":{source:"iana",compressible:!0},"application/vnd.rainstor.data":{source:"iana"},"application/vnd.rapid":{source:"iana"},"application/vnd.rar":{source:"iana",extensions:["rar"]},"application/vnd.realvnc.bed":{source:"iana",extensions:["bed"]},"application/vnd.recordare.musicxml":{source:"iana",extensions:["mxl"]},"application/vnd.recordare.musicxml+xml":{source:"iana",compressible:!0,extensions:["musicxml"]},"application/vnd.renlearn.rlprint":{source:"iana"},"application/vnd.resilient.logic":{source:"iana"},"application/vnd.restful+json":{source:"iana",compressible:!0},"application/vnd.rig.cryptonote":{source:"iana",extensions:["cryptonote"]},"application/vnd.rim.cod":{source:"apache",extensions:["cod"]},"application/vnd.rn-realmedia":{source:"apache",extensions:["rm"]},"application/vnd.rn-realmedia-vbr":{source:"apache",extensions:["rmvb"]},"application/vnd.route66.link66+xml":{source:"iana",compressible:!0,extensions:["link66"]},"application/vnd.rs-274x":{source:"iana"},"application/vnd.ruckus.download":{source:"iana"},"application/vnd.s3sms":{source:"iana"},"application/vnd.sailingtracker.track":{source:"iana",extensions:["st"]},"application/vnd.sar":{source:"iana"},"application/vnd.sbm.cid":{source:"iana"},"application/vnd.sbm.mid2":{source:"iana"},"application/vnd.scribus":{source:"iana"},"application/vnd.sealed.3df":{source:"iana"},"application/vnd.sealed.csf":{source:"iana"},"application/vnd.sealed.doc":{source:"iana"},"application/vnd.sealed.eml":{source:"iana"},"application/vnd.sealed.mht":{source:"iana"},"application/vnd.sealed.net":{source:"iana"},"application/vnd.sealed.ppt":{source:"iana"},"application/vnd.sealed.tiff":{source:"iana"},"application/vnd.sealed.xls":{source:"iana"},"application/vnd.sealedmedia.softseal.html":{source:"iana"},"application/vnd.sealedmedia.softseal.pdf":{source:"iana"},"application/vnd.seemail":{source:"iana",extensions:["see"]},"application/vnd.seis+json":{source:"iana",compressible:!0},"application/vnd.sema":{source:"iana",extensions:["sema"]},"application/vnd.semd":{source:"iana",extensions:["semd"]},"application/vnd.semf":{source:"iana",extensions:["semf"]},"application/vnd.shade-save-file":{source:"iana"},"application/vnd.shana.informed.formdata":{source:"iana",extensions:["ifm"]},"application/vnd.shana.informed.formtemplate":{source:"iana",extensions:["itp"]},"application/vnd.shana.informed.interchange":{source:"iana",extensions:["iif"]},"application/vnd.shana.informed.package":{source:"iana",extensions:["ipk"]},"application/vnd.shootproof+json":{source:"iana",compressible:!0},"application/vnd.shopkick+json":{source:"iana",compressible:!0},"application/vnd.shp":{source:"iana"},"application/vnd.shx":{source:"iana"},"application/vnd.sigrok.session":{source:"iana"},"application/vnd.simtech-mindmapper":{source:"iana",extensions:["twd","twds"]},"application/vnd.siren+json":{source:"iana",compressible:!0},"application/vnd.smaf":{source:"iana",extensions:["mmf"]},"application/vnd.smart.notebook":{source:"iana"},"application/vnd.smart.teacher":{source:"iana",extensions:["teacher"]},"application/vnd.snesdev-page-table":{source:"iana"},"application/vnd.software602.filler.form+xml":{source:"iana",compressible:!0,extensions:["fo"]},"application/vnd.software602.filler.form-xml-zip":{source:"iana"},"application/vnd.solent.sdkm+xml":{source:"iana",compressible:!0,extensions:["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{source:"iana",extensions:["dxp"]},"application/vnd.spotfire.sfs":{source:"iana",extensions:["sfs"]},"application/vnd.sqlite3":{source:"iana"},"application/vnd.sss-cod":{source:"iana"},"application/vnd.sss-dtf":{source:"iana"},"application/vnd.sss-ntf":{source:"iana"},"application/vnd.stardivision.calc":{source:"apache",extensions:["sdc"]},"application/vnd.stardivision.draw":{source:"apache",extensions:["sda"]},"application/vnd.stardivision.impress":{source:"apache",extensions:["sdd"]},"application/vnd.stardivision.math":{source:"apache",extensions:["smf"]},"application/vnd.stardivision.writer":{source:"apache",extensions:["sdw","vor"]},"application/vnd.stardivision.writer-global":{source:"apache",extensions:["sgl"]},"application/vnd.stepmania.package":{source:"iana",extensions:["smzip"]},"application/vnd.stepmania.stepchart":{source:"iana",extensions:["sm"]},"application/vnd.street-stream":{source:"iana"},"application/vnd.sun.wadl+xml":{source:"iana",compressible:!0,extensions:["wadl"]},"application/vnd.sun.xml.calc":{source:"apache",extensions:["sxc"]},"application/vnd.sun.xml.calc.template":{source:"apache",extensions:["stc"]},"application/vnd.sun.xml.draw":{source:"apache",extensions:["sxd"]},"application/vnd.sun.xml.draw.template":{source:"apache",extensions:["std"]},"application/vnd.sun.xml.impress":{source:"apache",extensions:["sxi"]},"application/vnd.sun.xml.impress.template":{source:"apache",extensions:["sti"]},"application/vnd.sun.xml.math":{source:"apache",extensions:["sxm"]},"application/vnd.sun.xml.writer":{source:"apache",extensions:["sxw"]},"application/vnd.sun.xml.writer.global":{source:"apache",extensions:["sxg"]},"application/vnd.sun.xml.writer.template":{source:"apache",extensions:["stw"]},"application/vnd.sus-calendar":{source:"iana",extensions:["sus","susp"]},"application/vnd.svd":{source:"iana",extensions:["svd"]},"application/vnd.swiftview-ics":{source:"iana"},"application/vnd.sycle+xml":{source:"iana",compressible:!0},"application/vnd.syft+json":{source:"iana",compressible:!0},"application/vnd.symbian.install":{source:"apache",extensions:["sis","sisx"]},"application/vnd.syncml+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xsm"]},"application/vnd.syncml.dm+wbxml":{source:"iana",charset:"UTF-8",extensions:["bdm"]},"application/vnd.syncml.dm+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xdm"]},"application/vnd.syncml.dm.notification":{source:"iana"},"application/vnd.syncml.dmddf+wbxml":{source:"iana"},"application/vnd.syncml.dmddf+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{source:"iana"},"application/vnd.syncml.dmtnds+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.syncml.ds.notification":{source:"iana"},"application/vnd.tableschema+json":{source:"iana",compressible:!0},"application/vnd.tao.intent-module-archive":{source:"iana",extensions:["tao"]},"application/vnd.tcpdump.pcap":{source:"iana",extensions:["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{source:"iana",compressible:!0},"application/vnd.tmd.mediaflex.api+xml":{source:"iana",compressible:!0},"application/vnd.tml":{source:"iana"},"application/vnd.tmobile-livetv":{source:"iana",extensions:["tmo"]},"application/vnd.tri.onesource":{source:"iana"},"application/vnd.trid.tpt":{source:"iana",extensions:["tpt"]},"application/vnd.triscape.mxs":{source:"iana",extensions:["mxs"]},"application/vnd.trueapp":{source:"iana",extensions:["tra"]},"application/vnd.truedoc":{source:"iana"},"application/vnd.ubisoft.webplayer":{source:"iana"},"application/vnd.ufdl":{source:"iana",extensions:["ufd","ufdl"]},"application/vnd.uiq.theme":{source:"iana",extensions:["utz"]},"application/vnd.umajin":{source:"iana",extensions:["umj"]},"application/vnd.unity":{source:"iana",extensions:["unityweb"]},"application/vnd.uoml+xml":{source:"iana",compressible:!0,extensions:["uoml"]},"application/vnd.uplanet.alert":{source:"iana"},"application/vnd.uplanet.alert-wbxml":{source:"iana"},"application/vnd.uplanet.bearer-choice":{source:"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{source:"iana"},"application/vnd.uplanet.cacheop":{source:"iana"},"application/vnd.uplanet.cacheop-wbxml":{source:"iana"},"application/vnd.uplanet.channel":{source:"iana"},"application/vnd.uplanet.channel-wbxml":{source:"iana"},"application/vnd.uplanet.list":{source:"iana"},"application/vnd.uplanet.list-wbxml":{source:"iana"},"application/vnd.uplanet.listcmd":{source:"iana"},"application/vnd.uplanet.listcmd-wbxml":{source:"iana"},"application/vnd.uplanet.signal":{source:"iana"},"application/vnd.uri-map":{source:"iana"},"application/vnd.valve.source.material":{source:"iana"},"application/vnd.vcx":{source:"iana",extensions:["vcx"]},"application/vnd.vd-study":{source:"iana"},"application/vnd.vectorworks":{source:"iana"},"application/vnd.vel+json":{source:"iana",compressible:!0},"application/vnd.verimatrix.vcas":{source:"iana"},"application/vnd.veritone.aion+json":{source:"iana",compressible:!0},"application/vnd.veryant.thin":{source:"iana"},"application/vnd.ves.encrypted":{source:"iana"},"application/vnd.vidsoft.vidconference":{source:"iana"},"application/vnd.visio":{source:"iana",extensions:["vsd","vst","vss","vsw"]},"application/vnd.visionary":{source:"iana",extensions:["vis"]},"application/vnd.vividence.scriptfile":{source:"iana"},"application/vnd.vsf":{source:"iana",extensions:["vsf"]},"application/vnd.wap.sic":{source:"iana"},"application/vnd.wap.slc":{source:"iana"},"application/vnd.wap.wbxml":{source:"iana",charset:"UTF-8",extensions:["wbxml"]},"application/vnd.wap.wmlc":{source:"iana",extensions:["wmlc"]},"application/vnd.wap.wmlscriptc":{source:"iana",extensions:["wmlsc"]},"application/vnd.webturbo":{source:"iana",extensions:["wtb"]},"application/vnd.wfa.dpp":{source:"iana"},"application/vnd.wfa.p2p":{source:"iana"},"application/vnd.wfa.wsc":{source:"iana"},"application/vnd.windows.devicepairing":{source:"iana"},"application/vnd.wmc":{source:"iana"},"application/vnd.wmf.bootstrap":{source:"iana"},"application/vnd.wolfram.mathematica":{source:"iana"},"application/vnd.wolfram.mathematica.package":{source:"iana"},"application/vnd.wolfram.player":{source:"iana",extensions:["nbp"]},"application/vnd.wordperfect":{source:"iana",extensions:["wpd"]},"application/vnd.wqd":{source:"iana",extensions:["wqd"]},"application/vnd.wrq-hp3000-labelled":{source:"iana"},"application/vnd.wt.stf":{source:"iana",extensions:["stf"]},"application/vnd.wv.csp+wbxml":{source:"iana"},"application/vnd.wv.csp+xml":{source:"iana",compressible:!0},"application/vnd.wv.ssp+xml":{source:"iana",compressible:!0},"application/vnd.xacml+json":{source:"iana",compressible:!0},"application/vnd.xara":{source:"iana",extensions:["xar"]},"application/vnd.xfdl":{source:"iana",extensions:["xfdl"]},"application/vnd.xfdl.webform":{source:"iana"},"application/vnd.xmi+xml":{source:"iana",compressible:!0},"application/vnd.xmpie.cpkg":{source:"iana"},"application/vnd.xmpie.dpkg":{source:"iana"},"application/vnd.xmpie.plan":{source:"iana"},"application/vnd.xmpie.ppkg":{source:"iana"},"application/vnd.xmpie.xlim":{source:"iana"},"application/vnd.yamaha.hv-dic":{source:"iana",extensions:["hvd"]},"application/vnd.yamaha.hv-script":{source:"iana",extensions:["hvs"]},"application/vnd.yamaha.hv-voice":{source:"iana",extensions:["hvp"]},"application/vnd.yamaha.openscoreformat":{source:"iana",extensions:["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{source:"iana",compressible:!0,extensions:["osfpvg"]},"application/vnd.yamaha.remote-setup":{source:"iana"},"application/vnd.yamaha.smaf-audio":{source:"iana",extensions:["saf"]},"application/vnd.yamaha.smaf-phrase":{source:"iana",extensions:["spf"]},"application/vnd.yamaha.through-ngn":{source:"iana"},"application/vnd.yamaha.tunnel-udpencap":{source:"iana"},"application/vnd.yaoweme":{source:"iana"},"application/vnd.yellowriver-custom-menu":{source:"iana",extensions:["cmp"]},"application/vnd.youtube.yt":{source:"iana"},"application/vnd.zul":{source:"iana",extensions:["zir","zirz"]},"application/vnd.zzazz.deck+xml":{source:"iana",compressible:!0,extensions:["zaz"]},"application/voicexml+xml":{source:"iana",compressible:!0,extensions:["vxml"]},"application/voucher-cms+json":{source:"iana",compressible:!0},"application/vq-rtcpxr":{source:"iana"},"application/wasm":{source:"iana",compressible:!0,extensions:["wasm"]},"application/watcherinfo+xml":{source:"iana",compressible:!0,extensions:["wif"]},"application/webpush-options+json":{source:"iana",compressible:!0},"application/whoispp-query":{source:"iana"},"application/whoispp-response":{source:"iana"},"application/widget":{source:"iana",extensions:["wgt"]},"application/winhlp":{source:"apache",extensions:["hlp"]},"application/wita":{source:"iana"},"application/wordperfect5.1":{source:"iana"},"application/wsdl+xml":{source:"iana",compressible:!0,extensions:["wsdl"]},"application/wspolicy+xml":{source:"iana",compressible:!0,extensions:["wspolicy"]},"application/x-7z-compressed":{source:"apache",compressible:!1,extensions:["7z"]},"application/x-abiword":{source:"apache",extensions:["abw"]},"application/x-ace-compressed":{source:"apache",extensions:["ace"]},"application/x-amf":{source:"apache"},"application/x-apple-diskimage":{source:"apache",extensions:["dmg"]},"application/x-arj":{compressible:!1,extensions:["arj"]},"application/x-authorware-bin":{source:"apache",extensions:["aab","x32","u32","vox"]},"application/x-authorware-map":{source:"apache",extensions:["aam"]},"application/x-authorware-seg":{source:"apache",extensions:["aas"]},"application/x-bcpio":{source:"apache",extensions:["bcpio"]},"application/x-bdoc":{compressible:!1,extensions:["bdoc"]},"application/x-bittorrent":{source:"apache",extensions:["torrent"]},"application/x-blorb":{source:"apache",extensions:["blb","blorb"]},"application/x-bzip":{source:"apache",compressible:!1,extensions:["bz"]},"application/x-bzip2":{source:"apache",compressible:!1,extensions:["bz2","boz"]},"application/x-cbr":{source:"apache",extensions:["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{source:"apache",extensions:["vcd"]},"application/x-cfs-compressed":{source:"apache",extensions:["cfs"]},"application/x-chat":{source:"apache",extensions:["chat"]},"application/x-chess-pgn":{source:"apache",extensions:["pgn"]},"application/x-chrome-extension":{extensions:["crx"]},"application/x-cocoa":{source:"nginx",extensions:["cco"]},"application/x-compress":{source:"apache"},"application/x-conference":{source:"apache",extensions:["nsc"]},"application/x-cpio":{source:"apache",extensions:["cpio"]},"application/x-csh":{source:"apache",extensions:["csh"]},"application/x-deb":{compressible:!1},"application/x-debian-package":{source:"apache",extensions:["deb","udeb"]},"application/x-dgc-compressed":{source:"apache",extensions:["dgc"]},"application/x-director":{source:"apache",extensions:["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{source:"apache",extensions:["wad"]},"application/x-dtbncx+xml":{source:"apache",compressible:!0,extensions:["ncx"]},"application/x-dtbook+xml":{source:"apache",compressible:!0,extensions:["dtb"]},"application/x-dtbresource+xml":{source:"apache",compressible:!0,extensions:["res"]},"application/x-dvi":{source:"apache",compressible:!1,extensions:["dvi"]},"application/x-envoy":{source:"apache",extensions:["evy"]},"application/x-eva":{source:"apache",extensions:["eva"]},"application/x-font-bdf":{source:"apache",extensions:["bdf"]},"application/x-font-dos":{source:"apache"},"application/x-font-framemaker":{source:"apache"},"application/x-font-ghostscript":{source:"apache",extensions:["gsf"]},"application/x-font-libgrx":{source:"apache"},"application/x-font-linux-psf":{source:"apache",extensions:["psf"]},"application/x-font-pcf":{source:"apache",extensions:["pcf"]},"application/x-font-snf":{source:"apache",extensions:["snf"]},"application/x-font-speedo":{source:"apache"},"application/x-font-sunos-news":{source:"apache"},"application/x-font-type1":{source:"apache",extensions:["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{source:"apache"},"application/x-freearc":{source:"apache",extensions:["arc"]},"application/x-futuresplash":{source:"apache",extensions:["spl"]},"application/x-gca-compressed":{source:"apache",extensions:["gca"]},"application/x-glulx":{source:"apache",extensions:["ulx"]},"application/x-gnumeric":{source:"apache",extensions:["gnumeric"]},"application/x-gramps-xml":{source:"apache",extensions:["gramps"]},"application/x-gtar":{source:"apache",extensions:["gtar"]},"application/x-gzip":{source:"apache"},"application/x-hdf":{source:"apache",extensions:["hdf"]},"application/x-httpd-php":{compressible:!0,extensions:["php"]},"application/x-install-instructions":{source:"apache",extensions:["install"]},"application/x-iso9660-image":{source:"apache",extensions:["iso"]},"application/x-iwork-keynote-sffkey":{extensions:["key"]},"application/x-iwork-numbers-sffnumbers":{extensions:["numbers"]},"application/x-iwork-pages-sffpages":{extensions:["pages"]},"application/x-java-archive-diff":{source:"nginx",extensions:["jardiff"]},"application/x-java-jnlp-file":{source:"apache",compressible:!1,extensions:["jnlp"]},"application/x-javascript":{compressible:!0},"application/x-keepass2":{extensions:["kdbx"]},"application/x-latex":{source:"apache",compressible:!1,extensions:["latex"]},"application/x-lua-bytecode":{extensions:["luac"]},"application/x-lzh-compressed":{source:"apache",extensions:["lzh","lha"]},"application/x-makeself":{source:"nginx",extensions:["run"]},"application/x-mie":{source:"apache",extensions:["mie"]},"application/x-mobipocket-ebook":{source:"apache",extensions:["prc","mobi"]},"application/x-mpegurl":{compressible:!1},"application/x-ms-application":{source:"apache",extensions:["application"]},"application/x-ms-shortcut":{source:"apache",extensions:["lnk"]},"application/x-ms-wmd":{source:"apache",extensions:["wmd"]},"application/x-ms-wmz":{source:"apache",extensions:["wmz"]},"application/x-ms-xbap":{source:"apache",extensions:["xbap"]},"application/x-msaccess":{source:"apache",extensions:["mdb"]},"application/x-msbinder":{source:"apache",extensions:["obd"]},"application/x-mscardfile":{source:"apache",extensions:["crd"]},"application/x-msclip":{source:"apache",extensions:["clp"]},"application/x-msdos-program":{extensions:["exe"]},"application/x-msdownload":{source:"apache",extensions:["exe","dll","com","bat","msi"]},"application/x-msmediaview":{source:"apache",extensions:["mvb","m13","m14"]},"application/x-msmetafile":{source:"apache",extensions:["wmf","wmz","emf","emz"]},"application/x-msmoney":{source:"apache",extensions:["mny"]},"application/x-mspublisher":{source:"apache",extensions:["pub"]},"application/x-msschedule":{source:"apache",extensions:["scd"]},"application/x-msterminal":{source:"apache",extensions:["trm"]},"application/x-mswrite":{source:"apache",extensions:["wri"]},"application/x-netcdf":{source:"apache",extensions:["nc","cdf"]},"application/x-ns-proxy-autoconfig":{compressible:!0,extensions:["pac"]},"application/x-nzb":{source:"apache",extensions:["nzb"]},"application/x-perl":{source:"nginx",extensions:["pl","pm"]},"application/x-pilot":{source:"nginx",extensions:["prc","pdb"]},"application/x-pkcs12":{source:"apache",compressible:!1,extensions:["p12","pfx"]},"application/x-pkcs7-certificates":{source:"apache",extensions:["p7b","spc"]},"application/x-pkcs7-certreqresp":{source:"apache",extensions:["p7r"]},"application/x-pki-message":{source:"iana"},"application/x-rar-compressed":{source:"apache",compressible:!1,extensions:["rar"]},"application/x-redhat-package-manager":{source:"nginx",extensions:["rpm"]},"application/x-research-info-systems":{source:"apache",extensions:["ris"]},"application/x-sea":{source:"nginx",extensions:["sea"]},"application/x-sh":{source:"apache",compressible:!0,extensions:["sh"]},"application/x-shar":{source:"apache",extensions:["shar"]},"application/x-shockwave-flash":{source:"apache",compressible:!1,extensions:["swf"]},"application/x-silverlight-app":{source:"apache",extensions:["xap"]},"application/x-sql":{source:"apache",extensions:["sql"]},"application/x-stuffit":{source:"apache",compressible:!1,extensions:["sit"]},"application/x-stuffitx":{source:"apache",extensions:["sitx"]},"application/x-subrip":{source:"apache",extensions:["srt"]},"application/x-sv4cpio":{source:"apache",extensions:["sv4cpio"]},"application/x-sv4crc":{source:"apache",extensions:["sv4crc"]},"application/x-t3vm-image":{source:"apache",extensions:["t3"]},"application/x-tads":{source:"apache",extensions:["gam"]},"application/x-tar":{source:"apache",compressible:!0,extensions:["tar"]},"application/x-tcl":{source:"apache",extensions:["tcl","tk"]},"application/x-tex":{source:"apache",extensions:["tex"]},"application/x-tex-tfm":{source:"apache",extensions:["tfm"]},"application/x-texinfo":{source:"apache",extensions:["texinfo","texi"]},"application/x-tgif":{source:"apache",extensions:["obj"]},"application/x-ustar":{source:"apache",extensions:["ustar"]},"application/x-virtualbox-hdd":{compressible:!0,extensions:["hdd"]},"application/x-virtualbox-ova":{compressible:!0,extensions:["ova"]},"application/x-virtualbox-ovf":{compressible:!0,extensions:["ovf"]},"application/x-virtualbox-vbox":{compressible:!0,extensions:["vbox"]},"application/x-virtualbox-vbox-extpack":{compressible:!1,extensions:["vbox-extpack"]},"application/x-virtualbox-vdi":{compressible:!0,extensions:["vdi"]},"application/x-virtualbox-vhd":{compressible:!0,extensions:["vhd"]},"application/x-virtualbox-vmdk":{compressible:!0,extensions:["vmdk"]},"application/x-wais-source":{source:"apache",extensions:["src"]},"application/x-web-app-manifest+json":{compressible:!0,extensions:["webapp"]},"application/x-www-form-urlencoded":{source:"iana",compressible:!0},"application/x-x509-ca-cert":{source:"iana",extensions:["der","crt","pem"]},"application/x-x509-ca-ra-cert":{source:"iana"},"application/x-x509-next-ca-cert":{source:"iana"},"application/x-xfig":{source:"apache",extensions:["fig"]},"application/x-xliff+xml":{source:"apache",compressible:!0,extensions:["xlf"]},"application/x-xpinstall":{source:"apache",compressible:!1,extensions:["xpi"]},"application/x-xz":{source:"apache",extensions:["xz"]},"application/x-zmachine":{source:"apache",extensions:["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{source:"iana"},"application/xacml+xml":{source:"iana",compressible:!0},"application/xaml+xml":{source:"apache",compressible:!0,extensions:["xaml"]},"application/xcap-att+xml":{source:"iana",compressible:!0,extensions:["xav"]},"application/xcap-caps+xml":{source:"iana",compressible:!0,extensions:["xca"]},"application/xcap-diff+xml":{source:"iana",compressible:!0,extensions:["xdf"]},"application/xcap-el+xml":{source:"iana",compressible:!0,extensions:["xel"]},"application/xcap-error+xml":{source:"iana",compressible:!0},"application/xcap-ns+xml":{source:"iana",compressible:!0,extensions:["xns"]},"application/xcon-conference-info+xml":{source:"iana",compressible:!0},"application/xcon-conference-info-diff+xml":{source:"iana",compressible:!0},"application/xenc+xml":{source:"iana",compressible:!0,extensions:["xenc"]},"application/xhtml+xml":{source:"iana",compressible:!0,extensions:["xhtml","xht"]},"application/xhtml-voice+xml":{source:"apache",compressible:!0},"application/xliff+xml":{source:"iana",compressible:!0,extensions:["xlf"]},"application/xml":{source:"iana",compressible:!0,extensions:["xml","xsl","xsd","rng"]},"application/xml-dtd":{source:"iana",compressible:!0,extensions:["dtd"]},"application/xml-external-parsed-entity":{source:"iana"},"application/xml-patch+xml":{source:"iana",compressible:!0},"application/xmpp+xml":{source:"iana",compressible:!0},"application/xop+xml":{source:"iana",compressible:!0,extensions:["xop"]},"application/xproc+xml":{source:"apache",compressible:!0,extensions:["xpl"]},"application/xslt+xml":{source:"iana",compressible:!0,extensions:["xsl","xslt"]},"application/xspf+xml":{source:"apache",compressible:!0,extensions:["xspf"]},"application/xv+xml":{source:"iana",compressible:!0,extensions:["mxml","xhvml","xvml","xvm"]},"application/yang":{source:"iana",extensions:["yang"]},"application/yang-data+json":{source:"iana",compressible:!0},"application/yang-data+xml":{source:"iana",compressible:!0},"application/yang-patch+json":{source:"iana",compressible:!0},"application/yang-patch+xml":{source:"iana",compressible:!0},"application/yin+xml":{source:"iana",compressible:!0,extensions:["yin"]},"application/zip":{source:"iana",compressible:!1,extensions:["zip"]},"application/zlib":{source:"iana"},"application/zstd":{source:"iana"},"audio/1d-interleaved-parityfec":{source:"iana"},"audio/32kadpcm":{source:"iana"},"audio/3gpp":{source:"iana",compressible:!1,extensions:["3gpp"]},"audio/3gpp2":{source:"iana"},"audio/aac":{source:"iana"},"audio/ac3":{source:"iana"},"audio/adpcm":{source:"apache",extensions:["adp"]},"audio/amr":{source:"iana",extensions:["amr"]},"audio/amr-wb":{source:"iana"},"audio/amr-wb+":{source:"iana"},"audio/aptx":{source:"iana"},"audio/asc":{source:"iana"},"audio/atrac-advanced-lossless":{source:"iana"},"audio/atrac-x":{source:"iana"},"audio/atrac3":{source:"iana"},"audio/basic":{source:"iana",compressible:!1,extensions:["au","snd"]},"audio/bv16":{source:"iana"},"audio/bv32":{source:"iana"},"audio/clearmode":{source:"iana"},"audio/cn":{source:"iana"},"audio/dat12":{source:"iana"},"audio/dls":{source:"iana"},"audio/dsr-es201108":{source:"iana"},"audio/dsr-es202050":{source:"iana"},"audio/dsr-es202211":{source:"iana"},"audio/dsr-es202212":{source:"iana"},"audio/dv":{source:"iana"},"audio/dvi4":{source:"iana"},"audio/eac3":{source:"iana"},"audio/encaprtp":{source:"iana"},"audio/evrc":{source:"iana"},"audio/evrc-qcp":{source:"iana"},"audio/evrc0":{source:"iana"},"audio/evrc1":{source:"iana"},"audio/evrcb":{source:"iana"},"audio/evrcb0":{source:"iana"},"audio/evrcb1":{source:"iana"},"audio/evrcnw":{source:"iana"},"audio/evrcnw0":{source:"iana"},"audio/evrcnw1":{source:"iana"},"audio/evrcwb":{source:"iana"},"audio/evrcwb0":{source:"iana"},"audio/evrcwb1":{source:"iana"},"audio/evs":{source:"iana"},"audio/flexfec":{source:"iana"},"audio/fwdred":{source:"iana"},"audio/g711-0":{source:"iana"},"audio/g719":{source:"iana"},"audio/g722":{source:"iana"},"audio/g7221":{source:"iana"},"audio/g723":{source:"iana"},"audio/g726-16":{source:"iana"},"audio/g726-24":{source:"iana"},"audio/g726-32":{source:"iana"},"audio/g726-40":{source:"iana"},"audio/g728":{source:"iana"},"audio/g729":{source:"iana"},"audio/g7291":{source:"iana"},"audio/g729d":{source:"iana"},"audio/g729e":{source:"iana"},"audio/gsm":{source:"iana"},"audio/gsm-efr":{source:"iana"},"audio/gsm-hr-08":{source:"iana"},"audio/ilbc":{source:"iana"},"audio/ip-mr_v2.5":{source:"iana"},"audio/isac":{source:"apache"},"audio/l16":{source:"iana"},"audio/l20":{source:"iana"},"audio/l24":{source:"iana",compressible:!1},"audio/l8":{source:"iana"},"audio/lpc":{source:"iana"},"audio/melp":{source:"iana"},"audio/melp1200":{source:"iana"},"audio/melp2400":{source:"iana"},"audio/melp600":{source:"iana"},"audio/mhas":{source:"iana"},"audio/midi":{source:"apache",extensions:["mid","midi","kar","rmi"]},"audio/mobile-xmf":{source:"iana",extensions:["mxmf"]},"audio/mp3":{compressible:!1,extensions:["mp3"]},"audio/mp4":{source:"iana",compressible:!1,extensions:["m4a","mp4a"]},"audio/mp4a-latm":{source:"iana"},"audio/mpa":{source:"iana"},"audio/mpa-robust":{source:"iana"},"audio/mpeg":{source:"iana",compressible:!1,extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{source:"iana"},"audio/musepack":{source:"apache"},"audio/ogg":{source:"iana",compressible:!1,extensions:["oga","ogg","spx","opus"]},"audio/opus":{source:"iana"},"audio/parityfec":{source:"iana"},"audio/pcma":{source:"iana"},"audio/pcma-wb":{source:"iana"},"audio/pcmu":{source:"iana"},"audio/pcmu-wb":{source:"iana"},"audio/prs.sid":{source:"iana"},"audio/qcelp":{source:"iana"},"audio/raptorfec":{source:"iana"},"audio/red":{source:"iana"},"audio/rtp-enc-aescm128":{source:"iana"},"audio/rtp-midi":{source:"iana"},"audio/rtploopback":{source:"iana"},"audio/rtx":{source:"iana"},"audio/s3m":{source:"apache",extensions:["s3m"]},"audio/scip":{source:"iana"},"audio/silk":{source:"apache",extensions:["sil"]},"audio/smv":{source:"iana"},"audio/smv-qcp":{source:"iana"},"audio/smv0":{source:"iana"},"audio/sofa":{source:"iana"},"audio/sp-midi":{source:"iana"},"audio/speex":{source:"iana"},"audio/t140c":{source:"iana"},"audio/t38":{source:"iana"},"audio/telephone-event":{source:"iana"},"audio/tetra_acelp":{source:"iana"},"audio/tetra_acelp_bb":{source:"iana"},"audio/tone":{source:"iana"},"audio/tsvcis":{source:"iana"},"audio/uemclip":{source:"iana"},"audio/ulpfec":{source:"iana"},"audio/usac":{source:"iana"},"audio/vdvi":{source:"iana"},"audio/vmr-wb":{source:"iana"},"audio/vnd.3gpp.iufp":{source:"iana"},"audio/vnd.4sb":{source:"iana"},"audio/vnd.audiokoz":{source:"iana"},"audio/vnd.celp":{source:"iana"},"audio/vnd.cisco.nse":{source:"iana"},"audio/vnd.cmles.radio-events":{source:"iana"},"audio/vnd.cns.anp1":{source:"iana"},"audio/vnd.cns.inf1":{source:"iana"},"audio/vnd.dece.audio":{source:"iana",extensions:["uva","uvva"]},"audio/vnd.digital-winds":{source:"iana",extensions:["eol"]},"audio/vnd.dlna.adts":{source:"iana"},"audio/vnd.dolby.heaac.1":{source:"iana"},"audio/vnd.dolby.heaac.2":{source:"iana"},"audio/vnd.dolby.mlp":{source:"iana"},"audio/vnd.dolby.mps":{source:"iana"},"audio/vnd.dolby.pl2":{source:"iana"},"audio/vnd.dolby.pl2x":{source:"iana"},"audio/vnd.dolby.pl2z":{source:"iana"},"audio/vnd.dolby.pulse.1":{source:"iana"},"audio/vnd.dra":{source:"iana",extensions:["dra"]},"audio/vnd.dts":{source:"iana",extensions:["dts"]},"audio/vnd.dts.hd":{source:"iana",extensions:["dtshd"]},"audio/vnd.dts.uhd":{source:"iana"},"audio/vnd.dvb.file":{source:"iana"},"audio/vnd.everad.plj":{source:"iana"},"audio/vnd.hns.audio":{source:"iana"},"audio/vnd.lucent.voice":{source:"iana",extensions:["lvp"]},"audio/vnd.ms-playready.media.pya":{source:"iana",extensions:["pya"]},"audio/vnd.nokia.mobile-xmf":{source:"iana"},"audio/vnd.nortel.vbk":{source:"iana"},"audio/vnd.nuera.ecelp4800":{source:"iana",extensions:["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{source:"iana",extensions:["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{source:"iana",extensions:["ecelp9600"]},"audio/vnd.octel.sbc":{source:"iana"},"audio/vnd.presonus.multitrack":{source:"iana"},"audio/vnd.qcelp":{source:"iana"},"audio/vnd.rhetorex.32kadpcm":{source:"iana"},"audio/vnd.rip":{source:"iana",extensions:["rip"]},"audio/vnd.rn-realaudio":{compressible:!1},"audio/vnd.sealedmedia.softseal.mpeg":{source:"iana"},"audio/vnd.vmx.cvsd":{source:"iana"},"audio/vnd.wave":{compressible:!1},"audio/vorbis":{source:"iana",compressible:!1},"audio/vorbis-config":{source:"iana"},"audio/wav":{compressible:!1,extensions:["wav"]},"audio/wave":{compressible:!1,extensions:["wav"]},"audio/webm":{source:"apache",compressible:!1,extensions:["weba"]},"audio/x-aac":{source:"apache",compressible:!1,extensions:["aac"]},"audio/x-aiff":{source:"apache",extensions:["aif","aiff","aifc"]},"audio/x-caf":{source:"apache",compressible:!1,extensions:["caf"]},"audio/x-flac":{source:"apache",extensions:["flac"]},"audio/x-m4a":{source:"nginx",extensions:["m4a"]},"audio/x-matroska":{source:"apache",extensions:["mka"]},"audio/x-mpegurl":{source:"apache",extensions:["m3u"]},"audio/x-ms-wax":{source:"apache",extensions:["wax"]},"audio/x-ms-wma":{source:"apache",extensions:["wma"]},"audio/x-pn-realaudio":{source:"apache",extensions:["ram","ra"]},"audio/x-pn-realaudio-plugin":{source:"apache",extensions:["rmp"]},"audio/x-realaudio":{source:"nginx",extensions:["ra"]},"audio/x-tta":{source:"apache"},"audio/x-wav":{source:"apache",extensions:["wav"]},"audio/xm":{source:"apache",extensions:["xm"]},"chemical/x-cdx":{source:"apache",extensions:["cdx"]},"chemical/x-cif":{source:"apache",extensions:["cif"]},"chemical/x-cmdf":{source:"apache",extensions:["cmdf"]},"chemical/x-cml":{source:"apache",extensions:["cml"]},"chemical/x-csml":{source:"apache",extensions:["csml"]},"chemical/x-pdb":{source:"apache"},"chemical/x-xyz":{source:"apache",extensions:["xyz"]},"font/collection":{source:"iana",extensions:["ttc"]},"font/otf":{source:"iana",compressible:!0,extensions:["otf"]},"font/sfnt":{source:"iana"},"font/ttf":{source:"iana",compressible:!0,extensions:["ttf"]},"font/woff":{source:"iana",extensions:["woff"]},"font/woff2":{source:"iana",extensions:["woff2"]},"image/aces":{source:"iana",extensions:["exr"]},"image/apng":{compressible:!1,extensions:["apng"]},"image/avci":{source:"iana",extensions:["avci"]},"image/avcs":{source:"iana",extensions:["avcs"]},"image/avif":{source:"iana",compressible:!1,extensions:["avif"]},"image/bmp":{source:"iana",compressible:!0,extensions:["bmp"]},"image/cgm":{source:"iana",extensions:["cgm"]},"image/dicom-rle":{source:"iana",extensions:["drle"]},"image/emf":{source:"iana",extensions:["emf"]},"image/fits":{source:"iana",extensions:["fits"]},"image/g3fax":{source:"iana",extensions:["g3"]},"image/gif":{source:"iana",compressible:!1,extensions:["gif"]},"image/heic":{source:"iana",extensions:["heic"]},"image/heic-sequence":{source:"iana",extensions:["heics"]},"image/heif":{source:"iana",extensions:["heif"]},"image/heif-sequence":{source:"iana",extensions:["heifs"]},"image/hej2k":{source:"iana",extensions:["hej2"]},"image/hsj2":{source:"iana",extensions:["hsj2"]},"image/ief":{source:"iana",extensions:["ief"]},"image/jls":{source:"iana",extensions:["jls"]},"image/jp2":{source:"iana",compressible:!1,extensions:["jp2","jpg2"]},"image/jpeg":{source:"iana",compressible:!1,extensions:["jpeg","jpg","jpe"]},"image/jph":{source:"iana",extensions:["jph"]},"image/jphc":{source:"iana",extensions:["jhc"]},"image/jpm":{source:"iana",compressible:!1,extensions:["jpm"]},"image/jpx":{source:"iana",compressible:!1,extensions:["jpx","jpf"]},"image/jxr":{source:"iana",extensions:["jxr"]},"image/jxra":{source:"iana",extensions:["jxra"]},"image/jxrs":{source:"iana",extensions:["jxrs"]},"image/jxs":{source:"iana",extensions:["jxs"]},"image/jxsc":{source:"iana",extensions:["jxsc"]},"image/jxsi":{source:"iana",extensions:["jxsi"]},"image/jxss":{source:"iana",extensions:["jxss"]},"image/ktx":{source:"iana",extensions:["ktx"]},"image/ktx2":{source:"iana",extensions:["ktx2"]},"image/naplps":{source:"iana"},"image/pjpeg":{compressible:!1},"image/png":{source:"iana",compressible:!1,extensions:["png"]},"image/prs.btif":{source:"iana",extensions:["btif"]},"image/prs.pti":{source:"iana",extensions:["pti"]},"image/pwg-raster":{source:"iana"},"image/sgi":{source:"apache",extensions:["sgi"]},"image/svg+xml":{source:"iana",compressible:!0,extensions:["svg","svgz"]},"image/t38":{source:"iana",extensions:["t38"]},"image/tiff":{source:"iana",compressible:!1,extensions:["tif","tiff"]},"image/tiff-fx":{source:"iana",extensions:["tfx"]},"image/vnd.adobe.photoshop":{source:"iana",compressible:!0,extensions:["psd"]},"image/vnd.airzip.accelerator.azv":{source:"iana",extensions:["azv"]},"image/vnd.cns.inf2":{source:"iana"},"image/vnd.dece.graphic":{source:"iana",extensions:["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{source:"iana",extensions:["djvu","djv"]},"image/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"image/vnd.dwg":{source:"iana",extensions:["dwg"]},"image/vnd.dxf":{source:"iana",extensions:["dxf"]},"image/vnd.fastbidsheet":{source:"iana",extensions:["fbs"]},"image/vnd.fpx":{source:"iana",extensions:["fpx"]},"image/vnd.fst":{source:"iana",extensions:["fst"]},"image/vnd.fujixerox.edmics-mmr":{source:"iana",extensions:["mmr"]},"image/vnd.fujixerox.edmics-rlc":{source:"iana",extensions:["rlc"]},"image/vnd.globalgraphics.pgb":{source:"iana"},"image/vnd.microsoft.icon":{source:"iana",compressible:!0,extensions:["ico"]},"image/vnd.mix":{source:"iana"},"image/vnd.mozilla.apng":{source:"iana"},"image/vnd.ms-dds":{compressible:!0,extensions:["dds"]},"image/vnd.ms-modi":{source:"iana",extensions:["mdi"]},"image/vnd.ms-photo":{source:"apache",extensions:["wdp"]},"image/vnd.net-fpx":{source:"iana",extensions:["npx"]},"image/vnd.pco.b16":{source:"iana",extensions:["b16"]},"image/vnd.radiance":{source:"iana"},"image/vnd.sealed.png":{source:"iana"},"image/vnd.sealedmedia.softseal.gif":{source:"iana"},"image/vnd.sealedmedia.softseal.jpg":{source:"iana"},"image/vnd.svf":{source:"iana"},"image/vnd.tencent.tap":{source:"iana",extensions:["tap"]},"image/vnd.valve.source.texture":{source:"iana",extensions:["vtf"]},"image/vnd.wap.wbmp":{source:"iana",extensions:["wbmp"]},"image/vnd.xiff":{source:"iana",extensions:["xif"]},"image/vnd.zbrush.pcx":{source:"iana",extensions:["pcx"]},"image/webp":{source:"apache",extensions:["webp"]},"image/wmf":{source:"iana",extensions:["wmf"]},"image/x-3ds":{source:"apache",extensions:["3ds"]},"image/x-cmu-raster":{source:"apache",extensions:["ras"]},"image/x-cmx":{source:"apache",extensions:["cmx"]},"image/x-freehand":{source:"apache",extensions:["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{source:"apache",compressible:!0,extensions:["ico"]},"image/x-jng":{source:"nginx",extensions:["jng"]},"image/x-mrsid-image":{source:"apache",extensions:["sid"]},"image/x-ms-bmp":{source:"nginx",compressible:!0,extensions:["bmp"]},"image/x-pcx":{source:"apache",extensions:["pcx"]},"image/x-pict":{source:"apache",extensions:["pic","pct"]},"image/x-portable-anymap":{source:"apache",extensions:["pnm"]},"image/x-portable-bitmap":{source:"apache",extensions:["pbm"]},"image/x-portable-graymap":{source:"apache",extensions:["pgm"]},"image/x-portable-pixmap":{source:"apache",extensions:["ppm"]},"image/x-rgb":{source:"apache",extensions:["rgb"]},"image/x-tga":{source:"apache",extensions:["tga"]},"image/x-xbitmap":{source:"apache",extensions:["xbm"]},"image/x-xcf":{compressible:!1},"image/x-xpixmap":{source:"apache",extensions:["xpm"]},"image/x-xwindowdump":{source:"apache",extensions:["xwd"]},"message/cpim":{source:"iana"},"message/delivery-status":{source:"iana"},"message/disposition-notification":{source:"iana",extensions:["disposition-notification"]},"message/external-body":{source:"iana"},"message/feedback-report":{source:"iana"},"message/global":{source:"iana",extensions:["u8msg"]},"message/global-delivery-status":{source:"iana",extensions:["u8dsn"]},"message/global-disposition-notification":{source:"iana",extensions:["u8mdn"]},"message/global-headers":{source:"iana",extensions:["u8hdr"]},"message/http":{source:"iana",compressible:!1},"message/imdn+xml":{source:"iana",compressible:!0},"message/news":{source:"iana"},"message/partial":{source:"iana",compressible:!1},"message/rfc822":{source:"iana",compressible:!0,extensions:["eml","mime"]},"message/s-http":{source:"iana"},"message/sip":{source:"iana"},"message/sipfrag":{source:"iana"},"message/tracking-status":{source:"iana"},"message/vnd.si.simp":{source:"iana"},"message/vnd.wfa.wsc":{source:"iana",extensions:["wsc"]},"model/3mf":{source:"iana",extensions:["3mf"]},"model/e57":{source:"iana"},"model/gltf+json":{source:"iana",compressible:!0,extensions:["gltf"]},"model/gltf-binary":{source:"iana",compressible:!0,extensions:["glb"]},"model/iges":{source:"iana",compressible:!1,extensions:["igs","iges"]},"model/mesh":{source:"iana",compressible:!1,extensions:["msh","mesh","silo"]},"model/mtl":{source:"iana",extensions:["mtl"]},"model/obj":{source:"iana",extensions:["obj"]},"model/step":{source:"iana"},"model/step+xml":{source:"iana",compressible:!0,extensions:["stpx"]},"model/step+zip":{source:"iana",compressible:!1,extensions:["stpz"]},"model/step-xml+zip":{source:"iana",compressible:!1,extensions:["stpxz"]},"model/stl":{source:"iana",extensions:["stl"]},"model/vnd.collada+xml":{source:"iana",compressible:!0,extensions:["dae"]},"model/vnd.dwf":{source:"iana",extensions:["dwf"]},"model/vnd.flatland.3dml":{source:"iana"},"model/vnd.gdl":{source:"iana",extensions:["gdl"]},"model/vnd.gs-gdl":{source:"apache"},"model/vnd.gs.gdl":{source:"iana"},"model/vnd.gtw":{source:"iana",extensions:["gtw"]},"model/vnd.moml+xml":{source:"iana",compressible:!0},"model/vnd.mts":{source:"iana",extensions:["mts"]},"model/vnd.opengex":{source:"iana",extensions:["ogex"]},"model/vnd.parasolid.transmit.binary":{source:"iana",extensions:["x_b"]},"model/vnd.parasolid.transmit.text":{source:"iana",extensions:["x_t"]},"model/vnd.pytha.pyox":{source:"iana"},"model/vnd.rosette.annotated-data-model":{source:"iana"},"model/vnd.sap.vds":{source:"iana",extensions:["vds"]},"model/vnd.usdz+zip":{source:"iana",compressible:!1,extensions:["usdz"]},"model/vnd.valve.source.compiled-map":{source:"iana",extensions:["bsp"]},"model/vnd.vtu":{source:"iana",extensions:["vtu"]},"model/vrml":{source:"iana",compressible:!1,extensions:["wrl","vrml"]},"model/x3d+binary":{source:"apache",compressible:!1,extensions:["x3db","x3dbz"]},"model/x3d+fastinfoset":{source:"iana",extensions:["x3db"]},"model/x3d+vrml":{source:"apache",compressible:!1,extensions:["x3dv","x3dvz"]},"model/x3d+xml":{source:"iana",compressible:!0,extensions:["x3d","x3dz"]},"model/x3d-vrml":{source:"iana",extensions:["x3dv"]},"multipart/alternative":{source:"iana",compressible:!1},"multipart/appledouble":{source:"iana"},"multipart/byteranges":{source:"iana"},"multipart/digest":{source:"iana"},"multipart/encrypted":{source:"iana",compressible:!1},"multipart/form-data":{source:"iana",compressible:!1},"multipart/header-set":{source:"iana"},"multipart/mixed":{source:"iana"},"multipart/multilingual":{source:"iana"},"multipart/parallel":{source:"iana"},"multipart/related":{source:"iana",compressible:!1},"multipart/report":{source:"iana"},"multipart/signed":{source:"iana",compressible:!1},"multipart/vnd.bint.med-plus":{source:"iana"},"multipart/voice-message":{source:"iana"},"multipart/x-mixed-replace":{source:"iana"},"text/1d-interleaved-parityfec":{source:"iana"},"text/cache-manifest":{source:"iana",compressible:!0,extensions:["appcache","manifest"]},"text/calendar":{source:"iana",extensions:["ics","ifb"]},"text/calender":{compressible:!0},"text/cmd":{compressible:!0},"text/coffeescript":{extensions:["coffee","litcoffee"]},"text/cql":{source:"iana"},"text/cql-expression":{source:"iana"},"text/cql-identifier":{source:"iana"},"text/css":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["css"]},"text/csv":{source:"iana",compressible:!0,extensions:["csv"]},"text/csv-schema":{source:"iana"},"text/directory":{source:"iana"},"text/dns":{source:"iana"},"text/ecmascript":{source:"iana"},"text/encaprtp":{source:"iana"},"text/enriched":{source:"iana"},"text/fhirpath":{source:"iana"},"text/flexfec":{source:"iana"},"text/fwdred":{source:"iana"},"text/gff3":{source:"iana"},"text/grammar-ref-list":{source:"iana"},"text/html":{source:"iana",compressible:!0,extensions:["html","htm","shtml"]},"text/jade":{extensions:["jade"]},"text/javascript":{source:"iana",compressible:!0},"text/jcr-cnd":{source:"iana"},"text/jsx":{compressible:!0,extensions:["jsx"]},"text/less":{compressible:!0,extensions:["less"]},"text/markdown":{source:"iana",compressible:!0,extensions:["markdown","md"]},"text/mathml":{source:"nginx",extensions:["mml"]},"text/mdx":{compressible:!0,extensions:["mdx"]},"text/mizar":{source:"iana"},"text/n3":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["n3"]},"text/parameters":{source:"iana",charset:"UTF-8"},"text/parityfec":{source:"iana"},"text/plain":{source:"iana",compressible:!0,extensions:["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{source:"iana",charset:"UTF-8"},"text/prs.fallenstein.rst":{source:"iana"},"text/prs.lines.tag":{source:"iana",extensions:["dsc"]},"text/prs.prop.logic":{source:"iana"},"text/raptorfec":{source:"iana"},"text/red":{source:"iana"},"text/rfc822-headers":{source:"iana"},"text/richtext":{source:"iana",compressible:!0,extensions:["rtx"]},"text/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"text/rtp-enc-aescm128":{source:"iana"},"text/rtploopback":{source:"iana"},"text/rtx":{source:"iana"},"text/sgml":{source:"iana",extensions:["sgml","sgm"]},"text/shaclc":{source:"iana"},"text/shex":{source:"iana",extensions:["shex"]},"text/slim":{extensions:["slim","slm"]},"text/spdx":{source:"iana",extensions:["spdx"]},"text/strings":{source:"iana"},"text/stylus":{extensions:["stylus","styl"]},"text/t140":{source:"iana"},"text/tab-separated-values":{source:"iana",compressible:!0,extensions:["tsv"]},"text/troff":{source:"iana",extensions:["t","tr","roff","man","me","ms"]},"text/turtle":{source:"iana",charset:"UTF-8",extensions:["ttl"]},"text/ulpfec":{source:"iana"},"text/uri-list":{source:"iana",compressible:!0,extensions:["uri","uris","urls"]},"text/vcard":{source:"iana",compressible:!0,extensions:["vcard"]},"text/vnd.a":{source:"iana"},"text/vnd.abc":{source:"iana"},"text/vnd.ascii-art":{source:"iana"},"text/vnd.curl":{source:"iana",extensions:["curl"]},"text/vnd.curl.dcurl":{source:"apache",extensions:["dcurl"]},"text/vnd.curl.mcurl":{source:"apache",extensions:["mcurl"]},"text/vnd.curl.scurl":{source:"apache",extensions:["scurl"]},"text/vnd.debian.copyright":{source:"iana",charset:"UTF-8"},"text/vnd.dmclientscript":{source:"iana"},"text/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"text/vnd.esmertec.theme-descriptor":{source:"iana",charset:"UTF-8"},"text/vnd.familysearch.gedcom":{source:"iana",extensions:["ged"]},"text/vnd.ficlab.flt":{source:"iana"},"text/vnd.fly":{source:"iana",extensions:["fly"]},"text/vnd.fmi.flexstor":{source:"iana",extensions:["flx"]},"text/vnd.gml":{source:"iana"},"text/vnd.graphviz":{source:"iana",extensions:["gv"]},"text/vnd.hans":{source:"iana"},"text/vnd.hgl":{source:"iana"},"text/vnd.in3d.3dml":{source:"iana",extensions:["3dml"]},"text/vnd.in3d.spot":{source:"iana",extensions:["spot"]},"text/vnd.iptc.newsml":{source:"iana"},"text/vnd.iptc.nitf":{source:"iana"},"text/vnd.latex-z":{source:"iana"},"text/vnd.motorola.reflex":{source:"iana"},"text/vnd.ms-mediapackage":{source:"iana"},"text/vnd.net2phone.commcenter.command":{source:"iana"},"text/vnd.radisys.msml-basic-layout":{source:"iana"},"text/vnd.senx.warpscript":{source:"iana"},"text/vnd.si.uricatalogue":{source:"iana"},"text/vnd.sosi":{source:"iana"},"text/vnd.sun.j2me.app-descriptor":{source:"iana",charset:"UTF-8",extensions:["jad"]},"text/vnd.trolltech.linguist":{source:"iana",charset:"UTF-8"},"text/vnd.wap.si":{source:"iana"},"text/vnd.wap.sl":{source:"iana"},"text/vnd.wap.wml":{source:"iana",extensions:["wml"]},"text/vnd.wap.wmlscript":{source:"iana",extensions:["wmls"]},"text/vtt":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["vtt"]},"text/x-asm":{source:"apache",extensions:["s","asm"]},"text/x-c":{source:"apache",extensions:["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{source:"nginx",extensions:["htc"]},"text/x-fortran":{source:"apache",extensions:["f","for","f77","f90"]},"text/x-gwt-rpc":{compressible:!0},"text/x-handlebars-template":{extensions:["hbs"]},"text/x-java-source":{source:"apache",extensions:["java"]},"text/x-jquery-tmpl":{compressible:!0},"text/x-lua":{extensions:["lua"]},"text/x-markdown":{compressible:!0,extensions:["mkd"]},"text/x-nfo":{source:"apache",extensions:["nfo"]},"text/x-opml":{source:"apache",extensions:["opml"]},"text/x-org":{compressible:!0,extensions:["org"]},"text/x-pascal":{source:"apache",extensions:["p","pas"]},"text/x-processing":{compressible:!0,extensions:["pde"]},"text/x-sass":{extensions:["sass"]},"text/x-scss":{extensions:["scss"]},"text/x-setext":{source:"apache",extensions:["etx"]},"text/x-sfv":{source:"apache",extensions:["sfv"]},"text/x-suse-ymp":{compressible:!0,extensions:["ymp"]},"text/x-uuencode":{source:"apache",extensions:["uu"]},"text/x-vcalendar":{source:"apache",extensions:["vcs"]},"text/x-vcard":{source:"apache",extensions:["vcf"]},"text/xml":{source:"iana",compressible:!0,extensions:["xml"]},"text/xml-external-parsed-entity":{source:"iana"},"text/yaml":{compressible:!0,extensions:["yaml","yml"]},"video/1d-interleaved-parityfec":{source:"iana"},"video/3gpp":{source:"iana",extensions:["3gp","3gpp"]},"video/3gpp-tt":{source:"iana"},"video/3gpp2":{source:"iana",extensions:["3g2"]},"video/av1":{source:"iana"},"video/bmpeg":{source:"iana"},"video/bt656":{source:"iana"},"video/celb":{source:"iana"},"video/dv":{source:"iana"},"video/encaprtp":{source:"iana"},"video/ffv1":{source:"iana"},"video/flexfec":{source:"iana"},"video/h261":{source:"iana",extensions:["h261"]},"video/h263":{source:"iana",extensions:["h263"]},"video/h263-1998":{source:"iana"},"video/h263-2000":{source:"iana"},"video/h264":{source:"iana",extensions:["h264"]},"video/h264-rcdo":{source:"iana"},"video/h264-svc":{source:"iana"},"video/h265":{source:"iana"},"video/iso.segment":{source:"iana",extensions:["m4s"]},"video/jpeg":{source:"iana",extensions:["jpgv"]},"video/jpeg2000":{source:"iana"},"video/jpm":{source:"apache",extensions:["jpm","jpgm"]},"video/jxsv":{source:"iana"},"video/mj2":{source:"iana",extensions:["mj2","mjp2"]},"video/mp1s":{source:"iana"},"video/mp2p":{source:"iana"},"video/mp2t":{source:"iana",extensions:["ts"]},"video/mp4":{source:"iana",compressible:!1,extensions:["mp4","mp4v","mpg4"]},"video/mp4v-es":{source:"iana"},"video/mpeg":{source:"iana",compressible:!1,extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{source:"iana"},"video/mpv":{source:"iana"},"video/nv":{source:"iana"},"video/ogg":{source:"iana",compressible:!1,extensions:["ogv"]},"video/parityfec":{source:"iana"},"video/pointer":{source:"iana"},"video/quicktime":{source:"iana",compressible:!1,extensions:["qt","mov"]},"video/raptorfec":{source:"iana"},"video/raw":{source:"iana"},"video/rtp-enc-aescm128":{source:"iana"},"video/rtploopback":{source:"iana"},"video/rtx":{source:"iana"},"video/scip":{source:"iana"},"video/smpte291":{source:"iana"},"video/smpte292m":{source:"iana"},"video/ulpfec":{source:"iana"},"video/vc1":{source:"iana"},"video/vc2":{source:"iana"},"video/vnd.cctv":{source:"iana"},"video/vnd.dece.hd":{source:"iana",extensions:["uvh","uvvh"]},"video/vnd.dece.mobile":{source:"iana",extensions:["uvm","uvvm"]},"video/vnd.dece.mp4":{source:"iana"},"video/vnd.dece.pd":{source:"iana",extensions:["uvp","uvvp"]},"video/vnd.dece.sd":{source:"iana",extensions:["uvs","uvvs"]},"video/vnd.dece.video":{source:"iana",extensions:["uvv","uvvv"]},"video/vnd.directv.mpeg":{source:"iana"},"video/vnd.directv.mpeg-tts":{source:"iana"},"video/vnd.dlna.mpeg-tts":{source:"iana"},"video/vnd.dvb.file":{source:"iana",extensions:["dvb"]},"video/vnd.fvt":{source:"iana",extensions:["fvt"]},"video/vnd.hns.video":{source:"iana"},"video/vnd.iptvforum.1dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.1dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.2dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.2dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.ttsavc":{source:"iana"},"video/vnd.iptvforum.ttsmpeg2":{source:"iana"},"video/vnd.motorola.video":{source:"iana"},"video/vnd.motorola.videop":{source:"iana"},"video/vnd.mpegurl":{source:"iana",extensions:["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{source:"iana",extensions:["pyv"]},"video/vnd.nokia.interleaved-multimedia":{source:"iana"},"video/vnd.nokia.mp4vr":{source:"iana"},"video/vnd.nokia.videovoip":{source:"iana"},"video/vnd.objectvideo":{source:"iana"},"video/vnd.radgamettools.bink":{source:"iana"},"video/vnd.radgamettools.smacker":{source:"iana"},"video/vnd.sealed.mpeg1":{source:"iana"},"video/vnd.sealed.mpeg4":{source:"iana"},"video/vnd.sealed.swf":{source:"iana"},"video/vnd.sealedmedia.softseal.mov":{source:"iana"},"video/vnd.uvvu.mp4":{source:"iana",extensions:["uvu","uvvu"]},"video/vnd.vivo":{source:"iana",extensions:["viv"]},"video/vnd.youtube.yt":{source:"iana"},"video/vp8":{source:"iana"},"video/vp9":{source:"iana"},"video/webm":{source:"apache",compressible:!1,extensions:["webm"]},"video/x-f4v":{source:"apache",extensions:["f4v"]},"video/x-fli":{source:"apache",extensions:["fli"]},"video/x-flv":{source:"apache",compressible:!1,extensions:["flv"]},"video/x-m4v":{source:"apache",extensions:["m4v"]},"video/x-matroska":{source:"apache",compressible:!1,extensions:["mkv","mk3d","mks"]},"video/x-mng":{source:"apache",extensions:["mng"]},"video/x-ms-asf":{source:"apache",extensions:["asf","asx"]},"video/x-ms-vob":{source:"apache",extensions:["vob"]},"video/x-ms-wm":{source:"apache",extensions:["wm"]},"video/x-ms-wmv":{source:"apache",compressible:!1,extensions:["wmv"]},"video/x-ms-wmx":{source:"apache",extensions:["wmx"]},"video/x-ms-wvx":{source:"apache",extensions:["wvx"]},"video/x-msvideo":{source:"apache",extensions:["avi"]},"video/x-sgi-movie":{source:"apache",extensions:["movie"]},"video/x-smv":{source:"apache",extensions:["smv"]},"x-conference/x-cooltalk":{source:"apache",extensions:["ice"]},"x-shader/x-fragment":{compressible:!0},"x-shader/x-vertex":{compressible:!0}}});var Mj=$((jPe,Nj)=>{Nj.exports=Aj()});var Pk=$(fn=>{"use strict";var Ig=Mj(),kte=require("path").extname,Dj=/^\s*([^;\s]*)(?:;|\s|$)/,Tte=/^text\//i;fn.charset=jj;fn.charsets={lookup:jj};fn.contentType=$te;fn.extension=Ite;fn.extensions=Object.create(null);fn.lookup=Rte;fn.types=Object.create(null);Ote(fn.extensions,fn.types);function jj(t){if(!t||typeof t!="string")return!1;var e=Dj.exec(t),r=e&&Ig[e[1].toLowerCase()];return r&&r.charset?r.charset:e&&Tte.test(e[1])?"UTF-8":!1}function $te(t){if(!t||typeof t!="string")return!1;var e=t.indexOf("/")===-1?fn.lookup(t):t;if(!e)return!1;if(e.indexOf("charset")===-1){var r=fn.charset(e);r&&(e+="; charset="+r.toLowerCase())}return e}function Ite(t){if(!t||typeof t!="string")return!1;var e=Dj.exec(t),r=e&&fn.extensions[e[1].toLowerCase()];return!r||!r.length?!1:r[0]}function Rte(t){if(!t||typeof t!="string")return!1;var e=kte("x."+t).toLowerCase().substr(1);return e&&fn.types[e]||!1}function Ote(t,e){var r=["nginx","apache",void 0,"iana"];Object.keys(Ig).forEach(function(i){var s=Ig[i],o=s.extensions;if(!(!o||!o.length)){t[i]=o;for(var a=0;al||u===l&&e[c].substr(0,12)==="application/"))continue}e[c]=i}}})}});var qc=$((LPe,Fc)=>{"use strict";var zj=Pj(),Cte=Pk();Fc.exports=Pte;Fc.exports.is=Lj;Fc.exports.hasBody=Uj;Fc.exports.normalize=Fj;Fc.exports.match=qj;function Lj(t,e){var r,n=e,i=Nte(t);if(!i)return!1;if(n&&!Array.isArray(n))for(n=new Array(arguments.length-1),r=0;r2){r=new Array(arguments.length-1);for(var n=0;n{"use strict";var Mte=Ac(),Dte=Fd(),jte=ea(),uo=Zn()("body-parser:json"),zte=Qd(),Zj=qc();Gj.exports=Fte;var Lte=/^[\x20\x09\x0a\x0d]*([^\x20\x09\x0a\x0d])/,Hj="#",Ute=/#+/g;function Fte(t){var e=t||{},r=typeof e.limit!="number"?Mte.parse(e.limit||"100kb"):e.limit,n=e.inflate!==!1,i=e.reviver,s=e.strict!==!1,o=e.type||"application/json",a=e.verify||!1;if(a!==!1&&typeof a!="function")throw new TypeError("option verify must be function");var c=typeof o!="function"?Bte(o):o;function u(l){if(l.length===0)return{};if(s){var d=Hte(l);if(d!=="{"&&d!=="[")throw uo("strict violation"),qte(l,d)}try{return uo("parse json"),JSON.parse(l,i)}catch(p){throw Bj(p,{message:p.message,stack:p.stack})}}return function(d,p,f){if(d._body){uo("body already parsed"),f();return}if(d.body=d.body||{},!Zj.hasBody(d)){uo("skip empty body"),f();return}if(uo("content-type %j",d.headers["content-type"]),!c(d)){uo("skip parsing"),f();return}var m=Zte(d)||"utf-8";if(m.slice(0,4)!=="utf-"){uo("invalid charset"),f(jte(415,'unsupported charset "'+m.toUpperCase()+'"',{charset:m,type:"charset.unsupported"}));return}zte(d,p,f,u,uo,{encoding:m,inflate:n,limit:r,verify:a})}}function qte(t,e){var r=t.indexOf(e),n="";if(r!==-1){n=t.substring(0,r)+Hj;for(var i=r+1;i{"use strict";var Gte=Ac(),ep=Zn()("body-parser:raw"),Wte=Qd(),Vj=qc();Kj.exports=Vte;function Vte(t){var e=t||{},r=e.inflate!==!1,n=typeof e.limit!="number"?Gte.parse(e.limit||"100kb"):e.limit,i=e.type||"application/octet-stream",s=e.verify||!1;if(s!==!1&&typeof s!="function")throw new TypeError("option verify must be function");var o=typeof i!="function"?Kte(i):i;function a(c){return c}return function(u,l,d){if(u._body){ep("body already parsed"),d();return}if(u.body=u.body||{},!Vj.hasBody(u)){ep("skip empty body"),d();return}if(ep("content-type %j",u.headers["content-type"]),!o(u)){ep("skip parsing"),d();return}Wte(u,l,d,a,ep,{encoding:null,inflate:r,limit:n,verify:s})}}function Kte(t){return function(r){return!!Vj(r,t)}}});var Qj=$((qPe,Yj)=>{"use strict";var Jte=Ac(),Xte=Fd(),tp=Zn()("body-parser:text"),Yte=Qd(),Xj=qc();Yj.exports=Qte;function Qte(t){var e=t||{},r=e.defaultCharset||"utf-8",n=e.inflate!==!1,i=typeof e.limit!="number"?Jte.parse(e.limit||"100kb"):e.limit,s=e.type||"text/plain",o=e.verify||!1;if(o!==!1&&typeof o!="function")throw new TypeError("option verify must be function");var a=typeof s!="function"?tre(s):s;function c(u){return u}return function(l,d,p){if(l._body){tp("body already parsed"),p();return}if(l.body=l.body||{},!Xj.hasBody(l)){tp("skip empty body"),p();return}if(tp("content-type %j",l.headers["content-type"]),!a(l)){tp("skip parsing"),p();return}var f=ere(l)||r;Yte(l,d,p,c,tp,{encoding:f,inflate:n,limit:i,verify:o})}}function ere(t){try{return(Xte.parse(t).parameters.charset||"").toLowerCase()}catch{return}}function tre(t){return function(r){return!!Xj(r,t)}}});var oa=$((HPe,ez)=>{"use strict";ez.exports=TypeError});var rz=$((ZPe,tz)=>{tz.exports=require("util").inspect});var op=$((BPe,xz)=>{var qk=typeof Map=="function"&&Map.prototype,Ak=Object.getOwnPropertyDescriptor&&qk?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,Og=qk&&Ak&&typeof Ak.get=="function"?Ak.get:null,nz=qk&&Map.prototype.forEach,Hk=typeof Set=="function"&&Set.prototype,Nk=Object.getOwnPropertyDescriptor&&Hk?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,Cg=Hk&&Nk&&typeof Nk.get=="function"?Nk.get:null,iz=Hk&&Set.prototype.forEach,rre=typeof WeakMap=="function"&&WeakMap.prototype,np=rre?WeakMap.prototype.has:null,nre=typeof WeakSet=="function"&&WeakSet.prototype,ip=nre?WeakSet.prototype.has:null,ire=typeof WeakRef=="function"&&WeakRef.prototype,sz=ire?WeakRef.prototype.deref:null,sre=Boolean.prototype.valueOf,ore=Object.prototype.toString,are=Function.prototype.toString,cre=String.prototype.match,Zk=String.prototype.slice,lo=String.prototype.replace,ure=String.prototype.toUpperCase,oz=String.prototype.toLowerCase,hz=RegExp.prototype.test,az=Array.prototype.concat,Gi=Array.prototype.join,lre=Array.prototype.slice,cz=Math.floor,jk=typeof BigInt=="function"?BigInt.prototype.valueOf:null,Mk=Object.getOwnPropertySymbols,zk=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,Hc=typeof Symbol=="function"&&typeof Symbol.iterator=="object",sp=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===Hc||!0)?Symbol.toStringTag:null,gz=Object.prototype.propertyIsEnumerable,uz=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(t){return t.__proto__}:null);function lz(t,e){if(t===1/0||t===-1/0||t!==t||t&&t>-1e3&&t<1e3||hz.call(/e/,e))return e;var r=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof t=="number"){var n=t<0?-cz(-t):cz(t);if(n!==t){var i=String(n),s=Zk.call(e,i.length+1);return lo.call(i,r,"$&_")+"."+lo.call(lo.call(s,/([0-9]{3})/g,"$&_"),/_$/,"")}}return lo.call(e,r,"$&_")}var Lk=rz(),dz=Lk.custom,pz=_z(dz)?dz:null,vz={__proto__:null,double:'"',single:"'"},dre={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};xz.exports=function t(e,r,n,i){var s=r||{};if(Is(s,"quoteStyle")&&!Is(vz,s.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if(Is(s,"maxStringLength")&&(typeof s.maxStringLength=="number"?s.maxStringLength<0&&s.maxStringLength!==1/0:s.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var o=Is(s,"customInspect")?s.customInspect:!0;if(typeof o!="boolean"&&o!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(Is(s,"indent")&&s.indent!==null&&s.indent!==" "&&!(parseInt(s.indent,10)===s.indent&&s.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(Is(s,"numericSeparator")&&typeof s.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var a=s.numericSeparator;if(typeof e>"u")return"undefined";if(e===null)return"null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="string")return Sz(e,s);if(typeof e=="number"){if(e===0)return 1/0/e>0?"0":"-0";var c=String(e);return a?lz(e,c):c}if(typeof e=="bigint"){var u=String(e)+"n";return a?lz(e,u):u}var l=typeof s.depth>"u"?5:s.depth;if(typeof n>"u"&&(n=0),n>=l&&l>0&&typeof e=="object")return Uk(e)?"[Array]":"[Object]";var d=Rre(s,n);if(typeof i>"u")i=[];else if(bz(i,e)>=0)return"[Circular]";function p(V,j,ae){if(j&&(i=lre.call(i),i.push(j)),ae){var Me={depth:s.depth};return Is(s,"quoteStyle")&&(Me.quoteStyle=s.quoteStyle),t(V,Me,n+1,i)}return t(V,s,n+1,i)}if(typeof e=="function"&&!fz(e)){var f=bre(e),m=Rg(e,p);return"[Function"+(f?": "+f:" (anonymous)")+"]"+(m.length>0?" { "+Gi.call(m,", ")+" }":"")}if(_z(e)){var h=Hc?lo.call(String(e),/^(Symbol\(.*\))_[^)]*$/,"$1"):zk.call(e);return typeof e=="object"&&!Hc?rp(h):h}if(Tre(e)){for(var g="<"+oz.call(String(e.nodeName)),v=e.attributes||[],S=0;S",g}if(Uk(e)){if(e.length===0)return"[]";var b=Rg(e,p);return d&&!Ire(b)?"["+Fk(b,d)+"]":"[ "+Gi.call(b,", ")+" ]"}if(mre(e)){var y=Rg(e,p);return!("cause"in Error.prototype)&&"cause"in e&&!gz.call(e,"cause")?"{ ["+String(e)+"] "+Gi.call(az.call("[cause]: "+p(e.cause),y),", ")+" }":y.length===0?"["+String(e)+"]":"{ ["+String(e)+"] "+Gi.call(y,", ")+" }"}if(typeof e=="object"&&o){if(pz&&typeof e[pz]=="function"&&Lk)return Lk(e,{depth:l-n});if(o!=="symbol"&&typeof e.inspect=="function")return e.inspect()}if(Sre(e)){var x=[];return nz&&nz.call(e,function(V,j){x.push(p(j,e,!0)+" => "+p(V,e))}),mz("Map",Og.call(e),x,d)}if(Ere(e)){var w=[];return iz&&iz.call(e,function(V){w.push(p(V,e))}),mz("Set",Cg.call(e),w,d)}if(xre(e))return Dk("WeakMap");if(kre(e))return Dk("WeakSet");if(wre(e))return Dk("WeakRef");if(gre(e))return rp(p(Number(e)));if(yre(e))return rp(p(jk.call(e)));if(vre(e))return rp(sre.call(e));if(hre(e))return rp(p(String(e)));if(typeof window<"u"&&e===window)return"{ [object Window] }";if(typeof globalThis<"u"&&e===globalThis||typeof global<"u"&&e===global)return"{ [object globalThis] }";if(!fre(e)&&!fz(e)){var E=Rg(e,p),T=uz?uz(e)===Object.prototype:e instanceof Object||e.constructor===Object,I=e instanceof Object?"":"null prototype",A=!T&&sp&&Object(e)===e&&sp in e?Zk.call(po(e),8,-1):I?"Object":"",N=T||typeof e.constructor!="function"?"":e.constructor.name?e.constructor.name+" ":"",U=N+(A||I?"["+Gi.call(az.call([],A||[],I||[]),": ")+"] ":"");return E.length===0?U+"{}":d?U+"{"+Fk(E,d)+"}":U+"{ "+Gi.call(E,", ")+" }"}return String(e)};function yz(t,e,r){var n=r.quoteStyle||e,i=vz[n];return i+t+i}function pre(t){return lo.call(String(t),/"/g,""")}function aa(t){return!sp||!(typeof t=="object"&&(sp in t||typeof t[sp]<"u"))}function Uk(t){return po(t)==="[object Array]"&&aa(t)}function fre(t){return po(t)==="[object Date]"&&aa(t)}function fz(t){return po(t)==="[object RegExp]"&&aa(t)}function mre(t){return po(t)==="[object Error]"&&aa(t)}function hre(t){return po(t)==="[object String]"&&aa(t)}function gre(t){return po(t)==="[object Number]"&&aa(t)}function vre(t){return po(t)==="[object Boolean]"&&aa(t)}function _z(t){if(Hc)return t&&typeof t=="object"&&t instanceof Symbol;if(typeof t=="symbol")return!0;if(!t||typeof t!="object"||!zk)return!1;try{return zk.call(t),!0}catch{}return!1}function yre(t){if(!t||typeof t!="object"||!jk)return!1;try{return jk.call(t),!0}catch{}return!1}var _re=Object.prototype.hasOwnProperty||function(t){return t in this};function Is(t,e){return _re.call(t,e)}function po(t){return ore.call(t)}function bre(t){if(t.name)return t.name;var e=cre.call(are.call(t),/^function\s*([\w$]+)/);return e?e[1]:null}function bz(t,e){if(t.indexOf)return t.indexOf(e);for(var r=0,n=t.length;re.maxStringLength){var r=t.length-e.maxStringLength,n="... "+r+" more character"+(r>1?"s":"");return Sz(Zk.call(t,0,e.maxStringLength),e)+n}var i=dre[e.quoteStyle||"single"];i.lastIndex=0;var s=lo.call(lo.call(t,i,"\\$1"),/[\x00-\x1f]/g,$re);return yz(s,"single",e)}function $re(t){var e=t.charCodeAt(0),r={8:"b",9:"t",10:"n",12:"f",13:"r"}[e];return r?"\\"+r:"\\x"+(e<16?"0":"")+ure.call(e.toString(16))}function rp(t){return"Object("+t+")"}function Dk(t){return t+" { ? }"}function mz(t,e,r,n){var i=n?Fk(r,n):Gi.call(r,", ");return t+" ("+e+") {"+i+"}"}function Ire(t){for(var e=0;e=0)return!1;return!0}function Rre(t,e){var r;if(t.indent===" ")r=" ";else if(typeof t.indent=="number"&&t.indent>0)r=Gi.call(Array(t.indent+1)," ");else return null;return{base:r,prev:Gi.call(Array(e+1),r)}}function Fk(t,e){if(t.length===0)return"";var r=` -`+e.prev+e.base;return r+Gi.call(t,","+r)+` -`+e.prev}function Rg(t,e){var r=Uk(t),n=[];if(r){n.length=t.length;for(var i=0;i{"use strict";var Ore=op(),Cre=oa(),Pg=function(t,e,r){for(var n=t,i;(i=n.next)!=null;n=i)if(i.key===e)return n.next=i.next,r||(i.next=t.next,t.next=i),i},Pre=function(t,e){if(t){var r=Pg(t,e);return r&&r.value}},Are=function(t,e,r){var n=Pg(t,e);n?n.value=r:t.next={key:e,next:t.next,value:r}},Nre=function(t,e){return t?!!Pg(t,e):!1},Mre=function(t,e){if(t)return Pg(t,e,!0)};wz.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new Cre("Side channel does not contain "+Ore(n))},delete:function(n){var i=e&&e.next,s=Mre(e,n);return s&&i&&i===s&&(e=void 0),!!s},get:function(n){return Pre(e,n)},has:function(n){return Nre(e,n)},set:function(n,i){e||(e={next:void 0}),Are(e,n,i)}};return r}});var Bk=$((WPe,kz)=>{"use strict";kz.exports=Object});var $z=$((VPe,Tz)=>{"use strict";Tz.exports=Error});var Rz=$((KPe,Iz)=>{"use strict";Iz.exports=EvalError});var Cz=$((JPe,Oz)=>{"use strict";Oz.exports=RangeError});var Az=$((XPe,Pz)=>{"use strict";Pz.exports=ReferenceError});var Mz=$((YPe,Nz)=>{"use strict";Nz.exports=SyntaxError});var jz=$((QPe,Dz)=>{"use strict";Dz.exports=URIError});var Lz=$((eAe,zz)=>{"use strict";zz.exports=Math.abs});var Fz=$((tAe,Uz)=>{"use strict";Uz.exports=Math.floor});var Hz=$((rAe,qz)=>{"use strict";qz.exports=Math.max});var Bz=$((nAe,Zz)=>{"use strict";Zz.exports=Math.min});var Wz=$((iAe,Gz)=>{"use strict";Gz.exports=Math.pow});var Kz=$((sAe,Vz)=>{"use strict";Vz.exports=Math.round});var Xz=$((oAe,Jz)=>{"use strict";Jz.exports=Number.isNaN||function(e){return e!==e}});var Qz=$((aAe,Yz)=>{"use strict";var Dre=Xz();Yz.exports=function(e){return Dre(e)||e===0?e:e<0?-1:1}});var t4=$((cAe,e4)=>{"use strict";e4.exports=Object.getOwnPropertyDescriptor});var Gk=$((uAe,r4)=>{"use strict";var Ag=t4();if(Ag)try{Ag([],"length")}catch{Ag=null}r4.exports=Ag});var i4=$((lAe,n4)=>{"use strict";var Ng=Object.defineProperty||!1;if(Ng)try{Ng({},"a",{value:1})}catch{Ng=!1}n4.exports=Ng});var o4=$((dAe,s4)=>{"use strict";s4.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var e={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var i=42;e[r]=i;for(var s in e)return!1;if(typeof Object.keys=="function"&&Object.keys(e).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(e).length!==0)return!1;var o=Object.getOwnPropertySymbols(e);if(o.length!==1||o[0]!==r||!Object.prototype.propertyIsEnumerable.call(e,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var a=Object.getOwnPropertyDescriptor(e,r);if(a.value!==i||a.enumerable!==!0)return!1}return!0}});var u4=$((pAe,c4)=>{"use strict";var a4=typeof Symbol<"u"&&Symbol,jre=o4();c4.exports=function(){return typeof a4!="function"||typeof Symbol!="function"||typeof a4("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:jre()}});var Wk=$((fAe,l4)=>{"use strict";l4.exports=typeof Reflect<"u"&&Reflect.getPrototypeOf||null});var Vk=$((mAe,d4)=>{"use strict";var zre=Bk();d4.exports=zre.getPrototypeOf||null});var m4=$((hAe,f4)=>{"use strict";var Lre="Function.prototype.bind called on incompatible ",Ure=Object.prototype.toString,Fre=Math.max,qre="[object Function]",p4=function(e,r){for(var n=[],i=0;i{"use strict";var Bre=m4();h4.exports=Function.prototype.bind||Bre});var Mg=$((vAe,g4)=>{"use strict";g4.exports=Function.prototype.call});var Kk=$((yAe,v4)=>{"use strict";v4.exports=Function.prototype.apply});var _4=$((_Ae,y4)=>{"use strict";y4.exports=typeof Reflect<"u"&&Reflect&&Reflect.apply});var S4=$((bAe,b4)=>{"use strict";var Gre=ap(),Wre=Kk(),Vre=Mg(),Kre=_4();b4.exports=Kre||Gre.call(Vre,Wre)});var Jk=$((SAe,x4)=>{"use strict";var Jre=ap(),Xre=oa(),Yre=Mg(),Qre=S4();x4.exports=function(e){if(e.length<1||typeof e[0]!="function")throw new Xre("a function is required");return Qre(Jre,Yre,e)}});var I4=$((xAe,$4)=>{"use strict";var ene=Jk(),w4=Gk(),k4;try{k4=[].__proto__===Array.prototype}catch(t){if(!t||typeof t!="object"||!("code"in t)||t.code!=="ERR_PROTO_ACCESS")throw t}var Xk=!!k4&&w4&&w4(Object.prototype,"__proto__"),T4=Object,E4=T4.getPrototypeOf;$4.exports=Xk&&typeof Xk.get=="function"?ene([Xk.get]):typeof E4=="function"?function(e){return E4(e==null?e:T4(e))}:!1});var A4=$((wAe,P4)=>{"use strict";var R4=Wk(),O4=Vk(),C4=I4();P4.exports=R4?function(e){return R4(e)}:O4?function(e){if(!e||typeof e!="object"&&typeof e!="function")throw new TypeError("getProto: not an object");return O4(e)}:C4?function(e){return C4(e)}:null});var M4=$((EAe,N4)=>{"use strict";var tne=Function.prototype.call,rne=Object.prototype.hasOwnProperty,nne=ap();N4.exports=nne.call(tne,rne)});var zg=$((kAe,F4)=>{"use strict";var Je,ine=Bk(),sne=$z(),one=Rz(),ane=Cz(),cne=Az(),Wc=Mz(),Gc=oa(),une=jz(),lne=Lz(),dne=Fz(),pne=Hz(),fne=Bz(),mne=Wz(),hne=Kz(),gne=Qz(),L4=Function,Yk=function(t){try{return L4('"use strict"; return ('+t+").constructor;")()}catch{}},cp=Gk(),vne=i4(),Qk=function(){throw new Gc},yne=cp?(function(){try{return arguments.callee,Qk}catch{try{return cp(arguments,"callee").get}catch{return Qk}}})():Qk,Zc=u4()(),dr=A4(),_ne=Vk(),bne=Wk(),U4=Kk(),up=Mg(),Bc={},Sne=typeof Uint8Array>"u"||!dr?Je:dr(Uint8Array),ca={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?Je:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?Je:ArrayBuffer,"%ArrayIteratorPrototype%":Zc&&dr?dr([][Symbol.iterator]()):Je,"%AsyncFromSyncIteratorPrototype%":Je,"%AsyncFunction%":Bc,"%AsyncGenerator%":Bc,"%AsyncGeneratorFunction%":Bc,"%AsyncIteratorPrototype%":Bc,"%Atomics%":typeof Atomics>"u"?Je:Atomics,"%BigInt%":typeof BigInt>"u"?Je:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?Je:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?Je:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?Je:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":sne,"%eval%":eval,"%EvalError%":one,"%Float16Array%":typeof Float16Array>"u"?Je:Float16Array,"%Float32Array%":typeof Float32Array>"u"?Je:Float32Array,"%Float64Array%":typeof Float64Array>"u"?Je:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?Je:FinalizationRegistry,"%Function%":L4,"%GeneratorFunction%":Bc,"%Int8Array%":typeof Int8Array>"u"?Je:Int8Array,"%Int16Array%":typeof Int16Array>"u"?Je:Int16Array,"%Int32Array%":typeof Int32Array>"u"?Je:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":Zc&&dr?dr(dr([][Symbol.iterator]())):Je,"%JSON%":typeof JSON=="object"?JSON:Je,"%Map%":typeof Map>"u"?Je:Map,"%MapIteratorPrototype%":typeof Map>"u"||!Zc||!dr?Je:dr(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":ine,"%Object.getOwnPropertyDescriptor%":cp,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?Je:Promise,"%Proxy%":typeof Proxy>"u"?Je:Proxy,"%RangeError%":ane,"%ReferenceError%":cne,"%Reflect%":typeof Reflect>"u"?Je:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?Je:Set,"%SetIteratorPrototype%":typeof Set>"u"||!Zc||!dr?Je:dr(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?Je:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":Zc&&dr?dr(""[Symbol.iterator]()):Je,"%Symbol%":Zc?Symbol:Je,"%SyntaxError%":Wc,"%ThrowTypeError%":yne,"%TypedArray%":Sne,"%TypeError%":Gc,"%Uint8Array%":typeof Uint8Array>"u"?Je:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?Je:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?Je:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?Je:Uint32Array,"%URIError%":une,"%WeakMap%":typeof WeakMap>"u"?Je:WeakMap,"%WeakRef%":typeof WeakRef>"u"?Je:WeakRef,"%WeakSet%":typeof WeakSet>"u"?Je:WeakSet,"%Function.prototype.call%":up,"%Function.prototype.apply%":U4,"%Object.defineProperty%":vne,"%Object.getPrototypeOf%":_ne,"%Math.abs%":lne,"%Math.floor%":dne,"%Math.max%":pne,"%Math.min%":fne,"%Math.pow%":mne,"%Math.round%":hne,"%Math.sign%":gne,"%Reflect.getPrototypeOf%":bne};if(dr)try{null.error}catch(t){D4=dr(dr(t)),ca["%Error.prototype%"]=D4}var D4,xne=function t(e){var r;if(e==="%AsyncFunction%")r=Yk("async function () {}");else if(e==="%GeneratorFunction%")r=Yk("function* () {}");else if(e==="%AsyncGeneratorFunction%")r=Yk("async function* () {}");else if(e==="%AsyncGenerator%"){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(e==="%AsyncIteratorPrototype%"){var i=t("%AsyncGenerator%");i&&dr&&(r=dr(i.prototype))}return ca[e]=r,r},j4={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},lp=ap(),Dg=M4(),wne=lp.call(up,Array.prototype.concat),Ene=lp.call(U4,Array.prototype.splice),z4=lp.call(up,String.prototype.replace),jg=lp.call(up,String.prototype.slice),kne=lp.call(up,RegExp.prototype.exec),Tne=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,$ne=/\\(\\)?/g,Ine=function(e){var r=jg(e,0,1),n=jg(e,-1);if(r==="%"&&n!=="%")throw new Wc("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new Wc("invalid intrinsic syntax, expected opening `%`");var i=[];return z4(e,Tne,function(s,o,a,c){i[i.length]=a?z4(c,$ne,"$1"):o||s}),i},Rne=function(e,r){var n=e,i;if(Dg(j4,n)&&(i=j4[n],n="%"+i[0]+"%"),Dg(ca,n)){var s=ca[n];if(s===Bc&&(s=xne(n)),typeof s>"u"&&!r)throw new Gc("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:i,name:n,value:s}}throw new Wc("intrinsic "+e+" does not exist!")};F4.exports=function(e,r){if(typeof e!="string"||e.length===0)throw new Gc("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new Gc('"allowMissing" argument must be a boolean');if(kne(/^%?[^%]*%?$/,e)===null)throw new Wc("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=Ine(e),i=n.length>0?n[0]:"",s=Rne("%"+i+"%",r),o=s.name,a=s.value,c=!1,u=s.alias;u&&(i=u[0],Ene(n,wne([0,1],u)));for(var l=1,d=!0;l=n.length){var h=cp(a,p);d=!!h,d&&"get"in h&&!("originalValue"in h.get)?a=h.get:a=a[p]}else d=Dg(a,p),a=a[p];d&&!c&&(ca[o]=a)}}return a}});var eT=$((TAe,Z4)=>{"use strict";var q4=zg(),H4=Jk(),One=H4([q4("%String.prototype.indexOf%")]);Z4.exports=function(e,r){var n=q4(e,!!r);return typeof n=="function"&&One(e,".prototype.")>-1?H4([n]):n}});var tT=$(($Ae,G4)=>{"use strict";var Cne=zg(),dp=eT(),Pne=op(),Ane=oa(),B4=Cne("%Map%",!0),Nne=dp("Map.prototype.get",!0),Mne=dp("Map.prototype.set",!0),Dne=dp("Map.prototype.has",!0),jne=dp("Map.prototype.delete",!0),zne=dp("Map.prototype.size",!0);G4.exports=!!B4&&function(){var e,r={assert:function(n){if(!r.has(n))throw new Ane("Side channel does not contain "+Pne(n))},delete:function(n){if(e){var i=jne(e,n);return zne(e)===0&&(e=void 0),i}return!1},get:function(n){if(e)return Nne(e,n)},has:function(n){return e?Dne(e,n):!1},set:function(n,i){e||(e=new B4),Mne(e,n,i)}};return r}});var V4=$((IAe,W4)=>{"use strict";var Lne=zg(),Ug=eT(),Une=op(),Lg=tT(),Fne=oa(),Vc=Lne("%WeakMap%",!0),qne=Ug("WeakMap.prototype.get",!0),Hne=Ug("WeakMap.prototype.set",!0),Zne=Ug("WeakMap.prototype.has",!0),Bne=Ug("WeakMap.prototype.delete",!0);W4.exports=Vc?function(){var e,r,n={assert:function(i){if(!n.has(i))throw new Fne("Side channel does not contain "+Une(i))},delete:function(i){if(Vc&&i&&(typeof i=="object"||typeof i=="function")){if(e)return Bne(e,i)}else if(Lg&&r)return r.delete(i);return!1},get:function(i){return Vc&&i&&(typeof i=="object"||typeof i=="function")&&e?qne(e,i):r&&r.get(i)},has:function(i){return Vc&&i&&(typeof i=="object"||typeof i=="function")&&e?Zne(e,i):!!r&&r.has(i)},set:function(i,s){Vc&&i&&(typeof i=="object"||typeof i=="function")?(e||(e=new Vc),Hne(e,i,s)):Lg&&(r||(r=Lg()),r.set(i,s))}};return n}:Lg});var rT=$((RAe,K4)=>{"use strict";var Gne=oa(),Wne=op(),Vne=Ez(),Kne=tT(),Jne=V4(),Xne=Jne||Kne||Vne;K4.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new Gne("Side channel does not contain "+Wne(n))},delete:function(n){return!!e&&e.delete(n)},get:function(n){return e&&e.get(n)},has:function(n){return!!e&&e.has(n)},set:function(n,i){e||(e=Xne()),e.set(n,i)}};return r}});var Fg=$((OAe,J4)=>{"use strict";var Yne=String.prototype.replace,Qne=/%20/g,nT={RFC1738:"RFC1738",RFC3986:"RFC3986"};J4.exports={default:nT.RFC3986,formatters:{RFC1738:function(t){return Yne.call(t,Qne,"+")},RFC3986:function(t){return String(t)}},RFC1738:nT.RFC1738,RFC3986:nT.RFC3986}});var cT=$((CAe,Q4)=>{"use strict";var eie=Fg(),tie=rT(),iT=Object.prototype.hasOwnProperty,ua=Array.isArray,Hg=tie(),X4=function(e,r){return Hg.set(e,r),e},qg=function(e){return Hg.has(e)},oT=function(e){return Hg.get(e)},Y4=function(e,r){Hg.set(e,r)},Wi=(function(){for(var t=[],e=0;e<256;++e)t.push("%"+((e<16?"0":"")+e.toString(16)).toUpperCase());return t})(),rie=function(e){for(;e.length>1;){var r=e.pop(),n=r.obj[r.prop];if(ua(n)){for(var i=[],s=0;s=sT?o.slice(c,c+sT):o,l=[],d=0;d=48&&p<=57||p>=65&&p<=90||p>=97&&p<=122||s===eie.RFC1738&&(p===40||p===41)){l[l.length]=u.charAt(d);continue}if(p<128){l[l.length]=Wi[p];continue}if(p<2048){l[l.length]=Wi[192|p>>6]+Wi[128|p&63];continue}if(p<55296||p>=57344){l[l.length]=Wi[224|p>>12]+Wi[128|p>>6&63]+Wi[128|p&63];continue}d+=1,p=65536+((p&1023)<<10|u.charCodeAt(d)&1023),l[l.length]=Wi[240|p>>18]+Wi[128|p>>12&63]+Wi[128|p>>6&63]+Wi[128|p&63]}a+=l.join("")}return a},aie=function(e){for(var r=[{obj:{o:e},prop:"o"}],n=[],i=0;in?X4(aT(o,{plainObjects:i}),o.length-1):o},die=function(e,r){if(ua(e)){for(var n=[],i=0;i{"use strict";var tL=rT(),Zg=cT(),pp=Fg(),pie=Object.prototype.hasOwnProperty,rL={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,r){return e+"["+r+"]"},repeat:function(e){return e}},Vi=Array.isArray,fie=Array.prototype.push,nL=function(t,e){fie.apply(t,Vi(e)?e:[e])},mie=Date.prototype.toISOString,eL=pp.default,nr={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,commaRoundTrip:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:Zg.encode,encodeValuesOnly:!1,filter:void 0,format:eL,formatter:pp.formatters[eL],indices:!1,serializeDate:function(e){return mie.call(e)},skipNulls:!1,strictNullHandling:!1},hie=function(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="symbol"||typeof e=="bigint"},uT={},gie=function t(e,r,n,i,s,o,a,c,u,l,d,p,f,m,h,g,v,S){for(var b=e,y=S,x=0,w=!1;(y=y.get(uT))!==void 0&&!w;){var E=y.get(e);if(x+=1,typeof E<"u"){if(E===x)throw new RangeError("Cyclic object value");w=!0}typeof y.get(uT)>"u"&&(x=0)}if(typeof l=="function"?b=l(r,b):b instanceof Date?b=f(b):n==="comma"&&Vi(b)&&(b=Zg.maybeMap(b,function(K){return K instanceof Date?f(K):K})),b===null){if(o)return u&&!g?u(r,nr.encoder,v,"key",m):r;b=""}if(hie(b)||Zg.isBuffer(b)){if(u){var T=g?r:u(r,nr.encoder,v,"key",m);return[h(T)+"="+h(u(b,nr.encoder,v,"value",m))]}return[h(r)+"="+h(String(b))]}var I=[];if(typeof b>"u")return I;var A;if(n==="comma"&&Vi(b))g&&u&&(b=Zg.maybeMap(b,u)),A=[{value:b.length>0?b.join(",")||null:void 0}];else if(Vi(l))A=l;else{var N=Object.keys(b);A=d?N.sort(d):N}var U=c?String(r).replace(/\./g,"%2E"):String(r),V=i&&Vi(b)&&b.length===1?U+"[]":U;if(s&&Vi(b)&&b.length===0)return V+"[]";for(var j=0;j"u"?e.encodeDotInKeys===!0?!0:nr.allowDots:!!e.allowDots;return{addQueryPrefix:typeof e.addQueryPrefix=="boolean"?e.addQueryPrefix:nr.addQueryPrefix,allowDots:a,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:nr.allowEmptyArrays,arrayFormat:o,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:nr.charsetSentinel,commaRoundTrip:!!e.commaRoundTrip,delimiter:typeof e.delimiter>"u"?nr.delimiter:e.delimiter,encode:typeof e.encode=="boolean"?e.encode:nr.encode,encodeDotInKeys:typeof e.encodeDotInKeys=="boolean"?e.encodeDotInKeys:nr.encodeDotInKeys,encoder:typeof e.encoder=="function"?e.encoder:nr.encoder,encodeValuesOnly:typeof e.encodeValuesOnly=="boolean"?e.encodeValuesOnly:nr.encodeValuesOnly,filter:s,format:n,formatter:i,serializeDate:typeof e.serializeDate=="function"?e.serializeDate:nr.serializeDate,skipNulls:typeof e.skipNulls=="boolean"?e.skipNulls:nr.skipNulls,sort:typeof e.sort=="function"?e.sort:null,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:nr.strictNullHandling}};iL.exports=function(t,e){var r=t,n=vie(e),i,s;typeof n.filter=="function"?(s=n.filter,r=s("",r)):Vi(n.filter)&&(s=n.filter,i=s);var o=[];if(typeof r!="object"||r===null)return"";var a=rL[n.arrayFormat],c=a==="comma"&&n.commaRoundTrip;i||(i=Object.keys(r)),n.sort&&i.sort(n.sort);for(var u=tL(),l=0;l0?m+f:""}});var uL=$((AAe,cL)=>{"use strict";var fo=cT(),Bg=Object.prototype.hasOwnProperty,oL=Array.isArray,Vt={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:fo.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},yie=function(t){return t.replace(/&#(\d+);/g,function(e,r){return String.fromCharCode(parseInt(r,10))})},aL=function(t,e,r){if(t&&typeof t=="string"&&e.comma&&t.indexOf(",")>-1)return t.split(",");if(e.throwOnLimitExceeded&&r>=e.arrayLimit)throw new RangeError("Array limit exceeded. Only "+e.arrayLimit+" element"+(e.arrayLimit===1?"":"s")+" allowed in an array.");return t},_ie="utf8=%26%2310003%3B",bie="utf8=%E2%9C%93",Sie=function(e,r){var n={__proto__:null},i=r.ignoreQueryPrefix?e.replace(/^\?/,""):e;i=i.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var s=r.parameterLimit===1/0?void 0:r.parameterLimit,o=i.split(r.delimiter,r.throwOnLimitExceeded?s+1:s);if(r.throwOnLimitExceeded&&o.length>s)throw new RangeError("Parameter limit exceeded. Only "+s+" parameter"+(s===1?"":"s")+" allowed.");var a=-1,c,u=r.charset;if(r.charsetSentinel)for(c=0;c-1&&(m=oL(m)?[m]:m),f!==null){var h=Bg.call(n,f);h&&r.duplicates==="combine"?n[f]=fo.combine(n[f],m,r.arrayLimit,r.plainObjects):(!h||r.duplicates==="last")&&(n[f]=m)}}return n},xie=function(t,e,r,n){var i=0;if(t.length>0&&t[t.length-1]==="[]"){var s=t.slice(0,-1).join("");i=Array.isArray(e)&&e[s]?e[s].length:0}for(var o=n?e:aL(e,r,i),a=t.length-1;a>=0;--a){var c,u=t[a];if(u==="[]"&&r.parseArrays)fo.isOverflow(o)?c=o:c=r.allowEmptyArrays&&(o===""||r.strictNullHandling&&o===null)?[]:fo.combine([],o,r.arrayLimit,r.plainObjects);else{c=r.plainObjects?{__proto__:null}:{};var l=u.charAt(0)==="["&&u.charAt(u.length-1)==="]"?u.slice(1,-1):u,d=r.decodeDotInKeys?l.replace(/%2E/g,"."):l,p=parseInt(d,10);!r.parseArrays&&d===""?c={0:o}:!isNaN(p)&&u!==d&&String(p)===d&&p>=0&&r.parseArrays&&p<=r.arrayLimit?(c=[],c[p]=o):d!=="__proto__"&&(c[d]=o)}o=c}return o},wie=function(e,r){var n=r.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e;if(r.depth<=0)return!r.plainObjects&&Bg.call(Object.prototype,n)&&!r.allowPrototypes?void 0:[n];var i=/(\[[^[\]]*])/,s=/(\[[^[\]]*])/g,o=i.exec(n),a=o?n.slice(0,o.index):n,c=[];if(a){if(!r.plainObjects&&Bg.call(Object.prototype,a)&&!r.allowPrototypes)return;c.push(a)}for(var u=0;(o=s.exec(n))!==null&&u"u"?Vt.charset:e.charset,n=typeof e.duplicates>"u"?Vt.duplicates:e.duplicates;if(n!=="combine"&&n!=="first"&&n!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");var i=typeof e.allowDots>"u"?e.decodeDotInKeys===!0?!0:Vt.allowDots:!!e.allowDots;return{allowDots:i,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:Vt.allowEmptyArrays,allowPrototypes:typeof e.allowPrototypes=="boolean"?e.allowPrototypes:Vt.allowPrototypes,allowSparse:typeof e.allowSparse=="boolean"?e.allowSparse:Vt.allowSparse,arrayLimit:typeof e.arrayLimit=="number"?e.arrayLimit:Vt.arrayLimit,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:Vt.charsetSentinel,comma:typeof e.comma=="boolean"?e.comma:Vt.comma,decodeDotInKeys:typeof e.decodeDotInKeys=="boolean"?e.decodeDotInKeys:Vt.decodeDotInKeys,decoder:typeof e.decoder=="function"?e.decoder:Vt.decoder,delimiter:typeof e.delimiter=="string"||fo.isRegExp(e.delimiter)?e.delimiter:Vt.delimiter,depth:typeof e.depth=="number"||e.depth===!1?+e.depth:Vt.depth,duplicates:n,ignoreQueryPrefix:e.ignoreQueryPrefix===!0,interpretNumericEntities:typeof e.interpretNumericEntities=="boolean"?e.interpretNumericEntities:Vt.interpretNumericEntities,parameterLimit:typeof e.parameterLimit=="number"?e.parameterLimit:Vt.parameterLimit,parseArrays:e.parseArrays!==!1,plainObjects:typeof e.plainObjects=="boolean"?e.plainObjects:Vt.plainObjects,strictDepth:typeof e.strictDepth=="boolean"?!!e.strictDepth:Vt.strictDepth,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:Vt.strictNullHandling,throwOnLimitExceeded:typeof e.throwOnLimitExceeded=="boolean"?e.throwOnLimitExceeded:!1}};cL.exports=function(t,e){var r=kie(e);if(t===""||t===null||typeof t>"u")return r.plainObjects?{__proto__:null}:{};for(var n=typeof t=="string"?Sie(t,r):t,i=r.plainObjects?{__proto__:null}:{},s=Object.keys(n),o=0;o{"use strict";var Tie=sL(),$ie=uL(),Iie=Fg();lL.exports={formats:Iie,parse:$ie,stringify:Tie}});var gL=$((MAe,hL)=>{"use strict";var Rie=Ac(),Oie=Fd(),Wg=ea(),fi=Zn()("body-parser:urlencoded"),Cie=Hi()("body-parser"),Pie=Qd(),pL=qc();hL.exports=Aie;var dL=Object.create(null);function Aie(t){var e=t||{};e.extended===void 0&&Cie("undefined extended: provide extended option");var r=e.extended!==!1,n=e.inflate!==!1,i=typeof e.limit!="number"?Rie.parse(e.limit||"100kb"):e.limit,s=e.type||"application/x-www-form-urlencoded",o=e.verify||!1;if(o!==!1&&typeof o!="function")throw new TypeError("option verify must be function");var a=r?Nie(e):Die(e),c=typeof s!="function"?jie(s):s;function u(l){return l.length?a(l):{}}return function(d,p,f){if(d._body){fi("body already parsed"),f();return}if(d.body=d.body||{},!pL.hasBody(d)){fi("skip empty body"),f();return}if(fi("content-type %j",d.headers["content-type"]),!c(d)){fi("skip parsing"),f();return}var m=Mie(d)||"utf-8";if(m!=="utf-8"){fi("invalid charset"),f(Wg(415,'unsupported charset "'+m.toUpperCase()+'"',{charset:m,type:"charset.unsupported"}));return}Pie(d,p,f,u,fi,{debug:fi,encoding:m,inflate:n,limit:i,verify:o})}}function Nie(t){var e=t.parameterLimit!==void 0?t.parameterLimit:1e3,r=t.depth!==void 0?t.depth:32,n=mL("qs");if(isNaN(e)||e<1)throw new TypeError("option parameterLimit must be a positive number");if(isNaN(r)||r<0)throw new TypeError("option depth must be a zero or a positive number");return isFinite(e)&&(e=e|0),function(s){var o=fL(s,e);if(o===void 0)throw fi("too many parameters"),Wg(413,"too many parameters",{type:"parameters.too.many"});var a=Math.max(100,o);fi("parse extended urlencoding");try{return n(s,{allowPrototypes:!0,arrayLimit:a,depth:r,strictDepth:!0,parameterLimit:e})}catch(c){throw c instanceof RangeError?Wg(400,"The input exceeded the depth",{type:"querystring.parse.rangeError"}):c}}}function Mie(t){try{return(Oie.parse(t).parameters.charset||"").toLowerCase()}catch{return}}function fL(t,e){for(var r=0,n=0;(n=t.indexOf("&",n))!==-1;)if(r++,n++,r===e)return;return r}function mL(t){var e=dL[t];if(e!==void 0)return e.parse;switch(t){case"qs":e=Gg();break;case"querystring":e=require("querystring");break}return dL[t]=e,e.parse}function Die(t){var e=t.parameterLimit!==void 0?t.parameterLimit:1e3,r=mL("querystring");if(isNaN(e)||e<1)throw new TypeError("option parameterLimit must be a positive number");return isFinite(e)&&(e=e|0),function(i){var s=fL(i,e);if(s===void 0)throw fi("too many parameters"),Wg(413,"too many parameters",{type:"parameters.too.many"});return fi("parse urlencoding"),r(i,void 0,void 0,{maxKeys:e})}}function jie(t){return function(r){return!!pL(r,t)}}});var _L=$((mo,yL)=>{"use strict";var zie=Hi()("body-parser"),vL=Object.create(null);mo=yL.exports=zie.function(Lie,"bodyParser: use individual json/urlencoded middlewares");Object.defineProperty(mo,"json",{configurable:!0,enumerable:!0,get:Vg("json")});Object.defineProperty(mo,"raw",{configurable:!0,enumerable:!0,get:Vg("raw")});Object.defineProperty(mo,"text",{configurable:!0,enumerable:!0,get:Vg("text")});Object.defineProperty(mo,"urlencoded",{configurable:!0,enumerable:!0,get:Vg("urlencoded")});function Lie(t){var e=Object.create(t||null,{type:{configurable:!0,enumerable:!0,value:void 0,writable:!0}}),r=mo.urlencoded(e),n=mo.json(e);return function(s,o,a){n(s,o,function(c){if(c)return a(c);r(s,o,a)})}}function Vg(t){return function(){return Uie(t)}}function Uie(t){var e=vL[t];if(e!==void 0)return e;switch(t){case"json":e=Wj();break;case"raw":e=Jj();break;case"text":e=Qj();break;case"urlencoded":e=gL();break}return vL[t]=e}});var SL=$((DAe,bL)=>{"use strict";bL.exports=qie;var Fie=Object.prototype.hasOwnProperty;function qie(t,e,r){if(!t)throw new TypeError("argument dest is required");if(!e)throw new TypeError("argument src is required");return r===void 0&&(r=!0),Object.getOwnPropertyNames(e).forEach(function(i){if(!(!r&&Fie.call(t,i))){var s=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,s)}}),t}});var fp=$((jAe,xL)=>{"use strict";xL.exports=Gie;var Hie=/(?:[^\x21\x23-\x3B\x3D\x3F-\x5F\x61-\x7A\x7C\x7E]|%(?:[^0-9A-Fa-f]|[0-9A-Fa-f][^0-9A-Fa-f]|$))+/g,Zie=/(^|[^\uD800-\uDBFF])[\uDC00-\uDFFF]|[\uD800-\uDBFF]([^\uDC00-\uDFFF]|$)/g,Bie="$1\uFFFD$2";function Gie(t){return String(t).replace(Zie,Bie).replace(Hie,encodeURI)}});var mp=$((zAe,wL)=>{"use strict";var Wie=/["'&<>]/;wL.exports=Vie;function Vie(t){var e=""+t,r=Wie.exec(e);if(!r)return e;var n,i="",s=0,o=0;for(s=r.index;s{"use strict";var kL=require("url"),EL=kL.parse,Kg=kL.Url;lT.exports=TL;lT.exports.original=Kie;function TL(t){var e=t.url;if(e!==void 0){var r=t._parsedUrl;return IL(e,r)?r:(r=$L(e),r._raw=e,t._parsedUrl=r)}}function Kie(t){var e=t.originalUrl;if(typeof e!="string")return TL(t);var r=t._parsedOriginalUrl;return IL(e,r)?r:(r=$L(e),r._raw=e,t._parsedOriginalUrl=r)}function $L(t){if(typeof t!="string"||t.charCodeAt(0)!==47)return EL(t);for(var e=t,r=null,n=null,i=1;i{"use strict";var dT=Zn()("finalhandler"),Jie=fp(),Xie=mp(),OL=Yd(),Yie=Kc(),CL=Hd(),Qie=$g(),ese=/\x20{2}/g,tse=/\n/g,rse=typeof setImmediate=="function"?setImmediate:function(t){process.nextTick(t.bind.apply(t,arguments))},nse=OL.isFinished;function ise(t){var e=Xie(t).replace(tse,"
").replace(ese,"  ");return` +\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},hproman8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"},macintosh:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},ascii:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},tis620:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"}}});var gj=$(hj=>{"use strict";var Yc=la().Buffer;hj._dbcs=Ps;var mn=-1,mj=-2,Xn=-10,Ji=-1e3,Xc=new Array(256),lp=-1;for(Ag=0;Ag<256;Ag++)Xc[Ag]=mn;var Ag;function Ps(t,e){if(this.encodingName=t.encodingName,!t)throw new Error("DBCS codec is called without the data.");if(!t.table)throw new Error("Encoding '"+this.encodingName+"' has no data.");var r=t.table();this.decodeTables=[],this.decodeTables[0]=Xc.slice(0),this.decodeTableSeq=[];for(var n=0;n0;t>>=8)e.push(t&255);e.length==0&&e.push(0);for(var r=this.decodeTables[0],n=e.length-1;n>0;n--){var i=r[e[n]];if(i==mn)r[e[n]]=Ji-this.decodeTables.length,this.decodeTables.push(r=Xc.slice(0));else if(i<=Ji)r=this.decodeTables[Ji-i];else throw new Error("Overwrite byte in "+this.encodingName+", addr: "+t.toString(16))}return r};Ps.prototype._addDecodeChunk=function(t){var e=parseInt(t[0],16),r=this._getDecodeTrieNode(e);e=e&255;for(var n=1;n255)throw new Error("Incorrect chunk in "+this.encodingName+" at addr "+t[0]+": too long"+e)};Ps.prototype._getEncodeBucket=function(t){var e=t>>8;return this.encodeTable[e]===void 0&&(this.encodeTable[e]=Xc.slice(0)),this.encodeTable[e]};Ps.prototype._setEncodeChar=function(t,e){var r=this._getEncodeBucket(t),n=t&255;r[n]<=Xn?this.encodeTableSeq[Xn-r[n]][lp]=e:r[n]==mn&&(r[n]=e)};Ps.prototype._setEncodeSequence=function(t,e){var r=t[0],n=this._getEncodeBucket(r),i=r&255,s;n[i]<=Xn?s=this.encodeTableSeq[Xn-n[i]]:(s={},n[i]!==mn&&(s[lp]=n[i]),n[i]=Xn-this.encodeTableSeq.length,this.encodeTableSeq.push(s));for(var o=1;o=0?this._setEncodeChar(s,o):s<=Ji?this._fillEncodeTable(Ji-s,o<<8,r):s<=Xn&&this._setEncodeSequence(this.decodeTableSeq[Xn-s],o))}};function Ng(t,e){this.leadSurrogate=-1,this.seqObj=void 0,this.encodeTable=e.encodeTable,this.encodeTableSeq=e.encodeTableSeq,this.defaultCharSingleByte=e.defCharSB,this.gb18030=e.gb18030}Ng.prototype.write=function(t){for(var e=Yc.alloc(t.length*(this.gb18030?4:3)),r=this.leadSurrogate,n=this.seqObj,i=-1,s=0,o=0;;){if(i===-1){if(s==t.length)break;var a=t.charCodeAt(s++)}else{var a=i;i=-1}if(55296<=a&&a<57344)if(a<56320)if(r===-1){r=a;continue}else r=a,a=mn;else r!==-1?(a=65536+(r-55296)*1024+(a-56320),r=-1):a=mn;else r!==-1&&(i=a,a=mn,r=-1);var c=mn;if(n!==void 0&&a!=mn){var u=n[a];if(typeof u=="object"){n=u;continue}else typeof u=="number"?c=u:u==null&&(u=n[lp],u!==void 0&&(c=u,i=a));n=void 0}else if(a>=0){var l=this.encodeTable[a>>8];if(l!==void 0&&(c=l[a&255]),c<=Xn){n=this.encodeTableSeq[Xn-c];continue}if(c==mn&&this.gb18030){var d=Hk(this.gb18030.uChars,a);if(d!=-1){var c=this.gb18030.gbChars[d]+(a-this.gb18030.uChars[d]);e[o++]=129+Math.floor(c/12600),c=c%12600,e[o++]=48+Math.floor(c/1260),c=c%1260,e[o++]=129+Math.floor(c/10),c=c%10,e[o++]=48+c;continue}}}c===mn&&(c=this.defaultCharSingleByte),c<256?e[o++]=c:c<65536?(e[o++]=c>>8,e[o++]=c&255):(e[o++]=c>>16,e[o++]=c>>8&255,e[o++]=c&255)}return this.seqObj=n,this.leadSurrogate=r,e.slice(0,o)};Ng.prototype.end=function(){if(!(this.leadSurrogate===-1&&this.seqObj===void 0)){var t=Yc.alloc(10),e=0;if(this.seqObj){var r=this.seqObj[lp];r!==void 0&&(r<256?t[e++]=r:(t[e++]=r>>8,t[e++]=r&255)),this.seqObj=void 0}return this.leadSurrogate!==-1&&(t[e++]=this.defaultCharSingleByte,this.leadSurrogate=-1),t.slice(0,e)}};Ng.prototype.findIdx=Hk;function qk(t,e){this.nodeIdx=0,this.prevBuf=Yc.alloc(0),this.decodeTables=e.decodeTables,this.decodeTableSeq=e.decodeTableSeq,this.defaultCharUnicode=e.defaultCharUnicode,this.gb18030=e.gb18030}qk.prototype.write=function(t){var e=Yc.alloc(t.length*2),r=this.nodeIdx,n=this.prevBuf,i=this.prevBuf.length,s=-this.prevBuf.length,o;i>0&&(n=Yc.concat([n,t.slice(0,10)]));for(var a=0,c=0;a=0?t[a]:n[a+i],o=this.decodeTables[r][u];if(!(o>=0))if(o===mn)a=s,o=this.defaultCharUnicode.charCodeAt(0);else if(o===mj){var l=s>=0?t.slice(s,a+1):n.slice(s+i,a+1+i),d=(l[0]-129)*12600+(l[1]-48)*1260+(l[2]-129)*10+(l[3]-48),p=Hk(this.gb18030.gbChars,d);o=this.gb18030.uChars[p]+d-this.gb18030.gbChars[p]}else if(o<=Ji){r=Ji-o;continue}else if(o<=Xn){for(var f=this.decodeTableSeq[Xn-o],m=0;m>8;o=f[f.length-1]}else throw new Error("iconv-lite internal error: invalid decoding table value "+o+" at "+r+"/"+u);if(o>65535){o-=65536;var h=55296+Math.floor(o/1024);e[c++]=h&255,e[c++]=h>>8,o=56320+o%1024}e[c++]=o&255,e[c++]=o>>8,r=0,s=a+1}return this.nodeIdx=r,this.prevBuf=s>=0?t.slice(s):n.slice(s+i),e.slice(0,c).toString("ucs2")};qk.prototype.end=function(){for(var t="";this.prevBuf.length>0;){t+=this.defaultCharUnicode;var e=this.prevBuf.slice(1);this.prevBuf=Yc.alloc(0),this.nodeIdx=0,e.length>0&&(t+=this.write(e))}return this.nodeIdx=0,t};function Hk(t,e){if(t[0]>e)return-1;for(var r=0,n=t.length;r{tte.exports=[["0","\0",128],["a1","\uFF61",62],["8140","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7"],["8180","\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["81b8","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["81c8","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["81da","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["81f0","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["81fc","\u25EF"],["824f","\uFF10",9],["8260","\uFF21",25],["8281","\uFF41",25],["829f","\u3041",82],["8340","\u30A1",62],["8380","\u30E0",22],["839f","\u0391",16,"\u03A3",6],["83bf","\u03B1",16,"\u03C3",6],["8440","\u0410",5,"\u0401\u0416",25],["8470","\u0430",5,"\u0451\u0436",7],["8480","\u043E",17],["849f","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["8740","\u2460",19,"\u2160",9],["875f","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["877e","\u337B"],["8780","\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["889f","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["8940","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],["8980","\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["8a40","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],["8a80","\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["8b40","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],["8b80","\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["8c40","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],["8c80","\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["8d40","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],["8d80","\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["8e40","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],["8e80","\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["8f40","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],["8f80","\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["9040","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],["9080","\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["9140","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],["9180","\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["9240","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],["9280","\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["9340","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],["9380","\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["9440","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],["9480","\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["9540","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],["9580","\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["9640","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],["9680","\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["9740","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],["9780","\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["9840","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["989f","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["9940","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],["9980","\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["9a40","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],["9a80","\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["9b40","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],["9b80","\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["9c40","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],["9c80","\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["9d40","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],["9d80","\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["9e40","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],["9e80","\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["9f40","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],["9f80","\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["e040","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],["e080","\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e140","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],["e180","\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e240","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],["e280","\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e340","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],["e380","\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e440","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],["e480","\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e540","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],["e580","\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["e640","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],["e680","\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["e740","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],["e780","\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["e840","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],["e880","\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["e940","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],["e980","\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["ea40","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],["ea80","\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],["ed40","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],["ed80","\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["ee40","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],["ee80","\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["eeef","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["f040","\uE000",62],["f080","\uE03F",124],["f140","\uE0BC",62],["f180","\uE0FB",124],["f240","\uE178",62],["f280","\uE1B7",124],["f340","\uE234",62],["f380","\uE273",124],["f440","\uE2F0",62],["f480","\uE32F",124],["f540","\uE3AC",62],["f580","\uE3EB",124],["f640","\uE468",62],["f680","\uE4A7",124],["f740","\uE524",62],["f780","\uE563",124],["f840","\uE5E0",62],["f880","\uE61F",124],["f940","\uE69C"],["fa40","\u2170",9,"\u2160",9,"\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],["fa80","\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],["fb40","\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],["fb80","\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],["fc40","\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]]});var yj=$((oAe,rte)=>{rte.exports=[["0","\0",127],["8ea1","\uFF61",62],["a1a1","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],["a2a1","\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["a2ba","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["a2ca","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["a2dc","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["a2f2","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["a2fe","\u25EF"],["a3b0","\uFF10",9],["a3c1","\uFF21",25],["a3e1","\uFF41",25],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a8a1","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["ada1","\u2460",19,"\u2160",9],["adc0","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["addf","\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["b0a1","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["b1a1","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],["b2a1","\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["b3a1","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],["b4a1","\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["b5a1","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],["b6a1","\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["b7a1","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],["b8a1","\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["b9a1","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],["baa1","\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["bba1","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],["bca1","\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["bda1","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],["bea1","\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["bfa1","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],["c0a1","\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["c1a1","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],["c2a1","\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["c3a1","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],["c4a1","\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["c5a1","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],["c6a1","\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["c7a1","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],["c8a1","\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["c9a1","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],["caa1","\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["cba1","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],["cca1","\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["cda1","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],["cea1","\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["cfa1","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["d0a1","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["d1a1","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],["d2a1","\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["d3a1","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],["d4a1","\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["d5a1","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],["d6a1","\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["d7a1","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],["d8a1","\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["d9a1","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],["daa1","\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["dba1","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],["dca1","\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["dda1","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],["dea1","\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["dfa1","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],["e0a1","\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e1a1","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],["e2a1","\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e3a1","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],["e4a1","\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e5a1","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],["e6a1","\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e7a1","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],["e8a1","\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e9a1","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],["eaa1","\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["eba1","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],["eca1","\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["eda1","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],["eea1","\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["efa1","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],["f0a1","\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["f1a1","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],["f2a1","\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["f3a1","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],["f4a1","\u582F\u69C7\u9059\u7464\u51DC\u7199"],["f9a1","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],["faa1","\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["fba1","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],["fca1","\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["fcf1","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["8fa2af","\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],["8fa2c2","\xA1\xA6\xBF"],["8fa2eb","\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],["8fa6e1","\u0386\u0388\u0389\u038A\u03AA"],["8fa6e7","\u038C"],["8fa6e9","\u038E\u03AB"],["8fa6ec","\u038F"],["8fa6f1","\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],["8fa7c2","\u0402",10,"\u040E\u040F"],["8fa7f2","\u0452",10,"\u045E\u045F"],["8fa9a1","\xC6\u0110"],["8fa9a4","\u0126"],["8fa9a6","\u0132"],["8fa9a8","\u0141\u013F"],["8fa9ab","\u014A\xD8\u0152"],["8fa9af","\u0166\xDE"],["8fa9c1","\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],["8faaa1","\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],["8faaba","\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],["8faba1","\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],["8fabbd","\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],["8fabc5","\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],["8fb0a1","\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],["8fb1a1","\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],["8fb2a1","\u5092\u5093\u5094\u5096\u509B\u509C\u509E",4,"\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],["8fb3a1","\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],["8fb4a1","\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],["8fb5a1","\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],["8fb6a1","\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D",5,"\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4",4,"\u56F1\u56EB\u56ED"],["8fb7a1","\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D",4,"\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],["8fb8a1","\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],["8fb9a1","\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],["8fbaa1","\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6",4,"\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],["8fbba1","\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],["8fbca1","\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A",4,"\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],["8fbda1","\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0",4,"\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],["8fbea1","\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110",4,"\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],["8fbfa1","\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],["8fc0a1","\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],["8fc1a1","\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],["8fc2a1","\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],["8fc3a1","\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E",4,"\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],["8fc4a1","\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],["8fc5a1","\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],["8fc6a1","\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],["8fc7a1","\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],["8fc8a1","\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],["8fc9a1","\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094",4,"\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103",4,"\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],["8fcaa1","\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],["8fcba1","\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],["8fcca1","\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428",9,"\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],["8fcda1","\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579",5,"\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],["8fcea1","\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2",6,"\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],["8fcfa1","\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],["8fd0a1","\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],["8fd1a1","\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],["8fd2a1","\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59",5],["8fd3a1","\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],["8fd4a1","\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2",4,"\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],["8fd5a1","\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],["8fd6a1","\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],["8fd7a1","\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],["8fd8a1","\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],["8fd9a1","\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F",4,"\u8556\u8559\u855C",6,"\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],["8fdaa1","\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660",4,"\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],["8fdba1","\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783",6,"\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],["8fdca1","\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA",4,"\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],["8fdda1","\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4",4,"\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],["8fdea1","\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42",4,"\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],["8fdfa1","\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],["8fe0a1","\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],["8fe1a1","\u8F43\u8F47\u8F4F\u8F51",4,"\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],["8fe2a1","\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],["8fe3a1","\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC",5,"\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275",4,"\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],["8fe4a1","\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF",4,"\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],["8fe5a1","\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9",4,"\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],["8fe6a1","\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],["8fe7a1","\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],["8fe8a1","\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931",4,"\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],["8fe9a1","\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF",4],["8feaa1","\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A",4,"\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],["8feba1","\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26",4,"\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],["8feca1","\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],["8feda1","\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43",4,"\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D",4,"\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]]});var Mg=$((aAe,nte)=>{nte.exports=[["0","\0",127,"\u20AC"],["8140","\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A",5,"\u4E72\u4E74",9,"\u4E7F",6,"\u4E87\u4E8A"],["8180","\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02",6,"\u4F0B\u4F0C\u4F12",4,"\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E",4,"\u4F44\u4F45\u4F47",5,"\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],["8240","\u4FA4\u4FAB\u4FAD\u4FB0",4,"\u4FB6",8,"\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2",4,"\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF",11],["8280","\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F",10,"\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050",4,"\u5056\u5057\u5058\u5059\u505B\u505D",7,"\u5066",5,"\u506D",8,"\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E",20,"\u50A4\u50A6\u50AA\u50AB\u50AD",4,"\u50B3",6,"\u50BC"],["8340","\u50BD",17,"\u50D0",5,"\u50D7\u50D8\u50D9\u50DB",10,"\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6",4,"\u50FC",9,"\u5108"],["8380","\u5109\u510A\u510C",5,"\u5113",13,"\u5122",28,"\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D",4,"\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6",4,"\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2",5],["8440","\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5",5,"\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244",5,"\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],["8480","\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273",9,"\u527E\u5280\u5283",4,"\u5289",6,"\u5291\u5292\u5294",6,"\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4",9,"\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9",5,"\u52E0\u52E1\u52E2\u52E3\u52E5",10,"\u52F1",7,"\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],["8540","\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F",9,"\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],["8580","\u5390",4,"\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF",6,"\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3",4,"\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D",4,"\u5463\u5465\u5467\u5469",7,"\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],["8640","\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0",4,"\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4",5,"\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A",4,"\u5512\u5513\u5515",5,"\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],["8680","\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B",4,"\u5551\u5552\u5553\u5554\u5557",4,"\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F",5,"\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0",6,"\u55A8",8,"\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF",4,"\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7",4,"\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8",4,"\u55FF\u5602\u5603\u5604\u5605"],["8740","\u5606\u5607\u560A\u560B\u560D\u5610",7,"\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640",11,"\u564F",4,"\u5655\u5656\u565A\u565B\u565D",4],["8780","\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D",7,"\u5687",6,"\u5690\u5691\u5692\u5694",14,"\u56A4",10,"\u56B0",6,"\u56B8\u56B9\u56BA\u56BB\u56BD",12,"\u56CB",8,"\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5",5,"\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B",6],["8840","\u5712",9,"\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734",4,"\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752",4,"\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],["8880","\u5781\u5787\u5788\u5789\u578A\u578D",4,"\u5794",6,"\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9",8,"\u57C4",6,"\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5",7,"\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825",4,"\u582B",4,"\u5831\u5832\u5833\u5834\u5836",7],["8940","\u583E",5,"\u5845",6,"\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859",4,"\u585F",5,"\u5866",4,"\u586D",16,"\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],["8980","\u588D",4,"\u5894",4,"\u589B\u589C\u589D\u58A0",7,"\u58AA",17,"\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6",10,"\u58D2\u58D3\u58D4\u58D6",13,"\u58E5",5,"\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA",7,"\u5903\u5905\u5906\u5908",4,"\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],["8a40","\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B",4,"\u5961\u5963\u5964\u5966",12,"\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],["8a80","\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3",5,"\u59BA\u59BC\u59BD\u59BF",6,"\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE",4,"\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED",11,"\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A",6,"\u5A33\u5A35\u5A37",4,"\u5A3D\u5A3E\u5A3F\u5A41",4,"\u5A47\u5A48\u5A4B",9,"\u5A56\u5A57\u5A58\u5A59\u5A5B",5],["8b40","\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B",8,"\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80",17,"\u5A93",6,"\u5A9C",13,"\u5AAB\u5AAC"],["8b80","\u5AAD",4,"\u5AB4\u5AB6\u5AB7\u5AB9",4,"\u5ABF\u5AC0\u5AC3",5,"\u5ACA\u5ACB\u5ACD",4,"\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC",4,"\u5AF2",22,"\u5B0A",11,"\u5B18",25,"\u5B33\u5B35\u5B36\u5B38",7,"\u5B41",6],["8c40","\u5B48",7,"\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],["8c80","\u5BD1\u5BD4",8,"\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9",4,"\u5BEF\u5BF1",6,"\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67",6,"\u5C70\u5C72",6,"\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83",4,"\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D",4,"\u5CA4",4],["8d40","\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5",5,"\u5CCC",5,"\u5CD3",5,"\u5CDA",6,"\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1",9,"\u5CFC",4],["8d80","\u5D01\u5D04\u5D05\u5D08",5,"\u5D0F",4,"\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F",4,"\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F",4,"\u5D35",7,"\u5D3F",7,"\u5D48\u5D49\u5D4D",10,"\u5D59\u5D5A\u5D5C\u5D5E",10,"\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75",12,"\u5D83",21,"\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],["8e40","\u5DA1",21,"\u5DB8",12,"\u5DC6",6,"\u5DCE",12,"\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],["8e80","\u5DF0\u5DF5\u5DF6\u5DF8",4,"\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E",7,"\u5E28",4,"\u5E2F\u5E30\u5E32",4,"\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46",5,"\u5E4D",6,"\u5E56",4,"\u5E5C\u5E5D\u5E5F\u5E60\u5E63",14,"\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8",4,"\u5EAE",4,"\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF",6],["8f40","\u5EC6\u5EC7\u5EC8\u5ECB",5,"\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC",11,"\u5EE9\u5EEB",8,"\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],["8f80","\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32",6,"\u5F3B\u5F3D\u5F3E\u5F3F\u5F41",14,"\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2",5,"\u5FA9\u5FAB\u5FAC\u5FAF",5,"\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE",4,"\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],["9040","\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030",4,"\u6036",4,"\u603D\u603E\u6040\u6044",6,"\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],["9080","\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD",7,"\u60C7\u60C8\u60C9\u60CC",4,"\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1",4,"\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB",4,"\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110",4,"\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C",18,"\u6140",6],["9140","\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156",6,"\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169",6,"\u6171\u6172\u6173\u6174\u6176\u6178",18,"\u618C\u618D\u618F",4,"\u6195"],["9180","\u6196",6,"\u619E",8,"\u61AA\u61AB\u61AD",9,"\u61B8",5,"\u61BF\u61C0\u61C1\u61C3",4,"\u61C9\u61CC",4,"\u61D3\u61D5",16,"\u61E7",13,"\u61F6",8,"\u6200",5,"\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238",4,"\u6242\u6244\u6245\u6246\u624A"],["9240","\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C",6,"\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B",5,"\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],["9280","\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333",5,"\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356",7,"\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399",6,"\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],["9340","\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7",6,"\u63DF\u63E2\u63E4",4,"\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406",4,"\u640D\u640E\u6411\u6412\u6415",5,"\u641D\u641F\u6422\u6423\u6424"],["9380","\u6425\u6427\u6428\u6429\u642B\u642E",5,"\u6435",4,"\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B",6,"\u6453\u6455\u6456\u6457\u6459",4,"\u645F",7,"\u6468\u646A\u646B\u646C\u646E",9,"\u647B",6,"\u6483\u6486\u6488",8,"\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F",4,"\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6",6,"\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],["9440","\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7",24,"\u6501",7,"\u650A",7,"\u6513",4,"\u6519",8],["9480","\u6522\u6523\u6524\u6526",4,"\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540",4,"\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578",14,"\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1",7,"\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8",7,"\u65E1\u65E3\u65E4\u65EA\u65EB"],["9540","\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB",4,"\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637",4,"\u663D\u663F\u6640\u6642\u6644",6,"\u664D\u664E\u6650\u6651\u6658"],["9580","\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669",4,"\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698",4,"\u669E",8,"\u66A9",4,"\u66AF",4,"\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF",25,"\u66DA\u66DE",7,"\u66E7\u66E8\u66EA",5,"\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],["9640","\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720",5,"\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757",4,"\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],["9680","\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9",7,"\u67C2\u67C5",9,"\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5",7,"\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818",4,"\u681E\u681F\u6820\u6822",6,"\u682B",6,"\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856",5],["9740","\u685C\u685D\u685E\u685F\u686A\u686C",7,"\u6875\u6878",8,"\u6882\u6884\u6887",7,"\u6890\u6891\u6892\u6894\u6895\u6896\u6898",9,"\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],["9780","\u68B9",6,"\u68C1\u68C3",5,"\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB",4,"\u68E1\u68E2\u68E4",9,"\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906",4,"\u690C\u690F\u6911\u6913",11,"\u6921\u6922\u6923\u6925",7,"\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943",16,"\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],["9840","\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972",4,"\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E",5,"\u6996\u6997\u6999\u699A\u699D",9,"\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],["9880","\u69BE\u69BF\u69C0\u69C2",7,"\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5",5,"\u69DC\u69DD\u69DE\u69E1",11,"\u69EE\u69EF\u69F0\u69F1\u69F3",9,"\u69FE\u6A00",9,"\u6A0B",11,"\u6A19",5,"\u6A20\u6A22",5,"\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36",6,"\u6A3F",4,"\u6A45\u6A46\u6A48",7,"\u6A51",6,"\u6A5A"],["9940","\u6A5C",4,"\u6A62\u6A63\u6A64\u6A66",10,"\u6A72",6,"\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85",8,"\u6A8F\u6A92",4,"\u6A98",7,"\u6AA1",5],["9980","\u6AA7\u6AA8\u6AAA\u6AAD",114,"\u6B25\u6B26\u6B28",6],["9a40","\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D",11,"\u6B5A",7,"\u6B68\u6B69\u6B6B",13,"\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],["9a80","\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C",4,"\u6BA2",7,"\u6BAB",7,"\u6BB6\u6BB8",6,"\u6BC0\u6BC3\u6BC4\u6BC6",4,"\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC",4,"\u6BE2",7,"\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE",6,"\u6C08",4,"\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B",4,"\u6C51\u6C52\u6C53\u6C56\u6C58"],["9b40","\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B",4,"\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],["9b80","\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F",5,"\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D",4,"\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96",4,"\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9",5,"\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],["9c40","\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD",7,"\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],["9c80","\u6E36\u6E37\u6E39\u6E3B",7,"\u6E45",7,"\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60",10,"\u6E6C\u6E6D\u6E6F",14,"\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A",4,"\u6E91",6,"\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA",5],["9d40","\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA",7,"\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A",4,"\u6F10\u6F11\u6F12\u6F16",9,"\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37",6,"\u6F3F\u6F40\u6F41\u6F42"],["9d80","\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E",9,"\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67",5,"\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D",6,"\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F",12,"\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2",4,"\u6FA8",10,"\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA",5,"\u6FC1\u6FC3",5,"\u6FCA",6,"\u6FD3",10,"\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],["9e40","\u6FE6",7,"\u6FF0",32,"\u7012",7,"\u701C",6,"\u7024",6],["9e80","\u702B",9,"\u7036\u7037\u7038\u703A",17,"\u704D\u704E\u7050",13,"\u705F",11,"\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E",12,"\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB",12,"\u70DA"],["9f40","\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0",6,"\u70F8\u70FA\u70FB\u70FC\u70FE",10,"\u710B",4,"\u7111\u7112\u7114\u7117\u711B",10,"\u7127",7,"\u7132\u7133\u7134"],["9f80","\u7135\u7137",13,"\u7146\u7147\u7148\u7149\u714B\u714D\u714F",12,"\u715D\u715F",4,"\u7165\u7169",4,"\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E",5,"\u7185",4,"\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A",4,"\u71A1",6,"\u71A9\u71AA\u71AB\u71AD",5,"\u71B4\u71B6\u71B7\u71B8\u71BA",8,"\u71C4",9,"\u71CF",4],["a040","\u71D6",9,"\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8",5,"\u71EF",9,"\u71FA",11,"\u7207",19],["a080","\u721B\u721C\u721E",9,"\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240",6,"\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285",4,"\u728C\u728E\u7290\u7291\u7293",11,"\u72A0",11,"\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA",6,"\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],["a1a1","\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008",7,"\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],["a2a1","\u2170",9],["a2b1","\u2488",19,"\u2474",19,"\u2460",9],["a2e5","\u3220",9],["a2f1","\u2160",11],["a3a1","\uFF01\uFF02\uFF03\uFFE5\uFF05",88,"\uFFE3"],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a6e0","\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],["a6ee","\uFE3B\uFE3C\uFE37\uFE38\uFE31"],["a6f4","\uFE33\uFE34"],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a840","\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550",35,"\u2581",6],["a880","\u2588",7,"\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],["a8a1","\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],["a8bd","\u0144\u0148"],["a8c0","\u0261"],["a8c5","\u3105",36],["a940","\u3021",8,"\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],["a959","\u2121\u3231"],["a95c","\u2010"],["a960","\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49",9,"\uFE54\uFE55\uFE56\uFE57\uFE59",8],["a980","\uFE62",4,"\uFE68\uFE69\uFE6A\uFE6B"],["a996","\u3007"],["a9a4","\u2500",75],["aa40","\u72DC\u72DD\u72DF\u72E2",5,"\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304",5,"\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340",8],["aa80","\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358",7,"\u7361",10,"\u736E\u7370\u7371"],["ab40","\u7372",11,"\u737F",4,"\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3",5,"\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3",4],["ab80","\u73CB\u73CC\u73CE\u73D2",6,"\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3",4],["ac40","\u73F8",10,"\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411",8,"\u741C",5,"\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437",4,"\u743D\u743E\u743F\u7440\u7442",11],["ac80","\u744E",6,"\u7456\u7458\u745D\u7460",12,"\u746E\u746F\u7471",4,"\u7478\u7479\u747A"],["ad40","\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491",10,"\u749D\u749F",7,"\u74AA",15,"\u74BB",12],["ad80","\u74C8",9,"\u74D3",8,"\u74DD\u74DF\u74E1\u74E5\u74E7",6,"\u74F0\u74F1\u74F2"],["ae40","\u74F3\u74F5\u74F8",6,"\u7500\u7501\u7502\u7503\u7505",7,"\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520",4,"\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],["ae80","\u755D",7,"\u7567\u7568\u7569\u756B",6,"\u7573\u7575\u7576\u7577\u757A",4,"\u7580\u7581\u7582\u7584\u7585\u7587"],["af40","\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6",4,"\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],["af80","\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],["b040","\u7645",6,"\u764E",5,"\u7655\u7657",4,"\u765D\u765F\u7660\u7661\u7662\u7664",6,"\u766C\u766D\u766E\u7670",7,"\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],["b080","\u769C",7,"\u76A5",8,"\u76AF\u76B0\u76B3\u76B5",9,"\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],["b140","\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0",4,"\u76E6",7,"\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E",10,"\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],["b180","\u772C\u772E\u7730",4,"\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748",7,"\u7752",7,"\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],["b240","\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D",11,"\u777A\u777B\u777C\u7781\u7782\u7783\u7786",5,"\u778F\u7790\u7793",11,"\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6",4],["b280","\u77BC\u77BE\u77C0",12,"\u77CE",8,"\u77D8\u77D9\u77DA\u77DD",4,"\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],["b340","\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803",5,"\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],["b380","\u785B\u785C\u785E",11,"\u786F",7,"\u7878\u7879\u787A\u787B\u787D",6,"\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],["b440","\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8",7,"\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA",9],["b480","\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED",4,"\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB",5,"\u7902\u7903\u7904\u7906",6,"\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],["b540","\u790D",5,"\u7914",9,"\u791F",4,"\u7925",14,"\u7935",4,"\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A",8,"\u7954\u7955\u7958\u7959\u7961\u7963"],["b580","\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970",6,"\u7979\u797B",4,"\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],["b640","\u7993",6,"\u799B",11,"\u79A8",10,"\u79B4",4,"\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9",5,"\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],["b680","\u79EC\u79EE\u79F1",6,"\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F",4,"\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],["b740","\u7A1D\u7A1F\u7A21\u7A22\u7A24",14,"\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40",5,"\u7A47",9,"\u7A52",4,"\u7A58",16],["b780","\u7A69",6,"\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],["b840","\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE",4,"\u7AB4",10,"\u7AC0",10,"\u7ACC",9,"\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7",5,"\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],["b880","\u7AF4",4,"\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],["b940","\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F",5,"\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63",10,"\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86",6,"\u7B8E\u7B8F"],["b980","\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9",7,"\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],["ba40","\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4",4,"\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2",4,"\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF",7,"\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10",5,"\u7C17\u7C18\u7C19"],["ba80","\u7C1A",4,"\u7C20",5,"\u7C28\u7C29\u7C2B",12,"\u7C39",5,"\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],["bb40","\u7C43",9,"\u7C4E",36,"\u7C75",5,"\u7C7E",9],["bb80","\u7C88\u7C8A",6,"\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4",4,"\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],["bc40","\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE",6,"\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1",6,"\u7CE9",5,"\u7CF0",7,"\u7CF9\u7CFA\u7CFC",13,"\u7D0B",5],["bc80","\u7D11",14,"\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30",6,"\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],["bd40","\u7D37",54,"\u7D6F",7],["bd80","\u7D78",32,"\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],["be40","\u7D99",12,"\u7DA7",6,"\u7DAF",42],["be80","\u7DDA",32,"\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],["bf40","\u7DFB",62],["bf80","\u7E3A\u7E3C",4,"\u7E42",4,"\u7E48",21,"\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],["c040","\u7E5E",35,"\u7E83",23,"\u7E9C\u7E9D\u7E9E"],["c080","\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B",6,"\u7F43\u7F46",9,"\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],["c140","\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63",4,"\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82",7,"\u7F8B\u7F8D\u7F8F",4,"\u7F95",4,"\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8",6,"\u7FB1"],["c180","\u7FB3",4,"\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF",4,"\u7FD6\u7FD7\u7FD9",5,"\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],["c240","\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4",6,"\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B",5,"\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],["c280","\u8059\u805B",13,"\u806B",5,"\u8072",11,"\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],["c340","\u807E\u8081\u8082\u8085\u8088\u808A\u808D",5,"\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7",4,"\u80CF",6,"\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],["c380","\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F",12,"\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139",4,"\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],["c440","\u8140",5,"\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B",4,"\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183",4,"\u8189\u818B\u818C\u818D\u818E\u8190\u8192",5,"\u8199\u819A\u819E",4,"\u81A4\u81A5"],["c480","\u81A7\u81A9\u81AB",7,"\u81B4",5,"\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD",6,"\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],["c540","\u81D4",14,"\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE",4,"\u81F5",5,"\u81FD\u81FF\u8203\u8207",4,"\u820E\u820F\u8211\u8213\u8215",5,"\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],["c580","\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250",7,"\u8259\u825B\u825C\u825D\u825E\u8260",7,"\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],["c640","\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],["c680","\u82FA\u82FC",4,"\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D",9,"\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],["c740","\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A",4,"\u8353\u8355",4,"\u835D\u8362\u8370",6,"\u8379\u837A\u837E",6,"\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1",6,"\u83AC\u83AD\u83AE"],["c780","\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],["c840","\u83EE\u83EF\u83F3",4,"\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412",5,"\u8419\u841A\u841B\u841E",5,"\u8429",7,"\u8432",5,"\u8439\u843A\u843B\u843E",7,"\u8447\u8448\u8449"],["c880","\u844A",6,"\u8452",4,"\u8458\u845D\u845E\u845F\u8460\u8462\u8464",4,"\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],["c940","\u847D",4,"\u8483\u8484\u8485\u8486\u848A\u848D\u848F",7,"\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2",12,"\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],["c980","\u84D8",4,"\u84DE\u84E1\u84E2\u84E4\u84E7",4,"\u84ED\u84EE\u84EF\u84F1",10,"\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],["ca40","\u8503",8,"\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522",8,"\u852D",9,"\u853E",4,"\u8544\u8545\u8546\u8547\u854B",10],["ca80","\u8557\u8558\u855A\u855B\u855C\u855D\u855F",4,"\u8565\u8566\u8567\u8569",8,"\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],["cb40","\u8582\u8583\u8586\u8588",6,"\u8590",10,"\u859D",6,"\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1",5,"\u85B8\u85BA",6,"\u85C2",6,"\u85CA",4,"\u85D1\u85D2"],["cb80","\u85D4\u85D6",5,"\u85DD",6,"\u85E5\u85E6\u85E7\u85E8\u85EA",14,"\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],["cc40","\u85F9\u85FA\u85FC\u85FD\u85FE\u8600",4,"\u8606",10,"\u8612\u8613\u8614\u8615\u8617",15,"\u8628\u862A",13,"\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],["cc80","\u8641",11,"\u8652\u8653\u8655",4,"\u865B\u865C\u865D\u865F\u8660\u8661\u8663",7,"\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],["cd40","\u866D\u866F\u8670\u8672",6,"\u8683",6,"\u868E",4,"\u8694\u8696",5,"\u869E",4,"\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB",4,"\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],["cd80","\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],["ce40","\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740",6,"\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A",5,"\u8761\u8762\u8766",7,"\u876F\u8771\u8772\u8773\u8775"],["ce80","\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E",4,"\u8794\u8795\u8796\u8798",6,"\u87A0",4,"\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],["cf40","\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1",4,"\u87C7\u87C8\u87C9\u87CC",4,"\u87D4",6,"\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF",9],["cf80","\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804",5,"\u880B",7,"\u8814\u8817\u8818\u8819\u881A\u881C",4,"\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],["d040","\u8824",13,"\u8833",5,"\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846",5,"\u884E",5,"\u8855\u8856\u8858\u885A",6,"\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],["d080","\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897",4,"\u889D",4,"\u88A3\u88A5",5,"\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],["d140","\u88AC\u88AE\u88AF\u88B0\u88B2",4,"\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA",4,"\u88E0\u88E1\u88E6\u88E7\u88E9",6,"\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903",5],["d180","\u8909\u890B",4,"\u8911\u8914",4,"\u891C",4,"\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],["d240","\u8938",8,"\u8942\u8943\u8945",24,"\u8960",5,"\u8967",19,"\u897C"],["d280","\u897D\u897E\u8980\u8982\u8984\u8985\u8987",26,"\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],["d340","\u89A2",30,"\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4",6],["d380","\u89FB",4,"\u8A01",5,"\u8A08",21,"\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],["d440","\u8A1E",31,"\u8A3F",8,"\u8A49",21],["d480","\u8A5F",25,"\u8A7A",6,"\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],["d540","\u8A81",7,"\u8A8B",7,"\u8A94",46],["d580","\u8AC3",32,"\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],["d640","\u8AE4",34,"\u8B08",27],["d680","\u8B24\u8B25\u8B27",30,"\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],["d740","\u8B46",31,"\u8B67",4,"\u8B6D",25],["d780","\u8B87",24,"\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],["d840","\u8C38",8,"\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D",7,"\u8C56\u8C57\u8C58\u8C59\u8C5B",5,"\u8C63",6,"\u8C6C",6,"\u8C74\u8C75\u8C76\u8C77\u8C7B",6,"\u8C83\u8C84\u8C86\u8C87"],["d880","\u8C88\u8C8B\u8C8D",6,"\u8C95\u8C96\u8C97\u8C99",20,"\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],["d940","\u8CAE",62],["d980","\u8CED",32,"\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],["da40","\u8D0E",14,"\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78",8,"\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C",4,"\u8D92\u8D93\u8D95",9,"\u8DA0\u8DA1"],["da80","\u8DA2\u8DA4",12,"\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],["db40","\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE",6,"\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15",7,"\u8E20\u8E21\u8E24",4,"\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],["db80","\u8E3F\u8E43\u8E45\u8E46\u8E4C",4,"\u8E53",5,"\u8E5A",11,"\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],["dc40","\u8E73\u8E75\u8E77",4,"\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88",6,"\u8E91\u8E92\u8E93\u8E95",6,"\u8E9D\u8E9F",11,"\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3",6,"\u8EBB",7],["dc80","\u8EC3",10,"\u8ECF",21,"\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],["dd40","\u8EE5",62],["dd80","\u8F24",32,"\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],["de40","\u8F45",32,"\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],["de80","\u8FC9",4,"\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],["df40","\u9019\u901C\u9023\u9024\u9025\u9027",5,"\u9030",4,"\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048",4,"\u904E\u9054\u9055\u9056\u9059\u905A\u905C",5,"\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F",4,"\u9076",6,"\u907E\u9081"],["df80","\u9084\u9085\u9086\u9087\u9089\u908A\u908C",4,"\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],["e040","\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105",19,"\u911A\u911B\u911C"],["e080","\u911D\u911F\u9120\u9121\u9124",10,"\u9130\u9132",6,"\u913A",8,"\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],["e140","\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180",4,"\u9186\u9188\u918A\u918E\u918F\u9193",6,"\u919C",5,"\u91A4",5,"\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],["e180","\u91BC",10,"\u91C8\u91CB\u91D0\u91D2",9,"\u91DD",8,"\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],["e240","\u91E6",62],["e280","\u9225",32,"\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967",5,"\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],["e340","\u9246",45,"\u9275",16],["e380","\u9286",7,"\u928F",24,"\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],["e440","\u92A8",5,"\u92AF",24,"\u92C9",31],["e480","\u92E9",32,"\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],["e540","\u930A",51,"\u933F",10],["e580","\u934A",31,"\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],["e640","\u936C",34,"\u9390",27],["e680","\u93AC",29,"\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],["e740","\u93CE",7,"\u93D7",54],["e780","\u940E",32,"\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21",6,"\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F",4,"\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],["e840","\u942F",14,"\u943F",43,"\u946C\u946D\u946E\u946F"],["e880","\u9470",20,"\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],["e940","\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577",7,"\u9580",42],["e980","\u95AB",32,"\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],["ea40","\u95CC",27,"\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623",6,"\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],["ea80","\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D",4,"\u9673\u9678",12,"\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],["eb40","\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D",9,"\u96A8",7,"\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6",9,"\u96E1",6,"\u96EB"],["eb80","\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717",4,"\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],["ec40","\u9721",8,"\u972B\u972C\u972E\u972F\u9731\u9733",4,"\u973A\u973B\u973C\u973D\u973F",18,"\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A",7],["ec80","\u9772\u9775\u9777",4,"\u977D",7,"\u9786",4,"\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799",4,"\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],["ed40","\u979E\u979F\u97A1\u97A2\u97A4",6,"\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5",46],["ed80","\u97E4\u97E5\u97E8\u97EE",4,"\u97F4\u97F7",23,"\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],["ee40","\u980F",62],["ee80","\u984E",32,"\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6",4,"\u94BC\u94BD\u94BF\u94C4\u94C8",6,"\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],["ef40","\u986F",5,"\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8",37,"\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0",4],["ef80","\u98E5\u98E6\u98E9",30,"\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512",4,"\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564",8,"\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],["f040","\u9908",4,"\u990E\u990F\u9911",28,"\u992F",26],["f080","\u994A",9,"\u9956",12,"\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28",4,"\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66",6,"\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],["f140","\u998C\u998E\u999A",10,"\u99A6\u99A7\u99A9",47],["f180","\u99D9",32,"\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],["f240","\u99FA",62],["f280","\u9A39",32,"\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],["f340","\u9A5A",17,"\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9",6,"\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6",4,"\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],["f380","\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0",8,"\u9AFA\u9AFC",6,"\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],["f440","\u9B07\u9B09",5,"\u9B10\u9B11\u9B12\u9B14",10,"\u9B20\u9B21\u9B22\u9B24",10,"\u9B30\u9B31\u9B33",7,"\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55",5],["f480","\u9B5B",32,"\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],["f540","\u9B7C",62],["f580","\u9BBB",32,"\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],["f640","\u9BDC",62],["f680","\u9C1B",32,"\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85",5,"\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E",5,"\u9CA5",4,"\u9CAB\u9CAD\u9CAE\u9CB0",7,"\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],["f740","\u9C3C",62],["f780","\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE",4,"\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC",4,"\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],["f840","\u9CE3",62],["f880","\u9D22",32],["f940","\u9D43",62],["f980","\u9D82",32],["fa40","\u9DA3",62],["fa80","\u9DE2",32],["fb40","\u9E03",27,"\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74",9,"\u9E80"],["fb80","\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C",5,"\u9E94",8,"\u9E9E\u9EA0",5,"\u9EA7\u9EA8\u9EA9\u9EAA"],["fc40","\u9EAB",8,"\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF",4,"\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0",8,"\u9EFA\u9EFD\u9EFF",6],["fc80","\u9F06",4,"\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A",5,"\u9F21\u9F23",8,"\u9F2D\u9F2E\u9F30\u9F31"],["fd40","\u9F32",4,"\u9F38\u9F3A\u9F3C\u9F3F",4,"\u9F45",10,"\u9F52",38],["fd80","\u9F79",5,"\u9F81\u9F82\u9F8D",11,"\u9F9C\u9F9D\u9F9E\u9FA1",4,"\uF92C\uF979\uF995\uF9E7\uF9F1"],["fe40","\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]]});var Zk=$((cAe,ite)=>{ite.exports=[["a140","\uE4C6",62],["a180","\uE505",32],["a240","\uE526",62],["a280","\uE565",32],["a2ab","\uE766",5],["a2e3","\u20AC\uE76D"],["a2ef","\uE76E\uE76F"],["a2fd","\uE770\uE771"],["a340","\uE586",62],["a380","\uE5C5",31,"\u3000"],["a440","\uE5E6",62],["a480","\uE625",32],["a4f4","\uE772",10],["a540","\uE646",62],["a580","\uE685",32],["a5f7","\uE77D",7],["a640","\uE6A6",62],["a680","\uE6E5",32],["a6b9","\uE785",7],["a6d9","\uE78D",6],["a6ec","\uE794\uE795"],["a6f3","\uE796"],["a6f6","\uE797",8],["a740","\uE706",62],["a780","\uE745",32],["a7c2","\uE7A0",14],["a7f2","\uE7AF",12],["a896","\uE7BC",10],["a8bc","\uE7C7"],["a8bf","\u01F9"],["a8c1","\uE7C9\uE7CA\uE7CB\uE7CC"],["a8ea","\uE7CD",20],["a958","\uE7E2"],["a95b","\uE7E3"],["a95d","\uE7E4\uE7E5\uE7E6"],["a989","\u303E\u2FF0",11],["a997","\uE7F4",12],["a9f0","\uE801",14],["aaa1","\uE000",93],["aba1","\uE05E",93],["aca1","\uE0BC",93],["ada1","\uE11A",93],["aea1","\uE178",93],["afa1","\uE1D6",93],["d7fa","\uE810",4],["f8a1","\uE234",93],["f9a1","\uE292",93],["faa1","\uE2F0",93],["fba1","\uE34E",93],["fca1","\uE3AC",93],["fda1","\uE40A",93],["fe50","\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],["fe80","\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13",6,"\u4DAE\uE864\uE468",93]]});var _j=$((uAe,ste)=>{ste.exports={uChars:[128,165,169,178,184,216,226,235,238,244,248,251,253,258,276,284,300,325,329,334,364,463,465,467,469,471,473,475,477,506,594,610,712,716,730,930,938,962,970,1026,1104,1106,8209,8215,8218,8222,8231,8241,8244,8246,8252,8365,8452,8454,8458,8471,8482,8556,8570,8596,8602,8713,8720,8722,8726,8731,8737,8740,8742,8748,8751,8760,8766,8777,8781,8787,8802,8808,8816,8854,8858,8870,8896,8979,9322,9372,9548,9588,9616,9622,9634,9652,9662,9672,9676,9680,9702,9735,9738,9793,9795,11906,11909,11913,11917,11928,11944,11947,11951,11956,11960,11964,11979,12284,12292,12312,12319,12330,12351,12436,12447,12535,12543,12586,12842,12850,12964,13200,13215,13218,13253,13263,13267,13270,13384,13428,13727,13839,13851,14617,14703,14801,14816,14964,15183,15471,15585,16471,16736,17208,17325,17330,17374,17623,17997,18018,18212,18218,18301,18318,18760,18811,18814,18820,18823,18844,18848,18872,19576,19620,19738,19887,40870,59244,59336,59367,59413,59417,59423,59431,59437,59443,59452,59460,59478,59493,63789,63866,63894,63976,63986,64016,64018,64021,64025,64034,64037,64042,65074,65093,65107,65112,65127,65132,65375,65510,65536],gbChars:[0,36,38,45,50,81,89,95,96,100,103,104,105,109,126,133,148,172,175,179,208,306,307,308,309,310,311,312,313,341,428,443,544,545,558,741,742,749,750,805,819,820,7922,7924,7925,7927,7934,7943,7944,7945,7950,8062,8148,8149,8152,8164,8174,8236,8240,8262,8264,8374,8380,8381,8384,8388,8390,8392,8393,8394,8396,8401,8406,8416,8419,8424,8437,8439,8445,8482,8485,8496,8521,8603,8936,8946,9046,9050,9063,9066,9076,9092,9100,9108,9111,9113,9131,9162,9164,9218,9219,11329,11331,11334,11336,11346,11361,11363,11366,11370,11372,11375,11389,11682,11686,11687,11692,11694,11714,11716,11723,11725,11730,11736,11982,11989,12102,12336,12348,12350,12384,12393,12395,12397,12510,12553,12851,12962,12973,13738,13823,13919,13933,14080,14298,14585,14698,15583,15847,16318,16434,16438,16481,16729,17102,17122,17315,17320,17402,17418,17859,17909,17911,17915,17916,17936,17939,17961,18664,18703,18814,18962,19043,33469,33470,33471,33484,33485,33490,33497,33501,33505,33513,33520,33536,33550,37845,37921,37948,38029,38038,38064,38065,38066,38069,38075,38076,38078,39108,39109,39113,39114,39115,39116,39265,39394,189e3]}});var bj=$((lAe,ote)=>{ote.exports=[["0","\0",127],["8141","\uAC02\uAC03\uAC05\uAC06\uAC0B",4,"\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25",6,"\uAC2E\uAC32\uAC33\uAC34"],["8161","\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41",9,"\uAC4C\uAC4E",5,"\uAC55"],["8181","\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D",18,"\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B",4,"\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95",6,"\uAC9E\uACA2",5,"\uACAB\uACAD\uACAE\uACB1",6,"\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD",7,"\uACD6\uACD8",7,"\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7",4,"\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07",4,"\uAD0E\uAD10\uAD12\uAD13"],["8241","\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21",7,"\uAD2A\uAD2B\uAD2E",5],["8261","\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D",6,"\uAD46\uAD48\uAD4A",5,"\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],["8281","\uAD59",7,"\uAD62\uAD64",7,"\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83",4,"\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91",10,"\uAD9E",5,"\uADA5",17,"\uADB8",7,"\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9",6,"\uADD2\uADD4",7,"\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5",18],["8341","\uADFA\uADFB\uADFD\uADFE\uAE02",5,"\uAE0A\uAE0C\uAE0E",5,"\uAE15",7],["8361","\uAE1D",18,"\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],["8381","\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57",4,"\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71",6,"\uAE7A\uAE7E",5,"\uAE86",5,"\uAE8D",46,"\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5",6,"\uAECE\uAED2",5,"\uAEDA\uAEDB\uAEDD",8],["8441","\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE",5,"\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD",8],["8461","\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11",18],["8481","\uAF24",7,"\uAF2E\uAF2F\uAF31\uAF33\uAF35",6,"\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A",5,"\uAF51",10,"\uAF5E",5,"\uAF66",18,"\uAF7A",5,"\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89",6,"\uAF92\uAF93\uAF94\uAF96",5,"\uAF9D",26,"\uAFBA\uAFBB\uAFBD\uAFBE"],["8541","\uAFBF\uAFC1",5,"\uAFCA\uAFCC\uAFCF",4,"\uAFD5",6,"\uAFDD",4],["8561","\uAFE2",5,"\uAFEA",5,"\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9",6,"\uB002\uB003"],["8581","\uB005",6,"\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015",6,"\uB01E",9,"\uB029",26,"\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E",29,"\uB07E\uB07F\uB081\uB082\uB083\uB085",6,"\uB08E\uB090\uB092",5,"\uB09B\uB09D\uB09E\uB0A3\uB0A4"],["8641","\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD",6,"\uB0C6\uB0CA",5,"\uB0D2"],["8661","\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9",6,"\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6",10],["8681","\uB0F1",22,"\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E",4,"\uB126\uB127\uB129\uB12A\uB12B\uB12D",6,"\uB136\uB13A",5,"\uB142\uB143\uB145\uB146\uB147\uB149",6,"\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161",22,"\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183",4,"\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],["8741","\uB19E",9,"\uB1A9",15],["8761","\uB1B9",18,"\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],["8781","\uB1D6",5,"\uB1DE\uB1E0",7,"\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1",7,"\uB1FA\uB1FC\uB1FE",5,"\uB206\uB207\uB209\uB20A\uB20D",6,"\uB216\uB218\uB21A",5,"\uB221",18,"\uB235",6,"\uB23D",26,"\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261",6,"\uB26A",4],["8841","\uB26F",4,"\uB276",5,"\uB27D",6,"\uB286\uB287\uB288\uB28A",4],["8861","\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B",4,"\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],["8881","\uB2B8",15,"\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3",4,"\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309",6,"\uB312\uB316",5,"\uB31D",54,"\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],["8941","\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379",6,"\uB382\uB386",5,"\uB38D"],["8961","\uB38E\uB38F\uB391\uB392\uB393\uB395",10,"\uB3A2",5,"\uB3A9\uB3AA\uB3AB\uB3AD"],["8981","\uB3AE",21,"\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9",18,"\uB3FD",18,"\uB411",6,"\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421",6,"\uB42A\uB42C",7,"\uB435",15],["8a41","\uB445",10,"\uB452\uB453\uB455\uB456\uB457\uB459",6,"\uB462\uB464\uB466"],["8a61","\uB467",4,"\uB46D",18,"\uB481\uB482"],["8a81","\uB483",4,"\uB489",19,"\uB49E",5,"\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD",7,"\uB4B6\uB4B8\uB4BA",5,"\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9",6,"\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6",5,"\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7",4,"\uB4EE\uB4F0\uB4F2",5,"\uB4F9",26,"\uB516\uB517\uB519\uB51A\uB51D"],["8b41","\uB51E",5,"\uB526\uB52B",4,"\uB532\uB533\uB535\uB536\uB537\uB539",6,"\uB542\uB546"],["8b61","\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555",6,"\uB55E\uB562",8],["8b81","\uB56B",52,"\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6",4,"\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5",6,"\uB5CE\uB5D2",5,"\uB5D9",18,"\uB5ED",18],["8c41","\uB600",15,"\uB612\uB613\uB615\uB616\uB617\uB619",4],["8c61","\uB61E",6,"\uB626",5,"\uB62D",6,"\uB635",5],["8c81","\uB63B",12,"\uB649",26,"\uB665\uB666\uB667\uB669",50,"\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5",5,"\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2",16],["8d41","\uB6C3",16,"\uB6D5",8],["8d61","\uB6DE",17,"\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],["8d81","\uB6FB",4,"\uB702\uB703\uB704\uB706",33,"\uB72A\uB72B\uB72D\uB72E\uB731",6,"\uB73A\uB73C",7,"\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D",6,"\uB756",9,"\uB761\uB762\uB763\uB765\uB766\uB767\uB769",6,"\uB772\uB774\uB776",5,"\uB77E\uB77F\uB781\uB782\uB783\uB785",6,"\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],["8e41","\uB79F\uB7A1",6,"\uB7AA\uB7AE",5,"\uB7B6\uB7B7\uB7B9",8],["8e61","\uB7C2",4,"\uB7C8\uB7CA",19],["8e81","\uB7DE",13,"\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5",6,"\uB7FE\uB802",4,"\uB80A\uB80B\uB80D\uB80E\uB80F\uB811",6,"\uB81A\uB81C\uB81E",5,"\uB826\uB827\uB829\uB82A\uB82B\uB82D",6,"\uB836\uB83A",5,"\uB841\uB842\uB843\uB845",11,"\uB852\uB854",7,"\uB85E\uB85F\uB861\uB862\uB863\uB865",6,"\uB86E\uB870\uB872",5,"\uB879\uB87A\uB87B\uB87D",7],["8f41","\uB885",7,"\uB88E",17],["8f61","\uB8A0",7,"\uB8A9",6,"\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9",4],["8f81","\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6",5,"\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5",7,"\uB8DE\uB8E0\uB8E2",5,"\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1",6,"\uB8FA\uB8FC\uB8FE",5,"\uB905",18,"\uB919",6,"\uB921",26,"\uB93E\uB93F\uB941\uB942\uB943\uB945",6,"\uB94D\uB94E\uB950\uB952",5],["9041","\uB95A\uB95B\uB95D\uB95E\uB95F\uB961",6,"\uB96A\uB96C\uB96E",5,"\uB976\uB977\uB979\uB97A\uB97B\uB97D"],["9061","\uB97E",5,"\uB986\uB988\uB98B\uB98C\uB98F",15],["9081","\uB99F",12,"\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5",6,"\uB9BE\uB9C0\uB9C2",5,"\uB9CA\uB9CB\uB9CD\uB9D3",4,"\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED",6,"\uB9F6\uB9FB",4,"\uBA02",5,"\uBA09",11,"\uBA16",33,"\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],["9141","\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D",6,"\uBA66\uBA6A",5],["9161","\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79",9,"\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D",5],["9181","\uBA93",20,"\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3",4,"\uBABA\uBABC\uBABE",5,"\uBAC5\uBAC6\uBAC7\uBAC9",14,"\uBADA",33,"\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05",7,"\uBB0E\uBB10\uBB12",5,"\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21",6],["9241","\uBB28\uBB2A\uBB2C",7,"\uBB37\uBB39\uBB3A\uBB3F",4,"\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],["9261","\uBB53\uBB55\uBB56\uBB57\uBB59",7,"\uBB62\uBB64",7,"\uBB6D",4],["9281","\uBB72",21,"\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91",18,"\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD",6,"\uBBB5\uBBB6\uBBB8",7,"\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9",6,"\uBBD1\uBBD2\uBBD4",35,"\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],["9341","\uBC03",4,"\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],["9361","\uBC36\uBC37\uBC39",6,"\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51",8],["9381","\uBC5A\uBC5B\uBC5C\uBC5E",37,"\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F",4,"\uBC96\uBC98\uBC9B",4,"\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9",6,"\uBCB2\uBCB6",5,"\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5",7,"\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD",22,"\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],["9441","\uBCFE",5,"\uBD06\uBD08\uBD0A",5,"\uBD11\uBD12\uBD13\uBD15",8],["9461","\uBD1E",5,"\uBD25",6,"\uBD2D",12],["9481","\uBD3A",5,"\uBD41",6,"\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51",6,"\uBD5A",9,"\uBD65\uBD66\uBD67\uBD69",22,"\uBD82\uBD83\uBD85\uBD86\uBD8B",4,"\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D",6,"\uBDA5",10,"\uBDB1",6,"\uBDB9",24],["9541","\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD",11,"\uBDEA",5,"\uBDF1"],["9561","\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9",6,"\uBE01\uBE02\uBE04\uBE06",5,"\uBE0E\uBE0F\uBE11\uBE12\uBE13"],["9581","\uBE15",6,"\uBE1E\uBE20",35,"\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F",4,"\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B",4,"\uBE72\uBE76",4,"\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85",6,"\uBE8E\uBE92",5,"\uBE9A",13,"\uBEA9",14],["9641","\uBEB8",23,"\uBED2\uBED3"],["9661","\uBED5\uBED6\uBED9",6,"\uBEE1\uBEE2\uBEE6",5,"\uBEED",8],["9681","\uBEF6",10,"\uBF02",5,"\uBF0A",13,"\uBF1A\uBF1E",33,"\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49",6,"\uBF52\uBF53\uBF54\uBF56",44],["9741","\uBF83",16,"\uBF95",8],["9761","\uBF9E",17,"\uBFB1",7],["9781","\uBFB9",11,"\uBFC6",5,"\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5",6,"\uBFDD\uBFDE\uBFE0\uBFE2",89,"\uC03D\uC03E\uC03F"],["9841","\uC040",16,"\uC052",5,"\uC059\uC05A\uC05B"],["9861","\uC05D\uC05E\uC05F\uC061",6,"\uC06A",15],["9881","\uC07A",21,"\uC092\uC093\uC095\uC096\uC097\uC099",6,"\uC0A2\uC0A4\uC0A6",5,"\uC0AE\uC0B1\uC0B2\uC0B7",4,"\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1",6,"\uC0DA\uC0DE",5,"\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED",6,"\uC0F6\uC0F8\uC0FA",5,"\uC101\uC102\uC103\uC105\uC106\uC107\uC109",6,"\uC111\uC112\uC113\uC114\uC116",5,"\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],["9941","\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141",6,"\uC14A\uC14E",5,"\uC156\uC157"],["9961","\uC159\uC15A\uC15B\uC15D",6,"\uC166\uC16A",5,"\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],["9981","\uC17C",8,"\uC186",5,"\uC18F\uC191\uC192\uC193\uC195\uC197",4,"\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1",11,"\uC1BE",5,"\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD",6,"\uC1D5\uC1D6\uC1D9",6,"\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9",6,"\uC1F2\uC1F4",7,"\uC1FE\uC1FF\uC201\uC202\uC203\uC205",6,"\uC20E\uC210\uC212",5,"\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],["9a41","\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235",16],["9a61","\uC246\uC247\uC249",6,"\uC252\uC253\uC255\uC256\uC257\uC259",6,"\uC261\uC262\uC263\uC264\uC266"],["9a81","\uC267",4,"\uC26E\uC26F\uC271\uC272\uC273\uC275",6,"\uC27E\uC280\uC282",5,"\uC28A",5,"\uC291",6,"\uC299\uC29A\uC29C\uC29E",5,"\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE",5,"\uC2B6\uC2B8\uC2BA",33,"\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5",5,"\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301",6,"\uC30A\uC30B\uC30E\uC30F"],["9b41","\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D",6,"\uC326\uC327\uC32A",8],["9b61","\uC333",17,"\uC346",7],["9b81","\uC34E",25,"\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373",4,"\uC37A\uC37B\uC37E",5,"\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D",50,"\uC3C1",22,"\uC3DA"],["9c41","\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3",4,"\uC3EA\uC3EB\uC3EC\uC3EE",5,"\uC3F6\uC3F7\uC3F9",5],["9c61","\uC3FF",8,"\uC409",6,"\uC411",9],["9c81","\uC41B",8,"\uC425",6,"\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435",6,"\uC43E",9,"\uC449",26,"\uC466\uC467\uC469\uC46A\uC46B\uC46D",6,"\uC476\uC477\uC478\uC47A",5,"\uC481",18,"\uC495",6,"\uC49D",12],["9d41","\uC4AA",13,"\uC4B9\uC4BA\uC4BB\uC4BD",8],["9d61","\uC4C6",25],["9d81","\uC4E0",8,"\uC4EA",5,"\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502",9,"\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515",6,"\uC51D",10,"\uC52A\uC52B\uC52D\uC52E\uC52F\uC531",6,"\uC53A\uC53C\uC53E",5,"\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569",6,"\uC572\uC576",5,"\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],["9e41","\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1",7,"\uC5AA",9,"\uC5B6"],["9e61","\uC5B7\uC5BA\uC5BF",4,"\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9",6,"\uC5E2\uC5E4\uC5E6\uC5E7"],["9e81","\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611",6,"\uC61A\uC61D",6,"\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649",6,"\uC652\uC656",5,"\uC65E\uC65F\uC661",10,"\uC66D\uC66E\uC670\uC672",5,"\uC67A\uC67B\uC67D\uC67E\uC67F\uC681",6,"\uC68A\uC68C\uC68E",5,"\uC696\uC697\uC699\uC69A\uC69B\uC69D",6,"\uC6A6"],["9f41","\uC6A8\uC6AA",5,"\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB",4,"\uC6C2\uC6C4\uC6C6",5,"\uC6CE"],["9f61","\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5",6,"\uC6DE\uC6DF\uC6E2",5,"\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],["9f81","\uC6F3",4,"\uC6FA\uC6FB\uC6FC\uC6FE",5,"\uC706\uC707\uC709\uC70A\uC70B\uC70D",6,"\uC716\uC718\uC71A",5,"\uC722\uC723\uC725\uC726\uC727\uC729",6,"\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745",4,"\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761",6,"\uC769\uC76A\uC76C",7,"\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B",4,"\uC7A2\uC7A7",4,"\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],["a041","\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2",5,"\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1",6,"\uC7D9\uC7DA\uC7DB\uC7DC"],["a061","\uC7DE",5,"\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED",13],["a081","\uC7FB",4,"\uC802\uC803\uC805\uC806\uC807\uC809\uC80B",4,"\uC812\uC814\uC817",4,"\uC81E\uC81F\uC821\uC822\uC823\uC825",6,"\uC82E\uC830\uC832",5,"\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841",6,"\uC84A\uC84B\uC84E",5,"\uC855",26,"\uC872\uC873\uC875\uC876\uC877\uC879\uC87B",4,"\uC882\uC884\uC888\uC889\uC88A\uC88E",5,"\uC895",7,"\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],["a141","\uC8A5\uC8A6\uC8A7\uC8A9",18,"\uC8BE\uC8BF\uC8C0\uC8C1"],["a161","\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD",6,"\uC8D6\uC8D8\uC8DA",5,"\uC8E2\uC8E3\uC8E5"],["a181","\uC8E6",14,"\uC8F6",5,"\uC8FE\uC8FF\uC901\uC902\uC903\uC907",4,"\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008",9,"\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],["a241","\uC910\uC912",5,"\uC919",18],["a261","\uC92D",6,"\uC935",18],["a281","\uC948",7,"\uC952\uC953\uC955\uC956\uC957\uC959",6,"\uC962\uC964",7,"\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],["a341","\uC971\uC972\uC973\uC975",6,"\uC97D",10,"\uC98A\uC98B\uC98D\uC98E\uC98F"],["a361","\uC991",6,"\uC99A\uC99C\uC99E",16],["a381","\uC9AF",16,"\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB",4,"\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01",58,"\uFFE6\uFF3D",32,"\uFFE3"],["a441","\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2",5,"\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],["a461","\uCA05\uCA06\uCA07\uCA0A\uCA0E",5,"\uCA15\uCA16\uCA17\uCA19",12],["a481","\uCA26\uCA27\uCA28\uCA2A",28,"\u3131",93],["a541","\uCA47",4,"\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55",6,"\uCA5E\uCA62",5,"\uCA69\uCA6A"],["a561","\uCA6B",17,"\uCA7E",5,"\uCA85\uCA86"],["a581","\uCA87",16,"\uCA99",14,"\u2170",9],["a5b0","\u2160",9],["a5c1","\u0391",16,"\u03A3",6],["a5e1","\u03B1",16,"\u03C3",6],["a641","\uCAA8",19,"\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],["a661","\uCAC6",5,"\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA",5,"\uCAE1",6],["a681","\uCAE8\uCAE9\uCAEA\uCAEB\uCAED",6,"\uCAF5",18,"\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543",7],["a741","\uCB0B",4,"\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19",6,"\uCB22",7],["a761","\uCB2A",22,"\uCB42\uCB43\uCB44"],["a781","\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51",6,"\uCB5A\uCB5B\uCB5C\uCB5E",5,"\uCB65",7,"\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399",9,"\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0",9,"\u3380",4,"\u33BA",5,"\u3390",4,"\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],["a841","\uCB6D",10,"\uCB7A",14],["a861","\uCB89",18,"\uCB9D",6],["a881","\uCBA4",19,"\uCBB9",11,"\xC6\xD0\xAA\u0126"],["a8a6","\u0132"],["a8a8","\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],["a8b1","\u3260",27,"\u24D0",25,"\u2460",14,"\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],["a941","\uCBC5",14,"\uCBD5",10],["a961","\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA",18],["a981","\uCBFD",14,"\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15",6,"\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200",27,"\u249C",25,"\u2474",14,"\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],["aa41","\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31",6,"\uCC3A\uCC3F",4,"\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],["aa61","\uCC4F",4,"\uCC56\uCC5A",5,"\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69",6,"\uCC71\uCC72"],["aa81","\uCC73\uCC74\uCC76",29,"\u3041",82],["ab41","\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1",6,"\uCCAA\uCCAE",5,"\uCCB6\uCCB7\uCCB9"],["ab61","\uCCBA\uCCBB\uCCBD",6,"\uCCC6\uCCC8\uCCCA",5,"\uCCD1\uCCD2\uCCD3\uCCD5",5],["ab81","\uCCDB",8,"\uCCE5",6,"\uCCED\uCCEE\uCCEF\uCCF1",12,"\u30A1",85],["ac41","\uCCFE\uCCFF\uCD00\uCD02",5,"\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11",6,"\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],["ac61","\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D",11,"\uCD3A",4],["ac81","\uCD3F",28,"\uCD5D\uCD5E\uCD5F\u0410",5,"\u0401\u0416",25],["acd1","\u0430",5,"\u0451\u0436",25],["ad41","\uCD61\uCD62\uCD63\uCD65",6,"\uCD6E\uCD70\uCD72",5,"\uCD79",7],["ad61","\uCD81",6,"\uCD89",10,"\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],["ad81","\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA",5,"\uCDB1",18,"\uCDC5"],["ae41","\uCDC6",5,"\uCDCD\uCDCE\uCDCF\uCDD1",16],["ae61","\uCDE2",5,"\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1",6,"\uCDFA\uCDFC\uCDFE",4],["ae81","\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D",6,"\uCE15\uCE16\uCE17\uCE18\uCE1A",5,"\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],["af41","\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36",19],["af61","\uCE4A",13,"\uCE5A\uCE5B\uCE5D\uCE5E\uCE62",5,"\uCE6A\uCE6C"],["af81","\uCE6E",5,"\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D",6,"\uCE86\uCE88\uCE8A",5,"\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],["b041","\uCE9A",5,"\uCEA2\uCEA6",5,"\uCEAE",12],["b061","\uCEBB",5,"\uCEC2",19],["b081","\uCED6",13,"\uCEE6\uCEE7\uCEE9\uCEEA\uCEED",6,"\uCEF6\uCEFA",5,"\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10",7,"\uAC19",4,"\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],["b141","\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09",6,"\uCF12\uCF14\uCF16",5,"\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],["b161","\uCF25",6,"\uCF2E\uCF32",5,"\uCF39",11],["b181","\uCF45",14,"\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D",6,"\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],["b241","\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79",6,"\uCF81\uCF82\uCF83\uCF84\uCF86",5,"\uCF8D"],["b261","\uCF8E",18,"\uCFA2",5,"\uCFA9"],["b281","\uCFAA",5,"\uCFB1",18,"\uCFC5",6,"\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],["b341","\uCFCC",19,"\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],["b361","\uCFEA",5,"\uCFF2\uCFF4\uCFF6",5,"\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005",5],["b381","\uD00B",5,"\uD012",5,"\uD019",19,"\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB",4,"\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],["b441","\uD02E",5,"\uD036\uD037\uD039\uD03A\uD03B\uD03D",6,"\uD046\uD048\uD04A",5],["b461","\uD051\uD052\uD053\uD055\uD056\uD057\uD059",6,"\uD061",10,"\uD06E\uD06F"],["b481","\uD071\uD072\uD073\uD075",6,"\uD07E\uD07F\uD080\uD082",18,"\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB",4,"\uB2F3\uB2F4\uB2F5\uB2F7",4,"\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],["b541","\uD095",14,"\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD",5],["b561","\uD0B3\uD0B6\uD0B8\uD0BA",5,"\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA",5,"\uD0D2\uD0D6",4],["b581","\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5",6,"\uD0EE\uD0F2",5,"\uD0F9",11,"\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],["b641","\uD105",7,"\uD10E",17],["b661","\uD120",15,"\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],["b681","\uD13F\uD142\uD146",5,"\uD14E\uD14F\uD151\uD152\uD153\uD155",6,"\uD15E\uD160\uD162",5,"\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],["b741","\uD16E",13,"\uD17D",6,"\uD185\uD186\uD187\uD189\uD18A"],["b761","\uD18B",20,"\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],["b781","\uD1A9",6,"\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1",14,"\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],["b841","\uD1D0",7,"\uD1D9",17],["b861","\uD1EB",8,"\uD1F5\uD1F6\uD1F7\uD1F9",13],["b881","\uD208\uD20A",5,"\uD211",24,"\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE",4,"\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],["b941","\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235",6,"\uD23E\uD240\uD242",5,"\uD249\uD24A\uD24B\uD24C"],["b961","\uD24D",14,"\uD25D",6,"\uD265\uD266\uD267\uD268"],["b981","\uD269",22,"\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14",4,"\uBC1B",4,"\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],["ba41","\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296",5,"\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5",6,"\uD2AD"],["ba61","\uD2AE\uD2AF\uD2B0\uD2B2",5,"\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3",4,"\uD2CA\uD2CC",5],["ba81","\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD",6,"\uD2E6",9,"\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],["bb41","\uD2FB",4,"\uD302\uD304\uD306",5,"\uD30F\uD311\uD312\uD313\uD315\uD317",4,"\uD31E\uD322\uD323"],["bb61","\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331",6,"\uD33A\uD33E",5,"\uD346\uD347\uD348\uD349"],["bb81","\uD34A",31,"\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],["bc41","\uD36A",17,"\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],["bc61","\uD388\uD389\uD38A\uD38B\uD38E\uD392",5,"\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1",6,"\uD3AA\uD3AC\uD3AE"],["bc81","\uD3AF",4,"\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD",6,"\uD3C6\uD3C7\uD3CA",5,"\uD3D1",5,"\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C",4,"\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],["bd41","\uD3D7\uD3D9",7,"\uD3E2\uD3E4",7,"\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],["bd61","\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402",5,"\uD409",13],["bd81","\uD417",5,"\uD41E",25,"\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],["be41","\uD438",7,"\uD441\uD442\uD443\uD445",14],["be61","\uD454",7,"\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465",7,"\uD46E\uD470\uD471\uD472"],["be81","\uD473",4,"\uD47A\uD47B\uD47D\uD47E\uD481\uD483",4,"\uD48A\uD48C\uD48E",5,"\uD495",8,"\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4",6,"\uC5CC\uC5CE"],["bf41","\uD49E",10,"\uD4AA",14],["bf61","\uD4B9",18,"\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],["bf81","\uD4D6",5,"\uD4DD\uD4DE\uD4E0",7,"\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1",6,"\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC",5,"\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],["c041","\uD4FE",5,"\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D",6,"\uD516\uD518",5],["c061","\uD51E",25],["c081","\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545",6,"\uD54E\uD550\uD552",5,"\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751",7,"\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],["c141","\uD564\uD566\uD567\uD56A\uD56C\uD56E",5,"\uD576\uD577\uD579\uD57A\uD57B\uD57D",6,"\uD586\uD58A\uD58B"],["c161","\uD58C\uD58D\uD58E\uD58F\uD591",19,"\uD5A6\uD5A7"],["c181","\uD5A8",31,"\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],["c241","\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3",4,"\uD5DA\uD5DC\uD5DE",5,"\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],["c261","\uD5EF",4,"\uD5F6\uD5F8\uD5FA",5,"\uD602\uD603\uD605\uD606\uD607\uD609",6,"\uD612"],["c281","\uD616",5,"\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625",7,"\uD62E",9,"\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],["c341","\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D",4],["c361","\uD662",4,"\uD668\uD66A",5,"\uD672\uD673\uD675",11],["c381","\uD681\uD682\uD684\uD686",5,"\uD68E\uD68F\uD691\uD692\uD693\uD695",7,"\uD69E\uD6A0\uD6A2",5,"\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],["c441","\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1",7,"\uD6BA\uD6BC",7,"\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],["c461","\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA",5,"\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9",4],["c481","\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6",5,"\uD6FE\uD6FF\uD701\uD702\uD703\uD705",11,"\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],["c541","\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721",6,"\uD72A\uD72C\uD72E",5,"\uD736\uD737\uD739"],["c561","\uD73A\uD73B\uD73D",6,"\uD745\uD746\uD748\uD74A",5,"\uD752\uD753\uD755\uD75A",4],["c581","\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775",6,"\uD77E\uD77F\uD780\uD782",5,"\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],["c641","\uD78D\uD78E\uD78F\uD791",6,"\uD79A\uD79C\uD79E",5],["c6a1","\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],["c7a1","\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],["c8a1","\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],["caa1","\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],["cba1","\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],["cca1","\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],["cda1","\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],["cea1","\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],["cfa1","\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],["d0a1","\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],["d1a1","\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E",5,"\u90A3\uF914",4,"\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],["d2a1","\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928",4,"\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933",5,"\u99D1\uF939",10,"\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A",7,"\u5AE9\u8A25\u677B\u7D10\uF952",5,"\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],["d3a1","\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],["d4a1","\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],["d5a1","\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],["d6a1","\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],["d7a1","\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],["d8a1","\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],["d9a1","\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],["daa1","\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],["dba1","\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],["dca1","\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],["dda1","\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],["dea1","\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],["dfa1","\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],["e0a1","\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],["e1a1","\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],["e2a1","\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],["e3a1","\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],["e4a1","\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],["e5a1","\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],["e6a1","\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],["e7a1","\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],["e8a1","\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],["e9a1","\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],["eaa1","\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],["eba1","\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],["eca1","\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],["eda1","\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],["eea1","\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],["efa1","\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],["f0a1","\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],["f1a1","\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],["f2a1","\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],["f3a1","\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],["f4a1","\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],["f5a1","\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],["f6a1","\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],["f7a1","\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],["f8a1","\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],["f9a1","\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],["faa1","\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],["fba1","\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],["fca1","\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],["fda1","\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]]});var Bk=$((dAe,ate)=>{ate.exports=[["0","\0",127],["a140","\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],["a1a1","\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62",4,"\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],["a240","\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581",7,"\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],["a2a1","\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10",9,"\u2160",9,"\u3021",8,"\u5341\u5344\u5345\uFF21",25,"\uFF41",21],["a340","\uFF57\uFF58\uFF59\uFF5A\u0391",16,"\u03A3",6,"\u03B1",16,"\u03C3",6,"\u3105",10],["a3a1","\u3110",25,"\u02D9\u02C9\u02CA\u02C7\u02CB"],["a3e1","\u20AC"],["a440","\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],["a4a1","\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],["a540","\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],["a5a1","\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],["a640","\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],["a6a1","\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],["a740","\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],["a7a1","\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],["a840","\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],["a8a1","\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],["a940","\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],["a9a1","\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],["aa40","\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],["aaa1","\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],["ab40","\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],["aba1","\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],["ac40","\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],["aca1","\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],["ad40","\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],["ada1","\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],["ae40","\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],["aea1","\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],["af40","\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],["afa1","\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],["b040","\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],["b0a1","\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],["b140","\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],["b1a1","\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],["b240","\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],["b2a1","\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],["b340","\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],["b3a1","\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],["b440","\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],["b4a1","\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],["b540","\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],["b5a1","\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],["b640","\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],["b6a1","\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],["b740","\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],["b7a1","\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],["b840","\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],["b8a1","\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],["b940","\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],["b9a1","\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],["ba40","\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],["baa1","\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],["bb40","\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],["bba1","\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],["bc40","\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],["bca1","\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],["bd40","\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],["bda1","\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],["be40","\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],["bea1","\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],["bf40","\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],["bfa1","\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],["c040","\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],["c0a1","\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],["c140","\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],["c1a1","\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],["c240","\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],["c2a1","\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],["c340","\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],["c3a1","\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],["c440","\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],["c4a1","\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],["c540","\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],["c5a1","\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],["c640","\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],["c940","\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],["c9a1","\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],["ca40","\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],["caa1","\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],["cb40","\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],["cba1","\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],["cc40","\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],["cca1","\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],["cd40","\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],["cda1","\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],["ce40","\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],["cea1","\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],["cf40","\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],["cfa1","\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],["d040","\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],["d0a1","\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],["d140","\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],["d1a1","\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],["d240","\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],["d2a1","\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],["d340","\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],["d3a1","\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],["d440","\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],["d4a1","\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],["d540","\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],["d5a1","\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],["d640","\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],["d6a1","\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],["d740","\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],["d7a1","\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],["d840","\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],["d8a1","\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],["d940","\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],["d9a1","\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],["da40","\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],["daa1","\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],["db40","\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],["dba1","\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],["dc40","\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],["dca1","\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],["dd40","\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],["dda1","\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],["de40","\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],["dea1","\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],["df40","\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],["dfa1","\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],["e040","\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],["e0a1","\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],["e140","\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],["e1a1","\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],["e240","\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],["e2a1","\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],["e340","\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],["e3a1","\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],["e440","\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],["e4a1","\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],["e540","\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],["e5a1","\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],["e640","\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],["e6a1","\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],["e740","\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],["e7a1","\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],["e840","\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],["e8a1","\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],["e940","\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],["e9a1","\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],["ea40","\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],["eaa1","\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],["eb40","\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],["eba1","\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],["ec40","\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],["eca1","\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],["ed40","\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],["eda1","\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],["ee40","\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],["eea1","\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],["ef40","\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],["efa1","\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],["f040","\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],["f0a1","\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],["f140","\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],["f1a1","\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],["f240","\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],["f2a1","\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],["f340","\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],["f3a1","\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],["f440","\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],["f4a1","\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],["f540","\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],["f5a1","\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],["f640","\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],["f6a1","\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],["f740","\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],["f7a1","\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],["f840","\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],["f8a1","\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],["f940","\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],["f9a1","\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]]});var Sj=$((pAe,cte)=>{cte.exports=[["8740","\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],["8767","\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],["87a1","\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],["8840","\u31C0",4,"\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],["88a1","\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],["8940","\u{2A3A9}\u{21145}"],["8943","\u650A"],["8946","\u4E3D\u6EDD\u9D4E\u91DF"],["894c","\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],["89a1","\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],["89ab","\u918C\u78B8\u915E\u80BC"],["89b0","\u8D0B\u80F6\u{209E7}"],["89b5","\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],["89c1","\u6E9A\u823E\u7519"],["89c5","\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],["8a40","\u{27D84}\u5525"],["8a43","\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],["8a64","\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],["8a76","\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],["8aa1","\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],["8aac","\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],["8ab2","\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],["8abb","\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],["8ac9","\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],["8ace","\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],["8adf","\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],["8af6","\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],["8b40","\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],["8b55","\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],["8ba1","\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],["8bde","\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],["8c40","\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],["8ca1","\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],["8ca7","\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],["8cc9","\u9868\u676B\u4276\u573D"],["8cce","\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],["8ce6","\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],["8d40","\u{20B9F}"],["8d42","\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],["8da1","\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],["8e40","\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],["8ea1","\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],["8f40","\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],["8fa1","\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],["9040","\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],["90a1","\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],["9140","\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],["91a1","\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],["9240","\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],["92a1","\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],["9340","\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],["93a1","\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],["9440","\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],["94a1","\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],["9540","\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],["95a1","\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],["9640","\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],["96a1","\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],["9740","\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],["97a1","\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],["9840","\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],["98a1","\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],["9940","\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],["99a1","\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],["9a40","\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],["9aa1","\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],["9b40","\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],["9b62","\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],["9ba1","\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],["9c40","\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],["9ca1","\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],["9d40","\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],["9da1","\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],["9e40","\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],["9ea1","\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],["9ead","\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],["9ec5","\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],["9ef5","\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],["9f40","\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],["9f4f","\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],["9fa1","\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],["9fae","\u9159\u9681\u915C"],["9fb2","\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],["9fc1","\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],["9fc9","\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],["9fdb","\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],["9fe7","\u6BFA\u8818\u7F78"],["9feb","\u5620\u{2A64A}\u8E77\u9F53"],["9ff0","\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],["a040","\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],["a055","\u{2183B}\u{26E05}"],["a058","\u8A7E\u{2251B}"],["a05b","\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],["a063","\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],["a073","\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],["a0a1","\u5D57\u{28BC2}\u8FDA\u{28E39}"],["a0a6","\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],["a0ae","\u77FE"],["a0b0","\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],["a0d4","\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],["a0e2","\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],["a3c0","\u2400",31,"\u2421"],["c6a1","\u2460",9,"\u2474",9,"\u2170",9,"\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041",23],["c740","\u3059",58,"\u30A1\u30A2\u30A3\u30A4"],["c7a1","\u30A5",81,"\u0410",5,"\u0401\u0416",4],["c840","\u041B",26,"\u0451\u0436",25,"\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],["c8a1","\u9FB0\u5188\u9FB1\u{27607}"],["c8cd","\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],["c8f5","\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],["f9fe","\uFFED"],["fa40","\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],["faa1","\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],["fb40","\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],["fba1","\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],["fc40","\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],["fca1","\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],["fd40","\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],["fda1","\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],["fe40","\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],["fea1","\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]]});var wj=$((fAe,xj)=>{"use strict";xj.exports={shiftjis:{type:"_dbcs",table:function(){return vj()},encodeAdd:{"\xA5":92,"\u203E":126},encodeSkipVals:[{from:60736,to:63808}]},csshiftjis:"shiftjis",mskanji:"shiftjis",sjis:"shiftjis",windows31j:"shiftjis",ms31j:"shiftjis",xsjis:"shiftjis",windows932:"shiftjis",ms932:"shiftjis",932:"shiftjis",cp932:"shiftjis",eucjp:{type:"_dbcs",table:function(){return yj()},encodeAdd:{"\xA5":92,"\u203E":126}},gb2312:"cp936",gb231280:"cp936",gb23121980:"cp936",csgb2312:"cp936",csiso58gb231280:"cp936",euccn:"cp936",windows936:"cp936",ms936:"cp936",936:"cp936",cp936:{type:"_dbcs",table:function(){return Mg()}},gbk:{type:"_dbcs",table:function(){return Mg().concat(Zk())}},xgbk:"gbk",isoir58:"gbk",gb18030:{type:"_dbcs",table:function(){return Mg().concat(Zk())},gb18030:function(){return _j()},encodeSkipVals:[128],encodeAdd:{"\u20AC":41699}},chinese:"gb18030",windows949:"cp949",ms949:"cp949",949:"cp949",cp949:{type:"_dbcs",table:function(){return bj()}},cseuckr:"cp949",csksc56011987:"cp949",euckr:"cp949",isoir149:"cp949",korean:"cp949",ksc56011987:"cp949",ksc56011989:"cp949",ksc5601:"cp949",windows950:"cp950",ms950:"cp950",950:"cp950",cp950:{type:"_dbcs",table:function(){return Bk()}},big5:"big5hkscs",big5hkscs:{type:"_dbcs",table:function(){return Bk().concat(Sj())},encodeSkipVals:[41676]},cnbig5:"big5hkscs",csbig5:"big5hkscs",xxbig5:"big5hkscs"}});var Tj=$((kj,Qc)=>{"use strict";var Ej=[nj(),sj(),aj(),uj(),dj(),fj(),gj(),wj()];for(Dg=0;Dg{"use strict";var $j=require("buffer").Buffer,zg=require("stream").Transform;Ij.exports=function(t){t.encodeStream=function(r,n){return new pa(t.getEncoder(r,n),n)},t.decodeStream=function(r,n){return new _o(t.getDecoder(r,n),n)},t.supportsStreams=!0,t.IconvLiteEncoderStream=pa,t.IconvLiteDecoderStream=_o,t._collect=_o.prototype.collect};function pa(t,e){this.conv=t,e=e||{},e.decodeStrings=!1,zg.call(this,e)}pa.prototype=Object.create(zg.prototype,{constructor:{value:pa}});pa.prototype._transform=function(t,e,r){if(typeof t!="string")return r(new Error("Iconv encoding stream needs strings as its input."));try{var n=this.conv.write(t);n&&n.length&&this.push(n),r()}catch(i){r(i)}};pa.prototype._flush=function(t){try{var e=this.conv.end();e&&e.length&&this.push(e),t()}catch(r){t(r)}};pa.prototype.collect=function(t){var e=[];return this.on("error",t),this.on("data",function(r){e.push(r)}),this.on("end",function(){t(null,$j.concat(e))}),this};function _o(t,e){this.conv=t,e=e||{},e.encoding=this.encoding="utf8",zg.call(this,e)}_o.prototype=Object.create(zg.prototype,{constructor:{value:_o}});_o.prototype._transform=function(t,e,r){if(!$j.isBuffer(t))return r(new Error("Iconv decoding stream needs buffers as its input."));try{var n=this.conv.write(t);n&&n.length&&this.push(n,this.encoding),r()}catch(i){r(i)}};_o.prototype._flush=function(t){try{var e=this.conv.end();e&&e.length&&this.push(e,this.encoding),t()}catch(r){t(r)}};_o.prototype.collect=function(t){var e="";return this.on("error",t),this.on("data",function(r){e+=r}),this.on("end",function(){t(null,e)}),this}});var Cj=$((hAe,Oj)=>{"use strict";var Vt=require("buffer").Buffer;Oj.exports=function(t){var e=void 0;t.supportsNodeEncodingsExtension=!(Vt.from||new Vt(0)instanceof Uint8Array),t.extendNodeEncodings=function(){if(!e){if(e={},!t.supportsNodeEncodingsExtension){console.error("ACTION NEEDED: require('iconv-lite').extendNodeEncodings() is not supported in your version of Node"),console.error("See more info at https://github.com/ashtuchkin/iconv-lite/wiki/Node-v4-compatibility");return}var n={hex:!0,utf8:!0,"utf-8":!0,ascii:!0,binary:!0,base64:!0,ucs2:!0,"ucs-2":!0,utf16le:!0,"utf-16le":!0};Vt.isNativeEncoding=function(o){return o&&n[o.toLowerCase()]};var i=require("buffer").SlowBuffer;if(e.SlowBufferToString=i.prototype.toString,i.prototype.toString=function(o,a,c){return o=String(o||"utf8").toLowerCase(),Vt.isNativeEncoding(o)?e.SlowBufferToString.call(this,o,a,c):(typeof a>"u"&&(a=0),typeof c>"u"&&(c=this.length),t.decode(this.slice(a,c),o))},e.SlowBufferWrite=i.prototype.write,i.prototype.write=function(o,a,c,u){if(isFinite(a))isFinite(c)||(u=c,c=void 0);else{var l=u;u=a,a=c,c=l}a=+a||0;var d=this.length-a;if(c?(c=+c,c>d&&(c=d)):c=d,u=String(u||"utf8").toLowerCase(),Vt.isNativeEncoding(u))return e.SlowBufferWrite.call(this,o,a,c,u);if(o.length>0&&(c<0||a<0))throw new RangeError("attempt to write beyond buffer bounds");var p=t.encode(o,u);return p.length"u"&&(a=0),typeof c>"u"&&(c=this.length),t.decode(this.slice(a,c),o))},e.BufferWrite=Vt.prototype.write,Vt.prototype.write=function(o,a,c,u){var l=a,d=c,p=u;if(isFinite(a))isFinite(c)||(u=c,c=void 0);else{var f=u;u=a,a=c,c=f}if(u=String(u||"utf8").toLowerCase(),Vt.isNativeEncoding(u))return e.BufferWrite.call(this,o,l,d,p);a=+a||0;var m=this.length-a;if(c?(c=+c,c>m&&(c=m)):c=m,o.length>0&&(c<0||a<0))throw new RangeError("attempt to write beyond buffer bounds");var h=t.encode(o,u);return h.length{"use strict";var Aj=la().Buffer,Nj=ej(),lt=Mj.exports;lt.encodings=null;lt.defaultCharUnicode="\uFFFD";lt.defaultCharSingleByte="?";lt.encode=function(e,r,n){e=""+(e||"");var i=lt.getEncoder(r,n),s=i.write(e),o=i.end();return o&&o.length>0?Aj.concat([s,o]):s};lt.decode=function(e,r,n){typeof e=="string"&&(lt.skipDecodeWarning||(console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"),lt.skipDecodeWarning=!0),e=Aj.from(""+(e||""),"binary"));var i=lt.getDecoder(r,n),s=i.write(e),o=i.end();return o?s+o:s};lt.encodingExists=function(e){try{return lt.getCodec(e),!0}catch{return!1}};lt.toEncoding=lt.encode;lt.fromEncoding=lt.decode;lt._codecDataCache={};lt.getCodec=function(e){lt.encodings||(lt.encodings=Tj());for(var r=lt._canonicalizeEncoding(e),n={};;){var i=lt._codecDataCache[r];if(i)return i;var s=lt.encodings[r];switch(typeof s){case"string":r=s;break;case"object":for(var o in s)n[o]=s[o];n.encodingName||(n.encodingName=r),r=s.type;break;case"function":return n.encodingName||(n.encodingName=r),i=new s(n,lt),lt._codecDataCache[n.encodingName]=i,i;default:throw new Error("Encoding not recognized: '"+e+"' (searched as: '"+r+"')")}}};lt._canonicalizeEncoding=function(t){return(""+t).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g,"")};lt.getEncoder=function(e,r){var n=lt.getCodec(e),i=new n.encoder(r,n);return n.bomAware&&r&&r.addBOM&&(i=new Nj.PrependBOM(i,r)),i};lt.getDecoder=function(e,r){var n=lt.getCodec(e),i=new n.decoder(r,n);return n.bomAware&&!(r&&r.stripBOM===!1)&&(i=new Nj.StripBOM(i,r)),i};var Pj=typeof process<"u"&&process.versions&&process.versions.node;Pj&&(Gk=Pj.split(".").map(Number),(Gk[0]>0||Gk[1]>=10)&&Rj()(lt),Cj()(lt));var Gk});var Lg=$((vAe,Dj)=>{"use strict";Dj.exports=lte;function ute(t){for(var e=t.listeners("data"),r=0;r{"use strict";var jj=yte(),dte=Gc(),fa=ca(),pte=Wk(),fte=Lg();Lj.exports=gte;var mte=/^Encoding not recognized: /;function hte(t){if(!t)return null;try{return pte.getDecoder(t)}catch(e){throw mte.test(e.message)?fa(415,"specified encoding unsupported",{encoding:t,type:"encoding.unsupported"}):e}}function gte(t,e,r){var n=r,i=e||{};if(t===void 0)throw new TypeError("argument stream is required");if(typeof t!="object"||t===null||typeof t.on!="function")throw new TypeError("argument stream must be a stream");if((e===!0||typeof e=="string")&&(i={encoding:e}),typeof e=="function"&&(n=e,i={}),n!==void 0&&typeof n!="function")throw new TypeError("argument callback must be a function");if(!n&&!global.Promise)throw new TypeError("argument callback is required");var s=i.encoding!==!0?i.encoding:"utf-8",o=dte.parse(i.limit),a=i.length!=null&&!isNaN(i.length)?parseInt(i.length,10):null;return n?zj(t,s,a,o,_te(n)):new Promise(function(u,l){zj(t,s,a,o,function(p,f){if(p)return l(p);u(f)})})}function vte(t){fte(t),typeof t.pause=="function"&&t.pause()}function zj(t,e,r,n,i){var s=!1,o=!0;if(n!==null&&r!==null&&r>n)return d(fa(413,"request entity too large",{expected:r,length:r,limit:n,type:"entity.too.large"}));var a=t._readableState;if(t._decoder||a&&(a.encoding||a.decoder))return d(fa(500,"stream encoding should not be set",{type:"stream.encoding.set"}));if(typeof t.readable<"u"&&!t.readable)return d(fa(500,"stream is not readable",{type:"stream.not.readable"}));var c=0,u;try{u=hte(e)}catch(g){return d(g)}var l=u?"":[];t.on("aborted",p),t.on("close",h),t.on("data",f),t.on("end",m),t.on("error",m),o=!1;function d(){for(var g=new Array(arguments.length),v=0;vn?d(fa(413,"request entity too large",{limit:n,received:c,type:"entity.too.large"})):u?l+=u.write(g):l.push(g))}function m(g){if(!s){if(g)return d(g);if(r!==null&&c!==r)d(fa(400,"request size did not match content length",{expected:r,length:r,received:c,type:"request.size.invalid"}));else{var v=u?l+(u.end()||""):Buffer.concat(l);d(null,v)}}}function h(){l=null,t.removeListener("aborted",p),t.removeListener("data",f),t.removeListener("end",m),t.removeListener("error",m),t.removeListener("close",h)}}function yte(){try{return require("async_hooks")}catch{return{}}}function _te(t){var e;return jj.AsyncResource&&(e=new jj.AsyncResource(t.name||"bound-anonymous-fn")),!e||!e.runInAsyncScope?t:e.runInAsyncScope.bind(e,t,null)}});var qj=$((_Ae,Fj)=>{"use strict";Fj.exports=bte;function bte(t,e){if(!Array.isArray(t))throw new TypeError("arg must be an array of [ee, events...] arrays");for(var r=[],n=0;n{"use strict";Vk.exports=wte;Vk.exports.isFinished=Bj;var Hj=Ite(),Zj=qj(),xte=typeof setImmediate=="function"?setImmediate:function(t){process.nextTick(t.bind.apply(t,arguments))};function wte(t,e){return Bj(t)!==!1?(xte(e,null,t),t):(kte(t,Rte(e)),t)}function Bj(t){var e=t.socket;if(typeof t.finished=="boolean")return!!(t.finished||e&&!e.writable);if(typeof t.complete=="boolean")return!!(t.upgrade||!e||!e.readable||t.complete&&!t.readable)}function Ete(t,e){var r,n,i=!1;function s(a){r.cancel(),n.cancel(),i=!0,e(a)}r=n=Zj([[t,"end","finish"]],s);function o(a){t.removeListener("socket",o),!i&&r===n&&(n=Zj([[a,"error","close"]],s))}if(t.socket){o(t.socket);return}t.on("socket",o),t.socket===void 0&&$te(t,o)}function kte(t,e){var r=t.__onFinished;(!r||!r.queue)&&(r=t.__onFinished=Tte(t),Ete(t,r)),r.queue.push(e)}function Tte(t){function e(r){if(t.__onFinished===e&&(t.__onFinished=null),!!e.queue){var n=e.queue;e.queue=null;for(var i=0;i{"use strict";var bo=ca(),Ote=yk(),Cte=Uj(),Gj=Wk(),Wj=dp(),Pte=Lg(),Vj=require("zlib");Kj.exports=Ate;function Ate(t,e,r,n,i,s){var o,a=s,c;t._body=!0;var u=a.encoding!==null?a.encoding:null,l=a.verify;try{c=Nte(t,i,a.inflate),o=c.length,c.length=void 0}catch(d){return r(d)}if(a.length=o,a.encoding=l?null:u,a.encoding===null&&u!==null&&!Gj.encodingExists(u))return r(bo(415,'unsupported charset "'+u.toUpperCase()+'"',{charset:u.toLowerCase(),type:"charset.unsupported"}));i("read body"),Cte(c,a,function(d,p){if(d){var f;d.type==="encoding.unsupported"?f=bo(415,'unsupported charset "'+u.toUpperCase()+'"',{charset:u.toLowerCase(),type:"charset.unsupported"}):f=bo(400,d),c!==t&&(Pte(t),Ote(c,!0)),Mte(t,function(){r(bo(400,f))});return}if(l)try{i("verify body"),l(t,e,p,u)}catch(h){r(bo(403,h,{body:p,type:h.type||"entity.verify.failed"}));return}var m=p;try{i("parse body"),m=typeof p!="string"&&u!==null?Gj.decode(p,u):p,t.body=n(m)}catch(h){r(bo(400,h,{body:m,type:h.type||"entity.parse.failed"}));return}r()})}function Nte(t,e,r){var n=(t.headers["content-encoding"]||"identity").toLowerCase(),i=t.headers["content-length"],s;if(e('content-encoding "%s"',n),r===!1&&n!=="identity")throw bo(415,"content encoding unsupported",{encoding:n,type:"encoding.unsupported"});switch(n){case"deflate":s=Vj.createInflate(),e("inflate body"),t.pipe(s);break;case"gzip":s=Vj.createGunzip(),e("gunzip body"),t.pipe(s);break;case"identity":s=t,s.length=i;break;default:throw bo(415,'unsupported content encoding "'+n+'"',{encoding:n,type:"encoding.unsupported"})}return s}function Mte(t,e){Wj.isFinished(t)?e(null):(Wj(t,e),t.resume())}});var Qj=$(Kk=>{var Jj=/; *([!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+) *= *("(?:[ !\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u0020-\u007e])*"|[!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+) */g,Dte=/^[\u0020-\u007e\u0080-\u00ff]+$/,Yj=/^[!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+$/,jte=/\\([\u0000-\u007f])/g,zte=/([\\"])/g,Lte=/^[A-Za-z0-9][A-Za-z0-9!#$&^_.-]{0,126}$/,Xj=/^[A-Za-z0-9][A-Za-z0-9!#$&^_-]{0,126}$/,Ute=/^ *([A-Za-z0-9][A-Za-z0-9!#$&^_-]{0,126})\/([A-Za-z0-9][A-Za-z0-9!#$&^_.+-]{0,126}) *$/;Kk.format=Fte;Kk.parse=qte;function Fte(t){if(!t||typeof t!="object")throw new TypeError("argument obj is required");var e=t.parameters,r=t.subtype,n=t.suffix,i=t.type;if(!i||!Xj.test(i))throw new TypeError("invalid type");if(!r||!Lte.test(r))throw new TypeError("invalid subtype");var s=i+"/"+r;if(n){if(!Xj.test(n))throw new TypeError("invalid suffix");s+="+"+n}if(e&&typeof e=="object")for(var o,a=Object.keys(e).sort(),c=0;c0&&!Dte.test(e))throw new TypeError("invalid parameter value");return'"'+e.replace(zte,"\\$1")+'"'}function Bte(t){var e=Ute.exec(t.toLowerCase());if(!e)throw new TypeError("invalid media type");var r=e[1],n=e[2],i,s=n.lastIndexOf("+");s!==-1&&(i=n.substr(s+1),n=n.substr(0,s));var o={type:r,subtype:n,suffix:i};return o}});var ez=$((wAe,Gte)=>{Gte.exports={"application/1d-interleaved-parityfec":{source:"iana"},"application/3gpdash-qoe-report+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/3gpp-ims+xml":{source:"iana",compressible:!0},"application/3gpphal+json":{source:"iana",compressible:!0},"application/3gpphalforms+json":{source:"iana",compressible:!0},"application/a2l":{source:"iana"},"application/ace+cbor":{source:"iana"},"application/activemessage":{source:"iana"},"application/activity+json":{source:"iana",compressible:!0},"application/alto-costmap+json":{source:"iana",compressible:!0},"application/alto-costmapfilter+json":{source:"iana",compressible:!0},"application/alto-directory+json":{source:"iana",compressible:!0},"application/alto-endpointcost+json":{source:"iana",compressible:!0},"application/alto-endpointcostparams+json":{source:"iana",compressible:!0},"application/alto-endpointprop+json":{source:"iana",compressible:!0},"application/alto-endpointpropparams+json":{source:"iana",compressible:!0},"application/alto-error+json":{source:"iana",compressible:!0},"application/alto-networkmap+json":{source:"iana",compressible:!0},"application/alto-networkmapfilter+json":{source:"iana",compressible:!0},"application/alto-updatestreamcontrol+json":{source:"iana",compressible:!0},"application/alto-updatestreamparams+json":{source:"iana",compressible:!0},"application/aml":{source:"iana"},"application/andrew-inset":{source:"iana",extensions:["ez"]},"application/applefile":{source:"iana"},"application/applixware":{source:"apache",extensions:["aw"]},"application/at+jwt":{source:"iana"},"application/atf":{source:"iana"},"application/atfx":{source:"iana"},"application/atom+xml":{source:"iana",compressible:!0,extensions:["atom"]},"application/atomcat+xml":{source:"iana",compressible:!0,extensions:["atomcat"]},"application/atomdeleted+xml":{source:"iana",compressible:!0,extensions:["atomdeleted"]},"application/atomicmail":{source:"iana"},"application/atomsvc+xml":{source:"iana",compressible:!0,extensions:["atomsvc"]},"application/atsc-dwd+xml":{source:"iana",compressible:!0,extensions:["dwd"]},"application/atsc-dynamic-event-message":{source:"iana"},"application/atsc-held+xml":{source:"iana",compressible:!0,extensions:["held"]},"application/atsc-rdt+json":{source:"iana",compressible:!0},"application/atsc-rsat+xml":{source:"iana",compressible:!0,extensions:["rsat"]},"application/atxml":{source:"iana"},"application/auth-policy+xml":{source:"iana",compressible:!0},"application/bacnet-xdd+zip":{source:"iana",compressible:!1},"application/batch-smtp":{source:"iana"},"application/bdoc":{compressible:!1,extensions:["bdoc"]},"application/beep+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/calendar+json":{source:"iana",compressible:!0},"application/calendar+xml":{source:"iana",compressible:!0,extensions:["xcs"]},"application/call-completion":{source:"iana"},"application/cals-1840":{source:"iana"},"application/captive+json":{source:"iana",compressible:!0},"application/cbor":{source:"iana"},"application/cbor-seq":{source:"iana"},"application/cccex":{source:"iana"},"application/ccmp+xml":{source:"iana",compressible:!0},"application/ccxml+xml":{source:"iana",compressible:!0,extensions:["ccxml"]},"application/cdfx+xml":{source:"iana",compressible:!0,extensions:["cdfx"]},"application/cdmi-capability":{source:"iana",extensions:["cdmia"]},"application/cdmi-container":{source:"iana",extensions:["cdmic"]},"application/cdmi-domain":{source:"iana",extensions:["cdmid"]},"application/cdmi-object":{source:"iana",extensions:["cdmio"]},"application/cdmi-queue":{source:"iana",extensions:["cdmiq"]},"application/cdni":{source:"iana"},"application/cea":{source:"iana"},"application/cea-2018+xml":{source:"iana",compressible:!0},"application/cellml+xml":{source:"iana",compressible:!0},"application/cfw":{source:"iana"},"application/city+json":{source:"iana",compressible:!0},"application/clr":{source:"iana"},"application/clue+xml":{source:"iana",compressible:!0},"application/clue_info+xml":{source:"iana",compressible:!0},"application/cms":{source:"iana"},"application/cnrp+xml":{source:"iana",compressible:!0},"application/coap-group+json":{source:"iana",compressible:!0},"application/coap-payload":{source:"iana"},"application/commonground":{source:"iana"},"application/conference-info+xml":{source:"iana",compressible:!0},"application/cose":{source:"iana"},"application/cose-key":{source:"iana"},"application/cose-key-set":{source:"iana"},"application/cpl+xml":{source:"iana",compressible:!0,extensions:["cpl"]},"application/csrattrs":{source:"iana"},"application/csta+xml":{source:"iana",compressible:!0},"application/cstadata+xml":{source:"iana",compressible:!0},"application/csvm+json":{source:"iana",compressible:!0},"application/cu-seeme":{source:"apache",extensions:["cu"]},"application/cwt":{source:"iana"},"application/cybercash":{source:"iana"},"application/dart":{compressible:!0},"application/dash+xml":{source:"iana",compressible:!0,extensions:["mpd"]},"application/dash-patch+xml":{source:"iana",compressible:!0,extensions:["mpp"]},"application/dashdelta":{source:"iana"},"application/davmount+xml":{source:"iana",compressible:!0,extensions:["davmount"]},"application/dca-rft":{source:"iana"},"application/dcd":{source:"iana"},"application/dec-dx":{source:"iana"},"application/dialog-info+xml":{source:"iana",compressible:!0},"application/dicom":{source:"iana"},"application/dicom+json":{source:"iana",compressible:!0},"application/dicom+xml":{source:"iana",compressible:!0},"application/dii":{source:"iana"},"application/dit":{source:"iana"},"application/dns":{source:"iana"},"application/dns+json":{source:"iana",compressible:!0},"application/dns-message":{source:"iana"},"application/docbook+xml":{source:"apache",compressible:!0,extensions:["dbk"]},"application/dots+cbor":{source:"iana"},"application/dskpp+xml":{source:"iana",compressible:!0},"application/dssc+der":{source:"iana",extensions:["dssc"]},"application/dssc+xml":{source:"iana",compressible:!0,extensions:["xdssc"]},"application/dvcs":{source:"iana"},"application/ecmascript":{source:"iana",compressible:!0,extensions:["es","ecma"]},"application/edi-consent":{source:"iana"},"application/edi-x12":{source:"iana",compressible:!1},"application/edifact":{source:"iana",compressible:!1},"application/efi":{source:"iana"},"application/elm+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/elm+xml":{source:"iana",compressible:!0},"application/emergencycalldata.cap+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/emergencycalldata.comment+xml":{source:"iana",compressible:!0},"application/emergencycalldata.control+xml":{source:"iana",compressible:!0},"application/emergencycalldata.deviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.ecall.msd":{source:"iana"},"application/emergencycalldata.providerinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.serviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.subscriberinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.veds+xml":{source:"iana",compressible:!0},"application/emma+xml":{source:"iana",compressible:!0,extensions:["emma"]},"application/emotionml+xml":{source:"iana",compressible:!0,extensions:["emotionml"]},"application/encaprtp":{source:"iana"},"application/epp+xml":{source:"iana",compressible:!0},"application/epub+zip":{source:"iana",compressible:!1,extensions:["epub"]},"application/eshop":{source:"iana"},"application/exi":{source:"iana",extensions:["exi"]},"application/expect-ct-report+json":{source:"iana",compressible:!0},"application/express":{source:"iana",extensions:["exp"]},"application/fastinfoset":{source:"iana"},"application/fastsoap":{source:"iana"},"application/fdt+xml":{source:"iana",compressible:!0,extensions:["fdt"]},"application/fhir+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/fhir+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/fido.trusted-apps+json":{compressible:!0},"application/fits":{source:"iana"},"application/flexfec":{source:"iana"},"application/font-sfnt":{source:"iana"},"application/font-tdpfr":{source:"iana",extensions:["pfr"]},"application/font-woff":{source:"iana",compressible:!1},"application/framework-attributes+xml":{source:"iana",compressible:!0},"application/geo+json":{source:"iana",compressible:!0,extensions:["geojson"]},"application/geo+json-seq":{source:"iana"},"application/geopackage+sqlite3":{source:"iana"},"application/geoxacml+xml":{source:"iana",compressible:!0},"application/gltf-buffer":{source:"iana"},"application/gml+xml":{source:"iana",compressible:!0,extensions:["gml"]},"application/gpx+xml":{source:"apache",compressible:!0,extensions:["gpx"]},"application/gxf":{source:"apache",extensions:["gxf"]},"application/gzip":{source:"iana",compressible:!1,extensions:["gz"]},"application/h224":{source:"iana"},"application/held+xml":{source:"iana",compressible:!0},"application/hjson":{extensions:["hjson"]},"application/http":{source:"iana"},"application/hyperstudio":{source:"iana",extensions:["stk"]},"application/ibe-key-request+xml":{source:"iana",compressible:!0},"application/ibe-pkg-reply+xml":{source:"iana",compressible:!0},"application/ibe-pp-data":{source:"iana"},"application/iges":{source:"iana"},"application/im-iscomposing+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/index":{source:"iana"},"application/index.cmd":{source:"iana"},"application/index.obj":{source:"iana"},"application/index.response":{source:"iana"},"application/index.vnd":{source:"iana"},"application/inkml+xml":{source:"iana",compressible:!0,extensions:["ink","inkml"]},"application/iotp":{source:"iana"},"application/ipfix":{source:"iana",extensions:["ipfix"]},"application/ipp":{source:"iana"},"application/isup":{source:"iana"},"application/its+xml":{source:"iana",compressible:!0,extensions:["its"]},"application/java-archive":{source:"apache",compressible:!1,extensions:["jar","war","ear"]},"application/java-serialized-object":{source:"apache",compressible:!1,extensions:["ser"]},"application/java-vm":{source:"apache",compressible:!1,extensions:["class"]},"application/javascript":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["js","mjs"]},"application/jf2feed+json":{source:"iana",compressible:!0},"application/jose":{source:"iana"},"application/jose+json":{source:"iana",compressible:!0},"application/jrd+json":{source:"iana",compressible:!0},"application/jscalendar+json":{source:"iana",compressible:!0},"application/json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["json","map"]},"application/json-patch+json":{source:"iana",compressible:!0},"application/json-seq":{source:"iana"},"application/json5":{extensions:["json5"]},"application/jsonml+json":{source:"apache",compressible:!0,extensions:["jsonml"]},"application/jwk+json":{source:"iana",compressible:!0},"application/jwk-set+json":{source:"iana",compressible:!0},"application/jwt":{source:"iana"},"application/kpml-request+xml":{source:"iana",compressible:!0},"application/kpml-response+xml":{source:"iana",compressible:!0},"application/ld+json":{source:"iana",compressible:!0,extensions:["jsonld"]},"application/lgr+xml":{source:"iana",compressible:!0,extensions:["lgr"]},"application/link-format":{source:"iana"},"application/load-control+xml":{source:"iana",compressible:!0},"application/lost+xml":{source:"iana",compressible:!0,extensions:["lostxml"]},"application/lostsync+xml":{source:"iana",compressible:!0},"application/lpf+zip":{source:"iana",compressible:!1},"application/lxf":{source:"iana"},"application/mac-binhex40":{source:"iana",extensions:["hqx"]},"application/mac-compactpro":{source:"apache",extensions:["cpt"]},"application/macwriteii":{source:"iana"},"application/mads+xml":{source:"iana",compressible:!0,extensions:["mads"]},"application/manifest+json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["webmanifest"]},"application/marc":{source:"iana",extensions:["mrc"]},"application/marcxml+xml":{source:"iana",compressible:!0,extensions:["mrcx"]},"application/mathematica":{source:"iana",extensions:["ma","nb","mb"]},"application/mathml+xml":{source:"iana",compressible:!0,extensions:["mathml"]},"application/mathml-content+xml":{source:"iana",compressible:!0},"application/mathml-presentation+xml":{source:"iana",compressible:!0},"application/mbms-associated-procedure-description+xml":{source:"iana",compressible:!0},"application/mbms-deregister+xml":{source:"iana",compressible:!0},"application/mbms-envelope+xml":{source:"iana",compressible:!0},"application/mbms-msk+xml":{source:"iana",compressible:!0},"application/mbms-msk-response+xml":{source:"iana",compressible:!0},"application/mbms-protection-description+xml":{source:"iana",compressible:!0},"application/mbms-reception-report+xml":{source:"iana",compressible:!0},"application/mbms-register+xml":{source:"iana",compressible:!0},"application/mbms-register-response+xml":{source:"iana",compressible:!0},"application/mbms-schedule+xml":{source:"iana",compressible:!0},"application/mbms-user-service-description+xml":{source:"iana",compressible:!0},"application/mbox":{source:"iana",extensions:["mbox"]},"application/media-policy-dataset+xml":{source:"iana",compressible:!0,extensions:["mpf"]},"application/media_control+xml":{source:"iana",compressible:!0},"application/mediaservercontrol+xml":{source:"iana",compressible:!0,extensions:["mscml"]},"application/merge-patch+json":{source:"iana",compressible:!0},"application/metalink+xml":{source:"apache",compressible:!0,extensions:["metalink"]},"application/metalink4+xml":{source:"iana",compressible:!0,extensions:["meta4"]},"application/mets+xml":{source:"iana",compressible:!0,extensions:["mets"]},"application/mf4":{source:"iana"},"application/mikey":{source:"iana"},"application/mipc":{source:"iana"},"application/missing-blocks+cbor-seq":{source:"iana"},"application/mmt-aei+xml":{source:"iana",compressible:!0,extensions:["maei"]},"application/mmt-usd+xml":{source:"iana",compressible:!0,extensions:["musd"]},"application/mods+xml":{source:"iana",compressible:!0,extensions:["mods"]},"application/moss-keys":{source:"iana"},"application/moss-signature":{source:"iana"},"application/mosskey-data":{source:"iana"},"application/mosskey-request":{source:"iana"},"application/mp21":{source:"iana",extensions:["m21","mp21"]},"application/mp4":{source:"iana",extensions:["mp4s","m4p"]},"application/mpeg4-generic":{source:"iana"},"application/mpeg4-iod":{source:"iana"},"application/mpeg4-iod-xmt":{source:"iana"},"application/mrb-consumer+xml":{source:"iana",compressible:!0},"application/mrb-publish+xml":{source:"iana",compressible:!0},"application/msc-ivr+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msc-mixer+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msword":{source:"iana",compressible:!1,extensions:["doc","dot"]},"application/mud+json":{source:"iana",compressible:!0},"application/multipart-core":{source:"iana"},"application/mxf":{source:"iana",extensions:["mxf"]},"application/n-quads":{source:"iana",extensions:["nq"]},"application/n-triples":{source:"iana",extensions:["nt"]},"application/nasdata":{source:"iana"},"application/news-checkgroups":{source:"iana",charset:"US-ASCII"},"application/news-groupinfo":{source:"iana",charset:"US-ASCII"},"application/news-transmission":{source:"iana"},"application/nlsml+xml":{source:"iana",compressible:!0},"application/node":{source:"iana",extensions:["cjs"]},"application/nss":{source:"iana"},"application/oauth-authz-req+jwt":{source:"iana"},"application/oblivious-dns-message":{source:"iana"},"application/ocsp-request":{source:"iana"},"application/ocsp-response":{source:"iana"},"application/octet-stream":{source:"iana",compressible:!1,extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{source:"iana",extensions:["oda"]},"application/odm+xml":{source:"iana",compressible:!0},"application/odx":{source:"iana"},"application/oebps-package+xml":{source:"iana",compressible:!0,extensions:["opf"]},"application/ogg":{source:"iana",compressible:!1,extensions:["ogx"]},"application/omdoc+xml":{source:"apache",compressible:!0,extensions:["omdoc"]},"application/onenote":{source:"apache",extensions:["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{source:"iana",compressible:!0},"application/oscore":{source:"iana"},"application/oxps":{source:"iana",extensions:["oxps"]},"application/p21":{source:"iana"},"application/p21+zip":{source:"iana",compressible:!1},"application/p2p-overlay+xml":{source:"iana",compressible:!0,extensions:["relo"]},"application/parityfec":{source:"iana"},"application/passport":{source:"iana"},"application/patch-ops-error+xml":{source:"iana",compressible:!0,extensions:["xer"]},"application/pdf":{source:"iana",compressible:!1,extensions:["pdf"]},"application/pdx":{source:"iana"},"application/pem-certificate-chain":{source:"iana"},"application/pgp-encrypted":{source:"iana",compressible:!1,extensions:["pgp"]},"application/pgp-keys":{source:"iana",extensions:["asc"]},"application/pgp-signature":{source:"iana",extensions:["asc","sig"]},"application/pics-rules":{source:"apache",extensions:["prf"]},"application/pidf+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pidf-diff+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pkcs10":{source:"iana",extensions:["p10"]},"application/pkcs12":{source:"iana"},"application/pkcs7-mime":{source:"iana",extensions:["p7m","p7c"]},"application/pkcs7-signature":{source:"iana",extensions:["p7s"]},"application/pkcs8":{source:"iana",extensions:["p8"]},"application/pkcs8-encrypted":{source:"iana"},"application/pkix-attr-cert":{source:"iana",extensions:["ac"]},"application/pkix-cert":{source:"iana",extensions:["cer"]},"application/pkix-crl":{source:"iana",extensions:["crl"]},"application/pkix-pkipath":{source:"iana",extensions:["pkipath"]},"application/pkixcmp":{source:"iana",extensions:["pki"]},"application/pls+xml":{source:"iana",compressible:!0,extensions:["pls"]},"application/poc-settings+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/postscript":{source:"iana",compressible:!0,extensions:["ai","eps","ps"]},"application/ppsp-tracker+json":{source:"iana",compressible:!0},"application/problem+json":{source:"iana",compressible:!0},"application/problem+xml":{source:"iana",compressible:!0},"application/provenance+xml":{source:"iana",compressible:!0,extensions:["provx"]},"application/prs.alvestrand.titrax-sheet":{source:"iana"},"application/prs.cww":{source:"iana",extensions:["cww"]},"application/prs.cyn":{source:"iana",charset:"7-BIT"},"application/prs.hpub+zip":{source:"iana",compressible:!1},"application/prs.nprend":{source:"iana"},"application/prs.plucker":{source:"iana"},"application/prs.rdf-xml-crypt":{source:"iana"},"application/prs.xsf+xml":{source:"iana",compressible:!0},"application/pskc+xml":{source:"iana",compressible:!0,extensions:["pskcxml"]},"application/pvd+json":{source:"iana",compressible:!0},"application/qsig":{source:"iana"},"application/raml+yaml":{compressible:!0,extensions:["raml"]},"application/raptorfec":{source:"iana"},"application/rdap+json":{source:"iana",compressible:!0},"application/rdf+xml":{source:"iana",compressible:!0,extensions:["rdf","owl"]},"application/reginfo+xml":{source:"iana",compressible:!0,extensions:["rif"]},"application/relax-ng-compact-syntax":{source:"iana",extensions:["rnc"]},"application/remote-printing":{source:"iana"},"application/reputon+json":{source:"iana",compressible:!0},"application/resource-lists+xml":{source:"iana",compressible:!0,extensions:["rl"]},"application/resource-lists-diff+xml":{source:"iana",compressible:!0,extensions:["rld"]},"application/rfc+xml":{source:"iana",compressible:!0},"application/riscos":{source:"iana"},"application/rlmi+xml":{source:"iana",compressible:!0},"application/rls-services+xml":{source:"iana",compressible:!0,extensions:["rs"]},"application/route-apd+xml":{source:"iana",compressible:!0,extensions:["rapd"]},"application/route-s-tsid+xml":{source:"iana",compressible:!0,extensions:["sls"]},"application/route-usd+xml":{source:"iana",compressible:!0,extensions:["rusd"]},"application/rpki-ghostbusters":{source:"iana",extensions:["gbr"]},"application/rpki-manifest":{source:"iana",extensions:["mft"]},"application/rpki-publication":{source:"iana"},"application/rpki-roa":{source:"iana",extensions:["roa"]},"application/rpki-updown":{source:"iana"},"application/rsd+xml":{source:"apache",compressible:!0,extensions:["rsd"]},"application/rss+xml":{source:"apache",compressible:!0,extensions:["rss"]},"application/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"application/rtploopback":{source:"iana"},"application/rtx":{source:"iana"},"application/samlassertion+xml":{source:"iana",compressible:!0},"application/samlmetadata+xml":{source:"iana",compressible:!0},"application/sarif+json":{source:"iana",compressible:!0},"application/sarif-external-properties+json":{source:"iana",compressible:!0},"application/sbe":{source:"iana"},"application/sbml+xml":{source:"iana",compressible:!0,extensions:["sbml"]},"application/scaip+xml":{source:"iana",compressible:!0},"application/scim+json":{source:"iana",compressible:!0},"application/scvp-cv-request":{source:"iana",extensions:["scq"]},"application/scvp-cv-response":{source:"iana",extensions:["scs"]},"application/scvp-vp-request":{source:"iana",extensions:["spq"]},"application/scvp-vp-response":{source:"iana",extensions:["spp"]},"application/sdp":{source:"iana",extensions:["sdp"]},"application/secevent+jwt":{source:"iana"},"application/senml+cbor":{source:"iana"},"application/senml+json":{source:"iana",compressible:!0},"application/senml+xml":{source:"iana",compressible:!0,extensions:["senmlx"]},"application/senml-etch+cbor":{source:"iana"},"application/senml-etch+json":{source:"iana",compressible:!0},"application/senml-exi":{source:"iana"},"application/sensml+cbor":{source:"iana"},"application/sensml+json":{source:"iana",compressible:!0},"application/sensml+xml":{source:"iana",compressible:!0,extensions:["sensmlx"]},"application/sensml-exi":{source:"iana"},"application/sep+xml":{source:"iana",compressible:!0},"application/sep-exi":{source:"iana"},"application/session-info":{source:"iana"},"application/set-payment":{source:"iana"},"application/set-payment-initiation":{source:"iana",extensions:["setpay"]},"application/set-registration":{source:"iana"},"application/set-registration-initiation":{source:"iana",extensions:["setreg"]},"application/sgml":{source:"iana"},"application/sgml-open-catalog":{source:"iana"},"application/shf+xml":{source:"iana",compressible:!0,extensions:["shf"]},"application/sieve":{source:"iana",extensions:["siv","sieve"]},"application/simple-filter+xml":{source:"iana",compressible:!0},"application/simple-message-summary":{source:"iana"},"application/simplesymbolcontainer":{source:"iana"},"application/sipc":{source:"iana"},"application/slate":{source:"iana"},"application/smil":{source:"iana"},"application/smil+xml":{source:"iana",compressible:!0,extensions:["smi","smil"]},"application/smpte336m":{source:"iana"},"application/soap+fastinfoset":{source:"iana"},"application/soap+xml":{source:"iana",compressible:!0},"application/sparql-query":{source:"iana",extensions:["rq"]},"application/sparql-results+xml":{source:"iana",compressible:!0,extensions:["srx"]},"application/spdx+json":{source:"iana",compressible:!0},"application/spirits-event+xml":{source:"iana",compressible:!0},"application/sql":{source:"iana"},"application/srgs":{source:"iana",extensions:["gram"]},"application/srgs+xml":{source:"iana",compressible:!0,extensions:["grxml"]},"application/sru+xml":{source:"iana",compressible:!0,extensions:["sru"]},"application/ssdl+xml":{source:"apache",compressible:!0,extensions:["ssdl"]},"application/ssml+xml":{source:"iana",compressible:!0,extensions:["ssml"]},"application/stix+json":{source:"iana",compressible:!0},"application/swid+xml":{source:"iana",compressible:!0,extensions:["swidtag"]},"application/tamp-apex-update":{source:"iana"},"application/tamp-apex-update-confirm":{source:"iana"},"application/tamp-community-update":{source:"iana"},"application/tamp-community-update-confirm":{source:"iana"},"application/tamp-error":{source:"iana"},"application/tamp-sequence-adjust":{source:"iana"},"application/tamp-sequence-adjust-confirm":{source:"iana"},"application/tamp-status-query":{source:"iana"},"application/tamp-status-response":{source:"iana"},"application/tamp-update":{source:"iana"},"application/tamp-update-confirm":{source:"iana"},"application/tar":{compressible:!0},"application/taxii+json":{source:"iana",compressible:!0},"application/td+json":{source:"iana",compressible:!0},"application/tei+xml":{source:"iana",compressible:!0,extensions:["tei","teicorpus"]},"application/tetra_isi":{source:"iana"},"application/thraud+xml":{source:"iana",compressible:!0,extensions:["tfi"]},"application/timestamp-query":{source:"iana"},"application/timestamp-reply":{source:"iana"},"application/timestamped-data":{source:"iana",extensions:["tsd"]},"application/tlsrpt+gzip":{source:"iana"},"application/tlsrpt+json":{source:"iana",compressible:!0},"application/tnauthlist":{source:"iana"},"application/token-introspection+jwt":{source:"iana"},"application/toml":{compressible:!0,extensions:["toml"]},"application/trickle-ice-sdpfrag":{source:"iana"},"application/trig":{source:"iana",extensions:["trig"]},"application/ttml+xml":{source:"iana",compressible:!0,extensions:["ttml"]},"application/tve-trigger":{source:"iana"},"application/tzif":{source:"iana"},"application/tzif-leap":{source:"iana"},"application/ubjson":{compressible:!1,extensions:["ubj"]},"application/ulpfec":{source:"iana"},"application/urc-grpsheet+xml":{source:"iana",compressible:!0},"application/urc-ressheet+xml":{source:"iana",compressible:!0,extensions:["rsheet"]},"application/urc-targetdesc+xml":{source:"iana",compressible:!0,extensions:["td"]},"application/urc-uisocketdesc+xml":{source:"iana",compressible:!0},"application/vcard+json":{source:"iana",compressible:!0},"application/vcard+xml":{source:"iana",compressible:!0},"application/vemmi":{source:"iana"},"application/vividence.scriptfile":{source:"apache"},"application/vnd.1000minds.decision-model+xml":{source:"iana",compressible:!0,extensions:["1km"]},"application/vnd.3gpp-prose+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-prose-pc3ch+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-v2x-local-service-information":{source:"iana"},"application/vnd.3gpp.5gnas":{source:"iana"},"application/vnd.3gpp.access-transfer-events+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.bsf+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gmop+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gtpc":{source:"iana"},"application/vnd.3gpp.interworking-data":{source:"iana"},"application/vnd.3gpp.lpp":{source:"iana"},"application/vnd.3gpp.mc-signalling-ear":{source:"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-payload":{source:"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-signalling":{source:"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-floor-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-signed+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-init-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-transmission-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mid-call+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ngap":{source:"iana"},"application/vnd.3gpp.pfcp":{source:"iana"},"application/vnd.3gpp.pic-bw-large":{source:"iana",extensions:["plb"]},"application/vnd.3gpp.pic-bw-small":{source:"iana",extensions:["psb"]},"application/vnd.3gpp.pic-bw-var":{source:"iana",extensions:["pvb"]},"application/vnd.3gpp.s1ap":{source:"iana"},"application/vnd.3gpp.sms":{source:"iana"},"application/vnd.3gpp.sms+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-ext+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.state-and-event-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ussd+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.bcmcsinfo+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.sms":{source:"iana"},"application/vnd.3gpp2.tcap":{source:"iana",extensions:["tcap"]},"application/vnd.3lightssoftware.imagescal":{source:"iana"},"application/vnd.3m.post-it-notes":{source:"iana",extensions:["pwn"]},"application/vnd.accpac.simply.aso":{source:"iana",extensions:["aso"]},"application/vnd.accpac.simply.imp":{source:"iana",extensions:["imp"]},"application/vnd.acucobol":{source:"iana",extensions:["acu"]},"application/vnd.acucorp":{source:"iana",extensions:["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{source:"apache",compressible:!1,extensions:["air"]},"application/vnd.adobe.flash.movie":{source:"iana"},"application/vnd.adobe.formscentral.fcdt":{source:"iana",extensions:["fcdt"]},"application/vnd.adobe.fxp":{source:"iana",extensions:["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{source:"iana"},"application/vnd.adobe.xdp+xml":{source:"iana",compressible:!0,extensions:["xdp"]},"application/vnd.adobe.xfdf":{source:"iana",extensions:["xfdf"]},"application/vnd.aether.imp":{source:"iana"},"application/vnd.afpc.afplinedata":{source:"iana"},"application/vnd.afpc.afplinedata-pagedef":{source:"iana"},"application/vnd.afpc.cmoca-cmresource":{source:"iana"},"application/vnd.afpc.foca-charset":{source:"iana"},"application/vnd.afpc.foca-codedfont":{source:"iana"},"application/vnd.afpc.foca-codepage":{source:"iana"},"application/vnd.afpc.modca":{source:"iana"},"application/vnd.afpc.modca-cmtable":{source:"iana"},"application/vnd.afpc.modca-formdef":{source:"iana"},"application/vnd.afpc.modca-mediummap":{source:"iana"},"application/vnd.afpc.modca-objectcontainer":{source:"iana"},"application/vnd.afpc.modca-overlay":{source:"iana"},"application/vnd.afpc.modca-pagesegment":{source:"iana"},"application/vnd.age":{source:"iana",extensions:["age"]},"application/vnd.ah-barcode":{source:"iana"},"application/vnd.ahead.space":{source:"iana",extensions:["ahead"]},"application/vnd.airzip.filesecure.azf":{source:"iana",extensions:["azf"]},"application/vnd.airzip.filesecure.azs":{source:"iana",extensions:["azs"]},"application/vnd.amadeus+json":{source:"iana",compressible:!0},"application/vnd.amazon.ebook":{source:"apache",extensions:["azw"]},"application/vnd.amazon.mobi8-ebook":{source:"iana"},"application/vnd.americandynamics.acc":{source:"iana",extensions:["acc"]},"application/vnd.amiga.ami":{source:"iana",extensions:["ami"]},"application/vnd.amundsen.maze+xml":{source:"iana",compressible:!0},"application/vnd.android.ota":{source:"iana"},"application/vnd.android.package-archive":{source:"apache",compressible:!1,extensions:["apk"]},"application/vnd.anki":{source:"iana"},"application/vnd.anser-web-certificate-issue-initiation":{source:"iana",extensions:["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{source:"apache",extensions:["fti"]},"application/vnd.antix.game-component":{source:"iana",extensions:["atx"]},"application/vnd.apache.arrow.file":{source:"iana"},"application/vnd.apache.arrow.stream":{source:"iana"},"application/vnd.apache.thrift.binary":{source:"iana"},"application/vnd.apache.thrift.compact":{source:"iana"},"application/vnd.apache.thrift.json":{source:"iana"},"application/vnd.api+json":{source:"iana",compressible:!0},"application/vnd.aplextor.warrp+json":{source:"iana",compressible:!0},"application/vnd.apothekende.reservation+json":{source:"iana",compressible:!0},"application/vnd.apple.installer+xml":{source:"iana",compressible:!0,extensions:["mpkg"]},"application/vnd.apple.keynote":{source:"iana",extensions:["key"]},"application/vnd.apple.mpegurl":{source:"iana",extensions:["m3u8"]},"application/vnd.apple.numbers":{source:"iana",extensions:["numbers"]},"application/vnd.apple.pages":{source:"iana",extensions:["pages"]},"application/vnd.apple.pkpass":{compressible:!1,extensions:["pkpass"]},"application/vnd.arastra.swi":{source:"iana"},"application/vnd.aristanetworks.swi":{source:"iana",extensions:["swi"]},"application/vnd.artisan+json":{source:"iana",compressible:!0},"application/vnd.artsquare":{source:"iana"},"application/vnd.astraea-software.iota":{source:"iana",extensions:["iota"]},"application/vnd.audiograph":{source:"iana",extensions:["aep"]},"application/vnd.autopackage":{source:"iana"},"application/vnd.avalon+json":{source:"iana",compressible:!0},"application/vnd.avistar+xml":{source:"iana",compressible:!0},"application/vnd.balsamiq.bmml+xml":{source:"iana",compressible:!0,extensions:["bmml"]},"application/vnd.balsamiq.bmpr":{source:"iana"},"application/vnd.banana-accounting":{source:"iana"},"application/vnd.bbf.usp.error":{source:"iana"},"application/vnd.bbf.usp.msg":{source:"iana"},"application/vnd.bbf.usp.msg+json":{source:"iana",compressible:!0},"application/vnd.bekitzur-stech+json":{source:"iana",compressible:!0},"application/vnd.bint.med-content":{source:"iana"},"application/vnd.biopax.rdf+xml":{source:"iana",compressible:!0},"application/vnd.blink-idb-value-wrapper":{source:"iana"},"application/vnd.blueice.multipass":{source:"iana",extensions:["mpm"]},"application/vnd.bluetooth.ep.oob":{source:"iana"},"application/vnd.bluetooth.le.oob":{source:"iana"},"application/vnd.bmi":{source:"iana",extensions:["bmi"]},"application/vnd.bpf":{source:"iana"},"application/vnd.bpf3":{source:"iana"},"application/vnd.businessobjects":{source:"iana",extensions:["rep"]},"application/vnd.byu.uapi+json":{source:"iana",compressible:!0},"application/vnd.cab-jscript":{source:"iana"},"application/vnd.canon-cpdl":{source:"iana"},"application/vnd.canon-lips":{source:"iana"},"application/vnd.capasystems-pg+json":{source:"iana",compressible:!0},"application/vnd.cendio.thinlinc.clientconf":{source:"iana"},"application/vnd.century-systems.tcp_stream":{source:"iana"},"application/vnd.chemdraw+xml":{source:"iana",compressible:!0,extensions:["cdxml"]},"application/vnd.chess-pgn":{source:"iana"},"application/vnd.chipnuts.karaoke-mmd":{source:"iana",extensions:["mmd"]},"application/vnd.ciedi":{source:"iana"},"application/vnd.cinderella":{source:"iana",extensions:["cdy"]},"application/vnd.cirpack.isdn-ext":{source:"iana"},"application/vnd.citationstyles.style+xml":{source:"iana",compressible:!0,extensions:["csl"]},"application/vnd.claymore":{source:"iana",extensions:["cla"]},"application/vnd.cloanto.rp9":{source:"iana",extensions:["rp9"]},"application/vnd.clonk.c4group":{source:"iana",extensions:["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{source:"iana",extensions:["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{source:"iana",extensions:["c11amz"]},"application/vnd.coffeescript":{source:"iana"},"application/vnd.collabio.xodocuments.document":{source:"iana"},"application/vnd.collabio.xodocuments.document-template":{source:"iana"},"application/vnd.collabio.xodocuments.presentation":{source:"iana"},"application/vnd.collabio.xodocuments.presentation-template":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{source:"iana"},"application/vnd.collection+json":{source:"iana",compressible:!0},"application/vnd.collection.doc+json":{source:"iana",compressible:!0},"application/vnd.collection.next+json":{source:"iana",compressible:!0},"application/vnd.comicbook+zip":{source:"iana",compressible:!1},"application/vnd.comicbook-rar":{source:"iana"},"application/vnd.commerce-battelle":{source:"iana"},"application/vnd.commonspace":{source:"iana",extensions:["csp"]},"application/vnd.contact.cmsg":{source:"iana",extensions:["cdbcmsg"]},"application/vnd.coreos.ignition+json":{source:"iana",compressible:!0},"application/vnd.cosmocaller":{source:"iana",extensions:["cmc"]},"application/vnd.crick.clicker":{source:"iana",extensions:["clkx"]},"application/vnd.crick.clicker.keyboard":{source:"iana",extensions:["clkk"]},"application/vnd.crick.clicker.palette":{source:"iana",extensions:["clkp"]},"application/vnd.crick.clicker.template":{source:"iana",extensions:["clkt"]},"application/vnd.crick.clicker.wordbank":{source:"iana",extensions:["clkw"]},"application/vnd.criticaltools.wbs+xml":{source:"iana",compressible:!0,extensions:["wbs"]},"application/vnd.cryptii.pipe+json":{source:"iana",compressible:!0},"application/vnd.crypto-shade-file":{source:"iana"},"application/vnd.cryptomator.encrypted":{source:"iana"},"application/vnd.cryptomator.vault":{source:"iana"},"application/vnd.ctc-posml":{source:"iana",extensions:["pml"]},"application/vnd.ctct.ws+xml":{source:"iana",compressible:!0},"application/vnd.cups-pdf":{source:"iana"},"application/vnd.cups-postscript":{source:"iana"},"application/vnd.cups-ppd":{source:"iana",extensions:["ppd"]},"application/vnd.cups-raster":{source:"iana"},"application/vnd.cups-raw":{source:"iana"},"application/vnd.curl":{source:"iana"},"application/vnd.curl.car":{source:"apache",extensions:["car"]},"application/vnd.curl.pcurl":{source:"apache",extensions:["pcurl"]},"application/vnd.cyan.dean.root+xml":{source:"iana",compressible:!0},"application/vnd.cybank":{source:"iana"},"application/vnd.cyclonedx+json":{source:"iana",compressible:!0},"application/vnd.cyclonedx+xml":{source:"iana",compressible:!0},"application/vnd.d2l.coursepackage1p0+zip":{source:"iana",compressible:!1},"application/vnd.d3m-dataset":{source:"iana"},"application/vnd.d3m-problem":{source:"iana"},"application/vnd.dart":{source:"iana",compressible:!0,extensions:["dart"]},"application/vnd.data-vision.rdz":{source:"iana",extensions:["rdz"]},"application/vnd.datapackage+json":{source:"iana",compressible:!0},"application/vnd.dataresource+json":{source:"iana",compressible:!0},"application/vnd.dbf":{source:"iana",extensions:["dbf"]},"application/vnd.debian.binary-package":{source:"iana"},"application/vnd.dece.data":{source:"iana",extensions:["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{source:"iana",compressible:!0,extensions:["uvt","uvvt"]},"application/vnd.dece.unspecified":{source:"iana",extensions:["uvx","uvvx"]},"application/vnd.dece.zip":{source:"iana",extensions:["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{source:"iana",extensions:["fe_launch"]},"application/vnd.desmume.movie":{source:"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{source:"iana"},"application/vnd.dm.delegation+xml":{source:"iana",compressible:!0},"application/vnd.dna":{source:"iana",extensions:["dna"]},"application/vnd.document+json":{source:"iana",compressible:!0},"application/vnd.dolby.mlp":{source:"apache",extensions:["mlp"]},"application/vnd.dolby.mobile.1":{source:"iana"},"application/vnd.dolby.mobile.2":{source:"iana"},"application/vnd.doremir.scorecloud-binary-document":{source:"iana"},"application/vnd.dpgraph":{source:"iana",extensions:["dpg"]},"application/vnd.dreamfactory":{source:"iana",extensions:["dfac"]},"application/vnd.drive+json":{source:"iana",compressible:!0},"application/vnd.ds-keypoint":{source:"apache",extensions:["kpxx"]},"application/vnd.dtg.local":{source:"iana"},"application/vnd.dtg.local.flash":{source:"iana"},"application/vnd.dtg.local.html":{source:"iana"},"application/vnd.dvb.ait":{source:"iana",extensions:["ait"]},"application/vnd.dvb.dvbisl+xml":{source:"iana",compressible:!0},"application/vnd.dvb.dvbj":{source:"iana"},"application/vnd.dvb.esgcontainer":{source:"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess2":{source:"iana"},"application/vnd.dvb.ipdcesgpdd":{source:"iana"},"application/vnd.dvb.ipdcroaming":{source:"iana"},"application/vnd.dvb.iptv.alfec-base":{source:"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{source:"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-container+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-generic+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-msglist+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-request+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-response+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-init+xml":{source:"iana",compressible:!0},"application/vnd.dvb.pfr":{source:"iana"},"application/vnd.dvb.service":{source:"iana",extensions:["svc"]},"application/vnd.dxr":{source:"iana"},"application/vnd.dynageo":{source:"iana",extensions:["geo"]},"application/vnd.dzr":{source:"iana"},"application/vnd.easykaraoke.cdgdownload":{source:"iana"},"application/vnd.ecdis-update":{source:"iana"},"application/vnd.ecip.rlp":{source:"iana"},"application/vnd.eclipse.ditto+json":{source:"iana",compressible:!0},"application/vnd.ecowin.chart":{source:"iana",extensions:["mag"]},"application/vnd.ecowin.filerequest":{source:"iana"},"application/vnd.ecowin.fileupdate":{source:"iana"},"application/vnd.ecowin.series":{source:"iana"},"application/vnd.ecowin.seriesrequest":{source:"iana"},"application/vnd.ecowin.seriesupdate":{source:"iana"},"application/vnd.efi.img":{source:"iana"},"application/vnd.efi.iso":{source:"iana"},"application/vnd.emclient.accessrequest+xml":{source:"iana",compressible:!0},"application/vnd.enliven":{source:"iana",extensions:["nml"]},"application/vnd.enphase.envoy":{source:"iana"},"application/vnd.eprints.data+xml":{source:"iana",compressible:!0},"application/vnd.epson.esf":{source:"iana",extensions:["esf"]},"application/vnd.epson.msf":{source:"iana",extensions:["msf"]},"application/vnd.epson.quickanime":{source:"iana",extensions:["qam"]},"application/vnd.epson.salt":{source:"iana",extensions:["slt"]},"application/vnd.epson.ssf":{source:"iana",extensions:["ssf"]},"application/vnd.ericsson.quickcall":{source:"iana"},"application/vnd.espass-espass+zip":{source:"iana",compressible:!1},"application/vnd.eszigno3+xml":{source:"iana",compressible:!0,extensions:["es3","et3"]},"application/vnd.etsi.aoc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.asic-e+zip":{source:"iana",compressible:!1},"application/vnd.etsi.asic-s+zip":{source:"iana",compressible:!1},"application/vnd.etsi.cug+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvcommand+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-bc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-cod+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-npvr+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvservice+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsync+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvueprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mcid+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mheg5":{source:"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{source:"iana",compressible:!0},"application/vnd.etsi.pstn+xml":{source:"iana",compressible:!0},"application/vnd.etsi.sci+xml":{source:"iana",compressible:!0},"application/vnd.etsi.simservs+xml":{source:"iana",compressible:!0},"application/vnd.etsi.timestamp-token":{source:"iana"},"application/vnd.etsi.tsl+xml":{source:"iana",compressible:!0},"application/vnd.etsi.tsl.der":{source:"iana"},"application/vnd.eu.kasparian.car+json":{source:"iana",compressible:!0},"application/vnd.eudora.data":{source:"iana"},"application/vnd.evolv.ecig.profile":{source:"iana"},"application/vnd.evolv.ecig.settings":{source:"iana"},"application/vnd.evolv.ecig.theme":{source:"iana"},"application/vnd.exstream-empower+zip":{source:"iana",compressible:!1},"application/vnd.exstream-package":{source:"iana"},"application/vnd.ezpix-album":{source:"iana",extensions:["ez2"]},"application/vnd.ezpix-package":{source:"iana",extensions:["ez3"]},"application/vnd.f-secure.mobile":{source:"iana"},"application/vnd.familysearch.gedcom+zip":{source:"iana",compressible:!1},"application/vnd.fastcopy-disk-image":{source:"iana"},"application/vnd.fdf":{source:"iana",extensions:["fdf"]},"application/vnd.fdsn.mseed":{source:"iana",extensions:["mseed"]},"application/vnd.fdsn.seed":{source:"iana",extensions:["seed","dataless"]},"application/vnd.ffsns":{source:"iana"},"application/vnd.ficlab.flb+zip":{source:"iana",compressible:!1},"application/vnd.filmit.zfc":{source:"iana"},"application/vnd.fints":{source:"iana"},"application/vnd.firemonkeys.cloudcell":{source:"iana"},"application/vnd.flographit":{source:"iana",extensions:["gph"]},"application/vnd.fluxtime.clip":{source:"iana",extensions:["ftc"]},"application/vnd.font-fontforge-sfd":{source:"iana"},"application/vnd.framemaker":{source:"iana",extensions:["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{source:"iana",extensions:["fnc"]},"application/vnd.frogans.ltf":{source:"iana",extensions:["ltf"]},"application/vnd.fsc.weblaunch":{source:"iana",extensions:["fsc"]},"application/vnd.fujifilm.fb.docuworks":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.container":{source:"iana"},"application/vnd.fujifilm.fb.jfi+xml":{source:"iana",compressible:!0},"application/vnd.fujitsu.oasys":{source:"iana",extensions:["oas"]},"application/vnd.fujitsu.oasys2":{source:"iana",extensions:["oa2"]},"application/vnd.fujitsu.oasys3":{source:"iana",extensions:["oa3"]},"application/vnd.fujitsu.oasysgp":{source:"iana",extensions:["fg5"]},"application/vnd.fujitsu.oasysprs":{source:"iana",extensions:["bh2"]},"application/vnd.fujixerox.art-ex":{source:"iana"},"application/vnd.fujixerox.art4":{source:"iana"},"application/vnd.fujixerox.ddd":{source:"iana",extensions:["ddd"]},"application/vnd.fujixerox.docuworks":{source:"iana",extensions:["xdw"]},"application/vnd.fujixerox.docuworks.binder":{source:"iana",extensions:["xbd"]},"application/vnd.fujixerox.docuworks.container":{source:"iana"},"application/vnd.fujixerox.hbpl":{source:"iana"},"application/vnd.fut-misnet":{source:"iana"},"application/vnd.futoin+cbor":{source:"iana"},"application/vnd.futoin+json":{source:"iana",compressible:!0},"application/vnd.fuzzysheet":{source:"iana",extensions:["fzs"]},"application/vnd.genomatix.tuxedo":{source:"iana",extensions:["txd"]},"application/vnd.gentics.grd+json":{source:"iana",compressible:!0},"application/vnd.geo+json":{source:"iana",compressible:!0},"application/vnd.geocube+xml":{source:"iana",compressible:!0},"application/vnd.geogebra.file":{source:"iana",extensions:["ggb"]},"application/vnd.geogebra.slides":{source:"iana"},"application/vnd.geogebra.tool":{source:"iana",extensions:["ggt"]},"application/vnd.geometry-explorer":{source:"iana",extensions:["gex","gre"]},"application/vnd.geonext":{source:"iana",extensions:["gxt"]},"application/vnd.geoplan":{source:"iana",extensions:["g2w"]},"application/vnd.geospace":{source:"iana",extensions:["g3w"]},"application/vnd.gerber":{source:"iana"},"application/vnd.globalplatform.card-content-mgt":{source:"iana"},"application/vnd.globalplatform.card-content-mgt-response":{source:"iana"},"application/vnd.gmx":{source:"iana",extensions:["gmx"]},"application/vnd.google-apps.document":{compressible:!1,extensions:["gdoc"]},"application/vnd.google-apps.presentation":{compressible:!1,extensions:["gslides"]},"application/vnd.google-apps.spreadsheet":{compressible:!1,extensions:["gsheet"]},"application/vnd.google-earth.kml+xml":{source:"iana",compressible:!0,extensions:["kml"]},"application/vnd.google-earth.kmz":{source:"iana",compressible:!1,extensions:["kmz"]},"application/vnd.gov.sk.e-form+xml":{source:"iana",compressible:!0},"application/vnd.gov.sk.e-form+zip":{source:"iana",compressible:!1},"application/vnd.gov.sk.xmldatacontainer+xml":{source:"iana",compressible:!0},"application/vnd.grafeq":{source:"iana",extensions:["gqf","gqs"]},"application/vnd.gridmp":{source:"iana"},"application/vnd.groove-account":{source:"iana",extensions:["gac"]},"application/vnd.groove-help":{source:"iana",extensions:["ghf"]},"application/vnd.groove-identity-message":{source:"iana",extensions:["gim"]},"application/vnd.groove-injector":{source:"iana",extensions:["grv"]},"application/vnd.groove-tool-message":{source:"iana",extensions:["gtm"]},"application/vnd.groove-tool-template":{source:"iana",extensions:["tpl"]},"application/vnd.groove-vcard":{source:"iana",extensions:["vcg"]},"application/vnd.hal+json":{source:"iana",compressible:!0},"application/vnd.hal+xml":{source:"iana",compressible:!0,extensions:["hal"]},"application/vnd.handheld-entertainment+xml":{source:"iana",compressible:!0,extensions:["zmm"]},"application/vnd.hbci":{source:"iana",extensions:["hbci"]},"application/vnd.hc+json":{source:"iana",compressible:!0},"application/vnd.hcl-bireports":{source:"iana"},"application/vnd.hdt":{source:"iana"},"application/vnd.heroku+json":{source:"iana",compressible:!0},"application/vnd.hhe.lesson-player":{source:"iana",extensions:["les"]},"application/vnd.hl7cda+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hl7v2+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hp-hpgl":{source:"iana",extensions:["hpgl"]},"application/vnd.hp-hpid":{source:"iana",extensions:["hpid"]},"application/vnd.hp-hps":{source:"iana",extensions:["hps"]},"application/vnd.hp-jlyt":{source:"iana",extensions:["jlt"]},"application/vnd.hp-pcl":{source:"iana",extensions:["pcl"]},"application/vnd.hp-pclxl":{source:"iana",extensions:["pclxl"]},"application/vnd.httphone":{source:"iana"},"application/vnd.hydrostatix.sof-data":{source:"iana",extensions:["sfd-hdstx"]},"application/vnd.hyper+json":{source:"iana",compressible:!0},"application/vnd.hyper-item+json":{source:"iana",compressible:!0},"application/vnd.hyperdrive+json":{source:"iana",compressible:!0},"application/vnd.hzn-3d-crossword":{source:"iana"},"application/vnd.ibm.afplinedata":{source:"iana"},"application/vnd.ibm.electronic-media":{source:"iana"},"application/vnd.ibm.minipay":{source:"iana",extensions:["mpy"]},"application/vnd.ibm.modcap":{source:"iana",extensions:["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{source:"iana",extensions:["irm"]},"application/vnd.ibm.secure-container":{source:"iana",extensions:["sc"]},"application/vnd.iccprofile":{source:"iana",extensions:["icc","icm"]},"application/vnd.ieee.1905":{source:"iana"},"application/vnd.igloader":{source:"iana",extensions:["igl"]},"application/vnd.imagemeter.folder+zip":{source:"iana",compressible:!1},"application/vnd.imagemeter.image+zip":{source:"iana",compressible:!1},"application/vnd.immervision-ivp":{source:"iana",extensions:["ivp"]},"application/vnd.immervision-ivu":{source:"iana",extensions:["ivu"]},"application/vnd.ims.imsccv1p1":{source:"iana"},"application/vnd.ims.imsccv1p2":{source:"iana"},"application/vnd.ims.imsccv1p3":{source:"iana"},"application/vnd.ims.lis.v2.result+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy.id+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings.simple+json":{source:"iana",compressible:!0},"application/vnd.informedcontrol.rms+xml":{source:"iana",compressible:!0},"application/vnd.informix-visionary":{source:"iana"},"application/vnd.infotech.project":{source:"iana"},"application/vnd.infotech.project+xml":{source:"iana",compressible:!0},"application/vnd.innopath.wamp.notification":{source:"iana"},"application/vnd.insors.igm":{source:"iana",extensions:["igm"]},"application/vnd.intercon.formnet":{source:"iana",extensions:["xpw","xpx"]},"application/vnd.intergeo":{source:"iana",extensions:["i2g"]},"application/vnd.intertrust.digibox":{source:"iana"},"application/vnd.intertrust.nncp":{source:"iana"},"application/vnd.intu.qbo":{source:"iana",extensions:["qbo"]},"application/vnd.intu.qfx":{source:"iana",extensions:["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.conceptitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.knowledgeitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsmessage+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.packageitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.planningitem+xml":{source:"iana",compressible:!0},"application/vnd.ipunplugged.rcprofile":{source:"iana",extensions:["rcprofile"]},"application/vnd.irepository.package+xml":{source:"iana",compressible:!0,extensions:["irp"]},"application/vnd.is-xpr":{source:"iana",extensions:["xpr"]},"application/vnd.isac.fcs":{source:"iana",extensions:["fcs"]},"application/vnd.iso11783-10+zip":{source:"iana",compressible:!1},"application/vnd.jam":{source:"iana",extensions:["jam"]},"application/vnd.japannet-directory-service":{source:"iana"},"application/vnd.japannet-jpnstore-wakeup":{source:"iana"},"application/vnd.japannet-payment-wakeup":{source:"iana"},"application/vnd.japannet-registration":{source:"iana"},"application/vnd.japannet-registration-wakeup":{source:"iana"},"application/vnd.japannet-setstore-wakeup":{source:"iana"},"application/vnd.japannet-verification":{source:"iana"},"application/vnd.japannet-verification-wakeup":{source:"iana"},"application/vnd.jcp.javame.midlet-rms":{source:"iana",extensions:["rms"]},"application/vnd.jisp":{source:"iana",extensions:["jisp"]},"application/vnd.joost.joda-archive":{source:"iana",extensions:["joda"]},"application/vnd.jsk.isdn-ngn":{source:"iana"},"application/vnd.kahootz":{source:"iana",extensions:["ktz","ktr"]},"application/vnd.kde.karbon":{source:"iana",extensions:["karbon"]},"application/vnd.kde.kchart":{source:"iana",extensions:["chrt"]},"application/vnd.kde.kformula":{source:"iana",extensions:["kfo"]},"application/vnd.kde.kivio":{source:"iana",extensions:["flw"]},"application/vnd.kde.kontour":{source:"iana",extensions:["kon"]},"application/vnd.kde.kpresenter":{source:"iana",extensions:["kpr","kpt"]},"application/vnd.kde.kspread":{source:"iana",extensions:["ksp"]},"application/vnd.kde.kword":{source:"iana",extensions:["kwd","kwt"]},"application/vnd.kenameaapp":{source:"iana",extensions:["htke"]},"application/vnd.kidspiration":{source:"iana",extensions:["kia"]},"application/vnd.kinar":{source:"iana",extensions:["kne","knp"]},"application/vnd.koan":{source:"iana",extensions:["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{source:"iana",extensions:["sse"]},"application/vnd.las":{source:"iana"},"application/vnd.las.las+json":{source:"iana",compressible:!0},"application/vnd.las.las+xml":{source:"iana",compressible:!0,extensions:["lasxml"]},"application/vnd.laszip":{source:"iana"},"application/vnd.leap+json":{source:"iana",compressible:!0},"application/vnd.liberty-request+xml":{source:"iana",compressible:!0},"application/vnd.llamagraphics.life-balance.desktop":{source:"iana",extensions:["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{source:"iana",compressible:!0,extensions:["lbe"]},"application/vnd.logipipe.circuit+zip":{source:"iana",compressible:!1},"application/vnd.loom":{source:"iana"},"application/vnd.lotus-1-2-3":{source:"iana",extensions:["123"]},"application/vnd.lotus-approach":{source:"iana",extensions:["apr"]},"application/vnd.lotus-freelance":{source:"iana",extensions:["pre"]},"application/vnd.lotus-notes":{source:"iana",extensions:["nsf"]},"application/vnd.lotus-organizer":{source:"iana",extensions:["org"]},"application/vnd.lotus-screencam":{source:"iana",extensions:["scm"]},"application/vnd.lotus-wordpro":{source:"iana",extensions:["lwp"]},"application/vnd.macports.portpkg":{source:"iana",extensions:["portpkg"]},"application/vnd.mapbox-vector-tile":{source:"iana",extensions:["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.conftoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.license+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.mdcf":{source:"iana"},"application/vnd.mason+json":{source:"iana",compressible:!0},"application/vnd.maxar.archive.3tz+zip":{source:"iana",compressible:!1},"application/vnd.maxmind.maxmind-db":{source:"iana"},"application/vnd.mcd":{source:"iana",extensions:["mcd"]},"application/vnd.medcalcdata":{source:"iana",extensions:["mc1"]},"application/vnd.mediastation.cdkey":{source:"iana",extensions:["cdkey"]},"application/vnd.meridian-slingshot":{source:"iana"},"application/vnd.mfer":{source:"iana",extensions:["mwf"]},"application/vnd.mfmp":{source:"iana",extensions:["mfm"]},"application/vnd.micro+json":{source:"iana",compressible:!0},"application/vnd.micrografx.flo":{source:"iana",extensions:["flo"]},"application/vnd.micrografx.igx":{source:"iana",extensions:["igx"]},"application/vnd.microsoft.portable-executable":{source:"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{source:"iana"},"application/vnd.miele+json":{source:"iana",compressible:!0},"application/vnd.mif":{source:"iana",extensions:["mif"]},"application/vnd.minisoft-hp3000-save":{source:"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{source:"iana"},"application/vnd.mobius.daf":{source:"iana",extensions:["daf"]},"application/vnd.mobius.dis":{source:"iana",extensions:["dis"]},"application/vnd.mobius.mbk":{source:"iana",extensions:["mbk"]},"application/vnd.mobius.mqy":{source:"iana",extensions:["mqy"]},"application/vnd.mobius.msl":{source:"iana",extensions:["msl"]},"application/vnd.mobius.plc":{source:"iana",extensions:["plc"]},"application/vnd.mobius.txf":{source:"iana",extensions:["txf"]},"application/vnd.mophun.application":{source:"iana",extensions:["mpn"]},"application/vnd.mophun.certificate":{source:"iana",extensions:["mpc"]},"application/vnd.motorola.flexsuite":{source:"iana"},"application/vnd.motorola.flexsuite.adsi":{source:"iana"},"application/vnd.motorola.flexsuite.fis":{source:"iana"},"application/vnd.motorola.flexsuite.gotap":{source:"iana"},"application/vnd.motorola.flexsuite.kmr":{source:"iana"},"application/vnd.motorola.flexsuite.ttc":{source:"iana"},"application/vnd.motorola.flexsuite.wem":{source:"iana"},"application/vnd.motorola.iprm":{source:"iana"},"application/vnd.mozilla.xul+xml":{source:"iana",compressible:!0,extensions:["xul"]},"application/vnd.ms-3mfdocument":{source:"iana"},"application/vnd.ms-artgalry":{source:"iana",extensions:["cil"]},"application/vnd.ms-asf":{source:"iana"},"application/vnd.ms-cab-compressed":{source:"iana",extensions:["cab"]},"application/vnd.ms-color.iccprofile":{source:"apache"},"application/vnd.ms-excel":{source:"iana",compressible:!1,extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{source:"iana",extensions:["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{source:"iana",extensions:["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{source:"iana",extensions:["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{source:"iana",extensions:["xltm"]},"application/vnd.ms-fontobject":{source:"iana",compressible:!0,extensions:["eot"]},"application/vnd.ms-htmlhelp":{source:"iana",extensions:["chm"]},"application/vnd.ms-ims":{source:"iana",extensions:["ims"]},"application/vnd.ms-lrm":{source:"iana",extensions:["lrm"]},"application/vnd.ms-office.activex+xml":{source:"iana",compressible:!0},"application/vnd.ms-officetheme":{source:"iana",extensions:["thmx"]},"application/vnd.ms-opentype":{source:"apache",compressible:!0},"application/vnd.ms-outlook":{compressible:!1,extensions:["msg"]},"application/vnd.ms-package.obfuscated-opentype":{source:"apache"},"application/vnd.ms-pki.seccat":{source:"apache",extensions:["cat"]},"application/vnd.ms-pki.stl":{source:"apache",extensions:["stl"]},"application/vnd.ms-playready.initiator+xml":{source:"iana",compressible:!0},"application/vnd.ms-powerpoint":{source:"iana",compressible:!1,extensions:["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{source:"iana",extensions:["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{source:"iana",extensions:["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{source:"iana",extensions:["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{source:"iana",extensions:["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{source:"iana",extensions:["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{source:"iana",compressible:!0},"application/vnd.ms-printing.printticket+xml":{source:"apache",compressible:!0},"application/vnd.ms-printschematicket+xml":{source:"iana",compressible:!0},"application/vnd.ms-project":{source:"iana",extensions:["mpp","mpt"]},"application/vnd.ms-tnef":{source:"iana"},"application/vnd.ms-windows.devicepairing":{source:"iana"},"application/vnd.ms-windows.nwprinting.oob":{source:"iana"},"application/vnd.ms-windows.printerpairing":{source:"iana"},"application/vnd.ms-windows.wsd.oob":{source:"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.lic-resp":{source:"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.meter-resp":{source:"iana"},"application/vnd.ms-word.document.macroenabled.12":{source:"iana",extensions:["docm"]},"application/vnd.ms-word.template.macroenabled.12":{source:"iana",extensions:["dotm"]},"application/vnd.ms-works":{source:"iana",extensions:["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{source:"iana",extensions:["wpl"]},"application/vnd.ms-xpsdocument":{source:"iana",compressible:!1,extensions:["xps"]},"application/vnd.msa-disk-image":{source:"iana"},"application/vnd.mseq":{source:"iana",extensions:["mseq"]},"application/vnd.msign":{source:"iana"},"application/vnd.multiad.creator":{source:"iana"},"application/vnd.multiad.creator.cif":{source:"iana"},"application/vnd.music-niff":{source:"iana"},"application/vnd.musician":{source:"iana",extensions:["mus"]},"application/vnd.muvee.style":{source:"iana",extensions:["msty"]},"application/vnd.mynfc":{source:"iana",extensions:["taglet"]},"application/vnd.nacamar.ybrid+json":{source:"iana",compressible:!0},"application/vnd.ncd.control":{source:"iana"},"application/vnd.ncd.reference":{source:"iana"},"application/vnd.nearst.inv+json":{source:"iana",compressible:!0},"application/vnd.nebumind.line":{source:"iana"},"application/vnd.nervana":{source:"iana"},"application/vnd.netfpx":{source:"iana"},"application/vnd.neurolanguage.nlu":{source:"iana",extensions:["nlu"]},"application/vnd.nimn":{source:"iana"},"application/vnd.nintendo.nitro.rom":{source:"iana"},"application/vnd.nintendo.snes.rom":{source:"iana"},"application/vnd.nitf":{source:"iana",extensions:["ntf","nitf"]},"application/vnd.noblenet-directory":{source:"iana",extensions:["nnd"]},"application/vnd.noblenet-sealer":{source:"iana",extensions:["nns"]},"application/vnd.noblenet-web":{source:"iana",extensions:["nnw"]},"application/vnd.nokia.catalogs":{source:"iana"},"application/vnd.nokia.conml+wbxml":{source:"iana"},"application/vnd.nokia.conml+xml":{source:"iana",compressible:!0},"application/vnd.nokia.iptv.config+xml":{source:"iana",compressible:!0},"application/vnd.nokia.isds-radio-presets":{source:"iana"},"application/vnd.nokia.landmark+wbxml":{source:"iana"},"application/vnd.nokia.landmark+xml":{source:"iana",compressible:!0},"application/vnd.nokia.landmarkcollection+xml":{source:"iana",compressible:!0},"application/vnd.nokia.n-gage.ac+xml":{source:"iana",compressible:!0,extensions:["ac"]},"application/vnd.nokia.n-gage.data":{source:"iana",extensions:["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{source:"iana",extensions:["n-gage"]},"application/vnd.nokia.ncd":{source:"iana"},"application/vnd.nokia.pcd+wbxml":{source:"iana"},"application/vnd.nokia.pcd+xml":{source:"iana",compressible:!0},"application/vnd.nokia.radio-preset":{source:"iana",extensions:["rpst"]},"application/vnd.nokia.radio-presets":{source:"iana",extensions:["rpss"]},"application/vnd.novadigm.edm":{source:"iana",extensions:["edm"]},"application/vnd.novadigm.edx":{source:"iana",extensions:["edx"]},"application/vnd.novadigm.ext":{source:"iana",extensions:["ext"]},"application/vnd.ntt-local.content-share":{source:"iana"},"application/vnd.ntt-local.file-transfer":{source:"iana"},"application/vnd.ntt-local.ogw_remote-access":{source:"iana"},"application/vnd.ntt-local.sip-ta_remote":{source:"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{source:"iana"},"application/vnd.oasis.opendocument.chart":{source:"iana",extensions:["odc"]},"application/vnd.oasis.opendocument.chart-template":{source:"iana",extensions:["otc"]},"application/vnd.oasis.opendocument.database":{source:"iana",extensions:["odb"]},"application/vnd.oasis.opendocument.formula":{source:"iana",extensions:["odf"]},"application/vnd.oasis.opendocument.formula-template":{source:"iana",extensions:["odft"]},"application/vnd.oasis.opendocument.graphics":{source:"iana",compressible:!1,extensions:["odg"]},"application/vnd.oasis.opendocument.graphics-template":{source:"iana",extensions:["otg"]},"application/vnd.oasis.opendocument.image":{source:"iana",extensions:["odi"]},"application/vnd.oasis.opendocument.image-template":{source:"iana",extensions:["oti"]},"application/vnd.oasis.opendocument.presentation":{source:"iana",compressible:!1,extensions:["odp"]},"application/vnd.oasis.opendocument.presentation-template":{source:"iana",extensions:["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{source:"iana",compressible:!1,extensions:["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{source:"iana",extensions:["ots"]},"application/vnd.oasis.opendocument.text":{source:"iana",compressible:!1,extensions:["odt"]},"application/vnd.oasis.opendocument.text-master":{source:"iana",extensions:["odm"]},"application/vnd.oasis.opendocument.text-template":{source:"iana",extensions:["ott"]},"application/vnd.oasis.opendocument.text-web":{source:"iana",extensions:["oth"]},"application/vnd.obn":{source:"iana"},"application/vnd.ocf+cbor":{source:"iana"},"application/vnd.oci.image.manifest.v1+json":{source:"iana",compressible:!0},"application/vnd.oftn.l10n+json":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessdownload+xml":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessstreaming+xml":{source:"iana",compressible:!0},"application/vnd.oipf.cspg-hexbinary":{source:"iana"},"application/vnd.oipf.dae.svg+xml":{source:"iana",compressible:!0},"application/vnd.oipf.dae.xhtml+xml":{source:"iana",compressible:!0},"application/vnd.oipf.mippvcontrolmessage+xml":{source:"iana",compressible:!0},"application/vnd.oipf.pae.gem":{source:"iana"},"application/vnd.oipf.spdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.oipf.spdlist+xml":{source:"iana",compressible:!0},"application/vnd.oipf.ueprofile+xml":{source:"iana",compressible:!0},"application/vnd.oipf.userprofile+xml":{source:"iana",compressible:!0},"application/vnd.olpc-sugar":{source:"iana",extensions:["xo"]},"application/vnd.oma-scws-config":{source:"iana"},"application/vnd.oma-scws-http-request":{source:"iana"},"application/vnd.oma-scws-http-response":{source:"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.drm-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.imd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.ltkm":{source:"iana"},"application/vnd.oma.bcast.notification+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.provisioningtrigger":{source:"iana"},"application/vnd.oma.bcast.sgboot":{source:"iana"},"application/vnd.oma.bcast.sgdd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sgdu":{source:"iana"},"application/vnd.oma.bcast.simple-symbol-container":{source:"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sprov+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.stkm":{source:"iana"},"application/vnd.oma.cab-address-book+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-feature-handler+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-pcc+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-subs-invite+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-user-prefs+xml":{source:"iana",compressible:!0},"application/vnd.oma.dcd":{source:"iana"},"application/vnd.oma.dcdc":{source:"iana"},"application/vnd.oma.dd2+xml":{source:"iana",compressible:!0,extensions:["dd2"]},"application/vnd.oma.drm.risd+xml":{source:"iana",compressible:!0},"application/vnd.oma.group-usage-list+xml":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+cbor":{source:"iana"},"application/vnd.oma.lwm2m+json":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+tlv":{source:"iana"},"application/vnd.oma.pal+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.detailed-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.final-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.groups+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.invocation-descriptor+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.optimized-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.push":{source:"iana"},"application/vnd.oma.scidm.messages+xml":{source:"iana",compressible:!0},"application/vnd.oma.xcap-directory+xml":{source:"iana",compressible:!0},"application/vnd.omads-email+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-file+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-folder+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omaloc-supl-init":{source:"iana"},"application/vnd.onepager":{source:"iana"},"application/vnd.onepagertamp":{source:"iana"},"application/vnd.onepagertamx":{source:"iana"},"application/vnd.onepagertat":{source:"iana"},"application/vnd.onepagertatp":{source:"iana"},"application/vnd.onepagertatx":{source:"iana"},"application/vnd.openblox.game+xml":{source:"iana",compressible:!0,extensions:["obgx"]},"application/vnd.openblox.game-binary":{source:"iana"},"application/vnd.openeye.oeb":{source:"iana"},"application/vnd.openofficeorg.extension":{source:"apache",extensions:["oxt"]},"application/vnd.openstreetmap.data+xml":{source:"iana",compressible:!0,extensions:["osm"]},"application/vnd.opentimestamps.ots":{source:"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawing+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{source:"iana",compressible:!1,extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slide":{source:"iana",extensions:["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{source:"iana",extensions:["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.template":{source:"iana",extensions:["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{source:"iana",compressible:!1,extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{source:"iana",extensions:["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.theme+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.vmldrawing":{source:"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{source:"iana",compressible:!1,extensions:["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{source:"iana",extensions:["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.core-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.relationships+xml":{source:"iana",compressible:!0},"application/vnd.oracle.resource+json":{source:"iana",compressible:!0},"application/vnd.orange.indata":{source:"iana"},"application/vnd.osa.netdeploy":{source:"iana"},"application/vnd.osgeo.mapguide.package":{source:"iana",extensions:["mgp"]},"application/vnd.osgi.bundle":{source:"iana"},"application/vnd.osgi.dp":{source:"iana",extensions:["dp"]},"application/vnd.osgi.subsystem":{source:"iana",extensions:["esa"]},"application/vnd.otps.ct-kip+xml":{source:"iana",compressible:!0},"application/vnd.oxli.countgraph":{source:"iana"},"application/vnd.pagerduty+json":{source:"iana",compressible:!0},"application/vnd.palm":{source:"iana",extensions:["pdb","pqa","oprc"]},"application/vnd.panoply":{source:"iana"},"application/vnd.paos.xml":{source:"iana"},"application/vnd.patentdive":{source:"iana"},"application/vnd.patientecommsdoc":{source:"iana"},"application/vnd.pawaafile":{source:"iana",extensions:["paw"]},"application/vnd.pcos":{source:"iana"},"application/vnd.pg.format":{source:"iana",extensions:["str"]},"application/vnd.pg.osasli":{source:"iana",extensions:["ei6"]},"application/vnd.piaccess.application-licence":{source:"iana"},"application/vnd.picsel":{source:"iana",extensions:["efif"]},"application/vnd.pmi.widget":{source:"iana",extensions:["wg"]},"application/vnd.poc.group-advertisement+xml":{source:"iana",compressible:!0},"application/vnd.pocketlearn":{source:"iana",extensions:["plf"]},"application/vnd.powerbuilder6":{source:"iana",extensions:["pbd"]},"application/vnd.powerbuilder6-s":{source:"iana"},"application/vnd.powerbuilder7":{source:"iana"},"application/vnd.powerbuilder7-s":{source:"iana"},"application/vnd.powerbuilder75":{source:"iana"},"application/vnd.powerbuilder75-s":{source:"iana"},"application/vnd.preminet":{source:"iana"},"application/vnd.previewsystems.box":{source:"iana",extensions:["box"]},"application/vnd.proteus.magazine":{source:"iana",extensions:["mgz"]},"application/vnd.psfs":{source:"iana"},"application/vnd.publishare-delta-tree":{source:"iana",extensions:["qps"]},"application/vnd.pvi.ptid1":{source:"iana",extensions:["ptid"]},"application/vnd.pwg-multiplexed":{source:"iana"},"application/vnd.pwg-xhtml-print+xml":{source:"iana",compressible:!0},"application/vnd.qualcomm.brew-app-res":{source:"iana"},"application/vnd.quarantainenet":{source:"iana"},"application/vnd.quark.quarkxpress":{source:"iana",extensions:["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{source:"iana"},"application/vnd.radisys.moml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conn+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-stream+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-base+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-detect+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-group+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-speech+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-transform+xml":{source:"iana",compressible:!0},"application/vnd.rainstor.data":{source:"iana"},"application/vnd.rapid":{source:"iana"},"application/vnd.rar":{source:"iana",extensions:["rar"]},"application/vnd.realvnc.bed":{source:"iana",extensions:["bed"]},"application/vnd.recordare.musicxml":{source:"iana",extensions:["mxl"]},"application/vnd.recordare.musicxml+xml":{source:"iana",compressible:!0,extensions:["musicxml"]},"application/vnd.renlearn.rlprint":{source:"iana"},"application/vnd.resilient.logic":{source:"iana"},"application/vnd.restful+json":{source:"iana",compressible:!0},"application/vnd.rig.cryptonote":{source:"iana",extensions:["cryptonote"]},"application/vnd.rim.cod":{source:"apache",extensions:["cod"]},"application/vnd.rn-realmedia":{source:"apache",extensions:["rm"]},"application/vnd.rn-realmedia-vbr":{source:"apache",extensions:["rmvb"]},"application/vnd.route66.link66+xml":{source:"iana",compressible:!0,extensions:["link66"]},"application/vnd.rs-274x":{source:"iana"},"application/vnd.ruckus.download":{source:"iana"},"application/vnd.s3sms":{source:"iana"},"application/vnd.sailingtracker.track":{source:"iana",extensions:["st"]},"application/vnd.sar":{source:"iana"},"application/vnd.sbm.cid":{source:"iana"},"application/vnd.sbm.mid2":{source:"iana"},"application/vnd.scribus":{source:"iana"},"application/vnd.sealed.3df":{source:"iana"},"application/vnd.sealed.csf":{source:"iana"},"application/vnd.sealed.doc":{source:"iana"},"application/vnd.sealed.eml":{source:"iana"},"application/vnd.sealed.mht":{source:"iana"},"application/vnd.sealed.net":{source:"iana"},"application/vnd.sealed.ppt":{source:"iana"},"application/vnd.sealed.tiff":{source:"iana"},"application/vnd.sealed.xls":{source:"iana"},"application/vnd.sealedmedia.softseal.html":{source:"iana"},"application/vnd.sealedmedia.softseal.pdf":{source:"iana"},"application/vnd.seemail":{source:"iana",extensions:["see"]},"application/vnd.seis+json":{source:"iana",compressible:!0},"application/vnd.sema":{source:"iana",extensions:["sema"]},"application/vnd.semd":{source:"iana",extensions:["semd"]},"application/vnd.semf":{source:"iana",extensions:["semf"]},"application/vnd.shade-save-file":{source:"iana"},"application/vnd.shana.informed.formdata":{source:"iana",extensions:["ifm"]},"application/vnd.shana.informed.formtemplate":{source:"iana",extensions:["itp"]},"application/vnd.shana.informed.interchange":{source:"iana",extensions:["iif"]},"application/vnd.shana.informed.package":{source:"iana",extensions:["ipk"]},"application/vnd.shootproof+json":{source:"iana",compressible:!0},"application/vnd.shopkick+json":{source:"iana",compressible:!0},"application/vnd.shp":{source:"iana"},"application/vnd.shx":{source:"iana"},"application/vnd.sigrok.session":{source:"iana"},"application/vnd.simtech-mindmapper":{source:"iana",extensions:["twd","twds"]},"application/vnd.siren+json":{source:"iana",compressible:!0},"application/vnd.smaf":{source:"iana",extensions:["mmf"]},"application/vnd.smart.notebook":{source:"iana"},"application/vnd.smart.teacher":{source:"iana",extensions:["teacher"]},"application/vnd.snesdev-page-table":{source:"iana"},"application/vnd.software602.filler.form+xml":{source:"iana",compressible:!0,extensions:["fo"]},"application/vnd.software602.filler.form-xml-zip":{source:"iana"},"application/vnd.solent.sdkm+xml":{source:"iana",compressible:!0,extensions:["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{source:"iana",extensions:["dxp"]},"application/vnd.spotfire.sfs":{source:"iana",extensions:["sfs"]},"application/vnd.sqlite3":{source:"iana"},"application/vnd.sss-cod":{source:"iana"},"application/vnd.sss-dtf":{source:"iana"},"application/vnd.sss-ntf":{source:"iana"},"application/vnd.stardivision.calc":{source:"apache",extensions:["sdc"]},"application/vnd.stardivision.draw":{source:"apache",extensions:["sda"]},"application/vnd.stardivision.impress":{source:"apache",extensions:["sdd"]},"application/vnd.stardivision.math":{source:"apache",extensions:["smf"]},"application/vnd.stardivision.writer":{source:"apache",extensions:["sdw","vor"]},"application/vnd.stardivision.writer-global":{source:"apache",extensions:["sgl"]},"application/vnd.stepmania.package":{source:"iana",extensions:["smzip"]},"application/vnd.stepmania.stepchart":{source:"iana",extensions:["sm"]},"application/vnd.street-stream":{source:"iana"},"application/vnd.sun.wadl+xml":{source:"iana",compressible:!0,extensions:["wadl"]},"application/vnd.sun.xml.calc":{source:"apache",extensions:["sxc"]},"application/vnd.sun.xml.calc.template":{source:"apache",extensions:["stc"]},"application/vnd.sun.xml.draw":{source:"apache",extensions:["sxd"]},"application/vnd.sun.xml.draw.template":{source:"apache",extensions:["std"]},"application/vnd.sun.xml.impress":{source:"apache",extensions:["sxi"]},"application/vnd.sun.xml.impress.template":{source:"apache",extensions:["sti"]},"application/vnd.sun.xml.math":{source:"apache",extensions:["sxm"]},"application/vnd.sun.xml.writer":{source:"apache",extensions:["sxw"]},"application/vnd.sun.xml.writer.global":{source:"apache",extensions:["sxg"]},"application/vnd.sun.xml.writer.template":{source:"apache",extensions:["stw"]},"application/vnd.sus-calendar":{source:"iana",extensions:["sus","susp"]},"application/vnd.svd":{source:"iana",extensions:["svd"]},"application/vnd.swiftview-ics":{source:"iana"},"application/vnd.sycle+xml":{source:"iana",compressible:!0},"application/vnd.syft+json":{source:"iana",compressible:!0},"application/vnd.symbian.install":{source:"apache",extensions:["sis","sisx"]},"application/vnd.syncml+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xsm"]},"application/vnd.syncml.dm+wbxml":{source:"iana",charset:"UTF-8",extensions:["bdm"]},"application/vnd.syncml.dm+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xdm"]},"application/vnd.syncml.dm.notification":{source:"iana"},"application/vnd.syncml.dmddf+wbxml":{source:"iana"},"application/vnd.syncml.dmddf+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{source:"iana"},"application/vnd.syncml.dmtnds+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.syncml.ds.notification":{source:"iana"},"application/vnd.tableschema+json":{source:"iana",compressible:!0},"application/vnd.tao.intent-module-archive":{source:"iana",extensions:["tao"]},"application/vnd.tcpdump.pcap":{source:"iana",extensions:["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{source:"iana",compressible:!0},"application/vnd.tmd.mediaflex.api+xml":{source:"iana",compressible:!0},"application/vnd.tml":{source:"iana"},"application/vnd.tmobile-livetv":{source:"iana",extensions:["tmo"]},"application/vnd.tri.onesource":{source:"iana"},"application/vnd.trid.tpt":{source:"iana",extensions:["tpt"]},"application/vnd.triscape.mxs":{source:"iana",extensions:["mxs"]},"application/vnd.trueapp":{source:"iana",extensions:["tra"]},"application/vnd.truedoc":{source:"iana"},"application/vnd.ubisoft.webplayer":{source:"iana"},"application/vnd.ufdl":{source:"iana",extensions:["ufd","ufdl"]},"application/vnd.uiq.theme":{source:"iana",extensions:["utz"]},"application/vnd.umajin":{source:"iana",extensions:["umj"]},"application/vnd.unity":{source:"iana",extensions:["unityweb"]},"application/vnd.uoml+xml":{source:"iana",compressible:!0,extensions:["uoml"]},"application/vnd.uplanet.alert":{source:"iana"},"application/vnd.uplanet.alert-wbxml":{source:"iana"},"application/vnd.uplanet.bearer-choice":{source:"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{source:"iana"},"application/vnd.uplanet.cacheop":{source:"iana"},"application/vnd.uplanet.cacheop-wbxml":{source:"iana"},"application/vnd.uplanet.channel":{source:"iana"},"application/vnd.uplanet.channel-wbxml":{source:"iana"},"application/vnd.uplanet.list":{source:"iana"},"application/vnd.uplanet.list-wbxml":{source:"iana"},"application/vnd.uplanet.listcmd":{source:"iana"},"application/vnd.uplanet.listcmd-wbxml":{source:"iana"},"application/vnd.uplanet.signal":{source:"iana"},"application/vnd.uri-map":{source:"iana"},"application/vnd.valve.source.material":{source:"iana"},"application/vnd.vcx":{source:"iana",extensions:["vcx"]},"application/vnd.vd-study":{source:"iana"},"application/vnd.vectorworks":{source:"iana"},"application/vnd.vel+json":{source:"iana",compressible:!0},"application/vnd.verimatrix.vcas":{source:"iana"},"application/vnd.veritone.aion+json":{source:"iana",compressible:!0},"application/vnd.veryant.thin":{source:"iana"},"application/vnd.ves.encrypted":{source:"iana"},"application/vnd.vidsoft.vidconference":{source:"iana"},"application/vnd.visio":{source:"iana",extensions:["vsd","vst","vss","vsw"]},"application/vnd.visionary":{source:"iana",extensions:["vis"]},"application/vnd.vividence.scriptfile":{source:"iana"},"application/vnd.vsf":{source:"iana",extensions:["vsf"]},"application/vnd.wap.sic":{source:"iana"},"application/vnd.wap.slc":{source:"iana"},"application/vnd.wap.wbxml":{source:"iana",charset:"UTF-8",extensions:["wbxml"]},"application/vnd.wap.wmlc":{source:"iana",extensions:["wmlc"]},"application/vnd.wap.wmlscriptc":{source:"iana",extensions:["wmlsc"]},"application/vnd.webturbo":{source:"iana",extensions:["wtb"]},"application/vnd.wfa.dpp":{source:"iana"},"application/vnd.wfa.p2p":{source:"iana"},"application/vnd.wfa.wsc":{source:"iana"},"application/vnd.windows.devicepairing":{source:"iana"},"application/vnd.wmc":{source:"iana"},"application/vnd.wmf.bootstrap":{source:"iana"},"application/vnd.wolfram.mathematica":{source:"iana"},"application/vnd.wolfram.mathematica.package":{source:"iana"},"application/vnd.wolfram.player":{source:"iana",extensions:["nbp"]},"application/vnd.wordperfect":{source:"iana",extensions:["wpd"]},"application/vnd.wqd":{source:"iana",extensions:["wqd"]},"application/vnd.wrq-hp3000-labelled":{source:"iana"},"application/vnd.wt.stf":{source:"iana",extensions:["stf"]},"application/vnd.wv.csp+wbxml":{source:"iana"},"application/vnd.wv.csp+xml":{source:"iana",compressible:!0},"application/vnd.wv.ssp+xml":{source:"iana",compressible:!0},"application/vnd.xacml+json":{source:"iana",compressible:!0},"application/vnd.xara":{source:"iana",extensions:["xar"]},"application/vnd.xfdl":{source:"iana",extensions:["xfdl"]},"application/vnd.xfdl.webform":{source:"iana"},"application/vnd.xmi+xml":{source:"iana",compressible:!0},"application/vnd.xmpie.cpkg":{source:"iana"},"application/vnd.xmpie.dpkg":{source:"iana"},"application/vnd.xmpie.plan":{source:"iana"},"application/vnd.xmpie.ppkg":{source:"iana"},"application/vnd.xmpie.xlim":{source:"iana"},"application/vnd.yamaha.hv-dic":{source:"iana",extensions:["hvd"]},"application/vnd.yamaha.hv-script":{source:"iana",extensions:["hvs"]},"application/vnd.yamaha.hv-voice":{source:"iana",extensions:["hvp"]},"application/vnd.yamaha.openscoreformat":{source:"iana",extensions:["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{source:"iana",compressible:!0,extensions:["osfpvg"]},"application/vnd.yamaha.remote-setup":{source:"iana"},"application/vnd.yamaha.smaf-audio":{source:"iana",extensions:["saf"]},"application/vnd.yamaha.smaf-phrase":{source:"iana",extensions:["spf"]},"application/vnd.yamaha.through-ngn":{source:"iana"},"application/vnd.yamaha.tunnel-udpencap":{source:"iana"},"application/vnd.yaoweme":{source:"iana"},"application/vnd.yellowriver-custom-menu":{source:"iana",extensions:["cmp"]},"application/vnd.youtube.yt":{source:"iana"},"application/vnd.zul":{source:"iana",extensions:["zir","zirz"]},"application/vnd.zzazz.deck+xml":{source:"iana",compressible:!0,extensions:["zaz"]},"application/voicexml+xml":{source:"iana",compressible:!0,extensions:["vxml"]},"application/voucher-cms+json":{source:"iana",compressible:!0},"application/vq-rtcpxr":{source:"iana"},"application/wasm":{source:"iana",compressible:!0,extensions:["wasm"]},"application/watcherinfo+xml":{source:"iana",compressible:!0,extensions:["wif"]},"application/webpush-options+json":{source:"iana",compressible:!0},"application/whoispp-query":{source:"iana"},"application/whoispp-response":{source:"iana"},"application/widget":{source:"iana",extensions:["wgt"]},"application/winhlp":{source:"apache",extensions:["hlp"]},"application/wita":{source:"iana"},"application/wordperfect5.1":{source:"iana"},"application/wsdl+xml":{source:"iana",compressible:!0,extensions:["wsdl"]},"application/wspolicy+xml":{source:"iana",compressible:!0,extensions:["wspolicy"]},"application/x-7z-compressed":{source:"apache",compressible:!1,extensions:["7z"]},"application/x-abiword":{source:"apache",extensions:["abw"]},"application/x-ace-compressed":{source:"apache",extensions:["ace"]},"application/x-amf":{source:"apache"},"application/x-apple-diskimage":{source:"apache",extensions:["dmg"]},"application/x-arj":{compressible:!1,extensions:["arj"]},"application/x-authorware-bin":{source:"apache",extensions:["aab","x32","u32","vox"]},"application/x-authorware-map":{source:"apache",extensions:["aam"]},"application/x-authorware-seg":{source:"apache",extensions:["aas"]},"application/x-bcpio":{source:"apache",extensions:["bcpio"]},"application/x-bdoc":{compressible:!1,extensions:["bdoc"]},"application/x-bittorrent":{source:"apache",extensions:["torrent"]},"application/x-blorb":{source:"apache",extensions:["blb","blorb"]},"application/x-bzip":{source:"apache",compressible:!1,extensions:["bz"]},"application/x-bzip2":{source:"apache",compressible:!1,extensions:["bz2","boz"]},"application/x-cbr":{source:"apache",extensions:["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{source:"apache",extensions:["vcd"]},"application/x-cfs-compressed":{source:"apache",extensions:["cfs"]},"application/x-chat":{source:"apache",extensions:["chat"]},"application/x-chess-pgn":{source:"apache",extensions:["pgn"]},"application/x-chrome-extension":{extensions:["crx"]},"application/x-cocoa":{source:"nginx",extensions:["cco"]},"application/x-compress":{source:"apache"},"application/x-conference":{source:"apache",extensions:["nsc"]},"application/x-cpio":{source:"apache",extensions:["cpio"]},"application/x-csh":{source:"apache",extensions:["csh"]},"application/x-deb":{compressible:!1},"application/x-debian-package":{source:"apache",extensions:["deb","udeb"]},"application/x-dgc-compressed":{source:"apache",extensions:["dgc"]},"application/x-director":{source:"apache",extensions:["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{source:"apache",extensions:["wad"]},"application/x-dtbncx+xml":{source:"apache",compressible:!0,extensions:["ncx"]},"application/x-dtbook+xml":{source:"apache",compressible:!0,extensions:["dtb"]},"application/x-dtbresource+xml":{source:"apache",compressible:!0,extensions:["res"]},"application/x-dvi":{source:"apache",compressible:!1,extensions:["dvi"]},"application/x-envoy":{source:"apache",extensions:["evy"]},"application/x-eva":{source:"apache",extensions:["eva"]},"application/x-font-bdf":{source:"apache",extensions:["bdf"]},"application/x-font-dos":{source:"apache"},"application/x-font-framemaker":{source:"apache"},"application/x-font-ghostscript":{source:"apache",extensions:["gsf"]},"application/x-font-libgrx":{source:"apache"},"application/x-font-linux-psf":{source:"apache",extensions:["psf"]},"application/x-font-pcf":{source:"apache",extensions:["pcf"]},"application/x-font-snf":{source:"apache",extensions:["snf"]},"application/x-font-speedo":{source:"apache"},"application/x-font-sunos-news":{source:"apache"},"application/x-font-type1":{source:"apache",extensions:["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{source:"apache"},"application/x-freearc":{source:"apache",extensions:["arc"]},"application/x-futuresplash":{source:"apache",extensions:["spl"]},"application/x-gca-compressed":{source:"apache",extensions:["gca"]},"application/x-glulx":{source:"apache",extensions:["ulx"]},"application/x-gnumeric":{source:"apache",extensions:["gnumeric"]},"application/x-gramps-xml":{source:"apache",extensions:["gramps"]},"application/x-gtar":{source:"apache",extensions:["gtar"]},"application/x-gzip":{source:"apache"},"application/x-hdf":{source:"apache",extensions:["hdf"]},"application/x-httpd-php":{compressible:!0,extensions:["php"]},"application/x-install-instructions":{source:"apache",extensions:["install"]},"application/x-iso9660-image":{source:"apache",extensions:["iso"]},"application/x-iwork-keynote-sffkey":{extensions:["key"]},"application/x-iwork-numbers-sffnumbers":{extensions:["numbers"]},"application/x-iwork-pages-sffpages":{extensions:["pages"]},"application/x-java-archive-diff":{source:"nginx",extensions:["jardiff"]},"application/x-java-jnlp-file":{source:"apache",compressible:!1,extensions:["jnlp"]},"application/x-javascript":{compressible:!0},"application/x-keepass2":{extensions:["kdbx"]},"application/x-latex":{source:"apache",compressible:!1,extensions:["latex"]},"application/x-lua-bytecode":{extensions:["luac"]},"application/x-lzh-compressed":{source:"apache",extensions:["lzh","lha"]},"application/x-makeself":{source:"nginx",extensions:["run"]},"application/x-mie":{source:"apache",extensions:["mie"]},"application/x-mobipocket-ebook":{source:"apache",extensions:["prc","mobi"]},"application/x-mpegurl":{compressible:!1},"application/x-ms-application":{source:"apache",extensions:["application"]},"application/x-ms-shortcut":{source:"apache",extensions:["lnk"]},"application/x-ms-wmd":{source:"apache",extensions:["wmd"]},"application/x-ms-wmz":{source:"apache",extensions:["wmz"]},"application/x-ms-xbap":{source:"apache",extensions:["xbap"]},"application/x-msaccess":{source:"apache",extensions:["mdb"]},"application/x-msbinder":{source:"apache",extensions:["obd"]},"application/x-mscardfile":{source:"apache",extensions:["crd"]},"application/x-msclip":{source:"apache",extensions:["clp"]},"application/x-msdos-program":{extensions:["exe"]},"application/x-msdownload":{source:"apache",extensions:["exe","dll","com","bat","msi"]},"application/x-msmediaview":{source:"apache",extensions:["mvb","m13","m14"]},"application/x-msmetafile":{source:"apache",extensions:["wmf","wmz","emf","emz"]},"application/x-msmoney":{source:"apache",extensions:["mny"]},"application/x-mspublisher":{source:"apache",extensions:["pub"]},"application/x-msschedule":{source:"apache",extensions:["scd"]},"application/x-msterminal":{source:"apache",extensions:["trm"]},"application/x-mswrite":{source:"apache",extensions:["wri"]},"application/x-netcdf":{source:"apache",extensions:["nc","cdf"]},"application/x-ns-proxy-autoconfig":{compressible:!0,extensions:["pac"]},"application/x-nzb":{source:"apache",extensions:["nzb"]},"application/x-perl":{source:"nginx",extensions:["pl","pm"]},"application/x-pilot":{source:"nginx",extensions:["prc","pdb"]},"application/x-pkcs12":{source:"apache",compressible:!1,extensions:["p12","pfx"]},"application/x-pkcs7-certificates":{source:"apache",extensions:["p7b","spc"]},"application/x-pkcs7-certreqresp":{source:"apache",extensions:["p7r"]},"application/x-pki-message":{source:"iana"},"application/x-rar-compressed":{source:"apache",compressible:!1,extensions:["rar"]},"application/x-redhat-package-manager":{source:"nginx",extensions:["rpm"]},"application/x-research-info-systems":{source:"apache",extensions:["ris"]},"application/x-sea":{source:"nginx",extensions:["sea"]},"application/x-sh":{source:"apache",compressible:!0,extensions:["sh"]},"application/x-shar":{source:"apache",extensions:["shar"]},"application/x-shockwave-flash":{source:"apache",compressible:!1,extensions:["swf"]},"application/x-silverlight-app":{source:"apache",extensions:["xap"]},"application/x-sql":{source:"apache",extensions:["sql"]},"application/x-stuffit":{source:"apache",compressible:!1,extensions:["sit"]},"application/x-stuffitx":{source:"apache",extensions:["sitx"]},"application/x-subrip":{source:"apache",extensions:["srt"]},"application/x-sv4cpio":{source:"apache",extensions:["sv4cpio"]},"application/x-sv4crc":{source:"apache",extensions:["sv4crc"]},"application/x-t3vm-image":{source:"apache",extensions:["t3"]},"application/x-tads":{source:"apache",extensions:["gam"]},"application/x-tar":{source:"apache",compressible:!0,extensions:["tar"]},"application/x-tcl":{source:"apache",extensions:["tcl","tk"]},"application/x-tex":{source:"apache",extensions:["tex"]},"application/x-tex-tfm":{source:"apache",extensions:["tfm"]},"application/x-texinfo":{source:"apache",extensions:["texinfo","texi"]},"application/x-tgif":{source:"apache",extensions:["obj"]},"application/x-ustar":{source:"apache",extensions:["ustar"]},"application/x-virtualbox-hdd":{compressible:!0,extensions:["hdd"]},"application/x-virtualbox-ova":{compressible:!0,extensions:["ova"]},"application/x-virtualbox-ovf":{compressible:!0,extensions:["ovf"]},"application/x-virtualbox-vbox":{compressible:!0,extensions:["vbox"]},"application/x-virtualbox-vbox-extpack":{compressible:!1,extensions:["vbox-extpack"]},"application/x-virtualbox-vdi":{compressible:!0,extensions:["vdi"]},"application/x-virtualbox-vhd":{compressible:!0,extensions:["vhd"]},"application/x-virtualbox-vmdk":{compressible:!0,extensions:["vmdk"]},"application/x-wais-source":{source:"apache",extensions:["src"]},"application/x-web-app-manifest+json":{compressible:!0,extensions:["webapp"]},"application/x-www-form-urlencoded":{source:"iana",compressible:!0},"application/x-x509-ca-cert":{source:"iana",extensions:["der","crt","pem"]},"application/x-x509-ca-ra-cert":{source:"iana"},"application/x-x509-next-ca-cert":{source:"iana"},"application/x-xfig":{source:"apache",extensions:["fig"]},"application/x-xliff+xml":{source:"apache",compressible:!0,extensions:["xlf"]},"application/x-xpinstall":{source:"apache",compressible:!1,extensions:["xpi"]},"application/x-xz":{source:"apache",extensions:["xz"]},"application/x-zmachine":{source:"apache",extensions:["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{source:"iana"},"application/xacml+xml":{source:"iana",compressible:!0},"application/xaml+xml":{source:"apache",compressible:!0,extensions:["xaml"]},"application/xcap-att+xml":{source:"iana",compressible:!0,extensions:["xav"]},"application/xcap-caps+xml":{source:"iana",compressible:!0,extensions:["xca"]},"application/xcap-diff+xml":{source:"iana",compressible:!0,extensions:["xdf"]},"application/xcap-el+xml":{source:"iana",compressible:!0,extensions:["xel"]},"application/xcap-error+xml":{source:"iana",compressible:!0},"application/xcap-ns+xml":{source:"iana",compressible:!0,extensions:["xns"]},"application/xcon-conference-info+xml":{source:"iana",compressible:!0},"application/xcon-conference-info-diff+xml":{source:"iana",compressible:!0},"application/xenc+xml":{source:"iana",compressible:!0,extensions:["xenc"]},"application/xhtml+xml":{source:"iana",compressible:!0,extensions:["xhtml","xht"]},"application/xhtml-voice+xml":{source:"apache",compressible:!0},"application/xliff+xml":{source:"iana",compressible:!0,extensions:["xlf"]},"application/xml":{source:"iana",compressible:!0,extensions:["xml","xsl","xsd","rng"]},"application/xml-dtd":{source:"iana",compressible:!0,extensions:["dtd"]},"application/xml-external-parsed-entity":{source:"iana"},"application/xml-patch+xml":{source:"iana",compressible:!0},"application/xmpp+xml":{source:"iana",compressible:!0},"application/xop+xml":{source:"iana",compressible:!0,extensions:["xop"]},"application/xproc+xml":{source:"apache",compressible:!0,extensions:["xpl"]},"application/xslt+xml":{source:"iana",compressible:!0,extensions:["xsl","xslt"]},"application/xspf+xml":{source:"apache",compressible:!0,extensions:["xspf"]},"application/xv+xml":{source:"iana",compressible:!0,extensions:["mxml","xhvml","xvml","xvm"]},"application/yang":{source:"iana",extensions:["yang"]},"application/yang-data+json":{source:"iana",compressible:!0},"application/yang-data+xml":{source:"iana",compressible:!0},"application/yang-patch+json":{source:"iana",compressible:!0},"application/yang-patch+xml":{source:"iana",compressible:!0},"application/yin+xml":{source:"iana",compressible:!0,extensions:["yin"]},"application/zip":{source:"iana",compressible:!1,extensions:["zip"]},"application/zlib":{source:"iana"},"application/zstd":{source:"iana"},"audio/1d-interleaved-parityfec":{source:"iana"},"audio/32kadpcm":{source:"iana"},"audio/3gpp":{source:"iana",compressible:!1,extensions:["3gpp"]},"audio/3gpp2":{source:"iana"},"audio/aac":{source:"iana"},"audio/ac3":{source:"iana"},"audio/adpcm":{source:"apache",extensions:["adp"]},"audio/amr":{source:"iana",extensions:["amr"]},"audio/amr-wb":{source:"iana"},"audio/amr-wb+":{source:"iana"},"audio/aptx":{source:"iana"},"audio/asc":{source:"iana"},"audio/atrac-advanced-lossless":{source:"iana"},"audio/atrac-x":{source:"iana"},"audio/atrac3":{source:"iana"},"audio/basic":{source:"iana",compressible:!1,extensions:["au","snd"]},"audio/bv16":{source:"iana"},"audio/bv32":{source:"iana"},"audio/clearmode":{source:"iana"},"audio/cn":{source:"iana"},"audio/dat12":{source:"iana"},"audio/dls":{source:"iana"},"audio/dsr-es201108":{source:"iana"},"audio/dsr-es202050":{source:"iana"},"audio/dsr-es202211":{source:"iana"},"audio/dsr-es202212":{source:"iana"},"audio/dv":{source:"iana"},"audio/dvi4":{source:"iana"},"audio/eac3":{source:"iana"},"audio/encaprtp":{source:"iana"},"audio/evrc":{source:"iana"},"audio/evrc-qcp":{source:"iana"},"audio/evrc0":{source:"iana"},"audio/evrc1":{source:"iana"},"audio/evrcb":{source:"iana"},"audio/evrcb0":{source:"iana"},"audio/evrcb1":{source:"iana"},"audio/evrcnw":{source:"iana"},"audio/evrcnw0":{source:"iana"},"audio/evrcnw1":{source:"iana"},"audio/evrcwb":{source:"iana"},"audio/evrcwb0":{source:"iana"},"audio/evrcwb1":{source:"iana"},"audio/evs":{source:"iana"},"audio/flexfec":{source:"iana"},"audio/fwdred":{source:"iana"},"audio/g711-0":{source:"iana"},"audio/g719":{source:"iana"},"audio/g722":{source:"iana"},"audio/g7221":{source:"iana"},"audio/g723":{source:"iana"},"audio/g726-16":{source:"iana"},"audio/g726-24":{source:"iana"},"audio/g726-32":{source:"iana"},"audio/g726-40":{source:"iana"},"audio/g728":{source:"iana"},"audio/g729":{source:"iana"},"audio/g7291":{source:"iana"},"audio/g729d":{source:"iana"},"audio/g729e":{source:"iana"},"audio/gsm":{source:"iana"},"audio/gsm-efr":{source:"iana"},"audio/gsm-hr-08":{source:"iana"},"audio/ilbc":{source:"iana"},"audio/ip-mr_v2.5":{source:"iana"},"audio/isac":{source:"apache"},"audio/l16":{source:"iana"},"audio/l20":{source:"iana"},"audio/l24":{source:"iana",compressible:!1},"audio/l8":{source:"iana"},"audio/lpc":{source:"iana"},"audio/melp":{source:"iana"},"audio/melp1200":{source:"iana"},"audio/melp2400":{source:"iana"},"audio/melp600":{source:"iana"},"audio/mhas":{source:"iana"},"audio/midi":{source:"apache",extensions:["mid","midi","kar","rmi"]},"audio/mobile-xmf":{source:"iana",extensions:["mxmf"]},"audio/mp3":{compressible:!1,extensions:["mp3"]},"audio/mp4":{source:"iana",compressible:!1,extensions:["m4a","mp4a"]},"audio/mp4a-latm":{source:"iana"},"audio/mpa":{source:"iana"},"audio/mpa-robust":{source:"iana"},"audio/mpeg":{source:"iana",compressible:!1,extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{source:"iana"},"audio/musepack":{source:"apache"},"audio/ogg":{source:"iana",compressible:!1,extensions:["oga","ogg","spx","opus"]},"audio/opus":{source:"iana"},"audio/parityfec":{source:"iana"},"audio/pcma":{source:"iana"},"audio/pcma-wb":{source:"iana"},"audio/pcmu":{source:"iana"},"audio/pcmu-wb":{source:"iana"},"audio/prs.sid":{source:"iana"},"audio/qcelp":{source:"iana"},"audio/raptorfec":{source:"iana"},"audio/red":{source:"iana"},"audio/rtp-enc-aescm128":{source:"iana"},"audio/rtp-midi":{source:"iana"},"audio/rtploopback":{source:"iana"},"audio/rtx":{source:"iana"},"audio/s3m":{source:"apache",extensions:["s3m"]},"audio/scip":{source:"iana"},"audio/silk":{source:"apache",extensions:["sil"]},"audio/smv":{source:"iana"},"audio/smv-qcp":{source:"iana"},"audio/smv0":{source:"iana"},"audio/sofa":{source:"iana"},"audio/sp-midi":{source:"iana"},"audio/speex":{source:"iana"},"audio/t140c":{source:"iana"},"audio/t38":{source:"iana"},"audio/telephone-event":{source:"iana"},"audio/tetra_acelp":{source:"iana"},"audio/tetra_acelp_bb":{source:"iana"},"audio/tone":{source:"iana"},"audio/tsvcis":{source:"iana"},"audio/uemclip":{source:"iana"},"audio/ulpfec":{source:"iana"},"audio/usac":{source:"iana"},"audio/vdvi":{source:"iana"},"audio/vmr-wb":{source:"iana"},"audio/vnd.3gpp.iufp":{source:"iana"},"audio/vnd.4sb":{source:"iana"},"audio/vnd.audiokoz":{source:"iana"},"audio/vnd.celp":{source:"iana"},"audio/vnd.cisco.nse":{source:"iana"},"audio/vnd.cmles.radio-events":{source:"iana"},"audio/vnd.cns.anp1":{source:"iana"},"audio/vnd.cns.inf1":{source:"iana"},"audio/vnd.dece.audio":{source:"iana",extensions:["uva","uvva"]},"audio/vnd.digital-winds":{source:"iana",extensions:["eol"]},"audio/vnd.dlna.adts":{source:"iana"},"audio/vnd.dolby.heaac.1":{source:"iana"},"audio/vnd.dolby.heaac.2":{source:"iana"},"audio/vnd.dolby.mlp":{source:"iana"},"audio/vnd.dolby.mps":{source:"iana"},"audio/vnd.dolby.pl2":{source:"iana"},"audio/vnd.dolby.pl2x":{source:"iana"},"audio/vnd.dolby.pl2z":{source:"iana"},"audio/vnd.dolby.pulse.1":{source:"iana"},"audio/vnd.dra":{source:"iana",extensions:["dra"]},"audio/vnd.dts":{source:"iana",extensions:["dts"]},"audio/vnd.dts.hd":{source:"iana",extensions:["dtshd"]},"audio/vnd.dts.uhd":{source:"iana"},"audio/vnd.dvb.file":{source:"iana"},"audio/vnd.everad.plj":{source:"iana"},"audio/vnd.hns.audio":{source:"iana"},"audio/vnd.lucent.voice":{source:"iana",extensions:["lvp"]},"audio/vnd.ms-playready.media.pya":{source:"iana",extensions:["pya"]},"audio/vnd.nokia.mobile-xmf":{source:"iana"},"audio/vnd.nortel.vbk":{source:"iana"},"audio/vnd.nuera.ecelp4800":{source:"iana",extensions:["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{source:"iana",extensions:["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{source:"iana",extensions:["ecelp9600"]},"audio/vnd.octel.sbc":{source:"iana"},"audio/vnd.presonus.multitrack":{source:"iana"},"audio/vnd.qcelp":{source:"iana"},"audio/vnd.rhetorex.32kadpcm":{source:"iana"},"audio/vnd.rip":{source:"iana",extensions:["rip"]},"audio/vnd.rn-realaudio":{compressible:!1},"audio/vnd.sealedmedia.softseal.mpeg":{source:"iana"},"audio/vnd.vmx.cvsd":{source:"iana"},"audio/vnd.wave":{compressible:!1},"audio/vorbis":{source:"iana",compressible:!1},"audio/vorbis-config":{source:"iana"},"audio/wav":{compressible:!1,extensions:["wav"]},"audio/wave":{compressible:!1,extensions:["wav"]},"audio/webm":{source:"apache",compressible:!1,extensions:["weba"]},"audio/x-aac":{source:"apache",compressible:!1,extensions:["aac"]},"audio/x-aiff":{source:"apache",extensions:["aif","aiff","aifc"]},"audio/x-caf":{source:"apache",compressible:!1,extensions:["caf"]},"audio/x-flac":{source:"apache",extensions:["flac"]},"audio/x-m4a":{source:"nginx",extensions:["m4a"]},"audio/x-matroska":{source:"apache",extensions:["mka"]},"audio/x-mpegurl":{source:"apache",extensions:["m3u"]},"audio/x-ms-wax":{source:"apache",extensions:["wax"]},"audio/x-ms-wma":{source:"apache",extensions:["wma"]},"audio/x-pn-realaudio":{source:"apache",extensions:["ram","ra"]},"audio/x-pn-realaudio-plugin":{source:"apache",extensions:["rmp"]},"audio/x-realaudio":{source:"nginx",extensions:["ra"]},"audio/x-tta":{source:"apache"},"audio/x-wav":{source:"apache",extensions:["wav"]},"audio/xm":{source:"apache",extensions:["xm"]},"chemical/x-cdx":{source:"apache",extensions:["cdx"]},"chemical/x-cif":{source:"apache",extensions:["cif"]},"chemical/x-cmdf":{source:"apache",extensions:["cmdf"]},"chemical/x-cml":{source:"apache",extensions:["cml"]},"chemical/x-csml":{source:"apache",extensions:["csml"]},"chemical/x-pdb":{source:"apache"},"chemical/x-xyz":{source:"apache",extensions:["xyz"]},"font/collection":{source:"iana",extensions:["ttc"]},"font/otf":{source:"iana",compressible:!0,extensions:["otf"]},"font/sfnt":{source:"iana"},"font/ttf":{source:"iana",compressible:!0,extensions:["ttf"]},"font/woff":{source:"iana",extensions:["woff"]},"font/woff2":{source:"iana",extensions:["woff2"]},"image/aces":{source:"iana",extensions:["exr"]},"image/apng":{compressible:!1,extensions:["apng"]},"image/avci":{source:"iana",extensions:["avci"]},"image/avcs":{source:"iana",extensions:["avcs"]},"image/avif":{source:"iana",compressible:!1,extensions:["avif"]},"image/bmp":{source:"iana",compressible:!0,extensions:["bmp"]},"image/cgm":{source:"iana",extensions:["cgm"]},"image/dicom-rle":{source:"iana",extensions:["drle"]},"image/emf":{source:"iana",extensions:["emf"]},"image/fits":{source:"iana",extensions:["fits"]},"image/g3fax":{source:"iana",extensions:["g3"]},"image/gif":{source:"iana",compressible:!1,extensions:["gif"]},"image/heic":{source:"iana",extensions:["heic"]},"image/heic-sequence":{source:"iana",extensions:["heics"]},"image/heif":{source:"iana",extensions:["heif"]},"image/heif-sequence":{source:"iana",extensions:["heifs"]},"image/hej2k":{source:"iana",extensions:["hej2"]},"image/hsj2":{source:"iana",extensions:["hsj2"]},"image/ief":{source:"iana",extensions:["ief"]},"image/jls":{source:"iana",extensions:["jls"]},"image/jp2":{source:"iana",compressible:!1,extensions:["jp2","jpg2"]},"image/jpeg":{source:"iana",compressible:!1,extensions:["jpeg","jpg","jpe"]},"image/jph":{source:"iana",extensions:["jph"]},"image/jphc":{source:"iana",extensions:["jhc"]},"image/jpm":{source:"iana",compressible:!1,extensions:["jpm"]},"image/jpx":{source:"iana",compressible:!1,extensions:["jpx","jpf"]},"image/jxr":{source:"iana",extensions:["jxr"]},"image/jxra":{source:"iana",extensions:["jxra"]},"image/jxrs":{source:"iana",extensions:["jxrs"]},"image/jxs":{source:"iana",extensions:["jxs"]},"image/jxsc":{source:"iana",extensions:["jxsc"]},"image/jxsi":{source:"iana",extensions:["jxsi"]},"image/jxss":{source:"iana",extensions:["jxss"]},"image/ktx":{source:"iana",extensions:["ktx"]},"image/ktx2":{source:"iana",extensions:["ktx2"]},"image/naplps":{source:"iana"},"image/pjpeg":{compressible:!1},"image/png":{source:"iana",compressible:!1,extensions:["png"]},"image/prs.btif":{source:"iana",extensions:["btif"]},"image/prs.pti":{source:"iana",extensions:["pti"]},"image/pwg-raster":{source:"iana"},"image/sgi":{source:"apache",extensions:["sgi"]},"image/svg+xml":{source:"iana",compressible:!0,extensions:["svg","svgz"]},"image/t38":{source:"iana",extensions:["t38"]},"image/tiff":{source:"iana",compressible:!1,extensions:["tif","tiff"]},"image/tiff-fx":{source:"iana",extensions:["tfx"]},"image/vnd.adobe.photoshop":{source:"iana",compressible:!0,extensions:["psd"]},"image/vnd.airzip.accelerator.azv":{source:"iana",extensions:["azv"]},"image/vnd.cns.inf2":{source:"iana"},"image/vnd.dece.graphic":{source:"iana",extensions:["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{source:"iana",extensions:["djvu","djv"]},"image/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"image/vnd.dwg":{source:"iana",extensions:["dwg"]},"image/vnd.dxf":{source:"iana",extensions:["dxf"]},"image/vnd.fastbidsheet":{source:"iana",extensions:["fbs"]},"image/vnd.fpx":{source:"iana",extensions:["fpx"]},"image/vnd.fst":{source:"iana",extensions:["fst"]},"image/vnd.fujixerox.edmics-mmr":{source:"iana",extensions:["mmr"]},"image/vnd.fujixerox.edmics-rlc":{source:"iana",extensions:["rlc"]},"image/vnd.globalgraphics.pgb":{source:"iana"},"image/vnd.microsoft.icon":{source:"iana",compressible:!0,extensions:["ico"]},"image/vnd.mix":{source:"iana"},"image/vnd.mozilla.apng":{source:"iana"},"image/vnd.ms-dds":{compressible:!0,extensions:["dds"]},"image/vnd.ms-modi":{source:"iana",extensions:["mdi"]},"image/vnd.ms-photo":{source:"apache",extensions:["wdp"]},"image/vnd.net-fpx":{source:"iana",extensions:["npx"]},"image/vnd.pco.b16":{source:"iana",extensions:["b16"]},"image/vnd.radiance":{source:"iana"},"image/vnd.sealed.png":{source:"iana"},"image/vnd.sealedmedia.softseal.gif":{source:"iana"},"image/vnd.sealedmedia.softseal.jpg":{source:"iana"},"image/vnd.svf":{source:"iana"},"image/vnd.tencent.tap":{source:"iana",extensions:["tap"]},"image/vnd.valve.source.texture":{source:"iana",extensions:["vtf"]},"image/vnd.wap.wbmp":{source:"iana",extensions:["wbmp"]},"image/vnd.xiff":{source:"iana",extensions:["xif"]},"image/vnd.zbrush.pcx":{source:"iana",extensions:["pcx"]},"image/webp":{source:"apache",extensions:["webp"]},"image/wmf":{source:"iana",extensions:["wmf"]},"image/x-3ds":{source:"apache",extensions:["3ds"]},"image/x-cmu-raster":{source:"apache",extensions:["ras"]},"image/x-cmx":{source:"apache",extensions:["cmx"]},"image/x-freehand":{source:"apache",extensions:["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{source:"apache",compressible:!0,extensions:["ico"]},"image/x-jng":{source:"nginx",extensions:["jng"]},"image/x-mrsid-image":{source:"apache",extensions:["sid"]},"image/x-ms-bmp":{source:"nginx",compressible:!0,extensions:["bmp"]},"image/x-pcx":{source:"apache",extensions:["pcx"]},"image/x-pict":{source:"apache",extensions:["pic","pct"]},"image/x-portable-anymap":{source:"apache",extensions:["pnm"]},"image/x-portable-bitmap":{source:"apache",extensions:["pbm"]},"image/x-portable-graymap":{source:"apache",extensions:["pgm"]},"image/x-portable-pixmap":{source:"apache",extensions:["ppm"]},"image/x-rgb":{source:"apache",extensions:["rgb"]},"image/x-tga":{source:"apache",extensions:["tga"]},"image/x-xbitmap":{source:"apache",extensions:["xbm"]},"image/x-xcf":{compressible:!1},"image/x-xpixmap":{source:"apache",extensions:["xpm"]},"image/x-xwindowdump":{source:"apache",extensions:["xwd"]},"message/cpim":{source:"iana"},"message/delivery-status":{source:"iana"},"message/disposition-notification":{source:"iana",extensions:["disposition-notification"]},"message/external-body":{source:"iana"},"message/feedback-report":{source:"iana"},"message/global":{source:"iana",extensions:["u8msg"]},"message/global-delivery-status":{source:"iana",extensions:["u8dsn"]},"message/global-disposition-notification":{source:"iana",extensions:["u8mdn"]},"message/global-headers":{source:"iana",extensions:["u8hdr"]},"message/http":{source:"iana",compressible:!1},"message/imdn+xml":{source:"iana",compressible:!0},"message/news":{source:"iana"},"message/partial":{source:"iana",compressible:!1},"message/rfc822":{source:"iana",compressible:!0,extensions:["eml","mime"]},"message/s-http":{source:"iana"},"message/sip":{source:"iana"},"message/sipfrag":{source:"iana"},"message/tracking-status":{source:"iana"},"message/vnd.si.simp":{source:"iana"},"message/vnd.wfa.wsc":{source:"iana",extensions:["wsc"]},"model/3mf":{source:"iana",extensions:["3mf"]},"model/e57":{source:"iana"},"model/gltf+json":{source:"iana",compressible:!0,extensions:["gltf"]},"model/gltf-binary":{source:"iana",compressible:!0,extensions:["glb"]},"model/iges":{source:"iana",compressible:!1,extensions:["igs","iges"]},"model/mesh":{source:"iana",compressible:!1,extensions:["msh","mesh","silo"]},"model/mtl":{source:"iana",extensions:["mtl"]},"model/obj":{source:"iana",extensions:["obj"]},"model/step":{source:"iana"},"model/step+xml":{source:"iana",compressible:!0,extensions:["stpx"]},"model/step+zip":{source:"iana",compressible:!1,extensions:["stpz"]},"model/step-xml+zip":{source:"iana",compressible:!1,extensions:["stpxz"]},"model/stl":{source:"iana",extensions:["stl"]},"model/vnd.collada+xml":{source:"iana",compressible:!0,extensions:["dae"]},"model/vnd.dwf":{source:"iana",extensions:["dwf"]},"model/vnd.flatland.3dml":{source:"iana"},"model/vnd.gdl":{source:"iana",extensions:["gdl"]},"model/vnd.gs-gdl":{source:"apache"},"model/vnd.gs.gdl":{source:"iana"},"model/vnd.gtw":{source:"iana",extensions:["gtw"]},"model/vnd.moml+xml":{source:"iana",compressible:!0},"model/vnd.mts":{source:"iana",extensions:["mts"]},"model/vnd.opengex":{source:"iana",extensions:["ogex"]},"model/vnd.parasolid.transmit.binary":{source:"iana",extensions:["x_b"]},"model/vnd.parasolid.transmit.text":{source:"iana",extensions:["x_t"]},"model/vnd.pytha.pyox":{source:"iana"},"model/vnd.rosette.annotated-data-model":{source:"iana"},"model/vnd.sap.vds":{source:"iana",extensions:["vds"]},"model/vnd.usdz+zip":{source:"iana",compressible:!1,extensions:["usdz"]},"model/vnd.valve.source.compiled-map":{source:"iana",extensions:["bsp"]},"model/vnd.vtu":{source:"iana",extensions:["vtu"]},"model/vrml":{source:"iana",compressible:!1,extensions:["wrl","vrml"]},"model/x3d+binary":{source:"apache",compressible:!1,extensions:["x3db","x3dbz"]},"model/x3d+fastinfoset":{source:"iana",extensions:["x3db"]},"model/x3d+vrml":{source:"apache",compressible:!1,extensions:["x3dv","x3dvz"]},"model/x3d+xml":{source:"iana",compressible:!0,extensions:["x3d","x3dz"]},"model/x3d-vrml":{source:"iana",extensions:["x3dv"]},"multipart/alternative":{source:"iana",compressible:!1},"multipart/appledouble":{source:"iana"},"multipart/byteranges":{source:"iana"},"multipart/digest":{source:"iana"},"multipart/encrypted":{source:"iana",compressible:!1},"multipart/form-data":{source:"iana",compressible:!1},"multipart/header-set":{source:"iana"},"multipart/mixed":{source:"iana"},"multipart/multilingual":{source:"iana"},"multipart/parallel":{source:"iana"},"multipart/related":{source:"iana",compressible:!1},"multipart/report":{source:"iana"},"multipart/signed":{source:"iana",compressible:!1},"multipart/vnd.bint.med-plus":{source:"iana"},"multipart/voice-message":{source:"iana"},"multipart/x-mixed-replace":{source:"iana"},"text/1d-interleaved-parityfec":{source:"iana"},"text/cache-manifest":{source:"iana",compressible:!0,extensions:["appcache","manifest"]},"text/calendar":{source:"iana",extensions:["ics","ifb"]},"text/calender":{compressible:!0},"text/cmd":{compressible:!0},"text/coffeescript":{extensions:["coffee","litcoffee"]},"text/cql":{source:"iana"},"text/cql-expression":{source:"iana"},"text/cql-identifier":{source:"iana"},"text/css":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["css"]},"text/csv":{source:"iana",compressible:!0,extensions:["csv"]},"text/csv-schema":{source:"iana"},"text/directory":{source:"iana"},"text/dns":{source:"iana"},"text/ecmascript":{source:"iana"},"text/encaprtp":{source:"iana"},"text/enriched":{source:"iana"},"text/fhirpath":{source:"iana"},"text/flexfec":{source:"iana"},"text/fwdred":{source:"iana"},"text/gff3":{source:"iana"},"text/grammar-ref-list":{source:"iana"},"text/html":{source:"iana",compressible:!0,extensions:["html","htm","shtml"]},"text/jade":{extensions:["jade"]},"text/javascript":{source:"iana",compressible:!0},"text/jcr-cnd":{source:"iana"},"text/jsx":{compressible:!0,extensions:["jsx"]},"text/less":{compressible:!0,extensions:["less"]},"text/markdown":{source:"iana",compressible:!0,extensions:["markdown","md"]},"text/mathml":{source:"nginx",extensions:["mml"]},"text/mdx":{compressible:!0,extensions:["mdx"]},"text/mizar":{source:"iana"},"text/n3":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["n3"]},"text/parameters":{source:"iana",charset:"UTF-8"},"text/parityfec":{source:"iana"},"text/plain":{source:"iana",compressible:!0,extensions:["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{source:"iana",charset:"UTF-8"},"text/prs.fallenstein.rst":{source:"iana"},"text/prs.lines.tag":{source:"iana",extensions:["dsc"]},"text/prs.prop.logic":{source:"iana"},"text/raptorfec":{source:"iana"},"text/red":{source:"iana"},"text/rfc822-headers":{source:"iana"},"text/richtext":{source:"iana",compressible:!0,extensions:["rtx"]},"text/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"text/rtp-enc-aescm128":{source:"iana"},"text/rtploopback":{source:"iana"},"text/rtx":{source:"iana"},"text/sgml":{source:"iana",extensions:["sgml","sgm"]},"text/shaclc":{source:"iana"},"text/shex":{source:"iana",extensions:["shex"]},"text/slim":{extensions:["slim","slm"]},"text/spdx":{source:"iana",extensions:["spdx"]},"text/strings":{source:"iana"},"text/stylus":{extensions:["stylus","styl"]},"text/t140":{source:"iana"},"text/tab-separated-values":{source:"iana",compressible:!0,extensions:["tsv"]},"text/troff":{source:"iana",extensions:["t","tr","roff","man","me","ms"]},"text/turtle":{source:"iana",charset:"UTF-8",extensions:["ttl"]},"text/ulpfec":{source:"iana"},"text/uri-list":{source:"iana",compressible:!0,extensions:["uri","uris","urls"]},"text/vcard":{source:"iana",compressible:!0,extensions:["vcard"]},"text/vnd.a":{source:"iana"},"text/vnd.abc":{source:"iana"},"text/vnd.ascii-art":{source:"iana"},"text/vnd.curl":{source:"iana",extensions:["curl"]},"text/vnd.curl.dcurl":{source:"apache",extensions:["dcurl"]},"text/vnd.curl.mcurl":{source:"apache",extensions:["mcurl"]},"text/vnd.curl.scurl":{source:"apache",extensions:["scurl"]},"text/vnd.debian.copyright":{source:"iana",charset:"UTF-8"},"text/vnd.dmclientscript":{source:"iana"},"text/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"text/vnd.esmertec.theme-descriptor":{source:"iana",charset:"UTF-8"},"text/vnd.familysearch.gedcom":{source:"iana",extensions:["ged"]},"text/vnd.ficlab.flt":{source:"iana"},"text/vnd.fly":{source:"iana",extensions:["fly"]},"text/vnd.fmi.flexstor":{source:"iana",extensions:["flx"]},"text/vnd.gml":{source:"iana"},"text/vnd.graphviz":{source:"iana",extensions:["gv"]},"text/vnd.hans":{source:"iana"},"text/vnd.hgl":{source:"iana"},"text/vnd.in3d.3dml":{source:"iana",extensions:["3dml"]},"text/vnd.in3d.spot":{source:"iana",extensions:["spot"]},"text/vnd.iptc.newsml":{source:"iana"},"text/vnd.iptc.nitf":{source:"iana"},"text/vnd.latex-z":{source:"iana"},"text/vnd.motorola.reflex":{source:"iana"},"text/vnd.ms-mediapackage":{source:"iana"},"text/vnd.net2phone.commcenter.command":{source:"iana"},"text/vnd.radisys.msml-basic-layout":{source:"iana"},"text/vnd.senx.warpscript":{source:"iana"},"text/vnd.si.uricatalogue":{source:"iana"},"text/vnd.sosi":{source:"iana"},"text/vnd.sun.j2me.app-descriptor":{source:"iana",charset:"UTF-8",extensions:["jad"]},"text/vnd.trolltech.linguist":{source:"iana",charset:"UTF-8"},"text/vnd.wap.si":{source:"iana"},"text/vnd.wap.sl":{source:"iana"},"text/vnd.wap.wml":{source:"iana",extensions:["wml"]},"text/vnd.wap.wmlscript":{source:"iana",extensions:["wmls"]},"text/vtt":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["vtt"]},"text/x-asm":{source:"apache",extensions:["s","asm"]},"text/x-c":{source:"apache",extensions:["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{source:"nginx",extensions:["htc"]},"text/x-fortran":{source:"apache",extensions:["f","for","f77","f90"]},"text/x-gwt-rpc":{compressible:!0},"text/x-handlebars-template":{extensions:["hbs"]},"text/x-java-source":{source:"apache",extensions:["java"]},"text/x-jquery-tmpl":{compressible:!0},"text/x-lua":{extensions:["lua"]},"text/x-markdown":{compressible:!0,extensions:["mkd"]},"text/x-nfo":{source:"apache",extensions:["nfo"]},"text/x-opml":{source:"apache",extensions:["opml"]},"text/x-org":{compressible:!0,extensions:["org"]},"text/x-pascal":{source:"apache",extensions:["p","pas"]},"text/x-processing":{compressible:!0,extensions:["pde"]},"text/x-sass":{extensions:["sass"]},"text/x-scss":{extensions:["scss"]},"text/x-setext":{source:"apache",extensions:["etx"]},"text/x-sfv":{source:"apache",extensions:["sfv"]},"text/x-suse-ymp":{compressible:!0,extensions:["ymp"]},"text/x-uuencode":{source:"apache",extensions:["uu"]},"text/x-vcalendar":{source:"apache",extensions:["vcs"]},"text/x-vcard":{source:"apache",extensions:["vcf"]},"text/xml":{source:"iana",compressible:!0,extensions:["xml"]},"text/xml-external-parsed-entity":{source:"iana"},"text/yaml":{compressible:!0,extensions:["yaml","yml"]},"video/1d-interleaved-parityfec":{source:"iana"},"video/3gpp":{source:"iana",extensions:["3gp","3gpp"]},"video/3gpp-tt":{source:"iana"},"video/3gpp2":{source:"iana",extensions:["3g2"]},"video/av1":{source:"iana"},"video/bmpeg":{source:"iana"},"video/bt656":{source:"iana"},"video/celb":{source:"iana"},"video/dv":{source:"iana"},"video/encaprtp":{source:"iana"},"video/ffv1":{source:"iana"},"video/flexfec":{source:"iana"},"video/h261":{source:"iana",extensions:["h261"]},"video/h263":{source:"iana",extensions:["h263"]},"video/h263-1998":{source:"iana"},"video/h263-2000":{source:"iana"},"video/h264":{source:"iana",extensions:["h264"]},"video/h264-rcdo":{source:"iana"},"video/h264-svc":{source:"iana"},"video/h265":{source:"iana"},"video/iso.segment":{source:"iana",extensions:["m4s"]},"video/jpeg":{source:"iana",extensions:["jpgv"]},"video/jpeg2000":{source:"iana"},"video/jpm":{source:"apache",extensions:["jpm","jpgm"]},"video/jxsv":{source:"iana"},"video/mj2":{source:"iana",extensions:["mj2","mjp2"]},"video/mp1s":{source:"iana"},"video/mp2p":{source:"iana"},"video/mp2t":{source:"iana",extensions:["ts"]},"video/mp4":{source:"iana",compressible:!1,extensions:["mp4","mp4v","mpg4"]},"video/mp4v-es":{source:"iana"},"video/mpeg":{source:"iana",compressible:!1,extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{source:"iana"},"video/mpv":{source:"iana"},"video/nv":{source:"iana"},"video/ogg":{source:"iana",compressible:!1,extensions:["ogv"]},"video/parityfec":{source:"iana"},"video/pointer":{source:"iana"},"video/quicktime":{source:"iana",compressible:!1,extensions:["qt","mov"]},"video/raptorfec":{source:"iana"},"video/raw":{source:"iana"},"video/rtp-enc-aescm128":{source:"iana"},"video/rtploopback":{source:"iana"},"video/rtx":{source:"iana"},"video/scip":{source:"iana"},"video/smpte291":{source:"iana"},"video/smpte292m":{source:"iana"},"video/ulpfec":{source:"iana"},"video/vc1":{source:"iana"},"video/vc2":{source:"iana"},"video/vnd.cctv":{source:"iana"},"video/vnd.dece.hd":{source:"iana",extensions:["uvh","uvvh"]},"video/vnd.dece.mobile":{source:"iana",extensions:["uvm","uvvm"]},"video/vnd.dece.mp4":{source:"iana"},"video/vnd.dece.pd":{source:"iana",extensions:["uvp","uvvp"]},"video/vnd.dece.sd":{source:"iana",extensions:["uvs","uvvs"]},"video/vnd.dece.video":{source:"iana",extensions:["uvv","uvvv"]},"video/vnd.directv.mpeg":{source:"iana"},"video/vnd.directv.mpeg-tts":{source:"iana"},"video/vnd.dlna.mpeg-tts":{source:"iana"},"video/vnd.dvb.file":{source:"iana",extensions:["dvb"]},"video/vnd.fvt":{source:"iana",extensions:["fvt"]},"video/vnd.hns.video":{source:"iana"},"video/vnd.iptvforum.1dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.1dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.2dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.2dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.ttsavc":{source:"iana"},"video/vnd.iptvforum.ttsmpeg2":{source:"iana"},"video/vnd.motorola.video":{source:"iana"},"video/vnd.motorola.videop":{source:"iana"},"video/vnd.mpegurl":{source:"iana",extensions:["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{source:"iana",extensions:["pyv"]},"video/vnd.nokia.interleaved-multimedia":{source:"iana"},"video/vnd.nokia.mp4vr":{source:"iana"},"video/vnd.nokia.videovoip":{source:"iana"},"video/vnd.objectvideo":{source:"iana"},"video/vnd.radgamettools.bink":{source:"iana"},"video/vnd.radgamettools.smacker":{source:"iana"},"video/vnd.sealed.mpeg1":{source:"iana"},"video/vnd.sealed.mpeg4":{source:"iana"},"video/vnd.sealed.swf":{source:"iana"},"video/vnd.sealedmedia.softseal.mov":{source:"iana"},"video/vnd.uvvu.mp4":{source:"iana",extensions:["uvu","uvvu"]},"video/vnd.vivo":{source:"iana",extensions:["viv"]},"video/vnd.youtube.yt":{source:"iana"},"video/vp8":{source:"iana"},"video/vp9":{source:"iana"},"video/webm":{source:"apache",compressible:!1,extensions:["webm"]},"video/x-f4v":{source:"apache",extensions:["f4v"]},"video/x-fli":{source:"apache",extensions:["fli"]},"video/x-flv":{source:"apache",compressible:!1,extensions:["flv"]},"video/x-m4v":{source:"apache",extensions:["m4v"]},"video/x-matroska":{source:"apache",compressible:!1,extensions:["mkv","mk3d","mks"]},"video/x-mng":{source:"apache",extensions:["mng"]},"video/x-ms-asf":{source:"apache",extensions:["asf","asx"]},"video/x-ms-vob":{source:"apache",extensions:["vob"]},"video/x-ms-wm":{source:"apache",extensions:["wm"]},"video/x-ms-wmv":{source:"apache",compressible:!1,extensions:["wmv"]},"video/x-ms-wmx":{source:"apache",extensions:["wmx"]},"video/x-ms-wvx":{source:"apache",extensions:["wvx"]},"video/x-msvideo":{source:"apache",extensions:["avi"]},"video/x-sgi-movie":{source:"apache",extensions:["movie"]},"video/x-smv":{source:"apache",extensions:["smv"]},"x-conference/x-cooltalk":{source:"apache",extensions:["ice"]},"x-shader/x-fragment":{compressible:!0},"x-shader/x-vertex":{compressible:!0}}});var rz=$((EAe,tz)=>{tz.exports=ez()});var Jk=$(hn=>{"use strict";var Ug=rz(),Wte=require("path").extname,nz=/^\s*([^;\s]*)(?:;|\s|$)/,Vte=/^text\//i;hn.charset=iz;hn.charsets={lookup:iz};hn.contentType=Kte;hn.extension=Jte;hn.extensions=Object.create(null);hn.lookup=Xte;hn.types=Object.create(null);Yte(hn.extensions,hn.types);function iz(t){if(!t||typeof t!="string")return!1;var e=nz.exec(t),r=e&&Ug[e[1].toLowerCase()];return r&&r.charset?r.charset:e&&Vte.test(e[1])?"UTF-8":!1}function Kte(t){if(!t||typeof t!="string")return!1;var e=t.indexOf("/")===-1?hn.lookup(t):t;if(!e)return!1;if(e.indexOf("charset")===-1){var r=hn.charset(e);r&&(e+="; charset="+r.toLowerCase())}return e}function Jte(t){if(!t||typeof t!="string")return!1;var e=nz.exec(t),r=e&&hn.extensions[e[1].toLowerCase()];return!r||!r.length?!1:r[0]}function Xte(t){if(!t||typeof t!="string")return!1;var e=Wte("x."+t).toLowerCase().substr(1);return e&&hn.types[e]||!1}function Yte(t,e){var r=["nginx","apache",void 0,"iana"];Object.keys(Ug).forEach(function(i){var s=Ug[i],o=s.extensions;if(!(!o||!o.length)){t[i]=o;for(var a=0;al||u===l&&e[c].substr(0,12)==="application/"))continue}e[c]=i}}})}});var tu=$((TAe,eu)=>{"use strict";var sz=Qj(),Qte=Jk();eu.exports=ere;eu.exports.is=oz;eu.exports.hasBody=az;eu.exports.normalize=cz;eu.exports.match=uz;function oz(t,e){var r,n=e,i=rre(t);if(!i)return!1;if(n&&!Array.isArray(n))for(n=new Array(arguments.length-1),r=0;r2){r=new Array(arguments.length-1);for(var n=0;n{"use strict";var nre=Gc(),ire=ep(),sre=ca(),So=Vn()("body-parser:json"),ore=pp(),dz=tu();fz.exports=ure;var are=/^[\x20\x09\x0a\x0d]*([^\x20\x09\x0a\x0d])/,lz="#",cre=/#+/g;function ure(t){var e=t||{},r=typeof e.limit!="number"?nre.parse(e.limit||"100kb"):e.limit,n=e.inflate!==!1,i=e.reviver,s=e.strict!==!1,o=e.type||"application/json",a=e.verify||!1;if(a!==!1&&typeof a!="function")throw new TypeError("option verify must be function");var c=typeof o!="function"?fre(o):o;function u(l){if(l.length===0)return{};if(s){var d=dre(l);if(d!=="{"&&d!=="[")throw So("strict violation"),lre(l,d)}try{return So("parse json"),JSON.parse(l,i)}catch(p){throw pz(p,{message:p.message,stack:p.stack})}}return function(d,p,f){if(d._body){So("body already parsed"),f();return}if(d.body=d.body||{},!dz.hasBody(d)){So("skip empty body"),f();return}if(So("content-type %j",d.headers["content-type"]),!c(d)){So("skip parsing"),f();return}var m=pre(d)||"utf-8";if(m.slice(0,4)!=="utf-"){So("invalid charset"),f(sre(415,'unsupported charset "'+m.toUpperCase()+'"',{charset:m,type:"charset.unsupported"}));return}ore(d,p,f,u,So,{encoding:m,inflate:n,limit:r,verify:a})}}function lre(t,e){var r=t.indexOf(e),n="";if(r!==-1){n=t.substring(0,r)+lz;for(var i=r+1;i{"use strict";var mre=Gc(),fp=Vn()("body-parser:raw"),hre=pp(),hz=tu();gz.exports=gre;function gre(t){var e=t||{},r=e.inflate!==!1,n=typeof e.limit!="number"?mre.parse(e.limit||"100kb"):e.limit,i=e.type||"application/octet-stream",s=e.verify||!1;if(s!==!1&&typeof s!="function")throw new TypeError("option verify must be function");var o=typeof i!="function"?vre(i):i;function a(c){return c}return function(u,l,d){if(u._body){fp("body already parsed"),d();return}if(u.body=u.body||{},!hz.hasBody(u)){fp("skip empty body"),d();return}if(fp("content-type %j",u.headers["content-type"]),!o(u)){fp("skip parsing"),d();return}hre(u,l,d,a,fp,{encoding:null,inflate:r,limit:n,verify:s})}}function vre(t){return function(r){return!!hz(r,t)}}});var bz=$((RAe,_z)=>{"use strict";var yre=Gc(),_re=ep(),mp=Vn()("body-parser:text"),bre=pp(),yz=tu();_z.exports=Sre;function Sre(t){var e=t||{},r=e.defaultCharset||"utf-8",n=e.inflate!==!1,i=typeof e.limit!="number"?yre.parse(e.limit||"100kb"):e.limit,s=e.type||"text/plain",o=e.verify||!1;if(o!==!1&&typeof o!="function")throw new TypeError("option verify must be function");var a=typeof s!="function"?wre(s):s;function c(u){return u}return function(l,d,p){if(l._body){mp("body already parsed"),p();return}if(l.body=l.body||{},!yz.hasBody(l)){mp("skip empty body"),p();return}if(mp("content-type %j",l.headers["content-type"]),!a(l)){mp("skip parsing"),p();return}var f=xre(l)||r;bre(l,d,p,c,mp,{encoding:f,inflate:n,limit:i,verify:o})}}function xre(t){try{return(_re.parse(t).parameters.charset||"").toLowerCase()}catch{return}}function wre(t){return function(r){return!!yz(r,t)}}});var ma=$((OAe,Sz)=>{"use strict";Sz.exports=TypeError});var wz=$((CAe,xz)=>{xz.exports=require("util").inspect});var _p=$((PAe,Hz)=>{var oT=typeof Map=="function"&&Map.prototype,Xk=Object.getOwnPropertyDescriptor&&oT?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,qg=oT&&Xk&&typeof Xk.get=="function"?Xk.get:null,Ez=oT&&Map.prototype.forEach,aT=typeof Set=="function"&&Set.prototype,Yk=Object.getOwnPropertyDescriptor&&aT?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,Hg=aT&&Yk&&typeof Yk.get=="function"?Yk.get:null,kz=aT&&Set.prototype.forEach,Ere=typeof WeakMap=="function"&&WeakMap.prototype,gp=Ere?WeakMap.prototype.has:null,kre=typeof WeakSet=="function"&&WeakSet.prototype,vp=kre?WeakSet.prototype.has:null,Tre=typeof WeakRef=="function"&&WeakRef.prototype,Tz=Tre?WeakRef.prototype.deref:null,$re=Boolean.prototype.valueOf,Ire=Object.prototype.toString,Rre=Function.prototype.toString,Ore=String.prototype.match,cT=String.prototype.slice,xo=String.prototype.replace,Cre=String.prototype.toUpperCase,$z=String.prototype.toLowerCase,Dz=RegExp.prototype.test,Iz=Array.prototype.concat,Xi=Array.prototype.join,Pre=Array.prototype.slice,Rz=Math.floor,tT=typeof BigInt=="function"?BigInt.prototype.valueOf:null,Qk=Object.getOwnPropertySymbols,rT=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,ru=typeof Symbol=="function"&&typeof Symbol.iterator=="object",yp=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===ru||!0)?Symbol.toStringTag:null,jz=Object.prototype.propertyIsEnumerable,Oz=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(t){return t.__proto__}:null);function Cz(t,e){if(t===1/0||t===-1/0||t!==t||t&&t>-1e3&&t<1e3||Dz.call(/e/,e))return e;var r=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof t=="number"){var n=t<0?-Rz(-t):Rz(t);if(n!==t){var i=String(n),s=cT.call(e,i.length+1);return xo.call(i,r,"$&_")+"."+xo.call(xo.call(s,/([0-9]{3})/g,"$&_"),/_$/,"")}}return xo.call(e,r,"$&_")}var nT=wz(),Pz=nT.custom,Az=Uz(Pz)?Pz:null,zz={__proto__:null,double:'"',single:"'"},Are={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};Hz.exports=function t(e,r,n,i){var s=r||{};if(As(s,"quoteStyle")&&!As(zz,s.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if(As(s,"maxStringLength")&&(typeof s.maxStringLength=="number"?s.maxStringLength<0&&s.maxStringLength!==1/0:s.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var o=As(s,"customInspect")?s.customInspect:!0;if(typeof o!="boolean"&&o!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(As(s,"indent")&&s.indent!==null&&s.indent!==" "&&!(parseInt(s.indent,10)===s.indent&&s.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(As(s,"numericSeparator")&&typeof s.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var a=s.numericSeparator;if(typeof e>"u")return"undefined";if(e===null)return"null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="string")return qz(e,s);if(typeof e=="number"){if(e===0)return 1/0/e>0?"0":"-0";var c=String(e);return a?Cz(e,c):c}if(typeof e=="bigint"){var u=String(e)+"n";return a?Cz(e,u):u}var l=typeof s.depth>"u"?5:s.depth;if(typeof n>"u"&&(n=0),n>=l&&l>0&&typeof e=="object")return iT(e)?"[Array]":"[Object]";var d=Xre(s,n);if(typeof i>"u")i=[];else if(Fz(i,e)>=0)return"[Circular]";function p(V,j,ae){if(j&&(i=Pre.call(i),i.push(j)),ae){var Me={depth:s.depth};return As(s,"quoteStyle")&&(Me.quoteStyle=s.quoteStyle),t(V,Me,n+1,i)}return t(V,s,n+1,i)}if(typeof e=="function"&&!Nz(e)){var f=qre(e),m=Fg(e,p);return"[Function"+(f?": "+f:" (anonymous)")+"]"+(m.length>0?" { "+Xi.call(m,", ")+" }":"")}if(Uz(e)){var h=ru?xo.call(String(e),/^(Symbol\(.*\))_[^)]*$/,"$1"):rT.call(e);return typeof e=="object"&&!ru?hp(h):h}if(Vre(e)){for(var g="<"+$z.call(String(e.nodeName)),v=e.attributes||[],y=0;y",g}if(iT(e)){if(e.length===0)return"[]";var b=Fg(e,p);return d&&!Jre(b)?"["+sT(b,d)+"]":"[ "+Xi.call(b,", ")+" ]"}if(Dre(e)){var S=Fg(e,p);return!("cause"in Error.prototype)&&"cause"in e&&!jz.call(e,"cause")?"{ ["+String(e)+"] "+Xi.call(Iz.call("[cause]: "+p(e.cause),S),", ")+" }":S.length===0?"["+String(e)+"]":"{ ["+String(e)+"] "+Xi.call(S,", ")+" }"}if(typeof e=="object"&&o){if(Az&&typeof e[Az]=="function"&&nT)return nT(e,{depth:l-n});if(o!=="symbol"&&typeof e.inspect=="function")return e.inspect()}if(Hre(e)){var x=[];return Ez&&Ez.call(e,function(V,j){x.push(p(j,e,!0)+" => "+p(V,e))}),Mz("Map",qg.call(e),x,d)}if(Gre(e)){var w=[];return kz&&kz.call(e,function(V){w.push(p(V,e))}),Mz("Set",Hg.call(e),w,d)}if(Zre(e))return eT("WeakMap");if(Wre(e))return eT("WeakSet");if(Bre(e))return eT("WeakRef");if(zre(e))return hp(p(Number(e)));if(Ure(e))return hp(p(tT.call(e)));if(Lre(e))return hp($re.call(e));if(jre(e))return hp(p(String(e)));if(typeof window<"u"&&e===window)return"{ [object Window] }";if(typeof globalThis<"u"&&e===globalThis||typeof global<"u"&&e===global)return"{ [object globalThis] }";if(!Mre(e)&&!Nz(e)){var E=Fg(e,p),T=Oz?Oz(e)===Object.prototype:e instanceof Object||e.constructor===Object,I=e instanceof Object?"":"null prototype",A=!T&&yp&&Object(e)===e&&yp in e?cT.call(wo(e),8,-1):I?"Object":"",N=T||typeof e.constructor!="function"?"":e.constructor.name?e.constructor.name+" ":"",U=N+(A||I?"["+Xi.call(Iz.call([],A||[],I||[]),": ")+"] ":"");return E.length===0?U+"{}":d?U+"{"+sT(E,d)+"}":U+"{ "+Xi.call(E,", ")+" }"}return String(e)};function Lz(t,e,r){var n=r.quoteStyle||e,i=zz[n];return i+t+i}function Nre(t){return xo.call(String(t),/"/g,""")}function ha(t){return!yp||!(typeof t=="object"&&(yp in t||typeof t[yp]<"u"))}function iT(t){return wo(t)==="[object Array]"&&ha(t)}function Mre(t){return wo(t)==="[object Date]"&&ha(t)}function Nz(t){return wo(t)==="[object RegExp]"&&ha(t)}function Dre(t){return wo(t)==="[object Error]"&&ha(t)}function jre(t){return wo(t)==="[object String]"&&ha(t)}function zre(t){return wo(t)==="[object Number]"&&ha(t)}function Lre(t){return wo(t)==="[object Boolean]"&&ha(t)}function Uz(t){if(ru)return t&&typeof t=="object"&&t instanceof Symbol;if(typeof t=="symbol")return!0;if(!t||typeof t!="object"||!rT)return!1;try{return rT.call(t),!0}catch{}return!1}function Ure(t){if(!t||typeof t!="object"||!tT)return!1;try{return tT.call(t),!0}catch{}return!1}var Fre=Object.prototype.hasOwnProperty||function(t){return t in this};function As(t,e){return Fre.call(t,e)}function wo(t){return Ire.call(t)}function qre(t){if(t.name)return t.name;var e=Ore.call(Rre.call(t),/^function\s*([\w$]+)/);return e?e[1]:null}function Fz(t,e){if(t.indexOf)return t.indexOf(e);for(var r=0,n=t.length;re.maxStringLength){var r=t.length-e.maxStringLength,n="... "+r+" more character"+(r>1?"s":"");return qz(cT.call(t,0,e.maxStringLength),e)+n}var i=Are[e.quoteStyle||"single"];i.lastIndex=0;var s=xo.call(xo.call(t,i,"\\$1"),/[\x00-\x1f]/g,Kre);return Lz(s,"single",e)}function Kre(t){var e=t.charCodeAt(0),r={8:"b",9:"t",10:"n",12:"f",13:"r"}[e];return r?"\\"+r:"\\x"+(e<16?"0":"")+Cre.call(e.toString(16))}function hp(t){return"Object("+t+")"}function eT(t){return t+" { ? }"}function Mz(t,e,r,n){var i=n?sT(r,n):Xi.call(r,", ");return t+" ("+e+") {"+i+"}"}function Jre(t){for(var e=0;e=0)return!1;return!0}function Xre(t,e){var r;if(t.indent===" ")r=" ";else if(typeof t.indent=="number"&&t.indent>0)r=Xi.call(Array(t.indent+1)," ");else return null;return{base:r,prev:Xi.call(Array(e+1),r)}}function sT(t,e){if(t.length===0)return"";var r=` +`+e.prev+e.base;return r+Xi.call(t,","+r)+` +`+e.prev}function Fg(t,e){var r=iT(t),n=[];if(r){n.length=t.length;for(var i=0;i{"use strict";var Yre=_p(),Qre=ma(),Zg=function(t,e,r){for(var n=t,i;(i=n.next)!=null;n=i)if(i.key===e)return n.next=i.next,r||(i.next=t.next,t.next=i),i},ene=function(t,e){if(t){var r=Zg(t,e);return r&&r.value}},tne=function(t,e,r){var n=Zg(t,e);n?n.value=r:t.next={key:e,next:t.next,value:r}},rne=function(t,e){return t?!!Zg(t,e):!1},nne=function(t,e){if(t)return Zg(t,e,!0)};Zz.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new Qre("Side channel does not contain "+Yre(n))},delete:function(n){var i=e&&e.next,s=nne(e,n);return s&&i&&i===s&&(e=void 0),!!s},get:function(n){return ene(e,n)},has:function(n){return rne(e,n)},set:function(n,i){e||(e={next:void 0}),tne(e,n,i)}};return r}});var uT=$((NAe,Gz)=>{"use strict";Gz.exports=Object});var Vz=$((MAe,Wz)=>{"use strict";Wz.exports=Error});var Jz=$((DAe,Kz)=>{"use strict";Kz.exports=EvalError});var Yz=$((jAe,Xz)=>{"use strict";Xz.exports=RangeError});var e4=$((zAe,Qz)=>{"use strict";Qz.exports=ReferenceError});var r4=$((LAe,t4)=>{"use strict";t4.exports=SyntaxError});var i4=$((UAe,n4)=>{"use strict";n4.exports=URIError});var o4=$((FAe,s4)=>{"use strict";s4.exports=Math.abs});var c4=$((qAe,a4)=>{"use strict";a4.exports=Math.floor});var l4=$((HAe,u4)=>{"use strict";u4.exports=Math.max});var p4=$((ZAe,d4)=>{"use strict";d4.exports=Math.min});var m4=$((BAe,f4)=>{"use strict";f4.exports=Math.pow});var g4=$((GAe,h4)=>{"use strict";h4.exports=Math.round});var y4=$((WAe,v4)=>{"use strict";v4.exports=Number.isNaN||function(e){return e!==e}});var b4=$((VAe,_4)=>{"use strict";var ine=y4();_4.exports=function(e){return ine(e)||e===0?e:e<0?-1:1}});var x4=$((KAe,S4)=>{"use strict";S4.exports=Object.getOwnPropertyDescriptor});var lT=$((JAe,w4)=>{"use strict";var Bg=x4();if(Bg)try{Bg([],"length")}catch{Bg=null}w4.exports=Bg});var k4=$((XAe,E4)=>{"use strict";var Gg=Object.defineProperty||!1;if(Gg)try{Gg({},"a",{value:1})}catch{Gg=!1}E4.exports=Gg});var $4=$((YAe,T4)=>{"use strict";T4.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var e={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var i=42;e[r]=i;for(var s in e)return!1;if(typeof Object.keys=="function"&&Object.keys(e).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(e).length!==0)return!1;var o=Object.getOwnPropertySymbols(e);if(o.length!==1||o[0]!==r||!Object.prototype.propertyIsEnumerable.call(e,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var a=Object.getOwnPropertyDescriptor(e,r);if(a.value!==i||a.enumerable!==!0)return!1}return!0}});var O4=$((QAe,R4)=>{"use strict";var I4=typeof Symbol<"u"&&Symbol,sne=$4();R4.exports=function(){return typeof I4!="function"||typeof Symbol!="function"||typeof I4("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:sne()}});var dT=$((eNe,C4)=>{"use strict";C4.exports=typeof Reflect<"u"&&Reflect.getPrototypeOf||null});var pT=$((tNe,P4)=>{"use strict";var one=uT();P4.exports=one.getPrototypeOf||null});var M4=$((rNe,N4)=>{"use strict";var ane="Function.prototype.bind called on incompatible ",cne=Object.prototype.toString,une=Math.max,lne="[object Function]",A4=function(e,r){for(var n=[],i=0;i{"use strict";var fne=M4();D4.exports=Function.prototype.bind||fne});var Wg=$((iNe,j4)=>{"use strict";j4.exports=Function.prototype.call});var fT=$((sNe,z4)=>{"use strict";z4.exports=Function.prototype.apply});var U4=$((oNe,L4)=>{"use strict";L4.exports=typeof Reflect<"u"&&Reflect&&Reflect.apply});var q4=$((aNe,F4)=>{"use strict";var mne=bp(),hne=fT(),gne=Wg(),vne=U4();F4.exports=vne||mne.call(gne,hne)});var mT=$((cNe,H4)=>{"use strict";var yne=bp(),_ne=ma(),bne=Wg(),Sne=q4();H4.exports=function(e){if(e.length<1||typeof e[0]!="function")throw new _ne("a function is required");return Sne(yne,bne,e)}});var K4=$((uNe,V4)=>{"use strict";var xne=mT(),Z4=lT(),G4;try{G4=[].__proto__===Array.prototype}catch(t){if(!t||typeof t!="object"||!("code"in t)||t.code!=="ERR_PROTO_ACCESS")throw t}var hT=!!G4&&Z4&&Z4(Object.prototype,"__proto__"),W4=Object,B4=W4.getPrototypeOf;V4.exports=hT&&typeof hT.get=="function"?xne([hT.get]):typeof B4=="function"?function(e){return B4(e==null?e:W4(e))}:!1});var eL=$((lNe,Q4)=>{"use strict";var J4=dT(),X4=pT(),Y4=K4();Q4.exports=J4?function(e){return J4(e)}:X4?function(e){if(!e||typeof e!="object"&&typeof e!="function")throw new TypeError("getProto: not an object");return X4(e)}:Y4?function(e){return Y4(e)}:null});var rL=$((dNe,tL)=>{"use strict";var wne=Function.prototype.call,Ene=Object.prototype.hasOwnProperty,kne=bp();tL.exports=kne.call(wne,Ene)});var Jg=$((pNe,cL)=>{"use strict";var Je,Tne=uT(),$ne=Vz(),Ine=Jz(),Rne=Yz(),One=e4(),ou=r4(),su=ma(),Cne=i4(),Pne=o4(),Ane=c4(),Nne=l4(),Mne=p4(),Dne=m4(),jne=g4(),zne=b4(),oL=Function,gT=function(t){try{return oL('"use strict"; return ('+t+").constructor;")()}catch{}},Sp=lT(),Lne=k4(),vT=function(){throw new su},Une=Sp?(function(){try{return arguments.callee,vT}catch{try{return Sp(arguments,"callee").get}catch{return vT}}})():vT,nu=O4()(),mr=eL(),Fne=pT(),qne=dT(),aL=fT(),xp=Wg(),iu={},Hne=typeof Uint8Array>"u"||!mr?Je:mr(Uint8Array),ga={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?Je:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?Je:ArrayBuffer,"%ArrayIteratorPrototype%":nu&&mr?mr([][Symbol.iterator]()):Je,"%AsyncFromSyncIteratorPrototype%":Je,"%AsyncFunction%":iu,"%AsyncGenerator%":iu,"%AsyncGeneratorFunction%":iu,"%AsyncIteratorPrototype%":iu,"%Atomics%":typeof Atomics>"u"?Je:Atomics,"%BigInt%":typeof BigInt>"u"?Je:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?Je:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?Je:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?Je:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":$ne,"%eval%":eval,"%EvalError%":Ine,"%Float16Array%":typeof Float16Array>"u"?Je:Float16Array,"%Float32Array%":typeof Float32Array>"u"?Je:Float32Array,"%Float64Array%":typeof Float64Array>"u"?Je:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?Je:FinalizationRegistry,"%Function%":oL,"%GeneratorFunction%":iu,"%Int8Array%":typeof Int8Array>"u"?Je:Int8Array,"%Int16Array%":typeof Int16Array>"u"?Je:Int16Array,"%Int32Array%":typeof Int32Array>"u"?Je:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":nu&&mr?mr(mr([][Symbol.iterator]())):Je,"%JSON%":typeof JSON=="object"?JSON:Je,"%Map%":typeof Map>"u"?Je:Map,"%MapIteratorPrototype%":typeof Map>"u"||!nu||!mr?Je:mr(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Tne,"%Object.getOwnPropertyDescriptor%":Sp,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?Je:Promise,"%Proxy%":typeof Proxy>"u"?Je:Proxy,"%RangeError%":Rne,"%ReferenceError%":One,"%Reflect%":typeof Reflect>"u"?Je:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?Je:Set,"%SetIteratorPrototype%":typeof Set>"u"||!nu||!mr?Je:mr(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?Je:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":nu&&mr?mr(""[Symbol.iterator]()):Je,"%Symbol%":nu?Symbol:Je,"%SyntaxError%":ou,"%ThrowTypeError%":Une,"%TypedArray%":Hne,"%TypeError%":su,"%Uint8Array%":typeof Uint8Array>"u"?Je:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?Je:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?Je:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?Je:Uint32Array,"%URIError%":Cne,"%WeakMap%":typeof WeakMap>"u"?Je:WeakMap,"%WeakRef%":typeof WeakRef>"u"?Je:WeakRef,"%WeakSet%":typeof WeakSet>"u"?Je:WeakSet,"%Function.prototype.call%":xp,"%Function.prototype.apply%":aL,"%Object.defineProperty%":Lne,"%Object.getPrototypeOf%":Fne,"%Math.abs%":Pne,"%Math.floor%":Ane,"%Math.max%":Nne,"%Math.min%":Mne,"%Math.pow%":Dne,"%Math.round%":jne,"%Math.sign%":zne,"%Reflect.getPrototypeOf%":qne};if(mr)try{null.error}catch(t){nL=mr(mr(t)),ga["%Error.prototype%"]=nL}var nL,Zne=function t(e){var r;if(e==="%AsyncFunction%")r=gT("async function () {}");else if(e==="%GeneratorFunction%")r=gT("function* () {}");else if(e==="%AsyncGeneratorFunction%")r=gT("async function* () {}");else if(e==="%AsyncGenerator%"){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(e==="%AsyncIteratorPrototype%"){var i=t("%AsyncGenerator%");i&&mr&&(r=mr(i.prototype))}return ga[e]=r,r},iL={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},wp=bp(),Vg=rL(),Bne=wp.call(xp,Array.prototype.concat),Gne=wp.call(aL,Array.prototype.splice),sL=wp.call(xp,String.prototype.replace),Kg=wp.call(xp,String.prototype.slice),Wne=wp.call(xp,RegExp.prototype.exec),Vne=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,Kne=/\\(\\)?/g,Jne=function(e){var r=Kg(e,0,1),n=Kg(e,-1);if(r==="%"&&n!=="%")throw new ou("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new ou("invalid intrinsic syntax, expected opening `%`");var i=[];return sL(e,Vne,function(s,o,a,c){i[i.length]=a?sL(c,Kne,"$1"):o||s}),i},Xne=function(e,r){var n=e,i;if(Vg(iL,n)&&(i=iL[n],n="%"+i[0]+"%"),Vg(ga,n)){var s=ga[n];if(s===iu&&(s=Zne(n)),typeof s>"u"&&!r)throw new su("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:i,name:n,value:s}}throw new ou("intrinsic "+e+" does not exist!")};cL.exports=function(e,r){if(typeof e!="string"||e.length===0)throw new su("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new su('"allowMissing" argument must be a boolean');if(Wne(/^%?[^%]*%?$/,e)===null)throw new ou("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=Jne(e),i=n.length>0?n[0]:"",s=Xne("%"+i+"%",r),o=s.name,a=s.value,c=!1,u=s.alias;u&&(i=u[0],Gne(n,Bne([0,1],u)));for(var l=1,d=!0;l=n.length){var h=Sp(a,p);d=!!h,d&&"get"in h&&!("originalValue"in h.get)?a=h.get:a=a[p]}else d=Vg(a,p),a=a[p];d&&!c&&(ga[o]=a)}}return a}});var yT=$((fNe,dL)=>{"use strict";var uL=Jg(),lL=mT(),Yne=lL([uL("%String.prototype.indexOf%")]);dL.exports=function(e,r){var n=uL(e,!!r);return typeof n=="function"&&Yne(e,".prototype.")>-1?lL([n]):n}});var _T=$((mNe,fL)=>{"use strict";var Qne=Jg(),Ep=yT(),eie=_p(),tie=ma(),pL=Qne("%Map%",!0),rie=Ep("Map.prototype.get",!0),nie=Ep("Map.prototype.set",!0),iie=Ep("Map.prototype.has",!0),sie=Ep("Map.prototype.delete",!0),oie=Ep("Map.prototype.size",!0);fL.exports=!!pL&&function(){var e,r={assert:function(n){if(!r.has(n))throw new tie("Side channel does not contain "+eie(n))},delete:function(n){if(e){var i=sie(e,n);return oie(e)===0&&(e=void 0),i}return!1},get:function(n){if(e)return rie(e,n)},has:function(n){return e?iie(e,n):!1},set:function(n,i){e||(e=new pL),nie(e,n,i)}};return r}});var hL=$((hNe,mL)=>{"use strict";var aie=Jg(),Yg=yT(),cie=_p(),Xg=_T(),uie=ma(),au=aie("%WeakMap%",!0),lie=Yg("WeakMap.prototype.get",!0),die=Yg("WeakMap.prototype.set",!0),pie=Yg("WeakMap.prototype.has",!0),fie=Yg("WeakMap.prototype.delete",!0);mL.exports=au?function(){var e,r,n={assert:function(i){if(!n.has(i))throw new uie("Side channel does not contain "+cie(i))},delete:function(i){if(au&&i&&(typeof i=="object"||typeof i=="function")){if(e)return fie(e,i)}else if(Xg&&r)return r.delete(i);return!1},get:function(i){return au&&i&&(typeof i=="object"||typeof i=="function")&&e?lie(e,i):r&&r.get(i)},has:function(i){return au&&i&&(typeof i=="object"||typeof i=="function")&&e?pie(e,i):!!r&&r.has(i)},set:function(i,s){au&&i&&(typeof i=="object"||typeof i=="function")?(e||(e=new au),die(e,i,s)):Xg&&(r||(r=Xg()),r.set(i,s))}};return n}:Xg});var bT=$((gNe,gL)=>{"use strict";var mie=ma(),hie=_p(),gie=Bz(),vie=_T(),yie=hL(),_ie=yie||vie||gie;gL.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new mie("Side channel does not contain "+hie(n))},delete:function(n){return!!e&&e.delete(n)},get:function(n){return e&&e.get(n)},has:function(n){return!!e&&e.has(n)},set:function(n,i){e||(e=_ie()),e.set(n,i)}};return r}});var Qg=$((vNe,vL)=>{"use strict";var bie=String.prototype.replace,Sie=/%20/g,ST={RFC1738:"RFC1738",RFC3986:"RFC3986"};vL.exports={default:ST.RFC3986,formatters:{RFC1738:function(t){return bie.call(t,Sie,"+")},RFC3986:function(t){return String(t)}},RFC1738:ST.RFC1738,RFC3986:ST.RFC3986}});var kT=$((yNe,yL)=>{"use strict";var xie=Qg(),wie=bT(),xT=Object.prototype.hasOwnProperty,va=Array.isArray,ev=wie(),cu=function(e,r){return ev.set(e,r),e},ya=function(e){return ev.has(e)},kp=function(e){return ev.get(e)},ET=function(e,r){ev.set(e,r)},Yi=(function(){for(var t=[],e=0;e<256;++e)t[t.length]="%"+((e<16?"0":"")+e.toString(16)).toUpperCase();return t})(),Eie=function(e){for(;e.length>1;){var r=e.pop(),n=r.obj[r.prop];if(va(n)){for(var i=[],s=0;sn.arrayLimit)return cu(Tp(e.concat(r),n),i);e[i]=r}else if(e&&typeof e=="object")if(ya(e)){var s=kp(e)+1;e[s]=r,ET(e,s)}else(n&&(n.plainObjects||n.allowPrototypes)||!xT.call(Object.prototype,r))&&(e[r]=!0);else return[e,r];return e}if(!e||typeof e!="object"){if(ya(r)){for(var o=Object.keys(r),a=n&&n.plainObjects?{__proto__:null,0:e}:{0:e},c=0;cn.arrayLimit?cu(Tp(l,n),l.length-1):l}var d=e;return va(e)&&!va(r)&&(d=Tp(e,n)),va(e)&&va(r)?(r.forEach(function(p,f){if(xT.call(e,f)){var m=e[f];m&&typeof m=="object"&&p&&typeof p=="object"?e[f]=t(m,p,n):e[e.length]=p}else e[f]=p}),e):Object.keys(r).reduce(function(p,f){var m=r[f];if(xT.call(p,f)?p[f]=t(p[f],m,n):p[f]=m,ya(r)&&!ya(p)&&cu(p,kp(r)),ya(p)){var h=parseInt(f,10);String(h)===f&&h>=0&&h>kp(p)&&ET(p,h)}return p},d)},Tie=function(e,r){return Object.keys(r).reduce(function(n,i){return n[i]=r[i],n},e)},$ie=function(t,e,r){var n=t.replace(/\+/g," ");if(r==="iso-8859-1")return n.replace(/%[0-9a-f]{2}/gi,unescape);try{return decodeURIComponent(n)}catch{return n}},wT=1024,Iie=function(e,r,n,i,s){if(e.length===0)return e;var o=e;if(typeof e=="symbol"?o=Symbol.prototype.toString.call(e):typeof e!="string"&&(o=String(e)),n==="iso-8859-1")return escape(o).replace(/%u[0-9a-f]{4}/gi,function(f){return"%26%23"+parseInt(f.slice(2),16)+"%3B"});for(var a="",c=0;c=wT?o.slice(c,c+wT):o,l=[],d=0;d=48&&p<=57||p>=65&&p<=90||p>=97&&p<=122||s===xie.RFC1738&&(p===40||p===41)){l[l.length]=u.charAt(d);continue}if(p<128){l[l.length]=Yi[p];continue}if(p<2048){l[l.length]=Yi[192|p>>6]+Yi[128|p&63];continue}if(p<55296||p>=57344){l[l.length]=Yi[224|p>>12]+Yi[128|p>>6&63]+Yi[128|p&63];continue}d+=1,p=65536+((p&1023)<<10|u.charCodeAt(d)&1023),l[l.length]=Yi[240|p>>18]+Yi[128|p>>12&63]+Yi[128|p>>6&63]+Yi[128|p&63]}a+=l.join("")}return a},Rie=function(e){for(var r=[{obj:{o:e},prop:"o"}],n=[],i=0;in?cu(Tp(o,{plainObjects:i}),o.length-1):o},Aie=function(e,r){if(va(e)){for(var n=[],i=0;i{"use strict";var bL=bT(),tv=kT(),$p=Qg(),Nie=Object.prototype.hasOwnProperty,SL={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,r){return e+"["+r+"]"},repeat:function(e){return e}},Qi=Array.isArray,Mie=Array.prototype.push,xL=function(t,e){Mie.apply(t,Qi(e)?e:[e])},Die=Date.prototype.toISOString,_L=$p.default,or={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,commaRoundTrip:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:tv.encode,encodeValuesOnly:!1,filter:void 0,format:_L,formatter:$p.formatters[_L],indices:!1,serializeDate:function(e){return Die.call(e)},skipNulls:!1,strictNullHandling:!1},jie=function(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="symbol"||typeof e=="bigint"},TT={},zie=function t(e,r,n,i,s,o,a,c,u,l,d,p,f,m,h,g,v,y){for(var b=e,S=y,x=0,w=!1;(S=S.get(TT))!==void 0&&!w;){var E=S.get(e);if(x+=1,typeof E<"u"){if(E===x)throw new RangeError("Cyclic object value");w=!0}typeof S.get(TT)>"u"&&(x=0)}if(typeof l=="function"?b=l(r,b):b instanceof Date?b=f(b):n==="comma"&&Qi(b)&&(b=tv.maybeMap(b,function(K){return K instanceof Date?f(K):K})),b===null){if(o)return u&&!g?u(r,or.encoder,v,"key",m):r;b=""}if(jie(b)||tv.isBuffer(b)){if(u){var T=g?r:u(r,or.encoder,v,"key",m);return[h(T)+"="+h(u(b,or.encoder,v,"value",m))]}return[h(r)+"="+h(String(b))]}var I=[];if(typeof b>"u")return I;var A;if(n==="comma"&&Qi(b))g&&u&&(b=tv.maybeMap(b,u)),A=[{value:b.length>0?b.join(",")||null:void 0}];else if(Qi(l))A=l;else{var N=Object.keys(b);A=d?N.sort(d):N}var U=c?String(r).replace(/\./g,"%2E"):String(r),V=i&&Qi(b)&&b.length===1?U+"[]":U;if(s&&Qi(b)&&b.length===0)return V+"[]";for(var j=0;j"u"?e.encodeDotInKeys===!0?!0:or.allowDots:!!e.allowDots;return{addQueryPrefix:typeof e.addQueryPrefix=="boolean"?e.addQueryPrefix:or.addQueryPrefix,allowDots:a,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:or.allowEmptyArrays,arrayFormat:o,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:or.charsetSentinel,commaRoundTrip:!!e.commaRoundTrip,delimiter:typeof e.delimiter>"u"?or.delimiter:e.delimiter,encode:typeof e.encode=="boolean"?e.encode:or.encode,encodeDotInKeys:typeof e.encodeDotInKeys=="boolean"?e.encodeDotInKeys:or.encodeDotInKeys,encoder:typeof e.encoder=="function"?e.encoder:or.encoder,encodeValuesOnly:typeof e.encodeValuesOnly=="boolean"?e.encodeValuesOnly:or.encodeValuesOnly,filter:s,format:n,formatter:i,serializeDate:typeof e.serializeDate=="function"?e.serializeDate:or.serializeDate,skipNulls:typeof e.skipNulls=="boolean"?e.skipNulls:or.skipNulls,sort:typeof e.sort=="function"?e.sort:null,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:or.strictNullHandling}};wL.exports=function(t,e){var r=t,n=Lie(e),i,s;typeof n.filter=="function"?(s=n.filter,r=s("",r)):Qi(n.filter)&&(s=n.filter,i=s);var o=[];if(typeof r!="object"||r===null)return"";var a=SL[n.arrayFormat],c=a==="comma"&&n.commaRoundTrip;i||(i=Object.keys(r)),n.sort&&i.sort(n.sort);for(var u=bL(),l=0;l0?m+f:""}});var $L=$((bNe,TL)=>{"use strict";var es=kT(),rv=Object.prototype.hasOwnProperty,$T=Array.isArray,Kt={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:es.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},Uie=function(t){return t.replace(/&#(\d+);/g,function(e,r){return String.fromCharCode(parseInt(r,10))})},kL=function(t,e,r){if(t&&typeof t=="string"&&e.comma&&t.indexOf(",")>-1)return t.split(",");if(e.throwOnLimitExceeded&&r>=e.arrayLimit)throw new RangeError("Array limit exceeded. Only "+e.arrayLimit+" element"+(e.arrayLimit===1?"":"s")+" allowed in an array.");return t},Fie="utf8=%26%2310003%3B",qie="utf8=%E2%9C%93",Hie=function(e,r){var n={__proto__:null},i=r.ignoreQueryPrefix?e.replace(/^\?/,""):e;i=i.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var s=r.parameterLimit===1/0?void 0:r.parameterLimit,o=i.split(r.delimiter,r.throwOnLimitExceeded?s+1:s);if(r.throwOnLimitExceeded&&o.length>s)throw new RangeError("Parameter limit exceeded. Only "+s+" parameter"+(s===1?"":"s")+" allowed.");var a=-1,c,u=r.charset;if(r.charsetSentinel)for(c=0;c-1&&(m=$T(m)?[m]:m),r.comma&&$T(m)&&m.length>r.arrayLimit){if(r.throwOnLimitExceeded)throw new RangeError("Array limit exceeded. Only "+r.arrayLimit+" element"+(r.arrayLimit===1?"":"s")+" allowed in an array.");m=es.combine([],m,r.arrayLimit,r.plainObjects)}if(f!==null){var h=rv.call(n,f);h&&r.duplicates==="combine"?n[f]=es.combine(n[f],m,r.arrayLimit,r.plainObjects):(!h||r.duplicates==="last")&&(n[f]=m)}}return n},Zie=function(t,e,r,n){var i=0;if(t.length>0&&t[t.length-1]==="[]"){var s=t.slice(0,-1).join("");i=Array.isArray(e)&&e[s]?e[s].length:0}for(var o=n?e:kL(e,r,i),a=t.length-1;a>=0;--a){var c,u=t[a];if(u==="[]"&&r.parseArrays)es.isOverflow(o)?c=o:c=r.allowEmptyArrays&&(o===""||r.strictNullHandling&&o===null)?[]:es.combine([],o,r.arrayLimit,r.plainObjects);else{c=r.plainObjects?{__proto__:null}:{};var l=u.charAt(0)==="["&&u.charAt(u.length-1)==="]"?u.slice(1,-1):u,d=r.decodeDotInKeys?l.replace(/%2E/g,"."):l,p=parseInt(d,10),f=!isNaN(p)&&u!==d&&String(p)===d&&p>=0&&r.parseArrays;if(!r.parseArrays&&d==="")c={0:o};else if(f&&p"u"?Kt.charset:e.charset,n=typeof e.duplicates>"u"?Kt.duplicates:e.duplicates;if(n!=="combine"&&n!=="first"&&n!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");var i=typeof e.allowDots>"u"?e.decodeDotInKeys===!0?!0:Kt.allowDots:!!e.allowDots;return{allowDots:i,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:Kt.allowEmptyArrays,allowPrototypes:typeof e.allowPrototypes=="boolean"?e.allowPrototypes:Kt.allowPrototypes,allowSparse:typeof e.allowSparse=="boolean"?e.allowSparse:Kt.allowSparse,arrayLimit:typeof e.arrayLimit=="number"?e.arrayLimit:Kt.arrayLimit,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:Kt.charsetSentinel,comma:typeof e.comma=="boolean"?e.comma:Kt.comma,decodeDotInKeys:typeof e.decodeDotInKeys=="boolean"?e.decodeDotInKeys:Kt.decodeDotInKeys,decoder:typeof e.decoder=="function"?e.decoder:Kt.decoder,delimiter:typeof e.delimiter=="string"||es.isRegExp(e.delimiter)?e.delimiter:Kt.delimiter,depth:typeof e.depth=="number"||e.depth===!1?+e.depth:Kt.depth,duplicates:n,ignoreQueryPrefix:e.ignoreQueryPrefix===!0,interpretNumericEntities:typeof e.interpretNumericEntities=="boolean"?e.interpretNumericEntities:Kt.interpretNumericEntities,parameterLimit:typeof e.parameterLimit=="number"?e.parameterLimit:Kt.parameterLimit,parseArrays:e.parseArrays!==!1,plainObjects:typeof e.plainObjects=="boolean"?e.plainObjects:Kt.plainObjects,strictDepth:typeof e.strictDepth=="boolean"?!!e.strictDepth:Kt.strictDepth,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:Kt.strictNullHandling,throwOnLimitExceeded:typeof e.throwOnLimitExceeded=="boolean"?e.throwOnLimitExceeded:!1}};TL.exports=function(t,e){var r=Wie(e);if(t===""||t===null||typeof t>"u")return r.plainObjects?{__proto__:null}:{};for(var n=typeof t=="string"?Hie(t,r):t,i=r.plainObjects?{__proto__:null}:{},s=Object.keys(n),o=0;o{"use strict";var Vie=EL(),Kie=$L(),Jie=Qg();IL.exports={formats:Jie,parse:Kie,stringify:Vie}});var NL=$((xNe,AL)=>{"use strict";var Xie=Gc(),Yie=ep(),iv=ca(),vi=Vn()("body-parser:urlencoded"),Qie=Vi()("body-parser"),ese=pp(),OL=tu();AL.exports=tse;var RL=Object.create(null);function tse(t){var e=t||{};e.extended===void 0&&Qie("undefined extended: provide extended option");var r=e.extended!==!1,n=e.inflate!==!1,i=typeof e.limit!="number"?Xie.parse(e.limit||"100kb"):e.limit,s=e.type||"application/x-www-form-urlencoded",o=e.verify||!1;if(o!==!1&&typeof o!="function")throw new TypeError("option verify must be function");var a=r?rse(e):ise(e),c=typeof s!="function"?sse(s):s;function u(l){return l.length?a(l):{}}return function(d,p,f){if(d._body){vi("body already parsed"),f();return}if(d.body=d.body||{},!OL.hasBody(d)){vi("skip empty body"),f();return}if(vi("content-type %j",d.headers["content-type"]),!c(d)){vi("skip parsing"),f();return}var m=nse(d)||"utf-8";if(m!=="utf-8"){vi("invalid charset"),f(iv(415,'unsupported charset "'+m.toUpperCase()+'"',{charset:m,type:"charset.unsupported"}));return}ese(d,p,f,u,vi,{debug:vi,encoding:m,inflate:n,limit:i,verify:o})}}function rse(t){var e=t.parameterLimit!==void 0?t.parameterLimit:1e3,r=t.depth!==void 0?t.depth:32,n=PL("qs");if(isNaN(e)||e<1)throw new TypeError("option parameterLimit must be a positive number");if(isNaN(r)||r<0)throw new TypeError("option depth must be a zero or a positive number");return isFinite(e)&&(e=e|0),function(s){var o=CL(s,e);if(o===void 0)throw vi("too many parameters"),iv(413,"too many parameters",{type:"parameters.too.many"});var a=Math.max(100,o);vi("parse extended urlencoding");try{return n(s,{allowPrototypes:!0,arrayLimit:a,depth:r,strictDepth:!0,parameterLimit:e})}catch(c){throw c instanceof RangeError?iv(400,"The input exceeded the depth",{type:"querystring.parse.rangeError"}):c}}}function nse(t){try{return(Yie.parse(t).parameters.charset||"").toLowerCase()}catch{return}}function CL(t,e){for(var r=0,n=0;(n=t.indexOf("&",n))!==-1;)if(r++,n++,r===e)return;return r}function PL(t){var e=RL[t];if(e!==void 0)return e.parse;switch(t){case"qs":e=nv();break;case"querystring":e=require("querystring");break}return RL[t]=e,e.parse}function ise(t){var e=t.parameterLimit!==void 0?t.parameterLimit:1e3,r=PL("querystring");if(isNaN(e)||e<1)throw new TypeError("option parameterLimit must be a positive number");return isFinite(e)&&(e=e|0),function(i){var s=CL(i,e);if(s===void 0)throw vi("too many parameters"),iv(413,"too many parameters",{type:"parameters.too.many"});return vi("parse urlencoding"),r(i,void 0,void 0,{maxKeys:e})}}function sse(t){return function(r){return!!OL(r,t)}}});var jL=$((Eo,DL)=>{"use strict";var ose=Vi()("body-parser"),ML=Object.create(null);Eo=DL.exports=ose.function(ase,"bodyParser: use individual json/urlencoded middlewares");Object.defineProperty(Eo,"json",{configurable:!0,enumerable:!0,get:sv("json")});Object.defineProperty(Eo,"raw",{configurable:!0,enumerable:!0,get:sv("raw")});Object.defineProperty(Eo,"text",{configurable:!0,enumerable:!0,get:sv("text")});Object.defineProperty(Eo,"urlencoded",{configurable:!0,enumerable:!0,get:sv("urlencoded")});function ase(t){var e=Object.create(t||null,{type:{configurable:!0,enumerable:!0,value:void 0,writable:!0}}),r=Eo.urlencoded(e),n=Eo.json(e);return function(s,o,a){n(s,o,function(c){if(c)return a(c);r(s,o,a)})}}function sv(t){return function(){return cse(t)}}function cse(t){var e=ML[t];if(e!==void 0)return e;switch(t){case"json":e=mz();break;case"raw":e=vz();break;case"text":e=bz();break;case"urlencoded":e=NL();break}return ML[t]=e}});var LL=$((wNe,zL)=>{"use strict";zL.exports=lse;var use=Object.prototype.hasOwnProperty;function lse(t,e,r){if(!t)throw new TypeError("argument dest is required");if(!e)throw new TypeError("argument src is required");return r===void 0&&(r=!0),Object.getOwnPropertyNames(e).forEach(function(i){if(!(!r&&use.call(t,i))){var s=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,s)}}),t}});var Ip=$((ENe,UL)=>{"use strict";UL.exports=mse;var dse=/(?:[^\x21\x23-\x3B\x3D\x3F-\x5F\x61-\x7A\x7C\x7E]|%(?:[^0-9A-Fa-f]|[0-9A-Fa-f][^0-9A-Fa-f]|$))+/g,pse=/(^|[^\uD800-\uDBFF])[\uDC00-\uDFFF]|[\uD800-\uDBFF]([^\uDC00-\uDFFF]|$)/g,fse="$1\uFFFD$2";function mse(t){return String(t).replace(pse,fse).replace(dse,encodeURI)}});var Rp=$((kNe,FL)=>{"use strict";var hse=/["'&<>]/;FL.exports=gse;function gse(t){var e=""+t,r=hse.exec(e);if(!r)return e;var n,i="",s=0,o=0;for(s=r.index;s{"use strict";var HL=require("url"),qL=HL.parse,ov=HL.Url;IT.exports=ZL;IT.exports.original=vse;function ZL(t){var e=t.url;if(e!==void 0){var r=t._parsedUrl;return GL(e,r)?r:(r=BL(e),r._raw=e,t._parsedUrl=r)}}function vse(t){var e=t.originalUrl;if(typeof e!="string")return ZL(t);var r=t._parsedOriginalUrl;return GL(e,r)?r:(r=BL(e),r._raw=e,t._parsedOriginalUrl=r)}function BL(t){if(typeof t!="string"||t.charCodeAt(0)!==47)return qL(t);for(var e=t,r=null,n=null,i=1;i{"use strict";var RT=Vn()("finalhandler"),yse=Ip(),_se=Rp(),VL=dp(),bse=uu(),KL=rp(),Sse=Lg(),xse=/\x20{2}/g,wse=/\n/g,Ese=typeof setImmediate=="function"?setImmediate:function(t){process.nextTick(t.bind.apply(t,arguments))},kse=VL.isFinished;function Tse(t){var e=_se(t).replace(wse,"
").replace(xse,"  ");return` @@ -639,7 +693,7 @@ return fn.apply(this, arguments)
`+e+`
-`}PL.exports=sse;function sse(t,e,r){var n=r||{},i=n.env||process.env.NODE_ENV||"development",s=n.onerror;return function(o){var a,c,u;if(!o&&RL(e)){dT("cannot 404 after headers sent");return}if(o?(u=cse(o),u===void 0?u=lse(e):a=ose(o),c=ase(o,u,i)):(u=404,c="Cannot "+t.method+" "+Jie(use(t))),dT("default %s",u),o&&s&&rse(s,o,t,e),RL(e)){dT("cannot %d after headers sent",u),t.socket&&t.socket.destroy();return}dse(t,e,u,a,c)}}function ose(t){if(!(!t.headers||typeof t.headers!="object")){for(var e=Object.create(null),r=Object.keys(t.headers),n=0;n=400&&t.status<600)return t.status;if(typeof t.statusCode=="number"&&t.statusCode>=400&&t.statusCode<600)return t.statusCode}function use(t){try{return Yie.original(t).pathname}catch{return"resource"}}function lse(t){var e=t.statusCode;return(typeof e!="number"||e<400||e>599)&&(e=500),e}function RL(t){return typeof t.headersSent!="boolean"?!!t._header:t.headersSent}function dse(t,e,r,n,i){function s(){var o=ise(i);if(e.statusCode=r,t.httpVersionMajor<2&&(e.statusMessage=CL.message[r]),e.removeHeader("Content-Encoding"),e.removeHeader("Content-Language"),e.removeHeader("Content-Range"),pse(e,n),e.setHeader("Content-Security-Policy","default-src 'none'"),e.setHeader("X-Content-Type-Options","nosniff"),e.setHeader("Content-Type","text/html; charset=utf-8"),e.setHeader("Content-Length",Buffer.byteLength(o,"utf8")),t.method==="HEAD"){e.end();return}e.end(o,"utf8")}if(nse(t)){s();return}Qie(t),OL(t,s),t.resume()}function pse(t,e){if(e)for(var r=Object.keys(e),n=0;n{"use strict";DL.exports=fse;function NL(t,e,r){for(var n=0;n0&&Array.isArray(i)?NL(i,e,r-1):e.push(i)}return e}function ML(t,e){for(var r=0;r{LL.exports=zL;var jL=/\\.|\((?:\?<(.*?)>)?(?!\?)/g;function zL(t,e,r){r=r||{},e=e||[];var n=r.strict,i=r.end!==!1,s=r.sensitive?"":"i",o=r.lookahead!==!1,a=0,c=e.length,u=0,l=0,d=0,p="",f;if(t instanceof RegExp){for(;f=jL.exec(t.source);)f[0][0]!=="\\"&&e.push({name:f[1]||l++,optional:!1,offset:f.index});return t}if(Array.isArray(t))return t=t.map(function(m){return zL(m,e,r).source}),new RegExp(t.join("|"),s);if(typeof t!="string")throw new TypeError("path must be a string, array of strings, or regular expression");for(t=t.replace(/\\.|(\/)?(\.)?:(\w+)(\(.*?\))?(\*)?(\?)?|[.*]|\/\(/g,function(m,h,g,v,S,b,y,x){if(m[0]==="\\")return p+=m,d+=2,m;if(m===".")return p+="\\.",a+=1,d+=1,"\\.";if(h||g?p="":p+=t.slice(d,x),d=x+m.length,m==="*")return a+=3,"(.*)";if(m==="/(")return p+="/",a+=2,"/(?:";h=h||"",g=g?"\\.":"",y=y||"",S=S?S.replace(/\\.|\*/,function(E){return E==="*"?"(.*)":E}):p?"((?:(?!/|"+p+").)+?)":"([^/"+g+"]+?)",e.push({name:v,optional:!!y,offset:x+a});var w="(?:"+g+h+S+(b?"((?:[/"+g+"].+?)?)":"")+")"+y;return a+=w.length-m.length,w});f=jL.exec(t);)f[0][0]!=="\\"&&((c+u===e.length||e[c+u].offset>f.index)&&e.splice(c+u,0,{name:l++,optional:!1,offset:f.index}),u++);return t+=n?"":t[t.length-1]==="/"?"?":"/?",i?t+="$":t[t.length-1]!=="/"&&(t+=o?"(?=/|$)":"(?:/|$)"),new RegExp("^"+t,s)}});var pT=$((HAe,qL)=>{"use strict";var mse=UL(),hse=Zn()("express:router:layer"),gse=Object.prototype.hasOwnProperty;qL.exports=Jc;function Jc(t,e,r){if(!(this instanceof Jc))return new Jc(t,e,r);hse("new %o",t);var n=e||{};this.handle=r,this.name=r.name||"",this.params=void 0,this.path=void 0,this.regexp=mse(t,this.keys=[],n),this.regexp.fast_star=t==="*",this.regexp.fast_slash=t==="/"&&n.end===!1}Jc.prototype.handle_error=function(e,r,n,i){var s=this.handle;if(s.length!==4)return i(e);try{s(e,r,n,i)}catch(o){i(o)}};Jc.prototype.handle_request=function(e,r,n){var i=this.handle;if(i.length>3)return n();try{i(e,r,n)}catch(s){n(s)}};Jc.prototype.match=function(e){var r;if(e!=null){if(this.regexp.fast_slash)return this.params={},this.path="",!0;if(this.regexp.fast_star)return this.params={0:FL(e)},this.path=e,!0;r=this.regexp.exec(e)}if(!r)return this.params=void 0,this.path=void 0,!1;this.params={},this.path=r[0];for(var n=this.keys,i=this.params,s=1;s{"use strict";var HL=require("http");ZL.exports=vse()||yse();function vse(){return HL.METHODS&&HL.METHODS.map(function(e){return e.toLowerCase()})}function yse(){return["get","post","put","head","delete","options","trace","copy","lock","mkcol","move","purge","propfind","proppatch","unlock","report","mkactivity","checkout","merge","m-search","notify","subscribe","unsubscribe","patch","search","connect"]}});var fT=$((BAe,JL)=>{"use strict";var BL=Zn()("express:router:route"),GL=hp(),WL=pT(),_se=Jg(),VL=Array.prototype.slice,KL=Object.prototype.toString;JL.exports=Xc;function Xc(t){this.path=t,this.stack=[],BL("new %o",t),this.methods={}}Xc.prototype._handles_method=function(e){if(this.methods._all)return!0;var r=typeof e=="string"?e.toLowerCase():e;return r==="head"&&!this.methods.head&&(r="get"),!!this.methods[r]};Xc.prototype._options=function(){var e=Object.keys(this.methods);this.methods.get&&!this.methods.head&&e.push("head");for(var r=0;r100)return setImmediate(c,u);var l=s[i++];if(!l)return n(u);l.method&&l.method!==a?c(u):u?l.handle_error(u,e,r,c):l.handle_request(e,r,c),o=0}};Xc.prototype.all=function(){for(var e=GL(VL.call(arguments)),r=0;r{XL=YL.exports=function(t,e){if(t&&e)for(var r in e)t[r]=e[r];return t}});var hT=$((GAe,rU)=>{"use strict";var bse=fT(),eU=pT(),Sse=Jg(),mT=gp(),Xg=Zn()("express:router"),QL=Hi()("express"),xse=hp(),wse=Kc(),Ese=qd(),kse=/^\[object (\S+)\]$/,tU=Array.prototype.slice,Tse=Object.prototype.toString,la=rU.exports=function(t){var e=t||{};function r(n,i,s){r.handle(n,i,s)}return Ese(r,la),r.params={},r._params=[],r.caseSensitive=e.caseSensitive,r.mergeParams=e.mergeParams,r.strict=e.strict,r.stack=[],r};la.param=function(e,r){if(typeof e=="function"){QL("router.param(fn): Refactor to use path params"),this._params.push(e);return}var n=this._params,i=n.length,s;e[0]===":"&&(QL("router.param("+JSON.stringify(e)+", fn): Use router.param("+JSON.stringify(e.slice(1))+", fn) instead"),e=e.slice(1));for(var o=0;o=p.length){setImmediate(h,b);return}if(++u>100)return setImmediate(g,S);var y=Ise(e);if(y==null)return h(b);for(var x,w,E;w!==!0&&s=a.length)return s();if(l=0,d=a[c++],u=d.name,p=n.params[u],f=o[u],m=r[u],p===void 0||!f)return h();if(m&&(m.match===p||m.error&&m.error!=="route"))return n.params[u]=m.value,h(m.error);r[u]=m={error:null,match:p,value:p},g()}function g(v){var S=f[l++];if(m.value=n.params[d.name],v){m.error=v,h(v);return}if(!S)return h();try{S(n,i,g,p,d.name)}catch(b){g(b)}}h()};la.use=function(e){var r=0,n="/";if(typeof e!="function"){for(var i=e;Array.isArray(i)&&i.length!==0;)i=i[0];typeof i!="function"&&(r=1,n=e)}var s=xse(tU.call(arguments,r));if(s.length===0)throw new TypeError("Router.use() requires a middleware function");for(var o=0;o");var a=new eU(n,{sensitive:this.caseSensitive,strict:!1,end:!1},e);a.route=void 0,this.stack.push(a)}return this};la.route=function(e){var r=new bse(e),n=new eU(e,{sensitive:this.caseSensitive,strict:this.strict,end:!0},r.dispatch.bind(r));return n.route=r,this.stack.push(n),r};Sse.concat("all").forEach(function(t){la[t]=function(e){var r=this.route(e);return r[t].apply(r,tU.call(arguments,1)),this}});function $se(t,e){for(var r=0;r=0;n--)t[n+i]=t[n],n{"use strict";var nU=qd();iU.init=function(t){return function(r,n,i){t.enabled("x-powered-by")&&n.setHeader("X-Powered-By","Express"),r.res=n,n.req=r,r.next=i,nU(r,t.request),nU(n,t.response),n.locals=n.locals||Object.create(null),i()}}});var gT=$((VAe,oU)=>{"use strict";var Dse=gp(),jse=Kc(),zse=Gg();oU.exports=function(e){var r=Dse({},e),n=zse.parse;return typeof e=="function"&&(n=e,r=void 0),r!==void 0&&r.allowPrototypes===void 0&&(r.allowPrototypes=!0),function(s,o,a){if(!s.query){var c=jse(s).query;s.query=n(c,r)}a()}}});var dU=$((KAe,lU)=>{"use strict";var Yg=Zn()("express:view"),vp=require("path"),Lse=require("fs"),Use=vp.dirname,uU=vp.basename,Fse=vp.extname,aU=vp.join,qse=vp.resolve;lU.exports=Qg;function Qg(t,e){var r=e||{};if(this.defaultEngine=r.defaultEngine,this.ext=Fse(t),this.name=t,this.root=r.root,!this.ext&&!this.defaultEngine)throw new Error("No default engine was specified and no extension was provided.");var n=t;if(this.ext||(this.ext=this.defaultEngine[0]!=="."?"."+this.defaultEngine:this.defaultEngine,n+=this.ext),!r.engines[this.ext]){var i=this.ext.slice(1);Yg('require "%s"',i);var s=require(i).__express;if(typeof s!="function")throw new Error('Module "'+i+'" does not provide a view engine.');r.engines[this.ext]=s}this.engine=r.engines[this.ext],this.path=this.lookup(n)}Qg.prototype.lookup=function(e){var r,n=[].concat(this.root);Yg('lookup "%s"',e);for(var i=0;i{var ev=require("buffer"),Ki=ev.Buffer;function pU(t,e){for(var r in t)e[r]=t[r]}Ki.from&&Ki.alloc&&Ki.allocUnsafe&&Ki.allocUnsafeSlow?fU.exports=ev:(pU(ev,vT),vT.Buffer=da);function da(t,e,r){return Ki(t,e,r)}da.prototype=Object.create(Ki.prototype);pU(Ki,da);da.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return Ki(t,e,r)};da.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var n=Ki(t);return e!==void 0?typeof r=="string"?n.fill(e,r):n.fill(e):n.fill(0),n};da.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return Ki(t)};da.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return ev.SlowBuffer(t)}});var _T=$((JAe,yT)=>{"use strict";yT.exports=Qse;yT.exports.parse=noe;var mU=require("path").basename,Hse=tv().Buffer,Zse=/[\x00-\x20"'()*,/:;<=>?@[\\\]{}\x7f]/g,Bse=/%[0-9A-Fa-f]{2}/,Gse=/%([0-9A-Fa-f]{2})/g,gU=/[^\x20-\x7e\xa0-\xff]/g,Wse=/\\([\u0000-\u007f])/g,Vse=/([\\"])/g,hU=/;[\x09\x20]*([!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*=[\x09\x20]*("(?:[\x20!\x23-\x5b\x5d-\x7e\x80-\xff]|\\[\x20-\x7e])*"|[!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*/g,Kse=/^[\x20-\x7e\x80-\xff]+$/,Jse=/^[!#$%&'*+.0-9A-Z^_`a-z|~-]+$/,Xse=/^([A-Za-z0-9!#$%&+\-^_`{}~]+)'(?:[A-Za-z]{2,3}(?:-[A-Za-z]{3}){0,3}|[A-Za-z]{4,8}|)'((?:%[0-9A-Fa-f]{2}|[A-Za-z0-9!#$&+.^_`|~-])+)$/,Yse=/^([!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*(?:$|;)/;function Qse(t,e){var r=e||{},n=r.type||"attachment",i=eoe(t,r.fallback);return toe(new yU(n,i))}function eoe(t,e){if(t!==void 0){var r={};if(typeof t!="string")throw new TypeError("filename must be a string");if(e===void 0&&(e=!0),typeof e!="string"&&typeof e!="boolean")throw new TypeError("fallback must be a string or boolean");if(typeof e=="string"&&gU.test(e))throw new TypeError("fallback must be ISO-8859-1 string");var n=mU(t),i=Kse.test(n),s=typeof e!="string"?e&&vU(n):mU(e),o=typeof s=="string"&&s!==n;return(o||!i||Bse.test(n))&&(r["filename*"]=n),(i||o)&&(r.filename=o?s:n),r}}function toe(t){var e=t.parameters,r=t.type;if(!r||typeof r!="string"||!Jse.test(r))throw new TypeError("invalid type");var n=String(r).toLowerCase();if(e&&typeof e=="object")for(var i,s=Object.keys(e).sort(),o=0;o{"use strict";SU.exports=loe;var coe=require("crypto"),_U=require("fs").Stats,bU=Object.prototype.toString;function uoe(t){if(t.length===0)return'"0-2jmj7l5rSw0yVb/vlWAYkK/YBwk"';var e=coe.createHash("sha1").update(t,"utf8").digest("base64").substring(0,27),r=typeof t=="string"?Buffer.byteLength(t,"utf8"):t.length;return'"'+r.toString(16)+"-"+e+'"'}function loe(t,e){if(t==null)throw new TypeError("argument entity is required");var r=doe(t),n=e&&typeof e.weak=="boolean"?e.weak:r;if(!r&&typeof t!="string"&&!Buffer.isBuffer(t))throw new TypeError("argument entity must be string, Buffer, or fs.Stats");var i=r?poe(t):uoe(t);return n?"W/"+i:i}function doe(t){return typeof _U=="function"&&t instanceof _U?!0:t&&typeof t=="object"&&"ctime"in t&&bU.call(t.ctime)==="[object Date]"&&"mtime"in t&&bU.call(t.mtime)==="[object Date]"&&"ino"in t&&typeof t.ino=="number"&&"size"in t&&typeof t.size=="number"}function poe(t){var e=t.mtime.getTime().toString(16),r=t.size.toString(16);return'"'+r+"-"+e+'"'}});var ST=$((YAe,wU)=>{"use strict";var foe=/(?:^|,)\s*?no-cache\s*?(?:,|$)/;wU.exports=moe;function moe(t,e){var r=t["if-modified-since"],n=t["if-none-match"];if(!r&&!n)return!1;var i=t["cache-control"];if(i&&foe.test(i))return!1;if(n&&n!=="*"){var s=e.etag;if(!s)return!1;for(var o=!0,a=hoe(n),c=0;c{goe.exports={"application/andrew-inset":["ez"],"application/applixware":["aw"],"application/atom+xml":["atom"],"application/atomcat+xml":["atomcat"],"application/atomsvc+xml":["atomsvc"],"application/bdoc":["bdoc"],"application/ccxml+xml":["ccxml"],"application/cdmi-capability":["cdmia"],"application/cdmi-container":["cdmic"],"application/cdmi-domain":["cdmid"],"application/cdmi-object":["cdmio"],"application/cdmi-queue":["cdmiq"],"application/cu-seeme":["cu"],"application/dash+xml":["mpd"],"application/davmount+xml":["davmount"],"application/docbook+xml":["dbk"],"application/dssc+der":["dssc"],"application/dssc+xml":["xdssc"],"application/ecmascript":["ecma"],"application/emma+xml":["emma"],"application/epub+zip":["epub"],"application/exi":["exi"],"application/font-tdpfr":["pfr"],"application/font-woff":[],"application/font-woff2":[],"application/geo+json":["geojson"],"application/gml+xml":["gml"],"application/gpx+xml":["gpx"],"application/gxf":["gxf"],"application/gzip":["gz"],"application/hyperstudio":["stk"],"application/inkml+xml":["ink","inkml"],"application/ipfix":["ipfix"],"application/java-archive":["jar","war","ear"],"application/java-serialized-object":["ser"],"application/java-vm":["class"],"application/javascript":["js","mjs"],"application/json":["json","map"],"application/json5":["json5"],"application/jsonml+json":["jsonml"],"application/ld+json":["jsonld"],"application/lost+xml":["lostxml"],"application/mac-binhex40":["hqx"],"application/mac-compactpro":["cpt"],"application/mads+xml":["mads"],"application/manifest+json":["webmanifest"],"application/marc":["mrc"],"application/marcxml+xml":["mrcx"],"application/mathematica":["ma","nb","mb"],"application/mathml+xml":["mathml"],"application/mbox":["mbox"],"application/mediaservercontrol+xml":["mscml"],"application/metalink+xml":["metalink"],"application/metalink4+xml":["meta4"],"application/mets+xml":["mets"],"application/mods+xml":["mods"],"application/mp21":["m21","mp21"],"application/mp4":["mp4s","m4p"],"application/msword":["doc","dot"],"application/mxf":["mxf"],"application/octet-stream":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"],"application/oda":["oda"],"application/oebps-package+xml":["opf"],"application/ogg":["ogx"],"application/omdoc+xml":["omdoc"],"application/onenote":["onetoc","onetoc2","onetmp","onepkg"],"application/oxps":["oxps"],"application/patch-ops-error+xml":["xer"],"application/pdf":["pdf"],"application/pgp-encrypted":["pgp"],"application/pgp-signature":["asc","sig"],"application/pics-rules":["prf"],"application/pkcs10":["p10"],"application/pkcs7-mime":["p7m","p7c"],"application/pkcs7-signature":["p7s"],"application/pkcs8":["p8"],"application/pkix-attr-cert":["ac"],"application/pkix-cert":["cer"],"application/pkix-crl":["crl"],"application/pkix-pkipath":["pkipath"],"application/pkixcmp":["pki"],"application/pls+xml":["pls"],"application/postscript":["ai","eps","ps"],"application/prs.cww":["cww"],"application/pskc+xml":["pskcxml"],"application/raml+yaml":["raml"],"application/rdf+xml":["rdf"],"application/reginfo+xml":["rif"],"application/relax-ng-compact-syntax":["rnc"],"application/resource-lists+xml":["rl"],"application/resource-lists-diff+xml":["rld"],"application/rls-services+xml":["rs"],"application/rpki-ghostbusters":["gbr"],"application/rpki-manifest":["mft"],"application/rpki-roa":["roa"],"application/rsd+xml":["rsd"],"application/rss+xml":["rss"],"application/rtf":["rtf"],"application/sbml+xml":["sbml"],"application/scvp-cv-request":["scq"],"application/scvp-cv-response":["scs"],"application/scvp-vp-request":["spq"],"application/scvp-vp-response":["spp"],"application/sdp":["sdp"],"application/set-payment-initiation":["setpay"],"application/set-registration-initiation":["setreg"],"application/shf+xml":["shf"],"application/smil+xml":["smi","smil"],"application/sparql-query":["rq"],"application/sparql-results+xml":["srx"],"application/srgs":["gram"],"application/srgs+xml":["grxml"],"application/sru+xml":["sru"],"application/ssdl+xml":["ssdl"],"application/ssml+xml":["ssml"],"application/tei+xml":["tei","teicorpus"],"application/thraud+xml":["tfi"],"application/timestamped-data":["tsd"],"application/vnd.3gpp.pic-bw-large":["plb"],"application/vnd.3gpp.pic-bw-small":["psb"],"application/vnd.3gpp.pic-bw-var":["pvb"],"application/vnd.3gpp2.tcap":["tcap"],"application/vnd.3m.post-it-notes":["pwn"],"application/vnd.accpac.simply.aso":["aso"],"application/vnd.accpac.simply.imp":["imp"],"application/vnd.acucobol":["acu"],"application/vnd.acucorp":["atc","acutc"],"application/vnd.adobe.air-application-installer-package+zip":["air"],"application/vnd.adobe.formscentral.fcdt":["fcdt"],"application/vnd.adobe.fxp":["fxp","fxpl"],"application/vnd.adobe.xdp+xml":["xdp"],"application/vnd.adobe.xfdf":["xfdf"],"application/vnd.ahead.space":["ahead"],"application/vnd.airzip.filesecure.azf":["azf"],"application/vnd.airzip.filesecure.azs":["azs"],"application/vnd.amazon.ebook":["azw"],"application/vnd.americandynamics.acc":["acc"],"application/vnd.amiga.ami":["ami"],"application/vnd.android.package-archive":["apk"],"application/vnd.anser-web-certificate-issue-initiation":["cii"],"application/vnd.anser-web-funds-transfer-initiation":["fti"],"application/vnd.antix.game-component":["atx"],"application/vnd.apple.installer+xml":["mpkg"],"application/vnd.apple.mpegurl":["m3u8"],"application/vnd.apple.pkpass":["pkpass"],"application/vnd.aristanetworks.swi":["swi"],"application/vnd.astraea-software.iota":["iota"],"application/vnd.audiograph":["aep"],"application/vnd.blueice.multipass":["mpm"],"application/vnd.bmi":["bmi"],"application/vnd.businessobjects":["rep"],"application/vnd.chemdraw+xml":["cdxml"],"application/vnd.chipnuts.karaoke-mmd":["mmd"],"application/vnd.cinderella":["cdy"],"application/vnd.claymore":["cla"],"application/vnd.cloanto.rp9":["rp9"],"application/vnd.clonk.c4group":["c4g","c4d","c4f","c4p","c4u"],"application/vnd.cluetrust.cartomobile-config":["c11amc"],"application/vnd.cluetrust.cartomobile-config-pkg":["c11amz"],"application/vnd.commonspace":["csp"],"application/vnd.contact.cmsg":["cdbcmsg"],"application/vnd.cosmocaller":["cmc"],"application/vnd.crick.clicker":["clkx"],"application/vnd.crick.clicker.keyboard":["clkk"],"application/vnd.crick.clicker.palette":["clkp"],"application/vnd.crick.clicker.template":["clkt"],"application/vnd.crick.clicker.wordbank":["clkw"],"application/vnd.criticaltools.wbs+xml":["wbs"],"application/vnd.ctc-posml":["pml"],"application/vnd.cups-ppd":["ppd"],"application/vnd.curl.car":["car"],"application/vnd.curl.pcurl":["pcurl"],"application/vnd.dart":["dart"],"application/vnd.data-vision.rdz":["rdz"],"application/vnd.dece.data":["uvf","uvvf","uvd","uvvd"],"application/vnd.dece.ttml+xml":["uvt","uvvt"],"application/vnd.dece.unspecified":["uvx","uvvx"],"application/vnd.dece.zip":["uvz","uvvz"],"application/vnd.denovo.fcselayout-link":["fe_launch"],"application/vnd.dna":["dna"],"application/vnd.dolby.mlp":["mlp"],"application/vnd.dpgraph":["dpg"],"application/vnd.dreamfactory":["dfac"],"application/vnd.ds-keypoint":["kpxx"],"application/vnd.dvb.ait":["ait"],"application/vnd.dvb.service":["svc"],"application/vnd.dynageo":["geo"],"application/vnd.ecowin.chart":["mag"],"application/vnd.enliven":["nml"],"application/vnd.epson.esf":["esf"],"application/vnd.epson.msf":["msf"],"application/vnd.epson.quickanime":["qam"],"application/vnd.epson.salt":["slt"],"application/vnd.epson.ssf":["ssf"],"application/vnd.eszigno3+xml":["es3","et3"],"application/vnd.ezpix-album":["ez2"],"application/vnd.ezpix-package":["ez3"],"application/vnd.fdf":["fdf"],"application/vnd.fdsn.mseed":["mseed"],"application/vnd.fdsn.seed":["seed","dataless"],"application/vnd.flographit":["gph"],"application/vnd.fluxtime.clip":["ftc"],"application/vnd.framemaker":["fm","frame","maker","book"],"application/vnd.frogans.fnc":["fnc"],"application/vnd.frogans.ltf":["ltf"],"application/vnd.fsc.weblaunch":["fsc"],"application/vnd.fujitsu.oasys":["oas"],"application/vnd.fujitsu.oasys2":["oa2"],"application/vnd.fujitsu.oasys3":["oa3"],"application/vnd.fujitsu.oasysgp":["fg5"],"application/vnd.fujitsu.oasysprs":["bh2"],"application/vnd.fujixerox.ddd":["ddd"],"application/vnd.fujixerox.docuworks":["xdw"],"application/vnd.fujixerox.docuworks.binder":["xbd"],"application/vnd.fuzzysheet":["fzs"],"application/vnd.genomatix.tuxedo":["txd"],"application/vnd.geogebra.file":["ggb"],"application/vnd.geogebra.tool":["ggt"],"application/vnd.geometry-explorer":["gex","gre"],"application/vnd.geonext":["gxt"],"application/vnd.geoplan":["g2w"],"application/vnd.geospace":["g3w"],"application/vnd.gmx":["gmx"],"application/vnd.google-apps.document":["gdoc"],"application/vnd.google-apps.presentation":["gslides"],"application/vnd.google-apps.spreadsheet":["gsheet"],"application/vnd.google-earth.kml+xml":["kml"],"application/vnd.google-earth.kmz":["kmz"],"application/vnd.grafeq":["gqf","gqs"],"application/vnd.groove-account":["gac"],"application/vnd.groove-help":["ghf"],"application/vnd.groove-identity-message":["gim"],"application/vnd.groove-injector":["grv"],"application/vnd.groove-tool-message":["gtm"],"application/vnd.groove-tool-template":["tpl"],"application/vnd.groove-vcard":["vcg"],"application/vnd.hal+xml":["hal"],"application/vnd.handheld-entertainment+xml":["zmm"],"application/vnd.hbci":["hbci"],"application/vnd.hhe.lesson-player":["les"],"application/vnd.hp-hpgl":["hpgl"],"application/vnd.hp-hpid":["hpid"],"application/vnd.hp-hps":["hps"],"application/vnd.hp-jlyt":["jlt"],"application/vnd.hp-pcl":["pcl"],"application/vnd.hp-pclxl":["pclxl"],"application/vnd.hydrostatix.sof-data":["sfd-hdstx"],"application/vnd.ibm.minipay":["mpy"],"application/vnd.ibm.modcap":["afp","listafp","list3820"],"application/vnd.ibm.rights-management":["irm"],"application/vnd.ibm.secure-container":["sc"],"application/vnd.iccprofile":["icc","icm"],"application/vnd.igloader":["igl"],"application/vnd.immervision-ivp":["ivp"],"application/vnd.immervision-ivu":["ivu"],"application/vnd.insors.igm":["igm"],"application/vnd.intercon.formnet":["xpw","xpx"],"application/vnd.intergeo":["i2g"],"application/vnd.intu.qbo":["qbo"],"application/vnd.intu.qfx":["qfx"],"application/vnd.ipunplugged.rcprofile":["rcprofile"],"application/vnd.irepository.package+xml":["irp"],"application/vnd.is-xpr":["xpr"],"application/vnd.isac.fcs":["fcs"],"application/vnd.jam":["jam"],"application/vnd.jcp.javame.midlet-rms":["rms"],"application/vnd.jisp":["jisp"],"application/vnd.joost.joda-archive":["joda"],"application/vnd.kahootz":["ktz","ktr"],"application/vnd.kde.karbon":["karbon"],"application/vnd.kde.kchart":["chrt"],"application/vnd.kde.kformula":["kfo"],"application/vnd.kde.kivio":["flw"],"application/vnd.kde.kontour":["kon"],"application/vnd.kde.kpresenter":["kpr","kpt"],"application/vnd.kde.kspread":["ksp"],"application/vnd.kde.kword":["kwd","kwt"],"application/vnd.kenameaapp":["htke"],"application/vnd.kidspiration":["kia"],"application/vnd.kinar":["kne","knp"],"application/vnd.koan":["skp","skd","skt","skm"],"application/vnd.kodak-descriptor":["sse"],"application/vnd.las.las+xml":["lasxml"],"application/vnd.llamagraphics.life-balance.desktop":["lbd"],"application/vnd.llamagraphics.life-balance.exchange+xml":["lbe"],"application/vnd.lotus-1-2-3":["123"],"application/vnd.lotus-approach":["apr"],"application/vnd.lotus-freelance":["pre"],"application/vnd.lotus-notes":["nsf"],"application/vnd.lotus-organizer":["org"],"application/vnd.lotus-screencam":["scm"],"application/vnd.lotus-wordpro":["lwp"],"application/vnd.macports.portpkg":["portpkg"],"application/vnd.mcd":["mcd"],"application/vnd.medcalcdata":["mc1"],"application/vnd.mediastation.cdkey":["cdkey"],"application/vnd.mfer":["mwf"],"application/vnd.mfmp":["mfm"],"application/vnd.micrografx.flo":["flo"],"application/vnd.micrografx.igx":["igx"],"application/vnd.mif":["mif"],"application/vnd.mobius.daf":["daf"],"application/vnd.mobius.dis":["dis"],"application/vnd.mobius.mbk":["mbk"],"application/vnd.mobius.mqy":["mqy"],"application/vnd.mobius.msl":["msl"],"application/vnd.mobius.plc":["plc"],"application/vnd.mobius.txf":["txf"],"application/vnd.mophun.application":["mpn"],"application/vnd.mophun.certificate":["mpc"],"application/vnd.mozilla.xul+xml":["xul"],"application/vnd.ms-artgalry":["cil"],"application/vnd.ms-cab-compressed":["cab"],"application/vnd.ms-excel":["xls","xlm","xla","xlc","xlt","xlw"],"application/vnd.ms-excel.addin.macroenabled.12":["xlam"],"application/vnd.ms-excel.sheet.binary.macroenabled.12":["xlsb"],"application/vnd.ms-excel.sheet.macroenabled.12":["xlsm"],"application/vnd.ms-excel.template.macroenabled.12":["xltm"],"application/vnd.ms-fontobject":["eot"],"application/vnd.ms-htmlhelp":["chm"],"application/vnd.ms-ims":["ims"],"application/vnd.ms-lrm":["lrm"],"application/vnd.ms-officetheme":["thmx"],"application/vnd.ms-outlook":["msg"],"application/vnd.ms-pki.seccat":["cat"],"application/vnd.ms-pki.stl":["stl"],"application/vnd.ms-powerpoint":["ppt","pps","pot"],"application/vnd.ms-powerpoint.addin.macroenabled.12":["ppam"],"application/vnd.ms-powerpoint.presentation.macroenabled.12":["pptm"],"application/vnd.ms-powerpoint.slide.macroenabled.12":["sldm"],"application/vnd.ms-powerpoint.slideshow.macroenabled.12":["ppsm"],"application/vnd.ms-powerpoint.template.macroenabled.12":["potm"],"application/vnd.ms-project":["mpp","mpt"],"application/vnd.ms-word.document.macroenabled.12":["docm"],"application/vnd.ms-word.template.macroenabled.12":["dotm"],"application/vnd.ms-works":["wps","wks","wcm","wdb"],"application/vnd.ms-wpl":["wpl"],"application/vnd.ms-xpsdocument":["xps"],"application/vnd.mseq":["mseq"],"application/vnd.musician":["mus"],"application/vnd.muvee.style":["msty"],"application/vnd.mynfc":["taglet"],"application/vnd.neurolanguage.nlu":["nlu"],"application/vnd.nitf":["ntf","nitf"],"application/vnd.noblenet-directory":["nnd"],"application/vnd.noblenet-sealer":["nns"],"application/vnd.noblenet-web":["nnw"],"application/vnd.nokia.n-gage.data":["ngdat"],"application/vnd.nokia.n-gage.symbian.install":["n-gage"],"application/vnd.nokia.radio-preset":["rpst"],"application/vnd.nokia.radio-presets":["rpss"],"application/vnd.novadigm.edm":["edm"],"application/vnd.novadigm.edx":["edx"],"application/vnd.novadigm.ext":["ext"],"application/vnd.oasis.opendocument.chart":["odc"],"application/vnd.oasis.opendocument.chart-template":["otc"],"application/vnd.oasis.opendocument.database":["odb"],"application/vnd.oasis.opendocument.formula":["odf"],"application/vnd.oasis.opendocument.formula-template":["odft"],"application/vnd.oasis.opendocument.graphics":["odg"],"application/vnd.oasis.opendocument.graphics-template":["otg"],"application/vnd.oasis.opendocument.image":["odi"],"application/vnd.oasis.opendocument.image-template":["oti"],"application/vnd.oasis.opendocument.presentation":["odp"],"application/vnd.oasis.opendocument.presentation-template":["otp"],"application/vnd.oasis.opendocument.spreadsheet":["ods"],"application/vnd.oasis.opendocument.spreadsheet-template":["ots"],"application/vnd.oasis.opendocument.text":["odt"],"application/vnd.oasis.opendocument.text-master":["odm"],"application/vnd.oasis.opendocument.text-template":["ott"],"application/vnd.oasis.opendocument.text-web":["oth"],"application/vnd.olpc-sugar":["xo"],"application/vnd.oma.dd2+xml":["dd2"],"application/vnd.openofficeorg.extension":["oxt"],"application/vnd.openxmlformats-officedocument.presentationml.presentation":["pptx"],"application/vnd.openxmlformats-officedocument.presentationml.slide":["sldx"],"application/vnd.openxmlformats-officedocument.presentationml.slideshow":["ppsx"],"application/vnd.openxmlformats-officedocument.presentationml.template":["potx"],"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":["xlsx"],"application/vnd.openxmlformats-officedocument.spreadsheetml.template":["xltx"],"application/vnd.openxmlformats-officedocument.wordprocessingml.document":["docx"],"application/vnd.openxmlformats-officedocument.wordprocessingml.template":["dotx"],"application/vnd.osgeo.mapguide.package":["mgp"],"application/vnd.osgi.dp":["dp"],"application/vnd.osgi.subsystem":["esa"],"application/vnd.palm":["pdb","pqa","oprc"],"application/vnd.pawaafile":["paw"],"application/vnd.pg.format":["str"],"application/vnd.pg.osasli":["ei6"],"application/vnd.picsel":["efif"],"application/vnd.pmi.widget":["wg"],"application/vnd.pocketlearn":["plf"],"application/vnd.powerbuilder6":["pbd"],"application/vnd.previewsystems.box":["box"],"application/vnd.proteus.magazine":["mgz"],"application/vnd.publishare-delta-tree":["qps"],"application/vnd.pvi.ptid1":["ptid"],"application/vnd.quark.quarkxpress":["qxd","qxt","qwd","qwt","qxl","qxb"],"application/vnd.realvnc.bed":["bed"],"application/vnd.recordare.musicxml":["mxl"],"application/vnd.recordare.musicxml+xml":["musicxml"],"application/vnd.rig.cryptonote":["cryptonote"],"application/vnd.rim.cod":["cod"],"application/vnd.rn-realmedia":["rm"],"application/vnd.rn-realmedia-vbr":["rmvb"],"application/vnd.route66.link66+xml":["link66"],"application/vnd.sailingtracker.track":["st"],"application/vnd.seemail":["see"],"application/vnd.sema":["sema"],"application/vnd.semd":["semd"],"application/vnd.semf":["semf"],"application/vnd.shana.informed.formdata":["ifm"],"application/vnd.shana.informed.formtemplate":["itp"],"application/vnd.shana.informed.interchange":["iif"],"application/vnd.shana.informed.package":["ipk"],"application/vnd.simtech-mindmapper":["twd","twds"],"application/vnd.smaf":["mmf"],"application/vnd.smart.teacher":["teacher"],"application/vnd.solent.sdkm+xml":["sdkm","sdkd"],"application/vnd.spotfire.dxp":["dxp"],"application/vnd.spotfire.sfs":["sfs"],"application/vnd.stardivision.calc":["sdc"],"application/vnd.stardivision.draw":["sda"],"application/vnd.stardivision.impress":["sdd"],"application/vnd.stardivision.math":["smf"],"application/vnd.stardivision.writer":["sdw","vor"],"application/vnd.stardivision.writer-global":["sgl"],"application/vnd.stepmania.package":["smzip"],"application/vnd.stepmania.stepchart":["sm"],"application/vnd.sun.wadl+xml":["wadl"],"application/vnd.sun.xml.calc":["sxc"],"application/vnd.sun.xml.calc.template":["stc"],"application/vnd.sun.xml.draw":["sxd"],"application/vnd.sun.xml.draw.template":["std"],"application/vnd.sun.xml.impress":["sxi"],"application/vnd.sun.xml.impress.template":["sti"],"application/vnd.sun.xml.math":["sxm"],"application/vnd.sun.xml.writer":["sxw"],"application/vnd.sun.xml.writer.global":["sxg"],"application/vnd.sun.xml.writer.template":["stw"],"application/vnd.sus-calendar":["sus","susp"],"application/vnd.svd":["svd"],"application/vnd.symbian.install":["sis","sisx"],"application/vnd.syncml+xml":["xsm"],"application/vnd.syncml.dm+wbxml":["bdm"],"application/vnd.syncml.dm+xml":["xdm"],"application/vnd.tao.intent-module-archive":["tao"],"application/vnd.tcpdump.pcap":["pcap","cap","dmp"],"application/vnd.tmobile-livetv":["tmo"],"application/vnd.trid.tpt":["tpt"],"application/vnd.triscape.mxs":["mxs"],"application/vnd.trueapp":["tra"],"application/vnd.ufdl":["ufd","ufdl"],"application/vnd.uiq.theme":["utz"],"application/vnd.umajin":["umj"],"application/vnd.unity":["unityweb"],"application/vnd.uoml+xml":["uoml"],"application/vnd.vcx":["vcx"],"application/vnd.visio":["vsd","vst","vss","vsw"],"application/vnd.visionary":["vis"],"application/vnd.vsf":["vsf"],"application/vnd.wap.wbxml":["wbxml"],"application/vnd.wap.wmlc":["wmlc"],"application/vnd.wap.wmlscriptc":["wmlsc"],"application/vnd.webturbo":["wtb"],"application/vnd.wolfram.player":["nbp"],"application/vnd.wordperfect":["wpd"],"application/vnd.wqd":["wqd"],"application/vnd.wt.stf":["stf"],"application/vnd.xara":["xar"],"application/vnd.xfdl":["xfdl"],"application/vnd.yamaha.hv-dic":["hvd"],"application/vnd.yamaha.hv-script":["hvs"],"application/vnd.yamaha.hv-voice":["hvp"],"application/vnd.yamaha.openscoreformat":["osf"],"application/vnd.yamaha.openscoreformat.osfpvg+xml":["osfpvg"],"application/vnd.yamaha.smaf-audio":["saf"],"application/vnd.yamaha.smaf-phrase":["spf"],"application/vnd.yellowriver-custom-menu":["cmp"],"application/vnd.zul":["zir","zirz"],"application/vnd.zzazz.deck+xml":["zaz"],"application/voicexml+xml":["vxml"],"application/wasm":["wasm"],"application/widget":["wgt"],"application/winhlp":["hlp"],"application/wsdl+xml":["wsdl"],"application/wspolicy+xml":["wspolicy"],"application/x-7z-compressed":["7z"],"application/x-abiword":["abw"],"application/x-ace-compressed":["ace"],"application/x-apple-diskimage":[],"application/x-arj":["arj"],"application/x-authorware-bin":["aab","x32","u32","vox"],"application/x-authorware-map":["aam"],"application/x-authorware-seg":["aas"],"application/x-bcpio":["bcpio"],"application/x-bdoc":[],"application/x-bittorrent":["torrent"],"application/x-blorb":["blb","blorb"],"application/x-bzip":["bz"],"application/x-bzip2":["bz2","boz"],"application/x-cbr":["cbr","cba","cbt","cbz","cb7"],"application/x-cdlink":["vcd"],"application/x-cfs-compressed":["cfs"],"application/x-chat":["chat"],"application/x-chess-pgn":["pgn"],"application/x-chrome-extension":["crx"],"application/x-cocoa":["cco"],"application/x-conference":["nsc"],"application/x-cpio":["cpio"],"application/x-csh":["csh"],"application/x-debian-package":["udeb"],"application/x-dgc-compressed":["dgc"],"application/x-director":["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"],"application/x-doom":["wad"],"application/x-dtbncx+xml":["ncx"],"application/x-dtbook+xml":["dtb"],"application/x-dtbresource+xml":["res"],"application/x-dvi":["dvi"],"application/x-envoy":["evy"],"application/x-eva":["eva"],"application/x-font-bdf":["bdf"],"application/x-font-ghostscript":["gsf"],"application/x-font-linux-psf":["psf"],"application/x-font-pcf":["pcf"],"application/x-font-snf":["snf"],"application/x-font-type1":["pfa","pfb","pfm","afm"],"application/x-freearc":["arc"],"application/x-futuresplash":["spl"],"application/x-gca-compressed":["gca"],"application/x-glulx":["ulx"],"application/x-gnumeric":["gnumeric"],"application/x-gramps-xml":["gramps"],"application/x-gtar":["gtar"],"application/x-hdf":["hdf"],"application/x-httpd-php":["php"],"application/x-install-instructions":["install"],"application/x-iso9660-image":[],"application/x-java-archive-diff":["jardiff"],"application/x-java-jnlp-file":["jnlp"],"application/x-latex":["latex"],"application/x-lua-bytecode":["luac"],"application/x-lzh-compressed":["lzh","lha"],"application/x-makeself":["run"],"application/x-mie":["mie"],"application/x-mobipocket-ebook":["prc","mobi"],"application/x-ms-application":["application"],"application/x-ms-shortcut":["lnk"],"application/x-ms-wmd":["wmd"],"application/x-ms-wmz":["wmz"],"application/x-ms-xbap":["xbap"],"application/x-msaccess":["mdb"],"application/x-msbinder":["obd"],"application/x-mscardfile":["crd"],"application/x-msclip":["clp"],"application/x-msdos-program":[],"application/x-msdownload":["com","bat"],"application/x-msmediaview":["mvb","m13","m14"],"application/x-msmetafile":["wmf","emf","emz"],"application/x-msmoney":["mny"],"application/x-mspublisher":["pub"],"application/x-msschedule":["scd"],"application/x-msterminal":["trm"],"application/x-mswrite":["wri"],"application/x-netcdf":["nc","cdf"],"application/x-ns-proxy-autoconfig":["pac"],"application/x-nzb":["nzb"],"application/x-perl":["pl","pm"],"application/x-pilot":[],"application/x-pkcs12":["p12","pfx"],"application/x-pkcs7-certificates":["p7b","spc"],"application/x-pkcs7-certreqresp":["p7r"],"application/x-rar-compressed":["rar"],"application/x-redhat-package-manager":["rpm"],"application/x-research-info-systems":["ris"],"application/x-sea":["sea"],"application/x-sh":["sh"],"application/x-shar":["shar"],"application/x-shockwave-flash":["swf"],"application/x-silverlight-app":["xap"],"application/x-sql":["sql"],"application/x-stuffit":["sit"],"application/x-stuffitx":["sitx"],"application/x-subrip":["srt"],"application/x-sv4cpio":["sv4cpio"],"application/x-sv4crc":["sv4crc"],"application/x-t3vm-image":["t3"],"application/x-tads":["gam"],"application/x-tar":["tar"],"application/x-tcl":["tcl","tk"],"application/x-tex":["tex"],"application/x-tex-tfm":["tfm"],"application/x-texinfo":["texinfo","texi"],"application/x-tgif":["obj"],"application/x-ustar":["ustar"],"application/x-virtualbox-hdd":["hdd"],"application/x-virtualbox-ova":["ova"],"application/x-virtualbox-ovf":["ovf"],"application/x-virtualbox-vbox":["vbox"],"application/x-virtualbox-vbox-extpack":["vbox-extpack"],"application/x-virtualbox-vdi":["vdi"],"application/x-virtualbox-vhd":["vhd"],"application/x-virtualbox-vmdk":["vmdk"],"application/x-wais-source":["src"],"application/x-web-app-manifest+json":["webapp"],"application/x-x509-ca-cert":["der","crt","pem"],"application/x-xfig":["fig"],"application/x-xliff+xml":["xlf"],"application/x-xpinstall":["xpi"],"application/x-xz":["xz"],"application/x-zmachine":["z1","z2","z3","z4","z5","z6","z7","z8"],"application/xaml+xml":["xaml"],"application/xcap-diff+xml":["xdf"],"application/xenc+xml":["xenc"],"application/xhtml+xml":["xhtml","xht"],"application/xml":["xml","xsl","xsd","rng"],"application/xml-dtd":["dtd"],"application/xop+xml":["xop"],"application/xproc+xml":["xpl"],"application/xslt+xml":["xslt"],"application/xspf+xml":["xspf"],"application/xv+xml":["mxml","xhvml","xvml","xvm"],"application/yang":["yang"],"application/yin+xml":["yin"],"application/zip":["zip"],"audio/3gpp":[],"audio/adpcm":["adp"],"audio/basic":["au","snd"],"audio/midi":["mid","midi","kar","rmi"],"audio/mp3":[],"audio/mp4":["m4a","mp4a"],"audio/mpeg":["mpga","mp2","mp2a","mp3","m2a","m3a"],"audio/ogg":["oga","ogg","spx"],"audio/s3m":["s3m"],"audio/silk":["sil"],"audio/vnd.dece.audio":["uva","uvva"],"audio/vnd.digital-winds":["eol"],"audio/vnd.dra":["dra"],"audio/vnd.dts":["dts"],"audio/vnd.dts.hd":["dtshd"],"audio/vnd.lucent.voice":["lvp"],"audio/vnd.ms-playready.media.pya":["pya"],"audio/vnd.nuera.ecelp4800":["ecelp4800"],"audio/vnd.nuera.ecelp7470":["ecelp7470"],"audio/vnd.nuera.ecelp9600":["ecelp9600"],"audio/vnd.rip":["rip"],"audio/wav":["wav"],"audio/wave":[],"audio/webm":["weba"],"audio/x-aac":["aac"],"audio/x-aiff":["aif","aiff","aifc"],"audio/x-caf":["caf"],"audio/x-flac":["flac"],"audio/x-m4a":[],"audio/x-matroska":["mka"],"audio/x-mpegurl":["m3u"],"audio/x-ms-wax":["wax"],"audio/x-ms-wma":["wma"],"audio/x-pn-realaudio":["ram","ra"],"audio/x-pn-realaudio-plugin":["rmp"],"audio/x-realaudio":[],"audio/x-wav":[],"audio/xm":["xm"],"chemical/x-cdx":["cdx"],"chemical/x-cif":["cif"],"chemical/x-cmdf":["cmdf"],"chemical/x-cml":["cml"],"chemical/x-csml":["csml"],"chemical/x-xyz":["xyz"],"font/collection":["ttc"],"font/otf":["otf"],"font/ttf":["ttf"],"font/woff":["woff"],"font/woff2":["woff2"],"image/apng":["apng"],"image/bmp":["bmp"],"image/cgm":["cgm"],"image/g3fax":["g3"],"image/gif":["gif"],"image/ief":["ief"],"image/jp2":["jp2","jpg2"],"image/jpeg":["jpeg","jpg","jpe"],"image/jpm":["jpm"],"image/jpx":["jpx","jpf"],"image/ktx":["ktx"],"image/png":["png"],"image/prs.btif":["btif"],"image/sgi":["sgi"],"image/svg+xml":["svg","svgz"],"image/tiff":["tiff","tif"],"image/vnd.adobe.photoshop":["psd"],"image/vnd.dece.graphic":["uvi","uvvi","uvg","uvvg"],"image/vnd.djvu":["djvu","djv"],"image/vnd.dvb.subtitle":[],"image/vnd.dwg":["dwg"],"image/vnd.dxf":["dxf"],"image/vnd.fastbidsheet":["fbs"],"image/vnd.fpx":["fpx"],"image/vnd.fst":["fst"],"image/vnd.fujixerox.edmics-mmr":["mmr"],"image/vnd.fujixerox.edmics-rlc":["rlc"],"image/vnd.ms-modi":["mdi"],"image/vnd.ms-photo":["wdp"],"image/vnd.net-fpx":["npx"],"image/vnd.wap.wbmp":["wbmp"],"image/vnd.xiff":["xif"],"image/webp":["webp"],"image/x-3ds":["3ds"],"image/x-cmu-raster":["ras"],"image/x-cmx":["cmx"],"image/x-freehand":["fh","fhc","fh4","fh5","fh7"],"image/x-icon":["ico"],"image/x-jng":["jng"],"image/x-mrsid-image":["sid"],"image/x-ms-bmp":[],"image/x-pcx":["pcx"],"image/x-pict":["pic","pct"],"image/x-portable-anymap":["pnm"],"image/x-portable-bitmap":["pbm"],"image/x-portable-graymap":["pgm"],"image/x-portable-pixmap":["ppm"],"image/x-rgb":["rgb"],"image/x-tga":["tga"],"image/x-xbitmap":["xbm"],"image/x-xpixmap":["xpm"],"image/x-xwindowdump":["xwd"],"message/rfc822":["eml","mime"],"model/gltf+json":["gltf"],"model/gltf-binary":["glb"],"model/iges":["igs","iges"],"model/mesh":["msh","mesh","silo"],"model/vnd.collada+xml":["dae"],"model/vnd.dwf":["dwf"],"model/vnd.gdl":["gdl"],"model/vnd.gtw":["gtw"],"model/vnd.mts":["mts"],"model/vnd.vtu":["vtu"],"model/vrml":["wrl","vrml"],"model/x3d+binary":["x3db","x3dbz"],"model/x3d+vrml":["x3dv","x3dvz"],"model/x3d+xml":["x3d","x3dz"],"text/cache-manifest":["appcache","manifest"],"text/calendar":["ics","ifb"],"text/coffeescript":["coffee","litcoffee"],"text/css":["css"],"text/csv":["csv"],"text/hjson":["hjson"],"text/html":["html","htm","shtml"],"text/jade":["jade"],"text/jsx":["jsx"],"text/less":["less"],"text/markdown":["markdown","md"],"text/mathml":["mml"],"text/n3":["n3"],"text/plain":["txt","text","conf","def","list","log","in","ini"],"text/prs.lines.tag":["dsc"],"text/richtext":["rtx"],"text/rtf":[],"text/sgml":["sgml","sgm"],"text/slim":["slim","slm"],"text/stylus":["stylus","styl"],"text/tab-separated-values":["tsv"],"text/troff":["t","tr","roff","man","me","ms"],"text/turtle":["ttl"],"text/uri-list":["uri","uris","urls"],"text/vcard":["vcard"],"text/vnd.curl":["curl"],"text/vnd.curl.dcurl":["dcurl"],"text/vnd.curl.mcurl":["mcurl"],"text/vnd.curl.scurl":["scurl"],"text/vnd.dvb.subtitle":["sub"],"text/vnd.fly":["fly"],"text/vnd.fmi.flexstor":["flx"],"text/vnd.graphviz":["gv"],"text/vnd.in3d.3dml":["3dml"],"text/vnd.in3d.spot":["spot"],"text/vnd.sun.j2me.app-descriptor":["jad"],"text/vnd.wap.wml":["wml"],"text/vnd.wap.wmlscript":["wmls"],"text/vtt":["vtt"],"text/x-asm":["s","asm"],"text/x-c":["c","cc","cxx","cpp","h","hh","dic"],"text/x-component":["htc"],"text/x-fortran":["f","for","f77","f90"],"text/x-handlebars-template":["hbs"],"text/x-java-source":["java"],"text/x-lua":["lua"],"text/x-markdown":["mkd"],"text/x-nfo":["nfo"],"text/x-opml":["opml"],"text/x-org":[],"text/x-pascal":["p","pas"],"text/x-processing":["pde"],"text/x-sass":["sass"],"text/x-scss":["scss"],"text/x-setext":["etx"],"text/x-sfv":["sfv"],"text/x-suse-ymp":["ymp"],"text/x-uuencode":["uu"],"text/x-vcalendar":["vcs"],"text/x-vcard":["vcf"],"text/xml":[],"text/yaml":["yaml","yml"],"video/3gpp":["3gp","3gpp"],"video/3gpp2":["3g2"],"video/h261":["h261"],"video/h263":["h263"],"video/h264":["h264"],"video/jpeg":["jpgv"],"video/jpm":["jpgm"],"video/mj2":["mj2","mjp2"],"video/mp2t":["ts"],"video/mp4":["mp4","mp4v","mpg4"],"video/mpeg":["mpeg","mpg","mpe","m1v","m2v"],"video/ogg":["ogv"],"video/quicktime":["qt","mov"],"video/vnd.dece.hd":["uvh","uvvh"],"video/vnd.dece.mobile":["uvm","uvvm"],"video/vnd.dece.pd":["uvp","uvvp"],"video/vnd.dece.sd":["uvs","uvvs"],"video/vnd.dece.video":["uvv","uvvv"],"video/vnd.dvb.file":["dvb"],"video/vnd.fvt":["fvt"],"video/vnd.mpegurl":["mxu","m4u"],"video/vnd.ms-playready.media.pyv":["pyv"],"video/vnd.uvvu.mp4":["uvu","uvvu"],"video/vnd.vivo":["viv"],"video/webm":["webm"],"video/x-f4v":["f4v"],"video/x-fli":["fli"],"video/x-flv":["flv"],"video/x-m4v":["m4v"],"video/x-matroska":["mkv","mk3d","mks"],"video/x-mng":["mng"],"video/x-ms-asf":["asf","asx"],"video/x-ms-vob":["vob"],"video/x-ms-wm":["wm"],"video/x-ms-wmv":["wmv"],"video/x-ms-wmx":["wmx"],"video/x-ms-wvx":["wvx"],"video/x-msvideo":["avi"],"video/x-sgi-movie":["movie"],"video/x-smv":["smv"],"x-conference/x-cooltalk":["ice"]}});var TU=$((tNe,kU)=>{var eNe=require("path"),voe=require("fs");function Qc(){this.types=Object.create(null),this.extensions=Object.create(null)}Qc.prototype.define=function(t){for(var e in t){for(var r=t[e],n=0;n{var eu=1e3,tu=eu*60,ru=tu*60,pa=ru*24,yoe=pa*7,_oe=pa*365.25;$U.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return boe(t);if(r==="number"&&isFinite(t))return e.long?xoe(t):Soe(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function boe(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*_oe;case"weeks":case"week":case"w":return r*yoe;case"days":case"day":case"d":return r*pa;case"hours":case"hour":case"hrs":case"hr":case"h":return r*ru;case"minutes":case"minute":case"mins":case"min":case"m":return r*tu;case"seconds":case"second":case"secs":case"sec":case"s":return r*eu;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function Soe(t){var e=Math.abs(t);return e>=pa?Math.round(t/pa)+"d":e>=ru?Math.round(t/ru)+"h":e>=tu?Math.round(t/tu)+"m":e>=eu?Math.round(t/eu)+"s":t+"ms"}function xoe(t){var e=Math.abs(t);return e>=pa?rv(t,e,pa,"day"):e>=ru?rv(t,e,ru,"hour"):e>=tu?rv(t,e,tu,"minute"):e>=eu?rv(t,e,eu,"second"):t+" ms"}function rv(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}});var xT=$((nNe,RU)=>{"use strict";RU.exports=woe;function woe(t,e,r){if(typeof e!="string")throw new TypeError("argument str must be a string");var n=e.indexOf("=");if(n===-1)return-2;var i=e.slice(n+1).split(","),s=[];s.type=e.slice(0,n);for(var o=0;ot-1&&(u=t-1),!(isNaN(c)||isNaN(u)||c>u||c<0)&&s.push({start:c,end:u})}return s.length<1?-1:r&&r.combine?Eoe(s):s}function Eoe(t){for(var e=t.map(koe).sort(Ioe),r=0,n=1;ns.end+1?e[++r]=i:i.end>s.end&&(s.end=i.end,s.index=Math.min(s.index,i.index))}e.length=r+1;var o=e.sort($oe).map(Toe);return o.type=t.type,o}function koe(t,e){return{start:t.start,end:t.end,index:e}}function Toe(t){return{start:t.start,end:t.end}}function $oe(t,e){return t.index-e.index}function Ioe(t,e){return t.start-e.start}});var ov=$((iNe,IT)=>{"use strict";var wT=ea(),Ht=Zn()("send"),fa=Hi()("send"),Roe=ek(),Ooe=fp(),PU=mp(),Coe=bT(),Poe=ST(),iv=require("fs"),kT=TU(),AU=IU(),Aoe=Yd(),Noe=xT(),yp=require("path"),Moe=Hd(),NU=require("stream"),Doe=require("util"),joe=yp.extname,MU=yp.join,ET=yp.normalize,$T=yp.resolve,nv=yp.sep,zoe=/^ *bytes=/,DU=3600*24*365*1e3,OU=/(?:^|[\\/])\.\.(?:[\\/]|$)/;IT.exports=Loe;IT.exports.mime=kT;function Loe(t,e,r){return new ft(t,e,r)}function ft(t,e,r){NU.call(this);var n=r||{};if(this.options=n,this.path=e,this.req=t,this._acceptRanges=n.acceptRanges!==void 0?!!n.acceptRanges:!0,this._cacheControl=n.cacheControl!==void 0?!!n.cacheControl:!0,this._etag=n.etag!==void 0?!!n.etag:!0,this._dotfiles=n.dotfiles!==void 0?n.dotfiles:"ignore",this._dotfiles!=="ignore"&&this._dotfiles!=="allow"&&this._dotfiles!=="deny")throw new TypeError('dotfiles option must be "allow", "deny", or "ignore"');this._hidden=!!n.hidden,n.hidden!==void 0&&fa("hidden: use dotfiles: '"+(this._hidden?"allow":"ignore")+"' instead"),n.dotfiles===void 0&&(this._dotfiles=void 0),this._extensions=n.extensions!==void 0?TT(n.extensions,"extensions option"):[],this._immutable=n.immutable!==void 0?!!n.immutable:!1,this._index=n.index!==void 0?TT(n.index,"index option"):["index.html"],this._lastModified=n.lastModified!==void 0?!!n.lastModified:!0,this._maxage=n.maxAge||n.maxage,this._maxage=typeof this._maxage=="string"?AU(this._maxage):Number(this._maxage),this._maxage=isNaN(this._maxage)?0:Math.min(Math.max(0,this._maxage),DU),this._root=n.root?$T(n.root):null,!this._root&&n.from&&this.from(n.from)}Doe.inherits(ft,NU);ft.prototype.etag=fa.function(function(e){return this._etag=!!e,Ht("etag %s",this._etag),this},"send.etag: pass etag as option");ft.prototype.hidden=fa.function(function(e){return this._hidden=!!e,this._dotfiles=void 0,Ht("hidden %s",this._hidden),this},"send.hidden: use dotfiles option");ft.prototype.index=fa.function(function(e){var r=e?TT(e,"paths argument"):[];return Ht("index %o",e),this._index=r,this},"send.index: pass index as option");ft.prototype.root=function(e){return this._root=$T(String(e)),Ht("root %s",this._root),this};ft.prototype.from=fa.function(ft.prototype.root,"send.from: pass root as option");ft.prototype.root=fa.function(ft.prototype.root,"send.root: pass root as option");ft.prototype.maxage=fa.function(function(e){return this._maxage=typeof e=="string"?AU(e):Number(e),this._maxage=isNaN(this._maxage)?0:Math.min(Math.max(0,this._maxage),DU),Ht("max-age %d",this._maxage),this},"send.maxage: pass maxAge as option");ft.prototype.error=function(e,r){if(zU(this,"error"))return this.emit("error",Hoe(e,r));var n=this.res,i=Moe.message[e]||String(e),s=jU("Error",PU(i));Uoe(n),r&&r.headers&&Voe(n,r.headers),n.statusCode=e,n.setHeader("Content-Type","text/html; charset=UTF-8"),n.setHeader("Content-Length",Buffer.byteLength(s)),n.setHeader("Content-Security-Policy","default-src 'none'"),n.setHeader("X-Content-Type-Options","nosniff"),n.end(s)};ft.prototype.hasTrailingSlash=function(){return this.path[this.path.length-1]==="/"};ft.prototype.isConditionalGET=function(){return this.req.headers["if-match"]||this.req.headers["if-unmodified-since"]||this.req.headers["if-none-match"]||this.req.headers["if-modified-since"]};ft.prototype.isPreconditionFailure=function(){var e=this.req,r=this.res,n=e.headers["if-match"];if(n){var i=r.getHeader("ETag");return!i||n!=="*"&&Woe(n).every(function(a){return a!==i&&a!=="W/"+i&&"W/"+a!==i})}var s=sv(e.headers["if-unmodified-since"]);if(!isNaN(s)){var o=sv(r.getHeader("Last-Modified"));return isNaN(o)||o>s}return!1};ft.prototype.removeContentHeaderFields=function(){var e=this.res;e.removeHeader("Content-Encoding"),e.removeHeader("Content-Language"),e.removeHeader("Content-Length"),e.removeHeader("Content-Range"),e.removeHeader("Content-Type")};ft.prototype.notModified=function(){var e=this.res;Ht("not modified"),this.removeContentHeaderFields(),e.statusCode=304,e.end()};ft.prototype.headersAlreadySent=function(){var e=new Error("Can't set headers after they are sent.");Ht("headers already sent"),this.error(500,e)};ft.prototype.isCachable=function(){var e=this.res.statusCode;return e>=200&&e<300||e===304};ft.prototype.onStatError=function(e){switch(e.code){case"ENAMETOOLONG":case"ENOENT":case"ENOTDIR":this.error(404,e);break;default:this.error(500,e);break}};ft.prototype.isFresh=function(){return Poe(this.req.headers,{etag:this.res.getHeader("ETag"),"last-modified":this.res.getHeader("Last-Modified")})};ft.prototype.isRangeFresh=function(){var e=this.req.headers["if-range"];if(!e)return!0;if(e.indexOf('"')!==-1){var r=this.res.getHeader("ETag");return!!(r&&e.indexOf(r)!==-1)}var n=this.res.getHeader("Last-Modified");return sv(n)<=sv(e)};ft.prototype.redirect=function(e){var r=this.res;if(zU(this,"directory")){this.emit("directory",r,e);return}if(this.hasTrailingSlash()){this.error(403);return}var n=Ooe(Foe(this.path+"/")),i=jU("Redirecting","Redirecting to "+PU(n));r.statusCode=301,r.setHeader("Content-Type","text/html; charset=UTF-8"),r.setHeader("Content-Length",Buffer.byteLength(i)),r.setHeader("Content-Security-Policy","default-src 'none'"),r.setHeader("X-Content-Type-Options","nosniff"),r.setHeader("Location",n),r.end(i)};ft.prototype.pipe=function(e){var r=this._root;this.res=e;var n=Zoe(this.path);if(n===-1)return this.error(400),e;if(~n.indexOf("\0"))return this.error(400),e;var i;if(r!==null){if(n&&(n=ET("."+nv+n)),OU.test(n))return Ht('malicious path "%s"',n),this.error(403),e;i=n.split(nv),n=ET(MU(r,n))}else{if(OU.test(n))return Ht('malicious path "%s"',n),this.error(403),e;i=ET(n).split(nv),n=$T(n)}if(qoe(i)){var s=this._dotfiles;switch(s===void 0&&(s=i[i.length-1][0]==="."?this._hidden?"allow":"ignore":"allow"),Ht('%s dotfile "%s"',s,n),s){case"allow":break;case"deny":return this.error(403),e;default:return this.error(404),e}}return this._index.length&&this.hasTrailingSlash()?(this.sendIndex(n),e):(this.sendFile(n),e)};ft.prototype.send=function(e,r){var n=r.size,i=this.options,s={},o=this.res,a=this.req,c=a.headers.range,u=i.start||0;if(Goe(o)){this.headersAlreadySent();return}if(Ht('pipe "%s"',e),this.setHeader(e,r),this.type(e),this.isConditionalGET()){if(this.isPreconditionFailure()){this.error(412);return}if(this.isCachable()&&this.isFresh()){this.notModified();return}}if(n=Math.max(0,n-u),i.end!==void 0){var l=i.end-u+1;n>l&&(n=l)}if(this._acceptRanges&&zoe.test(c)){if(c=Noe(n,c,{combine:!0}),this.isRangeFresh()||(Ht("range stale"),c=-2),c===-1)return Ht("range unsatisfiable"),o.setHeader("Content-Range",CU("bytes",n)),this.error(416,{headers:{"Content-Range":o.getHeader("Content-Range")}});c!==-2&&c.length===1&&(Ht("range %j",c),o.statusCode=206,o.setHeader("Content-Range",CU("bytes",n,c[0])),u+=c[0].start,n=c[0].end-c[0].start+1)}for(var d in i)s[d]=i[d];if(s.start=u,s.end=Math.max(u,u+n-1),o.setHeader("Content-Length",n),a.method==="HEAD"){o.end();return}this.stream(e,s)};ft.prototype.sendFile=function(e){var r=0,n=this;Ht('stat "%s"',e),iv.stat(e,function(o,a){if(o&&o.code==="ENOENT"&&!joe(e)&&e[e.length-1]!==nv)return i(o);if(o)return n.onStatError(o);if(a.isDirectory())return n.redirect(e);n.emit("file",e,a),n.send(e,a)});function i(s){if(n._extensions.length<=r)return s?n.onStatError(s):n.error(404);var o=e+"."+n._extensions[r++];Ht('stat "%s"',o),iv.stat(o,function(a,c){if(a)return i(a);if(c.isDirectory())return i();n.emit("file",o,c),n.send(o,c)})}};ft.prototype.sendIndex=function(e){var r=-1,n=this;function i(s){if(++r>=n._index.length)return s?n.onStatError(s):n.error(404);var o=MU(e,n._index[r]);Ht('stat "%s"',o),iv.stat(o,function(a,c){if(a)return i(a);if(c.isDirectory())return i();n.emit("file",o,c),n.send(o,c)})}i()};ft.prototype.stream=function(e,r){var n=this,i=this.res,s=iv.createReadStream(e,r);this.emit("stream",s),s.pipe(i);function o(){Roe(s,!0)}Aoe(i,o),s.on("error",function(c){o(),n.onStatError(c)}),s.on("end",function(){n.emit("end")})};ft.prototype.type=function(e){var r=this.res;if(!r.getHeader("Content-Type")){var n=kT.lookup(e);if(!n){Ht("no content-type");return}var i=kT.charsets.lookup(n);Ht("content-type %s",n),r.setHeader("Content-Type",n+(i?"; charset="+i:""))}};ft.prototype.setHeader=function(e,r){var n=this.res;if(this.emit("headers",n,e,r),this._acceptRanges&&!n.getHeader("Accept-Ranges")&&(Ht("accept ranges"),n.setHeader("Accept-Ranges","bytes")),this._cacheControl&&!n.getHeader("Cache-Control")){var i="public, max-age="+Math.floor(this._maxage/1e3);this._immutable&&(i+=", immutable"),Ht("cache-control %s",i),n.setHeader("Cache-Control",i)}if(this._lastModified&&!n.getHeader("Last-Modified")){var s=r.mtime.toUTCString();Ht("modified %s",s),n.setHeader("Last-Modified",s)}if(this._etag&&!n.getHeader("ETag")){var o=Coe(r);Ht("etag %s",o),n.setHeader("ETag",o)}};function Uoe(t){for(var e=Boe(t),r=0;r1?"/"+t.substr(e):t}function qoe(t){for(var e=0;e1&&r[0]===".")return!0}return!1}function CU(t,e,r){return t+" "+(r?r.start+"-"+r.end:"*")+"/"+e}function jU(t,e){return` +`}JL.exports=$se;function $se(t,e,r){var n=r||{},i=n.env||process.env.NODE_ENV||"development",s=n.onerror;return function(o){var a,c,u;if(!o&&WL(e)){RT("cannot 404 after headers sent");return}if(o?(u=Ose(o),u===void 0?u=Pse(e):a=Ise(o),c=Rse(o,u,i)):(u=404,c="Cannot "+t.method+" "+yse(Cse(t))),RT("default %s",u),o&&s&&Ese(s,o,t,e),WL(e)){RT("cannot %d after headers sent",u),t.socket&&t.socket.destroy();return}Ase(t,e,u,a,c)}}function Ise(t){if(!(!t.headers||typeof t.headers!="object")){for(var e=Object.create(null),r=Object.keys(t.headers),n=0;n=400&&t.status<600)return t.status;if(typeof t.statusCode=="number"&&t.statusCode>=400&&t.statusCode<600)return t.statusCode}function Cse(t){try{return bse.original(t).pathname}catch{return"resource"}}function Pse(t){var e=t.statusCode;return(typeof e!="number"||e<400||e>599)&&(e=500),e}function WL(t){return typeof t.headersSent!="boolean"?!!t._header:t.headersSent}function Ase(t,e,r,n,i){function s(){var o=Tse(i);if(e.statusCode=r,t.httpVersionMajor<2&&(e.statusMessage=KL.message[r]),e.removeHeader("Content-Encoding"),e.removeHeader("Content-Language"),e.removeHeader("Content-Range"),Nse(e,n),e.setHeader("Content-Security-Policy","default-src 'none'"),e.setHeader("X-Content-Type-Options","nosniff"),e.setHeader("Content-Type","text/html; charset=utf-8"),e.setHeader("Content-Length",Buffer.byteLength(o,"utf8")),t.method==="HEAD"){e.end();return}e.end(o,"utf8")}if(kse(t)){s();return}Sse(t),VL(t,s),t.resume()}function Nse(t,e){if(e)for(var r=Object.keys(e),n=0;n{"use strict";eU.exports=Mse;function YL(t,e,r){for(var n=0;n0&&Array.isArray(i)?YL(i,e,r-1):e.push(i)}return e}function QL(t,e){for(var r=0;r{nU.exports=rU;var tU=/\\.|\((?:\?<(.*?)>)?(?!\?)/g;function rU(t,e,r){r=r||{},e=e||[];var n=r.strict,i=r.end!==!1,s=r.sensitive?"":"i",o=r.lookahead!==!1,a=0,c=e.length,u=0,l=0,d=0,p="",f;if(t instanceof RegExp){for(;f=tU.exec(t.source);)f[0][0]!=="\\"&&e.push({name:f[1]||l++,optional:!1,offset:f.index});return t}if(Array.isArray(t))return t=t.map(function(m){return rU(m,e,r).source}),new RegExp(t.join("|"),s);if(typeof t!="string")throw new TypeError("path must be a string, array of strings, or regular expression");for(t=t.replace(/\\.|(\/)?(\.)?:(\w+)(\(.*?\))?(\*)?(\?)?|[.*]|\/\(/g,function(m,h,g,v,y,b,S,x){if(m[0]==="\\")return p+=m,d+=2,m;if(m===".")return p+="\\.",a+=1,d+=1,"\\.";if(h||g?p="":p+=t.slice(d,x),d=x+m.length,m==="*")return a+=3,"(.*)";if(m==="/(")return p+="/",a+=2,"/(?:";h=h||"",g=g?"\\.":"",S=S||"",y=y?y.replace(/\\.|\*/,function(E){return E==="*"?"(.*)":E}):p?"((?:(?!/|"+p+").)+?)":"([^/"+g+"]+?)",e.push({name:v,optional:!!S,offset:x+a});var w="(?:"+g+h+y+(b?"((?:[/"+g+"].+?)?)":"")+")"+S;return a+=w.length-m.length,w});f=tU.exec(t);)f[0][0]!=="\\"&&((c+u===e.length||e[c+u].offset>f.index)&&e.splice(c+u,0,{name:l++,optional:!1,offset:f.index}),u++);return t+=n?"":t[t.length-1]==="/"?"?":"/?",i?t+="$":t[t.length-1]!=="/"&&(t+=o?"(?=/|$)":"(?:/|$)"),new RegExp("^"+t,s)}});var OT=$((ONe,oU)=>{"use strict";var Dse=iU(),jse=Vn()("express:router:layer"),zse=Object.prototype.hasOwnProperty;oU.exports=lu;function lu(t,e,r){if(!(this instanceof lu))return new lu(t,e,r);jse("new %o",t);var n=e||{};this.handle=r,this.name=r.name||"",this.params=void 0,this.path=void 0,this.regexp=Dse(t,this.keys=[],n),this.regexp.fast_star=t==="*",this.regexp.fast_slash=t==="/"&&n.end===!1}lu.prototype.handle_error=function(e,r,n,i){var s=this.handle;if(s.length!==4)return i(e);try{s(e,r,n,i)}catch(o){i(o)}};lu.prototype.handle_request=function(e,r,n){var i=this.handle;if(i.length>3)return n();try{i(e,r,n)}catch(s){n(s)}};lu.prototype.match=function(e){var r;if(e!=null){if(this.regexp.fast_slash)return this.params={},this.path="",!0;if(this.regexp.fast_star)return this.params={0:sU(e)},this.path=e,!0;r=this.regexp.exec(e)}if(!r)return this.params=void 0,this.path=void 0,!1;this.params={},this.path=r[0];for(var n=this.keys,i=this.params,s=1;s{"use strict";var aU=require("http");cU.exports=Lse()||Use();function Lse(){return aU.METHODS&&aU.METHODS.map(function(e){return e.toLowerCase()})}function Use(){return["get","post","put","head","delete","options","trace","copy","lock","mkcol","move","purge","propfind","proppatch","unlock","report","mkactivity","checkout","merge","m-search","notify","subscribe","unsubscribe","patch","search","connect"]}});var CT=$((PNe,mU)=>{"use strict";var uU=Vn()("express:router:route"),lU=Op(),dU=OT(),Fse=av(),pU=Array.prototype.slice,fU=Object.prototype.toString;mU.exports=du;function du(t){this.path=t,this.stack=[],uU("new %o",t),this.methods={}}du.prototype._handles_method=function(e){if(this.methods._all)return!0;var r=typeof e=="string"?e.toLowerCase():e;return r==="head"&&!this.methods.head&&(r="get"),!!this.methods[r]};du.prototype._options=function(){var e=Object.keys(this.methods);this.methods.get&&!this.methods.head&&e.push("head");for(var r=0;r100)return setImmediate(c,u);var l=s[i++];if(!l)return n(u);l.method&&l.method!==a?c(u):u?l.handle_error(u,e,r,c):l.handle_request(e,r,c),o=0}};du.prototype.all=function(){for(var e=lU(pU.call(arguments)),r=0;r{hU=gU.exports=function(t,e){if(t&&e)for(var r in e)t[r]=e[r];return t}});var AT=$((ANe,bU)=>{"use strict";var qse=CT(),yU=OT(),Hse=av(),PT=Cp(),cv=Vn()("express:router"),vU=Vi()("express"),Zse=Op(),Bse=uu(),Gse=tp(),Wse=/^\[object (\S+)\]$/,_U=Array.prototype.slice,Vse=Object.prototype.toString,_a=bU.exports=function(t){var e=t||{};function r(n,i,s){r.handle(n,i,s)}return Gse(r,_a),r.params={},r._params=[],r.caseSensitive=e.caseSensitive,r.mergeParams=e.mergeParams,r.strict=e.strict,r.stack=[],r};_a.param=function(e,r){if(typeof e=="function"){vU("router.param(fn): Refactor to use path params"),this._params.push(e);return}var n=this._params,i=n.length,s;e[0]===":"&&(vU("router.param("+JSON.stringify(e)+", fn): Use router.param("+JSON.stringify(e.slice(1))+", fn) instead"),e=e.slice(1));for(var o=0;o=p.length){setImmediate(h,b);return}if(++u>100)return setImmediate(g,y);var S=Jse(e);if(S==null)return h(b);for(var x,w,E;w!==!0&&s=a.length)return s();if(l=0,d=a[c++],u=d.name,p=n.params[u],f=o[u],m=r[u],p===void 0||!f)return h();if(m&&(m.match===p||m.error&&m.error!=="route"))return n.params[u]=m.value,h(m.error);r[u]=m={error:null,match:p,value:p},g()}function g(v){var y=f[l++];if(m.value=n.params[d.name],v){m.error=v,h(v);return}if(!y)return h();try{y(n,i,g,p,d.name)}catch(b){g(b)}}h()};_a.use=function(e){var r=0,n="/";if(typeof e!="function"){for(var i=e;Array.isArray(i)&&i.length!==0;)i=i[0];typeof i!="function"&&(r=1,n=e)}var s=Zse(_U.call(arguments,r));if(s.length===0)throw new TypeError("Router.use() requires a middleware function");for(var o=0;o");var a=new yU(n,{sensitive:this.caseSensitive,strict:!1,end:!1},e);a.route=void 0,this.stack.push(a)}return this};_a.route=function(e){var r=new qse(e),n=new yU(e,{sensitive:this.caseSensitive,strict:this.strict,end:!0},r.dispatch.bind(r));return n.route=r,this.stack.push(n),r};Hse.concat("all").forEach(function(t){_a[t]=function(e){var r=this.route(e);return r[t].apply(r,_U.call(arguments,1)),this}});function Kse(t,e){for(var r=0;r=0;n--)t[n+i]=t[n],n{"use strict";var SU=tp();xU.init=function(t){return function(r,n,i){t.enabled("x-powered-by")&&n.setHeader("X-Powered-By","Express"),r.res=n,n.req=r,r.next=i,SU(r,t.request),SU(n,t.response),n.locals=n.locals||Object.create(null),i()}}});var NT=$((MNe,EU)=>{"use strict";var ioe=Cp(),soe=uu(),ooe=nv();EU.exports=function(e){var r=ioe({},e),n=ooe.parse;return typeof e=="function"&&(n=e,r=void 0),r!==void 0&&r.allowPrototypes===void 0&&(r.allowPrototypes=!0),function(s,o,a){if(!s.query){var c=soe(s).query;s.query=n(c,r)}a()}}});var RU=$((DNe,IU)=>{"use strict";var uv=Vn()("express:view"),Pp=require("path"),aoe=require("fs"),coe=Pp.dirname,$U=Pp.basename,uoe=Pp.extname,kU=Pp.join,loe=Pp.resolve;IU.exports=lv;function lv(t,e){var r=e||{};if(this.defaultEngine=r.defaultEngine,this.ext=uoe(t),this.name=t,this.root=r.root,!this.ext&&!this.defaultEngine)throw new Error("No default engine was specified and no extension was provided.");var n=t;if(this.ext||(this.ext=this.defaultEngine[0]!=="."?"."+this.defaultEngine:this.defaultEngine,n+=this.ext),!r.engines[this.ext]){var i=this.ext.slice(1);uv('require "%s"',i);var s=require(i).__express;if(typeof s!="function")throw new Error('Module "'+i+'" does not provide a view engine.');r.engines[this.ext]=s}this.engine=r.engines[this.ext],this.path=this.lookup(n)}lv.prototype.lookup=function(e){var r,n=[].concat(this.root);uv('lookup "%s"',e);for(var i=0;i{var dv=require("buffer"),ts=dv.Buffer;function OU(t,e){for(var r in t)e[r]=t[r]}ts.from&&ts.alloc&&ts.allocUnsafe&&ts.allocUnsafeSlow?CU.exports=dv:(OU(dv,MT),MT.Buffer=ba);function ba(t,e,r){return ts(t,e,r)}ba.prototype=Object.create(ts.prototype);OU(ts,ba);ba.from=function(t,e,r){if(typeof t=="number")throw new TypeError("Argument must not be a number");return ts(t,e,r)};ba.alloc=function(t,e,r){if(typeof t!="number")throw new TypeError("Argument must be a number");var n=ts(t);return e!==void 0?typeof r=="string"?n.fill(e,r):n.fill(e):n.fill(0),n};ba.allocUnsafe=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return ts(t)};ba.allocUnsafeSlow=function(t){if(typeof t!="number")throw new TypeError("Argument must be a number");return dv.SlowBuffer(t)}});var jT=$((jNe,DT)=>{"use strict";DT.exports=Soe;DT.exports.parse=koe;var PU=require("path").basename,doe=pv().Buffer,poe=/[\x00-\x20"'()*,/:;<=>?@[\\\]{}\x7f]/g,foe=/%[0-9A-Fa-f]{2}/,moe=/%([0-9A-Fa-f]{2})/g,NU=/[^\x20-\x7e\xa0-\xff]/g,hoe=/\\([\u0000-\u007f])/g,goe=/([\\"])/g,AU=/;[\x09\x20]*([!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*=[\x09\x20]*("(?:[\x20!\x23-\x5b\x5d-\x7e\x80-\xff]|\\[\x20-\x7e])*"|[!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*/g,voe=/^[\x20-\x7e\x80-\xff]+$/,yoe=/^[!#$%&'*+.0-9A-Z^_`a-z|~-]+$/,_oe=/^([A-Za-z0-9!#$%&+\-^_`{}~]+)'(?:[A-Za-z]{2,3}(?:-[A-Za-z]{3}){0,3}|[A-Za-z]{4,8}|)'((?:%[0-9A-Fa-f]{2}|[A-Za-z0-9!#$&+.^_`|~-])+)$/,boe=/^([!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*(?:$|;)/;function Soe(t,e){var r=e||{},n=r.type||"attachment",i=xoe(t,r.fallback);return woe(new DU(n,i))}function xoe(t,e){if(t!==void 0){var r={};if(typeof t!="string")throw new TypeError("filename must be a string");if(e===void 0&&(e=!0),typeof e!="string"&&typeof e!="boolean")throw new TypeError("fallback must be a string or boolean");if(typeof e=="string"&&NU.test(e))throw new TypeError("fallback must be ISO-8859-1 string");var n=PU(t),i=voe.test(n),s=typeof e!="string"?e&&MU(n):PU(e),o=typeof s=="string"&&s!==n;return(o||!i||foe.test(n))&&(r["filename*"]=n),(i||o)&&(r.filename=o?s:n),r}}function woe(t){var e=t.parameters,r=t.type;if(!r||typeof r!="string"||!yoe.test(r))throw new TypeError("invalid type");var n=String(r).toLowerCase();if(e&&typeof e=="object")for(var i,s=Object.keys(e).sort(),o=0;o{"use strict";LU.exports=Poe;var Ooe=require("crypto"),jU=require("fs").Stats,zU=Object.prototype.toString;function Coe(t){if(t.length===0)return'"0-2jmj7l5rSw0yVb/vlWAYkK/YBwk"';var e=Ooe.createHash("sha1").update(t,"utf8").digest("base64").substring(0,27),r=typeof t=="string"?Buffer.byteLength(t,"utf8"):t.length;return'"'+r.toString(16)+"-"+e+'"'}function Poe(t,e){if(t==null)throw new TypeError("argument entity is required");var r=Aoe(t),n=e&&typeof e.weak=="boolean"?e.weak:r;if(!r&&typeof t!="string"&&!Buffer.isBuffer(t))throw new TypeError("argument entity must be string, Buffer, or fs.Stats");var i=r?Noe(t):Coe(t);return n?"W/"+i:i}function Aoe(t){return typeof jU=="function"&&t instanceof jU?!0:t&&typeof t=="object"&&"ctime"in t&&zU.call(t.ctime)==="[object Date]"&&"mtime"in t&&zU.call(t.mtime)==="[object Date]"&&"ino"in t&&typeof t.ino=="number"&&"size"in t&&typeof t.size=="number"}function Noe(t){var e=t.mtime.getTime().toString(16),r=t.size.toString(16);return'"'+r+"-"+e+'"'}});var LT=$((LNe,FU)=>{"use strict";var Moe=/(?:^|,)\s*?no-cache\s*?(?:,|$)/;FU.exports=Doe;function Doe(t,e){var r=t["if-modified-since"],n=t["if-none-match"];if(!r&&!n)return!1;var i=t["cache-control"];if(i&&Moe.test(i))return!1;if(n&&n!=="*"){var s=e.etag;if(!s)return!1;for(var o=!0,a=joe(n),c=0;c{zoe.exports={"application/andrew-inset":["ez"],"application/applixware":["aw"],"application/atom+xml":["atom"],"application/atomcat+xml":["atomcat"],"application/atomsvc+xml":["atomsvc"],"application/bdoc":["bdoc"],"application/ccxml+xml":["ccxml"],"application/cdmi-capability":["cdmia"],"application/cdmi-container":["cdmic"],"application/cdmi-domain":["cdmid"],"application/cdmi-object":["cdmio"],"application/cdmi-queue":["cdmiq"],"application/cu-seeme":["cu"],"application/dash+xml":["mpd"],"application/davmount+xml":["davmount"],"application/docbook+xml":["dbk"],"application/dssc+der":["dssc"],"application/dssc+xml":["xdssc"],"application/ecmascript":["ecma"],"application/emma+xml":["emma"],"application/epub+zip":["epub"],"application/exi":["exi"],"application/font-tdpfr":["pfr"],"application/font-woff":[],"application/font-woff2":[],"application/geo+json":["geojson"],"application/gml+xml":["gml"],"application/gpx+xml":["gpx"],"application/gxf":["gxf"],"application/gzip":["gz"],"application/hyperstudio":["stk"],"application/inkml+xml":["ink","inkml"],"application/ipfix":["ipfix"],"application/java-archive":["jar","war","ear"],"application/java-serialized-object":["ser"],"application/java-vm":["class"],"application/javascript":["js","mjs"],"application/json":["json","map"],"application/json5":["json5"],"application/jsonml+json":["jsonml"],"application/ld+json":["jsonld"],"application/lost+xml":["lostxml"],"application/mac-binhex40":["hqx"],"application/mac-compactpro":["cpt"],"application/mads+xml":["mads"],"application/manifest+json":["webmanifest"],"application/marc":["mrc"],"application/marcxml+xml":["mrcx"],"application/mathematica":["ma","nb","mb"],"application/mathml+xml":["mathml"],"application/mbox":["mbox"],"application/mediaservercontrol+xml":["mscml"],"application/metalink+xml":["metalink"],"application/metalink4+xml":["meta4"],"application/mets+xml":["mets"],"application/mods+xml":["mods"],"application/mp21":["m21","mp21"],"application/mp4":["mp4s","m4p"],"application/msword":["doc","dot"],"application/mxf":["mxf"],"application/octet-stream":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"],"application/oda":["oda"],"application/oebps-package+xml":["opf"],"application/ogg":["ogx"],"application/omdoc+xml":["omdoc"],"application/onenote":["onetoc","onetoc2","onetmp","onepkg"],"application/oxps":["oxps"],"application/patch-ops-error+xml":["xer"],"application/pdf":["pdf"],"application/pgp-encrypted":["pgp"],"application/pgp-signature":["asc","sig"],"application/pics-rules":["prf"],"application/pkcs10":["p10"],"application/pkcs7-mime":["p7m","p7c"],"application/pkcs7-signature":["p7s"],"application/pkcs8":["p8"],"application/pkix-attr-cert":["ac"],"application/pkix-cert":["cer"],"application/pkix-crl":["crl"],"application/pkix-pkipath":["pkipath"],"application/pkixcmp":["pki"],"application/pls+xml":["pls"],"application/postscript":["ai","eps","ps"],"application/prs.cww":["cww"],"application/pskc+xml":["pskcxml"],"application/raml+yaml":["raml"],"application/rdf+xml":["rdf"],"application/reginfo+xml":["rif"],"application/relax-ng-compact-syntax":["rnc"],"application/resource-lists+xml":["rl"],"application/resource-lists-diff+xml":["rld"],"application/rls-services+xml":["rs"],"application/rpki-ghostbusters":["gbr"],"application/rpki-manifest":["mft"],"application/rpki-roa":["roa"],"application/rsd+xml":["rsd"],"application/rss+xml":["rss"],"application/rtf":["rtf"],"application/sbml+xml":["sbml"],"application/scvp-cv-request":["scq"],"application/scvp-cv-response":["scs"],"application/scvp-vp-request":["spq"],"application/scvp-vp-response":["spp"],"application/sdp":["sdp"],"application/set-payment-initiation":["setpay"],"application/set-registration-initiation":["setreg"],"application/shf+xml":["shf"],"application/smil+xml":["smi","smil"],"application/sparql-query":["rq"],"application/sparql-results+xml":["srx"],"application/srgs":["gram"],"application/srgs+xml":["grxml"],"application/sru+xml":["sru"],"application/ssdl+xml":["ssdl"],"application/ssml+xml":["ssml"],"application/tei+xml":["tei","teicorpus"],"application/thraud+xml":["tfi"],"application/timestamped-data":["tsd"],"application/vnd.3gpp.pic-bw-large":["plb"],"application/vnd.3gpp.pic-bw-small":["psb"],"application/vnd.3gpp.pic-bw-var":["pvb"],"application/vnd.3gpp2.tcap":["tcap"],"application/vnd.3m.post-it-notes":["pwn"],"application/vnd.accpac.simply.aso":["aso"],"application/vnd.accpac.simply.imp":["imp"],"application/vnd.acucobol":["acu"],"application/vnd.acucorp":["atc","acutc"],"application/vnd.adobe.air-application-installer-package+zip":["air"],"application/vnd.adobe.formscentral.fcdt":["fcdt"],"application/vnd.adobe.fxp":["fxp","fxpl"],"application/vnd.adobe.xdp+xml":["xdp"],"application/vnd.adobe.xfdf":["xfdf"],"application/vnd.ahead.space":["ahead"],"application/vnd.airzip.filesecure.azf":["azf"],"application/vnd.airzip.filesecure.azs":["azs"],"application/vnd.amazon.ebook":["azw"],"application/vnd.americandynamics.acc":["acc"],"application/vnd.amiga.ami":["ami"],"application/vnd.android.package-archive":["apk"],"application/vnd.anser-web-certificate-issue-initiation":["cii"],"application/vnd.anser-web-funds-transfer-initiation":["fti"],"application/vnd.antix.game-component":["atx"],"application/vnd.apple.installer+xml":["mpkg"],"application/vnd.apple.mpegurl":["m3u8"],"application/vnd.apple.pkpass":["pkpass"],"application/vnd.aristanetworks.swi":["swi"],"application/vnd.astraea-software.iota":["iota"],"application/vnd.audiograph":["aep"],"application/vnd.blueice.multipass":["mpm"],"application/vnd.bmi":["bmi"],"application/vnd.businessobjects":["rep"],"application/vnd.chemdraw+xml":["cdxml"],"application/vnd.chipnuts.karaoke-mmd":["mmd"],"application/vnd.cinderella":["cdy"],"application/vnd.claymore":["cla"],"application/vnd.cloanto.rp9":["rp9"],"application/vnd.clonk.c4group":["c4g","c4d","c4f","c4p","c4u"],"application/vnd.cluetrust.cartomobile-config":["c11amc"],"application/vnd.cluetrust.cartomobile-config-pkg":["c11amz"],"application/vnd.commonspace":["csp"],"application/vnd.contact.cmsg":["cdbcmsg"],"application/vnd.cosmocaller":["cmc"],"application/vnd.crick.clicker":["clkx"],"application/vnd.crick.clicker.keyboard":["clkk"],"application/vnd.crick.clicker.palette":["clkp"],"application/vnd.crick.clicker.template":["clkt"],"application/vnd.crick.clicker.wordbank":["clkw"],"application/vnd.criticaltools.wbs+xml":["wbs"],"application/vnd.ctc-posml":["pml"],"application/vnd.cups-ppd":["ppd"],"application/vnd.curl.car":["car"],"application/vnd.curl.pcurl":["pcurl"],"application/vnd.dart":["dart"],"application/vnd.data-vision.rdz":["rdz"],"application/vnd.dece.data":["uvf","uvvf","uvd","uvvd"],"application/vnd.dece.ttml+xml":["uvt","uvvt"],"application/vnd.dece.unspecified":["uvx","uvvx"],"application/vnd.dece.zip":["uvz","uvvz"],"application/vnd.denovo.fcselayout-link":["fe_launch"],"application/vnd.dna":["dna"],"application/vnd.dolby.mlp":["mlp"],"application/vnd.dpgraph":["dpg"],"application/vnd.dreamfactory":["dfac"],"application/vnd.ds-keypoint":["kpxx"],"application/vnd.dvb.ait":["ait"],"application/vnd.dvb.service":["svc"],"application/vnd.dynageo":["geo"],"application/vnd.ecowin.chart":["mag"],"application/vnd.enliven":["nml"],"application/vnd.epson.esf":["esf"],"application/vnd.epson.msf":["msf"],"application/vnd.epson.quickanime":["qam"],"application/vnd.epson.salt":["slt"],"application/vnd.epson.ssf":["ssf"],"application/vnd.eszigno3+xml":["es3","et3"],"application/vnd.ezpix-album":["ez2"],"application/vnd.ezpix-package":["ez3"],"application/vnd.fdf":["fdf"],"application/vnd.fdsn.mseed":["mseed"],"application/vnd.fdsn.seed":["seed","dataless"],"application/vnd.flographit":["gph"],"application/vnd.fluxtime.clip":["ftc"],"application/vnd.framemaker":["fm","frame","maker","book"],"application/vnd.frogans.fnc":["fnc"],"application/vnd.frogans.ltf":["ltf"],"application/vnd.fsc.weblaunch":["fsc"],"application/vnd.fujitsu.oasys":["oas"],"application/vnd.fujitsu.oasys2":["oa2"],"application/vnd.fujitsu.oasys3":["oa3"],"application/vnd.fujitsu.oasysgp":["fg5"],"application/vnd.fujitsu.oasysprs":["bh2"],"application/vnd.fujixerox.ddd":["ddd"],"application/vnd.fujixerox.docuworks":["xdw"],"application/vnd.fujixerox.docuworks.binder":["xbd"],"application/vnd.fuzzysheet":["fzs"],"application/vnd.genomatix.tuxedo":["txd"],"application/vnd.geogebra.file":["ggb"],"application/vnd.geogebra.tool":["ggt"],"application/vnd.geometry-explorer":["gex","gre"],"application/vnd.geonext":["gxt"],"application/vnd.geoplan":["g2w"],"application/vnd.geospace":["g3w"],"application/vnd.gmx":["gmx"],"application/vnd.google-apps.document":["gdoc"],"application/vnd.google-apps.presentation":["gslides"],"application/vnd.google-apps.spreadsheet":["gsheet"],"application/vnd.google-earth.kml+xml":["kml"],"application/vnd.google-earth.kmz":["kmz"],"application/vnd.grafeq":["gqf","gqs"],"application/vnd.groove-account":["gac"],"application/vnd.groove-help":["ghf"],"application/vnd.groove-identity-message":["gim"],"application/vnd.groove-injector":["grv"],"application/vnd.groove-tool-message":["gtm"],"application/vnd.groove-tool-template":["tpl"],"application/vnd.groove-vcard":["vcg"],"application/vnd.hal+xml":["hal"],"application/vnd.handheld-entertainment+xml":["zmm"],"application/vnd.hbci":["hbci"],"application/vnd.hhe.lesson-player":["les"],"application/vnd.hp-hpgl":["hpgl"],"application/vnd.hp-hpid":["hpid"],"application/vnd.hp-hps":["hps"],"application/vnd.hp-jlyt":["jlt"],"application/vnd.hp-pcl":["pcl"],"application/vnd.hp-pclxl":["pclxl"],"application/vnd.hydrostatix.sof-data":["sfd-hdstx"],"application/vnd.ibm.minipay":["mpy"],"application/vnd.ibm.modcap":["afp","listafp","list3820"],"application/vnd.ibm.rights-management":["irm"],"application/vnd.ibm.secure-container":["sc"],"application/vnd.iccprofile":["icc","icm"],"application/vnd.igloader":["igl"],"application/vnd.immervision-ivp":["ivp"],"application/vnd.immervision-ivu":["ivu"],"application/vnd.insors.igm":["igm"],"application/vnd.intercon.formnet":["xpw","xpx"],"application/vnd.intergeo":["i2g"],"application/vnd.intu.qbo":["qbo"],"application/vnd.intu.qfx":["qfx"],"application/vnd.ipunplugged.rcprofile":["rcprofile"],"application/vnd.irepository.package+xml":["irp"],"application/vnd.is-xpr":["xpr"],"application/vnd.isac.fcs":["fcs"],"application/vnd.jam":["jam"],"application/vnd.jcp.javame.midlet-rms":["rms"],"application/vnd.jisp":["jisp"],"application/vnd.joost.joda-archive":["joda"],"application/vnd.kahootz":["ktz","ktr"],"application/vnd.kde.karbon":["karbon"],"application/vnd.kde.kchart":["chrt"],"application/vnd.kde.kformula":["kfo"],"application/vnd.kde.kivio":["flw"],"application/vnd.kde.kontour":["kon"],"application/vnd.kde.kpresenter":["kpr","kpt"],"application/vnd.kde.kspread":["ksp"],"application/vnd.kde.kword":["kwd","kwt"],"application/vnd.kenameaapp":["htke"],"application/vnd.kidspiration":["kia"],"application/vnd.kinar":["kne","knp"],"application/vnd.koan":["skp","skd","skt","skm"],"application/vnd.kodak-descriptor":["sse"],"application/vnd.las.las+xml":["lasxml"],"application/vnd.llamagraphics.life-balance.desktop":["lbd"],"application/vnd.llamagraphics.life-balance.exchange+xml":["lbe"],"application/vnd.lotus-1-2-3":["123"],"application/vnd.lotus-approach":["apr"],"application/vnd.lotus-freelance":["pre"],"application/vnd.lotus-notes":["nsf"],"application/vnd.lotus-organizer":["org"],"application/vnd.lotus-screencam":["scm"],"application/vnd.lotus-wordpro":["lwp"],"application/vnd.macports.portpkg":["portpkg"],"application/vnd.mcd":["mcd"],"application/vnd.medcalcdata":["mc1"],"application/vnd.mediastation.cdkey":["cdkey"],"application/vnd.mfer":["mwf"],"application/vnd.mfmp":["mfm"],"application/vnd.micrografx.flo":["flo"],"application/vnd.micrografx.igx":["igx"],"application/vnd.mif":["mif"],"application/vnd.mobius.daf":["daf"],"application/vnd.mobius.dis":["dis"],"application/vnd.mobius.mbk":["mbk"],"application/vnd.mobius.mqy":["mqy"],"application/vnd.mobius.msl":["msl"],"application/vnd.mobius.plc":["plc"],"application/vnd.mobius.txf":["txf"],"application/vnd.mophun.application":["mpn"],"application/vnd.mophun.certificate":["mpc"],"application/vnd.mozilla.xul+xml":["xul"],"application/vnd.ms-artgalry":["cil"],"application/vnd.ms-cab-compressed":["cab"],"application/vnd.ms-excel":["xls","xlm","xla","xlc","xlt","xlw"],"application/vnd.ms-excel.addin.macroenabled.12":["xlam"],"application/vnd.ms-excel.sheet.binary.macroenabled.12":["xlsb"],"application/vnd.ms-excel.sheet.macroenabled.12":["xlsm"],"application/vnd.ms-excel.template.macroenabled.12":["xltm"],"application/vnd.ms-fontobject":["eot"],"application/vnd.ms-htmlhelp":["chm"],"application/vnd.ms-ims":["ims"],"application/vnd.ms-lrm":["lrm"],"application/vnd.ms-officetheme":["thmx"],"application/vnd.ms-outlook":["msg"],"application/vnd.ms-pki.seccat":["cat"],"application/vnd.ms-pki.stl":["stl"],"application/vnd.ms-powerpoint":["ppt","pps","pot"],"application/vnd.ms-powerpoint.addin.macroenabled.12":["ppam"],"application/vnd.ms-powerpoint.presentation.macroenabled.12":["pptm"],"application/vnd.ms-powerpoint.slide.macroenabled.12":["sldm"],"application/vnd.ms-powerpoint.slideshow.macroenabled.12":["ppsm"],"application/vnd.ms-powerpoint.template.macroenabled.12":["potm"],"application/vnd.ms-project":["mpp","mpt"],"application/vnd.ms-word.document.macroenabled.12":["docm"],"application/vnd.ms-word.template.macroenabled.12":["dotm"],"application/vnd.ms-works":["wps","wks","wcm","wdb"],"application/vnd.ms-wpl":["wpl"],"application/vnd.ms-xpsdocument":["xps"],"application/vnd.mseq":["mseq"],"application/vnd.musician":["mus"],"application/vnd.muvee.style":["msty"],"application/vnd.mynfc":["taglet"],"application/vnd.neurolanguage.nlu":["nlu"],"application/vnd.nitf":["ntf","nitf"],"application/vnd.noblenet-directory":["nnd"],"application/vnd.noblenet-sealer":["nns"],"application/vnd.noblenet-web":["nnw"],"application/vnd.nokia.n-gage.data":["ngdat"],"application/vnd.nokia.n-gage.symbian.install":["n-gage"],"application/vnd.nokia.radio-preset":["rpst"],"application/vnd.nokia.radio-presets":["rpss"],"application/vnd.novadigm.edm":["edm"],"application/vnd.novadigm.edx":["edx"],"application/vnd.novadigm.ext":["ext"],"application/vnd.oasis.opendocument.chart":["odc"],"application/vnd.oasis.opendocument.chart-template":["otc"],"application/vnd.oasis.opendocument.database":["odb"],"application/vnd.oasis.opendocument.formula":["odf"],"application/vnd.oasis.opendocument.formula-template":["odft"],"application/vnd.oasis.opendocument.graphics":["odg"],"application/vnd.oasis.opendocument.graphics-template":["otg"],"application/vnd.oasis.opendocument.image":["odi"],"application/vnd.oasis.opendocument.image-template":["oti"],"application/vnd.oasis.opendocument.presentation":["odp"],"application/vnd.oasis.opendocument.presentation-template":["otp"],"application/vnd.oasis.opendocument.spreadsheet":["ods"],"application/vnd.oasis.opendocument.spreadsheet-template":["ots"],"application/vnd.oasis.opendocument.text":["odt"],"application/vnd.oasis.opendocument.text-master":["odm"],"application/vnd.oasis.opendocument.text-template":["ott"],"application/vnd.oasis.opendocument.text-web":["oth"],"application/vnd.olpc-sugar":["xo"],"application/vnd.oma.dd2+xml":["dd2"],"application/vnd.openofficeorg.extension":["oxt"],"application/vnd.openxmlformats-officedocument.presentationml.presentation":["pptx"],"application/vnd.openxmlformats-officedocument.presentationml.slide":["sldx"],"application/vnd.openxmlformats-officedocument.presentationml.slideshow":["ppsx"],"application/vnd.openxmlformats-officedocument.presentationml.template":["potx"],"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":["xlsx"],"application/vnd.openxmlformats-officedocument.spreadsheetml.template":["xltx"],"application/vnd.openxmlformats-officedocument.wordprocessingml.document":["docx"],"application/vnd.openxmlformats-officedocument.wordprocessingml.template":["dotx"],"application/vnd.osgeo.mapguide.package":["mgp"],"application/vnd.osgi.dp":["dp"],"application/vnd.osgi.subsystem":["esa"],"application/vnd.palm":["pdb","pqa","oprc"],"application/vnd.pawaafile":["paw"],"application/vnd.pg.format":["str"],"application/vnd.pg.osasli":["ei6"],"application/vnd.picsel":["efif"],"application/vnd.pmi.widget":["wg"],"application/vnd.pocketlearn":["plf"],"application/vnd.powerbuilder6":["pbd"],"application/vnd.previewsystems.box":["box"],"application/vnd.proteus.magazine":["mgz"],"application/vnd.publishare-delta-tree":["qps"],"application/vnd.pvi.ptid1":["ptid"],"application/vnd.quark.quarkxpress":["qxd","qxt","qwd","qwt","qxl","qxb"],"application/vnd.realvnc.bed":["bed"],"application/vnd.recordare.musicxml":["mxl"],"application/vnd.recordare.musicxml+xml":["musicxml"],"application/vnd.rig.cryptonote":["cryptonote"],"application/vnd.rim.cod":["cod"],"application/vnd.rn-realmedia":["rm"],"application/vnd.rn-realmedia-vbr":["rmvb"],"application/vnd.route66.link66+xml":["link66"],"application/vnd.sailingtracker.track":["st"],"application/vnd.seemail":["see"],"application/vnd.sema":["sema"],"application/vnd.semd":["semd"],"application/vnd.semf":["semf"],"application/vnd.shana.informed.formdata":["ifm"],"application/vnd.shana.informed.formtemplate":["itp"],"application/vnd.shana.informed.interchange":["iif"],"application/vnd.shana.informed.package":["ipk"],"application/vnd.simtech-mindmapper":["twd","twds"],"application/vnd.smaf":["mmf"],"application/vnd.smart.teacher":["teacher"],"application/vnd.solent.sdkm+xml":["sdkm","sdkd"],"application/vnd.spotfire.dxp":["dxp"],"application/vnd.spotfire.sfs":["sfs"],"application/vnd.stardivision.calc":["sdc"],"application/vnd.stardivision.draw":["sda"],"application/vnd.stardivision.impress":["sdd"],"application/vnd.stardivision.math":["smf"],"application/vnd.stardivision.writer":["sdw","vor"],"application/vnd.stardivision.writer-global":["sgl"],"application/vnd.stepmania.package":["smzip"],"application/vnd.stepmania.stepchart":["sm"],"application/vnd.sun.wadl+xml":["wadl"],"application/vnd.sun.xml.calc":["sxc"],"application/vnd.sun.xml.calc.template":["stc"],"application/vnd.sun.xml.draw":["sxd"],"application/vnd.sun.xml.draw.template":["std"],"application/vnd.sun.xml.impress":["sxi"],"application/vnd.sun.xml.impress.template":["sti"],"application/vnd.sun.xml.math":["sxm"],"application/vnd.sun.xml.writer":["sxw"],"application/vnd.sun.xml.writer.global":["sxg"],"application/vnd.sun.xml.writer.template":["stw"],"application/vnd.sus-calendar":["sus","susp"],"application/vnd.svd":["svd"],"application/vnd.symbian.install":["sis","sisx"],"application/vnd.syncml+xml":["xsm"],"application/vnd.syncml.dm+wbxml":["bdm"],"application/vnd.syncml.dm+xml":["xdm"],"application/vnd.tao.intent-module-archive":["tao"],"application/vnd.tcpdump.pcap":["pcap","cap","dmp"],"application/vnd.tmobile-livetv":["tmo"],"application/vnd.trid.tpt":["tpt"],"application/vnd.triscape.mxs":["mxs"],"application/vnd.trueapp":["tra"],"application/vnd.ufdl":["ufd","ufdl"],"application/vnd.uiq.theme":["utz"],"application/vnd.umajin":["umj"],"application/vnd.unity":["unityweb"],"application/vnd.uoml+xml":["uoml"],"application/vnd.vcx":["vcx"],"application/vnd.visio":["vsd","vst","vss","vsw"],"application/vnd.visionary":["vis"],"application/vnd.vsf":["vsf"],"application/vnd.wap.wbxml":["wbxml"],"application/vnd.wap.wmlc":["wmlc"],"application/vnd.wap.wmlscriptc":["wmlsc"],"application/vnd.webturbo":["wtb"],"application/vnd.wolfram.player":["nbp"],"application/vnd.wordperfect":["wpd"],"application/vnd.wqd":["wqd"],"application/vnd.wt.stf":["stf"],"application/vnd.xara":["xar"],"application/vnd.xfdl":["xfdl"],"application/vnd.yamaha.hv-dic":["hvd"],"application/vnd.yamaha.hv-script":["hvs"],"application/vnd.yamaha.hv-voice":["hvp"],"application/vnd.yamaha.openscoreformat":["osf"],"application/vnd.yamaha.openscoreformat.osfpvg+xml":["osfpvg"],"application/vnd.yamaha.smaf-audio":["saf"],"application/vnd.yamaha.smaf-phrase":["spf"],"application/vnd.yellowriver-custom-menu":["cmp"],"application/vnd.zul":["zir","zirz"],"application/vnd.zzazz.deck+xml":["zaz"],"application/voicexml+xml":["vxml"],"application/wasm":["wasm"],"application/widget":["wgt"],"application/winhlp":["hlp"],"application/wsdl+xml":["wsdl"],"application/wspolicy+xml":["wspolicy"],"application/x-7z-compressed":["7z"],"application/x-abiword":["abw"],"application/x-ace-compressed":["ace"],"application/x-apple-diskimage":[],"application/x-arj":["arj"],"application/x-authorware-bin":["aab","x32","u32","vox"],"application/x-authorware-map":["aam"],"application/x-authorware-seg":["aas"],"application/x-bcpio":["bcpio"],"application/x-bdoc":[],"application/x-bittorrent":["torrent"],"application/x-blorb":["blb","blorb"],"application/x-bzip":["bz"],"application/x-bzip2":["bz2","boz"],"application/x-cbr":["cbr","cba","cbt","cbz","cb7"],"application/x-cdlink":["vcd"],"application/x-cfs-compressed":["cfs"],"application/x-chat":["chat"],"application/x-chess-pgn":["pgn"],"application/x-chrome-extension":["crx"],"application/x-cocoa":["cco"],"application/x-conference":["nsc"],"application/x-cpio":["cpio"],"application/x-csh":["csh"],"application/x-debian-package":["udeb"],"application/x-dgc-compressed":["dgc"],"application/x-director":["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"],"application/x-doom":["wad"],"application/x-dtbncx+xml":["ncx"],"application/x-dtbook+xml":["dtb"],"application/x-dtbresource+xml":["res"],"application/x-dvi":["dvi"],"application/x-envoy":["evy"],"application/x-eva":["eva"],"application/x-font-bdf":["bdf"],"application/x-font-ghostscript":["gsf"],"application/x-font-linux-psf":["psf"],"application/x-font-pcf":["pcf"],"application/x-font-snf":["snf"],"application/x-font-type1":["pfa","pfb","pfm","afm"],"application/x-freearc":["arc"],"application/x-futuresplash":["spl"],"application/x-gca-compressed":["gca"],"application/x-glulx":["ulx"],"application/x-gnumeric":["gnumeric"],"application/x-gramps-xml":["gramps"],"application/x-gtar":["gtar"],"application/x-hdf":["hdf"],"application/x-httpd-php":["php"],"application/x-install-instructions":["install"],"application/x-iso9660-image":[],"application/x-java-archive-diff":["jardiff"],"application/x-java-jnlp-file":["jnlp"],"application/x-latex":["latex"],"application/x-lua-bytecode":["luac"],"application/x-lzh-compressed":["lzh","lha"],"application/x-makeself":["run"],"application/x-mie":["mie"],"application/x-mobipocket-ebook":["prc","mobi"],"application/x-ms-application":["application"],"application/x-ms-shortcut":["lnk"],"application/x-ms-wmd":["wmd"],"application/x-ms-wmz":["wmz"],"application/x-ms-xbap":["xbap"],"application/x-msaccess":["mdb"],"application/x-msbinder":["obd"],"application/x-mscardfile":["crd"],"application/x-msclip":["clp"],"application/x-msdos-program":[],"application/x-msdownload":["com","bat"],"application/x-msmediaview":["mvb","m13","m14"],"application/x-msmetafile":["wmf","emf","emz"],"application/x-msmoney":["mny"],"application/x-mspublisher":["pub"],"application/x-msschedule":["scd"],"application/x-msterminal":["trm"],"application/x-mswrite":["wri"],"application/x-netcdf":["nc","cdf"],"application/x-ns-proxy-autoconfig":["pac"],"application/x-nzb":["nzb"],"application/x-perl":["pl","pm"],"application/x-pilot":[],"application/x-pkcs12":["p12","pfx"],"application/x-pkcs7-certificates":["p7b","spc"],"application/x-pkcs7-certreqresp":["p7r"],"application/x-rar-compressed":["rar"],"application/x-redhat-package-manager":["rpm"],"application/x-research-info-systems":["ris"],"application/x-sea":["sea"],"application/x-sh":["sh"],"application/x-shar":["shar"],"application/x-shockwave-flash":["swf"],"application/x-silverlight-app":["xap"],"application/x-sql":["sql"],"application/x-stuffit":["sit"],"application/x-stuffitx":["sitx"],"application/x-subrip":["srt"],"application/x-sv4cpio":["sv4cpio"],"application/x-sv4crc":["sv4crc"],"application/x-t3vm-image":["t3"],"application/x-tads":["gam"],"application/x-tar":["tar"],"application/x-tcl":["tcl","tk"],"application/x-tex":["tex"],"application/x-tex-tfm":["tfm"],"application/x-texinfo":["texinfo","texi"],"application/x-tgif":["obj"],"application/x-ustar":["ustar"],"application/x-virtualbox-hdd":["hdd"],"application/x-virtualbox-ova":["ova"],"application/x-virtualbox-ovf":["ovf"],"application/x-virtualbox-vbox":["vbox"],"application/x-virtualbox-vbox-extpack":["vbox-extpack"],"application/x-virtualbox-vdi":["vdi"],"application/x-virtualbox-vhd":["vhd"],"application/x-virtualbox-vmdk":["vmdk"],"application/x-wais-source":["src"],"application/x-web-app-manifest+json":["webapp"],"application/x-x509-ca-cert":["der","crt","pem"],"application/x-xfig":["fig"],"application/x-xliff+xml":["xlf"],"application/x-xpinstall":["xpi"],"application/x-xz":["xz"],"application/x-zmachine":["z1","z2","z3","z4","z5","z6","z7","z8"],"application/xaml+xml":["xaml"],"application/xcap-diff+xml":["xdf"],"application/xenc+xml":["xenc"],"application/xhtml+xml":["xhtml","xht"],"application/xml":["xml","xsl","xsd","rng"],"application/xml-dtd":["dtd"],"application/xop+xml":["xop"],"application/xproc+xml":["xpl"],"application/xslt+xml":["xslt"],"application/xspf+xml":["xspf"],"application/xv+xml":["mxml","xhvml","xvml","xvm"],"application/yang":["yang"],"application/yin+xml":["yin"],"application/zip":["zip"],"audio/3gpp":[],"audio/adpcm":["adp"],"audio/basic":["au","snd"],"audio/midi":["mid","midi","kar","rmi"],"audio/mp3":[],"audio/mp4":["m4a","mp4a"],"audio/mpeg":["mpga","mp2","mp2a","mp3","m2a","m3a"],"audio/ogg":["oga","ogg","spx"],"audio/s3m":["s3m"],"audio/silk":["sil"],"audio/vnd.dece.audio":["uva","uvva"],"audio/vnd.digital-winds":["eol"],"audio/vnd.dra":["dra"],"audio/vnd.dts":["dts"],"audio/vnd.dts.hd":["dtshd"],"audio/vnd.lucent.voice":["lvp"],"audio/vnd.ms-playready.media.pya":["pya"],"audio/vnd.nuera.ecelp4800":["ecelp4800"],"audio/vnd.nuera.ecelp7470":["ecelp7470"],"audio/vnd.nuera.ecelp9600":["ecelp9600"],"audio/vnd.rip":["rip"],"audio/wav":["wav"],"audio/wave":[],"audio/webm":["weba"],"audio/x-aac":["aac"],"audio/x-aiff":["aif","aiff","aifc"],"audio/x-caf":["caf"],"audio/x-flac":["flac"],"audio/x-m4a":[],"audio/x-matroska":["mka"],"audio/x-mpegurl":["m3u"],"audio/x-ms-wax":["wax"],"audio/x-ms-wma":["wma"],"audio/x-pn-realaudio":["ram","ra"],"audio/x-pn-realaudio-plugin":["rmp"],"audio/x-realaudio":[],"audio/x-wav":[],"audio/xm":["xm"],"chemical/x-cdx":["cdx"],"chemical/x-cif":["cif"],"chemical/x-cmdf":["cmdf"],"chemical/x-cml":["cml"],"chemical/x-csml":["csml"],"chemical/x-xyz":["xyz"],"font/collection":["ttc"],"font/otf":["otf"],"font/ttf":["ttf"],"font/woff":["woff"],"font/woff2":["woff2"],"image/apng":["apng"],"image/bmp":["bmp"],"image/cgm":["cgm"],"image/g3fax":["g3"],"image/gif":["gif"],"image/ief":["ief"],"image/jp2":["jp2","jpg2"],"image/jpeg":["jpeg","jpg","jpe"],"image/jpm":["jpm"],"image/jpx":["jpx","jpf"],"image/ktx":["ktx"],"image/png":["png"],"image/prs.btif":["btif"],"image/sgi":["sgi"],"image/svg+xml":["svg","svgz"],"image/tiff":["tiff","tif"],"image/vnd.adobe.photoshop":["psd"],"image/vnd.dece.graphic":["uvi","uvvi","uvg","uvvg"],"image/vnd.djvu":["djvu","djv"],"image/vnd.dvb.subtitle":[],"image/vnd.dwg":["dwg"],"image/vnd.dxf":["dxf"],"image/vnd.fastbidsheet":["fbs"],"image/vnd.fpx":["fpx"],"image/vnd.fst":["fst"],"image/vnd.fujixerox.edmics-mmr":["mmr"],"image/vnd.fujixerox.edmics-rlc":["rlc"],"image/vnd.ms-modi":["mdi"],"image/vnd.ms-photo":["wdp"],"image/vnd.net-fpx":["npx"],"image/vnd.wap.wbmp":["wbmp"],"image/vnd.xiff":["xif"],"image/webp":["webp"],"image/x-3ds":["3ds"],"image/x-cmu-raster":["ras"],"image/x-cmx":["cmx"],"image/x-freehand":["fh","fhc","fh4","fh5","fh7"],"image/x-icon":["ico"],"image/x-jng":["jng"],"image/x-mrsid-image":["sid"],"image/x-ms-bmp":[],"image/x-pcx":["pcx"],"image/x-pict":["pic","pct"],"image/x-portable-anymap":["pnm"],"image/x-portable-bitmap":["pbm"],"image/x-portable-graymap":["pgm"],"image/x-portable-pixmap":["ppm"],"image/x-rgb":["rgb"],"image/x-tga":["tga"],"image/x-xbitmap":["xbm"],"image/x-xpixmap":["xpm"],"image/x-xwindowdump":["xwd"],"message/rfc822":["eml","mime"],"model/gltf+json":["gltf"],"model/gltf-binary":["glb"],"model/iges":["igs","iges"],"model/mesh":["msh","mesh","silo"],"model/vnd.collada+xml":["dae"],"model/vnd.dwf":["dwf"],"model/vnd.gdl":["gdl"],"model/vnd.gtw":["gtw"],"model/vnd.mts":["mts"],"model/vnd.vtu":["vtu"],"model/vrml":["wrl","vrml"],"model/x3d+binary":["x3db","x3dbz"],"model/x3d+vrml":["x3dv","x3dvz"],"model/x3d+xml":["x3d","x3dz"],"text/cache-manifest":["appcache","manifest"],"text/calendar":["ics","ifb"],"text/coffeescript":["coffee","litcoffee"],"text/css":["css"],"text/csv":["csv"],"text/hjson":["hjson"],"text/html":["html","htm","shtml"],"text/jade":["jade"],"text/jsx":["jsx"],"text/less":["less"],"text/markdown":["markdown","md"],"text/mathml":["mml"],"text/n3":["n3"],"text/plain":["txt","text","conf","def","list","log","in","ini"],"text/prs.lines.tag":["dsc"],"text/richtext":["rtx"],"text/rtf":[],"text/sgml":["sgml","sgm"],"text/slim":["slim","slm"],"text/stylus":["stylus","styl"],"text/tab-separated-values":["tsv"],"text/troff":["t","tr","roff","man","me","ms"],"text/turtle":["ttl"],"text/uri-list":["uri","uris","urls"],"text/vcard":["vcard"],"text/vnd.curl":["curl"],"text/vnd.curl.dcurl":["dcurl"],"text/vnd.curl.mcurl":["mcurl"],"text/vnd.curl.scurl":["scurl"],"text/vnd.dvb.subtitle":["sub"],"text/vnd.fly":["fly"],"text/vnd.fmi.flexstor":["flx"],"text/vnd.graphviz":["gv"],"text/vnd.in3d.3dml":["3dml"],"text/vnd.in3d.spot":["spot"],"text/vnd.sun.j2me.app-descriptor":["jad"],"text/vnd.wap.wml":["wml"],"text/vnd.wap.wmlscript":["wmls"],"text/vtt":["vtt"],"text/x-asm":["s","asm"],"text/x-c":["c","cc","cxx","cpp","h","hh","dic"],"text/x-component":["htc"],"text/x-fortran":["f","for","f77","f90"],"text/x-handlebars-template":["hbs"],"text/x-java-source":["java"],"text/x-lua":["lua"],"text/x-markdown":["mkd"],"text/x-nfo":["nfo"],"text/x-opml":["opml"],"text/x-org":[],"text/x-pascal":["p","pas"],"text/x-processing":["pde"],"text/x-sass":["sass"],"text/x-scss":["scss"],"text/x-setext":["etx"],"text/x-sfv":["sfv"],"text/x-suse-ymp":["ymp"],"text/x-uuencode":["uu"],"text/x-vcalendar":["vcs"],"text/x-vcard":["vcf"],"text/xml":[],"text/yaml":["yaml","yml"],"video/3gpp":["3gp","3gpp"],"video/3gpp2":["3g2"],"video/h261":["h261"],"video/h263":["h263"],"video/h264":["h264"],"video/jpeg":["jpgv"],"video/jpm":["jpgm"],"video/mj2":["mj2","mjp2"],"video/mp2t":["ts"],"video/mp4":["mp4","mp4v","mpg4"],"video/mpeg":["mpeg","mpg","mpe","m1v","m2v"],"video/ogg":["ogv"],"video/quicktime":["qt","mov"],"video/vnd.dece.hd":["uvh","uvvh"],"video/vnd.dece.mobile":["uvm","uvvm"],"video/vnd.dece.pd":["uvp","uvvp"],"video/vnd.dece.sd":["uvs","uvvs"],"video/vnd.dece.video":["uvv","uvvv"],"video/vnd.dvb.file":["dvb"],"video/vnd.fvt":["fvt"],"video/vnd.mpegurl":["mxu","m4u"],"video/vnd.ms-playready.media.pyv":["pyv"],"video/vnd.uvvu.mp4":["uvu","uvvu"],"video/vnd.vivo":["viv"],"video/webm":["webm"],"video/x-f4v":["f4v"],"video/x-fli":["fli"],"video/x-flv":["flv"],"video/x-m4v":["m4v"],"video/x-matroska":["mkv","mk3d","mks"],"video/x-mng":["mng"],"video/x-ms-asf":["asf","asx"],"video/x-ms-vob":["vob"],"video/x-ms-wm":["wm"],"video/x-ms-wmv":["wmv"],"video/x-ms-wmx":["wmx"],"video/x-ms-wvx":["wvx"],"video/x-msvideo":["avi"],"video/x-sgi-movie":["movie"],"video/x-smv":["smv"],"x-conference/x-cooltalk":["ice"]}});var ZU=$((qNe,HU)=>{var FNe=require("path"),Loe=require("fs");function fu(){this.types=Object.create(null),this.extensions=Object.create(null)}fu.prototype.define=function(t){for(var e in t){for(var r=t[e],n=0;n{var mu=1e3,hu=mu*60,gu=hu*60,Sa=gu*24,Uoe=Sa*7,Foe=Sa*365.25;BU.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return qoe(t);if(r==="number"&&isFinite(t))return e.long?Zoe(t):Hoe(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function qoe(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*Foe;case"weeks":case"week":case"w":return r*Uoe;case"days":case"day":case"d":return r*Sa;case"hours":case"hour":case"hrs":case"hr":case"h":return r*gu;case"minutes":case"minute":case"mins":case"min":case"m":return r*hu;case"seconds":case"second":case"secs":case"sec":case"s":return r*mu;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function Hoe(t){var e=Math.abs(t);return e>=Sa?Math.round(t/Sa)+"d":e>=gu?Math.round(t/gu)+"h":e>=hu?Math.round(t/hu)+"m":e>=mu?Math.round(t/mu)+"s":t+"ms"}function Zoe(t){var e=Math.abs(t);return e>=Sa?fv(t,e,Sa,"day"):e>=gu?fv(t,e,gu,"hour"):e>=hu?fv(t,e,hu,"minute"):e>=mu?fv(t,e,mu,"second"):t+" ms"}function fv(t,e,r,n){var i=e>=r*1.5;return Math.round(t/r)+" "+n+(i?"s":"")}});var UT=$((ZNe,WU)=>{"use strict";WU.exports=Boe;function Boe(t,e,r){if(typeof e!="string")throw new TypeError("argument str must be a string");var n=e.indexOf("=");if(n===-1)return-2;var i=e.slice(n+1).split(","),s=[];s.type=e.slice(0,n);for(var o=0;ot-1&&(u=t-1),!(isNaN(c)||isNaN(u)||c>u||c<0)&&s.push({start:c,end:u})}return s.length<1?-1:r&&r.combine?Goe(s):s}function Goe(t){for(var e=t.map(Woe).sort(Joe),r=0,n=1;ns.end+1?e[++r]=i:i.end>s.end&&(s.end=i.end,s.index=Math.min(s.index,i.index))}e.length=r+1;var o=e.sort(Koe).map(Voe);return o.type=t.type,o}function Woe(t,e){return{start:t.start,end:t.end,index:e}}function Voe(t){return{start:t.start,end:t.end}}function Koe(t,e){return t.index-e.index}function Joe(t,e){return t.start-e.start}});var vv=$((BNe,GT)=>{"use strict";var FT=ca(),Zt=Vn()("send"),xa=Vi()("send"),Xoe=yk(),Yoe=Ip(),JU=Rp(),Qoe=zT(),eae=LT(),hv=require("fs"),HT=ZU(),XU=GU(),tae=dp(),rae=UT(),Ap=require("path"),nae=rp(),YU=require("stream"),iae=require("util"),sae=Ap.extname,QU=Ap.join,qT=Ap.normalize,BT=Ap.resolve,mv=Ap.sep,oae=/^ *bytes=/,e2=3600*24*365*1e3,VU=/(?:^|[\\/])\.\.(?:[\\/]|$)/;GT.exports=aae;GT.exports.mime=HT;function aae(t,e,r){return new ft(t,e,r)}function ft(t,e,r){YU.call(this);var n=r||{};if(this.options=n,this.path=e,this.req=t,this._acceptRanges=n.acceptRanges!==void 0?!!n.acceptRanges:!0,this._cacheControl=n.cacheControl!==void 0?!!n.cacheControl:!0,this._etag=n.etag!==void 0?!!n.etag:!0,this._dotfiles=n.dotfiles!==void 0?n.dotfiles:"ignore",this._dotfiles!=="ignore"&&this._dotfiles!=="allow"&&this._dotfiles!=="deny")throw new TypeError('dotfiles option must be "allow", "deny", or "ignore"');this._hidden=!!n.hidden,n.hidden!==void 0&&xa("hidden: use dotfiles: '"+(this._hidden?"allow":"ignore")+"' instead"),n.dotfiles===void 0&&(this._dotfiles=void 0),this._extensions=n.extensions!==void 0?ZT(n.extensions,"extensions option"):[],this._immutable=n.immutable!==void 0?!!n.immutable:!1,this._index=n.index!==void 0?ZT(n.index,"index option"):["index.html"],this._lastModified=n.lastModified!==void 0?!!n.lastModified:!0,this._maxage=n.maxAge||n.maxage,this._maxage=typeof this._maxage=="string"?XU(this._maxage):Number(this._maxage),this._maxage=isNaN(this._maxage)?0:Math.min(Math.max(0,this._maxage),e2),this._root=n.root?BT(n.root):null,!this._root&&n.from&&this.from(n.from)}iae.inherits(ft,YU);ft.prototype.etag=xa.function(function(e){return this._etag=!!e,Zt("etag %s",this._etag),this},"send.etag: pass etag as option");ft.prototype.hidden=xa.function(function(e){return this._hidden=!!e,this._dotfiles=void 0,Zt("hidden %s",this._hidden),this},"send.hidden: use dotfiles option");ft.prototype.index=xa.function(function(e){var r=e?ZT(e,"paths argument"):[];return Zt("index %o",e),this._index=r,this},"send.index: pass index as option");ft.prototype.root=function(e){return this._root=BT(String(e)),Zt("root %s",this._root),this};ft.prototype.from=xa.function(ft.prototype.root,"send.from: pass root as option");ft.prototype.root=xa.function(ft.prototype.root,"send.root: pass root as option");ft.prototype.maxage=xa.function(function(e){return this._maxage=typeof e=="string"?XU(e):Number(e),this._maxage=isNaN(this._maxage)?0:Math.min(Math.max(0,this._maxage),e2),Zt("max-age %d",this._maxage),this},"send.maxage: pass maxAge as option");ft.prototype.error=function(e,r){if(r2(this,"error"))return this.emit("error",dae(e,r));var n=this.res,i=nae.message[e]||String(e),s=t2("Error",JU(i));cae(n),r&&r.headers&&gae(n,r.headers),n.statusCode=e,n.setHeader("Content-Type","text/html; charset=UTF-8"),n.setHeader("Content-Length",Buffer.byteLength(s)),n.setHeader("Content-Security-Policy","default-src 'none'"),n.setHeader("X-Content-Type-Options","nosniff"),n.end(s)};ft.prototype.hasTrailingSlash=function(){return this.path[this.path.length-1]==="/"};ft.prototype.isConditionalGET=function(){return this.req.headers["if-match"]||this.req.headers["if-unmodified-since"]||this.req.headers["if-none-match"]||this.req.headers["if-modified-since"]};ft.prototype.isPreconditionFailure=function(){var e=this.req,r=this.res,n=e.headers["if-match"];if(n){var i=r.getHeader("ETag");return!i||n!=="*"&&hae(n).every(function(a){return a!==i&&a!=="W/"+i&&"W/"+a!==i})}var s=gv(e.headers["if-unmodified-since"]);if(!isNaN(s)){var o=gv(r.getHeader("Last-Modified"));return isNaN(o)||o>s}return!1};ft.prototype.removeContentHeaderFields=function(){var e=this.res;e.removeHeader("Content-Encoding"),e.removeHeader("Content-Language"),e.removeHeader("Content-Length"),e.removeHeader("Content-Range"),e.removeHeader("Content-Type")};ft.prototype.notModified=function(){var e=this.res;Zt("not modified"),this.removeContentHeaderFields(),e.statusCode=304,e.end()};ft.prototype.headersAlreadySent=function(){var e=new Error("Can't set headers after they are sent.");Zt("headers already sent"),this.error(500,e)};ft.prototype.isCachable=function(){var e=this.res.statusCode;return e>=200&&e<300||e===304};ft.prototype.onStatError=function(e){switch(e.code){case"ENAMETOOLONG":case"ENOENT":case"ENOTDIR":this.error(404,e);break;default:this.error(500,e);break}};ft.prototype.isFresh=function(){return eae(this.req.headers,{etag:this.res.getHeader("ETag"),"last-modified":this.res.getHeader("Last-Modified")})};ft.prototype.isRangeFresh=function(){var e=this.req.headers["if-range"];if(!e)return!0;if(e.indexOf('"')!==-1){var r=this.res.getHeader("ETag");return!!(r&&e.indexOf(r)!==-1)}var n=this.res.getHeader("Last-Modified");return gv(n)<=gv(e)};ft.prototype.redirect=function(e){var r=this.res;if(r2(this,"directory")){this.emit("directory",r,e);return}if(this.hasTrailingSlash()){this.error(403);return}var n=Yoe(uae(this.path+"/")),i=t2("Redirecting","Redirecting to "+JU(n));r.statusCode=301,r.setHeader("Content-Type","text/html; charset=UTF-8"),r.setHeader("Content-Length",Buffer.byteLength(i)),r.setHeader("Content-Security-Policy","default-src 'none'"),r.setHeader("X-Content-Type-Options","nosniff"),r.setHeader("Location",n),r.end(i)};ft.prototype.pipe=function(e){var r=this._root;this.res=e;var n=pae(this.path);if(n===-1)return this.error(400),e;if(~n.indexOf("\0"))return this.error(400),e;var i;if(r!==null){if(n&&(n=qT("."+mv+n)),VU.test(n))return Zt('malicious path "%s"',n),this.error(403),e;i=n.split(mv),n=qT(QU(r,n))}else{if(VU.test(n))return Zt('malicious path "%s"',n),this.error(403),e;i=qT(n).split(mv),n=BT(n)}if(lae(i)){var s=this._dotfiles;switch(s===void 0&&(s=i[i.length-1][0]==="."?this._hidden?"allow":"ignore":"allow"),Zt('%s dotfile "%s"',s,n),s){case"allow":break;case"deny":return this.error(403),e;default:return this.error(404),e}}return this._index.length&&this.hasTrailingSlash()?(this.sendIndex(n),e):(this.sendFile(n),e)};ft.prototype.send=function(e,r){var n=r.size,i=this.options,s={},o=this.res,a=this.req,c=a.headers.range,u=i.start||0;if(mae(o)){this.headersAlreadySent();return}if(Zt('pipe "%s"',e),this.setHeader(e,r),this.type(e),this.isConditionalGET()){if(this.isPreconditionFailure()){this.error(412);return}if(this.isCachable()&&this.isFresh()){this.notModified();return}}if(n=Math.max(0,n-u),i.end!==void 0){var l=i.end-u+1;n>l&&(n=l)}if(this._acceptRanges&&oae.test(c)){if(c=rae(n,c,{combine:!0}),this.isRangeFresh()||(Zt("range stale"),c=-2),c===-1)return Zt("range unsatisfiable"),o.setHeader("Content-Range",KU("bytes",n)),this.error(416,{headers:{"Content-Range":o.getHeader("Content-Range")}});c!==-2&&c.length===1&&(Zt("range %j",c),o.statusCode=206,o.setHeader("Content-Range",KU("bytes",n,c[0])),u+=c[0].start,n=c[0].end-c[0].start+1)}for(var d in i)s[d]=i[d];if(s.start=u,s.end=Math.max(u,u+n-1),o.setHeader("Content-Length",n),a.method==="HEAD"){o.end();return}this.stream(e,s)};ft.prototype.sendFile=function(e){var r=0,n=this;Zt('stat "%s"',e),hv.stat(e,function(o,a){if(o&&o.code==="ENOENT"&&!sae(e)&&e[e.length-1]!==mv)return i(o);if(o)return n.onStatError(o);if(a.isDirectory())return n.redirect(e);n.emit("file",e,a),n.send(e,a)});function i(s){if(n._extensions.length<=r)return s?n.onStatError(s):n.error(404);var o=e+"."+n._extensions[r++];Zt('stat "%s"',o),hv.stat(o,function(a,c){if(a)return i(a);if(c.isDirectory())return i();n.emit("file",o,c),n.send(o,c)})}};ft.prototype.sendIndex=function(e){var r=-1,n=this;function i(s){if(++r>=n._index.length)return s?n.onStatError(s):n.error(404);var o=QU(e,n._index[r]);Zt('stat "%s"',o),hv.stat(o,function(a,c){if(a)return i(a);if(c.isDirectory())return i();n.emit("file",o,c),n.send(o,c)})}i()};ft.prototype.stream=function(e,r){var n=this,i=this.res,s=hv.createReadStream(e,r);this.emit("stream",s),s.pipe(i);function o(){Xoe(s,!0)}tae(i,o),s.on("error",function(c){o(),n.onStatError(c)}),s.on("end",function(){n.emit("end")})};ft.prototype.type=function(e){var r=this.res;if(!r.getHeader("Content-Type")){var n=HT.lookup(e);if(!n){Zt("no content-type");return}var i=HT.charsets.lookup(n);Zt("content-type %s",n),r.setHeader("Content-Type",n+(i?"; charset="+i:""))}};ft.prototype.setHeader=function(e,r){var n=this.res;if(this.emit("headers",n,e,r),this._acceptRanges&&!n.getHeader("Accept-Ranges")&&(Zt("accept ranges"),n.setHeader("Accept-Ranges","bytes")),this._cacheControl&&!n.getHeader("Cache-Control")){var i="public, max-age="+Math.floor(this._maxage/1e3);this._immutable&&(i+=", immutable"),Zt("cache-control %s",i),n.setHeader("Cache-Control",i)}if(this._lastModified&&!n.getHeader("Last-Modified")){var s=r.mtime.toUTCString();Zt("modified %s",s),n.setHeader("Last-Modified",s)}if(this._etag&&!n.getHeader("ETag")){var o=Qoe(r);Zt("etag %s",o),n.setHeader("ETag",o)}};function cae(t){for(var e=fae(t),r=0;r1?"/"+t.substr(e):t}function lae(t){for(var e=0;e1&&r[0]===".")return!0}return!1}function KU(t,e,r){return t+" "+(r?r.start+"-"+r.end:"*")+"/"+e}function t2(t,e){return` @@ -649,8 +703,8 @@ return fn.apply(this, arguments)
`+e+`
-`}function Hoe(t,e){return e?e instanceof Error?wT(t,e,{expose:!1}):wT(t,e):wT(t)}function Zoe(t){try{return decodeURIComponent(t)}catch{return-1}}function Boe(t){return typeof t.getHeaderNames!="function"?Object.keys(t._headers||{}):t.getHeaderNames()}function zU(t,e){var r=typeof t.listenerCount!="function"?t.listeners(e).length:t.listenerCount(e);return r>0}function Goe(t){return typeof t.headersSent!="boolean"?!!t._header:t.headersSent}function TT(t,e){for(var r=[].concat(t||[]),n=0;n{"use strict";LU.exports=Koe;function Koe(t){if(!t)throw new TypeError("argument req is required");var e=Xoe(t.headers["x-forwarded-for"]||""),r=Joe(t),n=[r].concat(e);return n}function Joe(t){return t.socket?t.socket.remoteAddress:t.connection.remoteAddress}function Xoe(t){for(var e=t.length,r=[],n=t.length,i=t.length-1;i>=0;i--)switch(t.charCodeAt(i)){case 32:n===e&&(n=e=i);break;case 44:n!==e&&r.push(t.substring(n,e)),n=e=i;break;default:n=i;break}return n!==e&&r.push(t.substring(n,e)),r}});var qU=$((FU,_p)=>{(function(){var t,e,r,n,i,s,o,a,c;e={},a=this,typeof _p<"u"&&_p!==null&&_p.exports?_p.exports=e:a.ipaddr=e,o=function(u,l,d,p){var f,m;if(u.length!==l.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");for(f=0;p>0;){if(m=d-p,m<0&&(m=0),u[f]>>m!==l[f]>>m)return!1;p-=d,f+=1}return!0},e.subnetMatch=function(u,l,d){var p,f,m,h,g;d==null&&(d="unicast");for(m in l)for(h=l[m],h[0]&&!(h[0]instanceof Array)&&(h=[h]),p=0,f=h.length;p=0;d=p+=-1)if(f=this.octets[d],f in g){if(h=g[f],m&&h!==0)return null;h!==8&&(m=!0),l+=h}else return null;return 32-l},u})(),r="(0?\\d+|0x[a-f0-9]+)",n={fourOctet:new RegExp("^"+r+"\\."+r+"\\."+r+"\\."+r+"$","i"),longValue:new RegExp("^"+r+"$","i")},e.IPv4.parser=function(u){var l,d,p,f,m;if(d=function(h){return h[0]==="0"&&h[1]!=="x"?parseInt(h,8):parseInt(h)},l=u.match(n.fourOctet))return(function(){var h,g,v,S;for(v=l.slice(1,6),S=[],h=0,g=v.length;h4294967295||m<0)throw new Error("ipaddr: address outside defined range");return(function(){var h,g;for(g=[],f=h=0;h<=24;f=h+=8)g.push(m>>f&255);return g})().reverse()}else return null},e.IPv6=(function(){function u(l,d){var p,f,m,h,g,v;if(l.length===16)for(this.parts=[],p=f=0;f<=14;p=f+=2)this.parts.push(l[p]<<8|l[p+1]);else if(l.length===8)this.parts=l;else throw new Error("ipaddr: ipv6 part count should be 8 or 16");for(v=this.parts,m=0,h=v.length;md&&(l=p.index,d=p[0].length);return d<0?m:m.substring(0,l)+"::"+m.substring(l+d)},u.prototype.toByteArray=function(){var l,d,p,f,m;for(l=[],m=this.parts,d=0,p=m.length;d>8),l.push(f&255);return l},u.prototype.toNormalizedString=function(){var l,d,p;return l=(function(){var f,m,h,g;for(h=this.parts,g=[],f=0,m=h.length;f>8,l&255,d>>8,d&255])},u.prototype.prefixLengthFromSubnetMask=function(){var l,d,p,f,m,h,g;for(g={0:16,32768:15,49152:14,57344:13,61440:12,63488:11,64512:10,65024:9,65280:8,65408:7,65472:6,65504:5,65520:4,65528:3,65532:2,65534:1,65535:0},l=0,m=!1,d=p=7;p>=0;d=p+=-1)if(f=this.parts[d],f in g){if(h=g[f],m&&h!==0)return null;h!==16&&(m=!0),l+=h}else return null;return 128-l},u})(),i="(?:[0-9a-f]+::?)+",c="%[0-9a-z]{1,}",s={zoneIndex:new RegExp(c,"i"),native:new RegExp("^(::)?("+i+")?([0-9a-f]+)?(::)?("+c+")?$","i"),transitional:new RegExp("^((?:"+i+")|(?:::)(?:"+i+")?)"+(r+"\\."+r+"\\."+r+"\\."+r)+("("+c+")?$"),"i")},t=function(u,l){var d,p,f,m,h,g;if(u.indexOf("::")!==u.lastIndexOf("::"))return null;for(g=(u.match(s.zoneIndex)||[])[0],g&&(g=g.substring(1),u=u.replace(/%.+$/,"")),d=0,p=-1;(p=u.indexOf(":",p+1))>=0;)d++;if(u.substr(0,2)==="::"&&d--,u.substr(-2,2)==="::"&&d--,d>l)return null;for(h=l-d,m=":";h--;)m+="0:";return u=u.replace("::",m),u[0]===":"&&(u=u.slice(1)),u[u.length-1]===":"&&(u=u.slice(0,-1)),l=(function(){var v,S,b,y;for(b=u.split(":"),y=[],v=0,S=b.length;v=0&&l<=32))return p=[this.parse(d[1]),l],Object.defineProperty(p,"toString",{value:function(){return this.join("/")}}),p;throw new Error("ipaddr: string is not formatted like an IPv4 CIDR range")},e.IPv4.subnetMaskFromPrefixLength=function(u){var l,d,p;if(u=parseInt(u),u<0||u>32)throw new Error("ipaddr: invalid IPv4 prefix length");for(p=[0,0,0,0],d=0,l=Math.floor(u/8);d=0&&l<=128))return p=[this.parse(d[1]),l],Object.defineProperty(p,"toString",{value:function(){return this.join("/")}}),p;throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range")},e.isValid=function(u){return e.IPv6.isValid(u)||e.IPv4.isValid(u)},e.parse=function(u){if(e.IPv6.isValid(u))return e.IPv6.parse(u);if(e.IPv4.isValid(u))return e.IPv4.parse(u);throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format")},e.parseCIDR=function(u){var l;try{return e.IPv6.parseCIDR(u)}catch(d){l=d;try{return e.IPv4.parseCIDR(u)}catch(p){throw l=p,new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format")}}},e.fromByteArray=function(u){var l;if(l=u.length,l===4)return new e.IPv4(u);if(l===16)return new e.IPv6(u);throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address")},e.process=function(u){var l;return l=this.parse(u),l.kind()==="ipv6"&&l.isIPv4MappedAddress()?l.toIPv4Address():l}}).call(FU)});var RT=$((oNe,uv)=>{"use strict";uv.exports=iae;uv.exports.all=BU;uv.exports.compile=GU;var Yoe=UU(),ZU=qU(),Qoe=/^[0-9]+$/,av=ZU.isValid,cv=ZU.parse,HU={linklocal:["169.254.0.0/16","fe80::/10"],loopback:["127.0.0.1/8","::1/128"],uniquelocal:["10.0.0.0/8","172.16.0.0/12","192.168.0.0/16","fc00::/7"]};function BU(t,e){var r=Yoe(t);if(!e)return r;typeof e!="function"&&(e=GU(e));for(var n=0;ni)throw new TypeError("invalid range on address: "+t);return[n,s]}function nae(t){var e=cv(t),r=e.kind();return r==="ipv4"?e.prefixLengthFromSubnetMask():null}function iae(t,e){if(!t)throw new TypeError("req argument is required");if(!e)throw new TypeError("trust argument is required");var r=BU(t,e),n=r[r.length-1];return n}function sae(){return!1}function oae(t){return function(r){if(!av(r))return!1;for(var n=cv(r),i,s=n.kind(),o=0;o{"use strict";var WU=tv().Buffer,cae=_T(),VU=Fd(),KU=Hi()("express"),uae=hp(),lae=ov().mime,dae=bT(),pae=RT(),fae=Gg(),mae=require("querystring");Yr.etag=JU({weak:!1});Yr.wetag=JU({weak:!0});Yr.isAbsolute=function(t){if(t[0]==="/"||t[1]===":"&&(t[2]==="\\"||t[2]==="/")||t.substring(0,2)==="\\\\")return!0};Yr.flatten=KU.function(uae,"utils.flatten: use array-flatten npm module instead");Yr.normalizeType=function(t){return~t.indexOf("/")?hae(t):{value:lae.lookup(t),params:{}}};Yr.normalizeTypes=function(t){for(var e=[],r=0;r{"use strict";var yae=AL(),_ae=hT(),CT=Jg(),bae=sU(),Sae=gT(),lv=Zn()("express:application"),xae=dU(),wae=require("http"),Eae=ho().compileETag,kae=ho().compileQueryParser,Tae=ho().compileTrust,$ae=Hi()("express"),Iae=hp(),OT=gp(),Rae=require("path").resolve,nu=qd(),Oae=Object.prototype.hasOwnProperty,AT=Array.prototype.slice,Qt=XU=YU.exports={},PT="@@symbol:trust_proxy_default";Qt.init=function(){this.cache={},this.engines={},this.settings={},this.defaultConfiguration()};Qt.defaultConfiguration=function(){var e=process.env.NODE_ENV||"development";this.enable("x-powered-by"),this.set("etag","weak"),this.set("env",e),this.set("query parser","extended"),this.set("subdomain offset",2),this.set("trust proxy",!1),Object.defineProperty(this.settings,PT,{configurable:!0,value:!0}),lv("booting in %s mode",e),this.on("mount",function(n){this.settings[PT]===!0&&typeof n.settings["trust proxy fn"]=="function"&&(delete this.settings["trust proxy"],delete this.settings["trust proxy fn"]),nu(this.request,n.request),nu(this.response,n.response),nu(this.engines,n.engines),nu(this.settings,n.settings)}),this.locals=Object.create(null),this.mountpath="/",this.locals.settings=this.settings,this.set("view",xae),this.set("views",Rae("views")),this.set("jsonp callback name","callback"),e==="production"&&this.enable("view cache"),Object.defineProperty(this,"router",{get:function(){throw new Error(`'app.router' is deprecated! -Please see the 3.x to 4.x migration guide for details on how to update your app.`)}})};Qt.lazyrouter=function(){this._router||(this._router=new _ae({caseSensitive:this.enabled("case sensitive routing"),strict:this.enabled("strict routing")}),this._router.use(Sae(this.get("query parser fn"))),this._router.use(bae.init(this)))};Qt.handle=function(e,r,n){var i=this._router,s=n||yae(e,r,{env:this.get("env"),onerror:Cae.bind(this)});if(!i){lv("no routes defined on app"),s();return}i.handle(e,r,s)};Qt.use=function(e){var r=0,n="/";if(typeof e!="function"){for(var i=e;Array.isArray(i)&&i.length!==0;)i=i[0];typeof i!="function"&&(r=1,n=e)}var s=Iae(AT.call(arguments,r));if(s.length===0)throw new TypeError("app.use() requires a middleware function");this.lazyrouter();var o=this._router;return s.forEach(function(a){if(!a||!a.handle||!a.set)return o.use(n,a);lv(".use app under %s",n),a.mountpath=n,a.parent=this,o.use(n,function(u,l,d){var p=u.app;a.handle(u,l,function(f){nu(u,p.request),nu(l,p.response),d(f)})}),a.emit("mount",this)},this),this};Qt.route=function(e){return this.lazyrouter(),this._router.route(e)};Qt.engine=function(e,r){if(typeof r!="function")throw new Error("callback function required");var n=e[0]!=="."?"."+e:e;return this.engines[n]=r,this};Qt.param=function(e,r){if(this.lazyrouter(),Array.isArray(e)){for(var n=0;n1?'directories "'+u.root.slice(0,-1).join('", "')+'" or "'+u.root[u.root.length-1]+'"':'directory "'+u.root+'"',p=new Error('Failed to lookup view "'+e+'" in views '+d);return p.view=u,s(p)}c.cache&&(i[e]=u)}Pae(u,c,s)};Qt.listen=function(){var e=wae.createServer(this);return e.listen.apply(e,arguments)};function Cae(t){this.get("env")!=="test"&&console.error(t.stack||t.toString())}function Pae(t,e,r){try{t.render(e,r)}catch(n){r(n)}}});var n2=$((cNe,NT)=>{"use strict";NT.exports=r2;NT.exports.preferredCharsets=r2;var Aae=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function Nae(t){for(var e=t.split(","),r=0,n=0;r0}});var c2=$((uNe,MT)=>{"use strict";MT.exports=a2;MT.exports.preferredEncodings=a2;var Lae=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function Uae(t){for(var e=t.split(","),r=!1,n=1,i=0,s=0;i0}});var f2=$((lNe,DT)=>{"use strict";DT.exports=p2;DT.exports.preferredLanguages=p2;var Zae=/^\s*([^\s\-;]+)(?:-([^\s;]+))?\s*(?:;(.*))?$/;function Bae(t){for(var e=t.split(","),r=0,n=0;r0}});var _2=$((dNe,jT)=>{"use strict";jT.exports=v2;jT.exports.preferredMediaTypes=v2;var Kae=/^\s*([^\s\/;]+)\/([^;\s]+)\s*(?:;(.*))?$/;function Jae(t){for(var e=tce(t),r=0,n=0;r0)if(s.every(function(o){return e.params[o]=="*"||(e.params[o]||"").toLowerCase()==(n.params[o]||"").toLowerCase()}))i|=1;else return null;return{i:r,o:e.i,q:e.q,s:i}}function v2(t,e){var r=Jae(t===void 0?"*/*":t||"");if(!e)return r.filter(h2).sort(m2).map(Qae);var n=e.map(function(s,o){return Xae(s,r,o)});return n.filter(h2).sort(m2).map(function(s){return e[n.indexOf(s)]})}function m2(t,e){return e.q-t.q||e.s-t.s||t.o-e.o||t.i-e.i||0}function Qae(t){return t.type+"/"+t.subtype}function h2(t){return t.q>0}function y2(t){for(var e=0,r=0;(r=t.indexOf('"',r))!==-1;)e++,r++;return e}function ece(t){var e=t.indexOf("="),r,n;return e===-1?r=t:(r=t.substr(0,e),n=t.substr(e+1)),[r,n]}function tce(t){for(var e=t.split(","),r=1,n=0;r{"use strict";var nce=n2(),ice=c2(),sce=f2(),oce=_2();zT.exports=yt;zT.exports.Negotiator=yt;function yt(t){if(!(this instanceof yt))return new yt(t);this.request=t}yt.prototype.charset=function(e){var r=this.charsets(e);return r&&r[0]};yt.prototype.charsets=function(e){return nce(this.request.headers["accept-charset"],e)};yt.prototype.encoding=function(e){var r=this.encodings(e);return r&&r[0]};yt.prototype.encodings=function(e){return ice(this.request.headers["accept-encoding"],e)};yt.prototype.language=function(e){var r=this.languages(e);return r&&r[0]};yt.prototype.languages=function(e){return sce(this.request.headers["accept-language"],e)};yt.prototype.mediaType=function(e){var r=this.mediaTypes(e);return r&&r[0]};yt.prototype.mediaTypes=function(e){return oce(this.request.headers.accept,e)};yt.prototype.preferredCharset=yt.prototype.charset;yt.prototype.preferredCharsets=yt.prototype.charsets;yt.prototype.preferredEncoding=yt.prototype.encoding;yt.prototype.preferredEncodings=yt.prototype.encodings;yt.prototype.preferredLanguage=yt.prototype.language;yt.prototype.preferredLanguages=yt.prototype.languages;yt.prototype.preferredMediaType=yt.prototype.mediaType;yt.prototype.preferredMediaTypes=yt.prototype.mediaTypes});var x2=$((fNe,S2)=>{"use strict";var ace=b2(),cce=Pk();S2.exports=In;function In(t){if(!(this instanceof In))return new In(t);this.headers=t.headers,this.negotiator=new ace(t)}In.prototype.type=In.prototype.types=function(t){var e=t;if(e&&!Array.isArray(e)){e=new Array(arguments.length);for(var r=0;r{"use strict";var dv=x2(),bp=Hi()("express"),dce=require("net").isIP,pce=qc(),fce=require("http"),mce=ST(),hce=xT(),gce=Kc(),w2=RT(),wt=Object.create(fce.IncomingMessage.prototype);E2.exports=wt;wt.get=wt.header=function(e){if(!e)throw new TypeError("name argument is required to req.get");if(typeof e!="string")throw new TypeError("name must be a string to req.get");var r=e.toLowerCase();switch(r){case"referer":case"referrer":return this.headers.referrer||this.headers.referer;default:return this.headers[r]}};wt.accepts=function(){var t=dv(this);return t.types.apply(t,arguments)};wt.acceptsEncodings=function(){var t=dv(this);return t.encodings.apply(t,arguments)};wt.acceptsEncoding=bp.function(wt.acceptsEncodings,"req.acceptsEncoding: Use acceptsEncodings instead");wt.acceptsCharsets=function(){var t=dv(this);return t.charsets.apply(t,arguments)};wt.acceptsCharset=bp.function(wt.acceptsCharsets,"req.acceptsCharset: Use acceptsCharsets instead");wt.acceptsLanguages=function(){var t=dv(this);return t.languages.apply(t,arguments)};wt.acceptsLanguage=bp.function(wt.acceptsLanguages,"req.acceptsLanguage: Use acceptsLanguages instead");wt.range=function(e,r){var n=this.get("Range");if(n)return hce(e,n,r)};wt.param=function(e,r){var n=this.params||{},i=this.body||{},s=this.query||{},o=arguments.length===1?"name":"name, default";return bp("req.param("+o+"): Use req.params, req.body, or req.query instead"),n[e]!=null&&n.hasOwnProperty(e)?n[e]:i[e]!=null?i[e]:s[e]!=null?s[e]:r};wt.is=function(e){var r=e;if(!Array.isArray(e)){r=new Array(arguments.length);for(var n=0;n=200&&r<300||r===304?mce(this.headers,{etag:e.get("ETag"),"last-modified":e.get("Last-Modified")}):!1});mi(wt,"stale",function(){return!this.fresh});mi(wt,"xhr",function(){var e=this.get("X-Requested-With")||"";return e.toLowerCase()==="xmlhttprequest"});function mi(t,e,r){Object.defineProperty(t,e,{configurable:!0,enumerable:!0,get:r})}});var I2=$(pv=>{var $2=require("crypto");pv.sign=function(t,e){if(typeof t!="string")throw new TypeError("Cookie value must be provided as a string.");if(e==null)throw new TypeError("Secret key must be provided.");return t+"."+$2.createHmac("sha256",e).update(t).digest("base64").replace(/\=+$/,"")};pv.unsign=function(t,e){if(typeof t!="string")throw new TypeError("Signed cookie string must be provided.");if(e==null)throw new TypeError("Secret key must be provided.");var r=t.slice(0,t.lastIndexOf(".")),n=pv.sign(r,e);return T2(n)==T2(t)?r:!1};function T2(t){return $2.createHash("sha1").update(t).digest("hex")}});var C2=$(LT=>{"use strict";LT.parse=wce;LT.serialize=Ece;var vce=Object.prototype.toString,yce=Object.prototype.hasOwnProperty,_ce=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,bce=/^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/,Sce=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,xce=/^[\u0020-\u003A\u003D-\u007E]*$/;function wce(t,e){if(typeof t!="string")throw new TypeError("argument str must be a string");var r={},n=t.length;if(n<2)return r;var i=e&&e.decode||kce,s=0,o=0,a=0;do{if(o=t.indexOf("=",s),o===-1)break;if(a=t.indexOf(";",s),a===-1)a=n;else if(o>a){s=t.lastIndexOf(";",o-1)+1;continue}var c=R2(t,s,o),u=O2(t,o,c),l=t.slice(c,u);if(!yce.call(r,l)){var d=R2(t,o+1,a),p=O2(t,a,d);t.charCodeAt(d)===34&&t.charCodeAt(p-1)===34&&(d++,p--);var f=t.slice(d,p);r[l]=$ce(f,i)}s=a+1}while(sr;){var n=t.charCodeAt(--e);if(n!==32&&n!==9)return e+1}return r}function Ece(t,e,r){var n=r&&r.encode||encodeURIComponent;if(typeof n!="function")throw new TypeError("option encode is invalid");if(!_ce.test(t))throw new TypeError("argument name is invalid");var i=n(e);if(!bce.test(i))throw new TypeError("argument val is invalid");var s=t+"="+i;if(!r)return s;if(r.maxAge!=null){var o=Math.floor(r.maxAge);if(!isFinite(o))throw new TypeError("option maxAge is invalid");s+="; Max-Age="+o}if(r.domain){if(!Sce.test(r.domain))throw new TypeError("option domain is invalid");s+="; Domain="+r.domain}if(r.path){if(!xce.test(r.path))throw new TypeError("option path is invalid");s+="; Path="+r.path}if(r.expires){var a=r.expires;if(!Tce(a)||isNaN(a.valueOf()))throw new TypeError("option expires is invalid");s+="; Expires="+a.toUTCString()}if(r.httpOnly&&(s+="; HttpOnly"),r.secure&&(s+="; Secure"),r.partitioned&&(s+="; Partitioned"),r.priority){var c=typeof r.priority=="string"?r.priority.toLowerCase():r.priority;switch(c){case"low":s+="; Priority=Low";break;case"medium":s+="; Priority=Medium";break;case"high":s+="; Priority=High";break;default:throw new TypeError("option priority is invalid")}}if(r.sameSite){var u=typeof r.sameSite=="string"?r.sameSite.toLowerCase():r.sameSite;switch(u){case!0:s+="; SameSite=Strict";break;case"lax":s+="; SameSite=Lax";break;case"strict":s+="; SameSite=Strict";break;case"none":s+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return s}function kce(t){return t.indexOf("%")!==-1?decodeURIComponent(t):t}function Tce(t){return vce.call(t)==="[object Date]"}function $ce(t,e){try{return e(t)}catch{return t}}});var FT=$((vNe,UT)=>{"use strict";UT.exports=Rce;UT.exports.append=A2;var Ice=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;function A2(t,e){if(typeof t!="string")throw new TypeError("header argument is required");if(!e)throw new TypeError("field argument is required");for(var r=Array.isArray(e)?e:P2(String(e)),n=0;n{"use strict";var Sp=tv().Buffer,N2=_T(),Oce=ea(),mn=Hi()("express"),Cce=fp(),Pce=mp(),Ace=require("http"),Nce=ho().isAbsolute,Mce=Yd(),M2=require("path"),fv=Hd(),D2=gp(),Dce=I2().sign,jce=ho().normalizeType,zce=ho().normalizeTypes,Lce=ho().setCharset,Uce=C2(),qT=ov(),Fce=M2.extname,j2=qT.mime,qce=M2.resolve,Hce=FT(),$t=Object.create(Ace.ServerResponse.prototype);U2.exports=$t;var Zce=/;\s*charset\s*=/;$t.status=function(e){return(typeof e=="string"||Math.floor(e)!==e)&&e>99&&e<1e3&&mn("res.status("+JSON.stringify(e)+"): use res.status("+Math.floor(e)+") instead"),this.statusCode=e,this};$t.links=function(t){var e=this.get("Link")||"";return e&&(e+=", "),this.set("Link",e+Object.keys(t).map(function(r){return"<"+t[r]+'>; rel="'+r+'"'}).join(", "))};$t.send=function(e){var r=e,n,i=this.req,s,o=this.app;switch(arguments.length===2&&(typeof arguments[0]!="number"&&typeof arguments[1]=="number"?(mn("res.send(body, status): Use res.status(status).send(body) instead"),this.statusCode=arguments[1]):(mn("res.send(status, body): Use res.status(status).send(body) instead"),this.statusCode=arguments[0],r=arguments[1])),typeof r=="number"&&arguments.length===1&&(this.get("Content-Type")||this.type("txt"),mn("res.send(status): Use res.sendStatus(status) instead"),this.statusCode=r,r=fv.message[r]),typeof r){case"string":this.get("Content-Type")||this.type("html");break;case"boolean":case"number":case"object":if(r===null)r="";else if(Sp.isBuffer(r))this.get("Content-Type")||this.type("bin");else return this.json(r);break}typeof r=="string"&&(n="utf8",s=this.get("Content-Type"),typeof s=="string"&&this.set("Content-Type",Lce(s,"utf-8")));var a=o.get("etag fn"),c=!this.get("ETag")&&typeof a=="function",u;r!==void 0&&(Sp.isBuffer(r)?u=r.length:!c&&r.length<1e3?u=Sp.byteLength(r,n):(r=Sp.from(r,n),n=void 0,u=r.length),this.set("Content-Length",u));var l;return c&&u!==void 0&&(l=a(r,n))&&this.set("ETag",l),i.fresh&&(this.statusCode=304),(this.statusCode===204||this.statusCode===304)&&(this.removeHeader("Content-Type"),this.removeHeader("Content-Length"),this.removeHeader("Transfer-Encoding"),r=""),this.statusCode===205&&(this.set("Content-Length","0"),this.removeHeader("Transfer-Encoding"),r=""),i.method==="HEAD"?this.end():this.end(r,n),this};$t.json=function(e){var r=e;arguments.length===2&&(typeof arguments[1]=="number"?(mn("res.json(obj, status): Use res.status(status).json(obj) instead"),this.statusCode=arguments[1]):(mn("res.json(status, obj): Use res.status(status).json(obj) instead"),this.statusCode=arguments[0],r=arguments[1]));var n=this.app,i=n.get("json escape"),s=n.get("json replacer"),o=n.get("json spaces"),a=L2(r,s,o,i);return this.get("Content-Type")||this.set("Content-Type","application/json"),this.send(a)};$t.jsonp=function(e){var r=e;arguments.length===2&&(typeof arguments[1]=="number"?(mn("res.jsonp(obj, status): Use res.status(status).jsonp(obj) instead"),this.statusCode=arguments[1]):(mn("res.jsonp(status, obj): Use res.status(status).jsonp(obj) instead"),this.statusCode=arguments[0],r=arguments[1]));var n=this.app,i=n.get("json escape"),s=n.get("json replacer"),o=n.get("json spaces"),a=L2(r,s,o,i),c=this.req.query[n.get("jsonp callback name")];return this.get("Content-Type")||(this.set("X-Content-Type-Options","nosniff"),this.set("Content-Type","application/json")),Array.isArray(c)&&(c=c[0]),typeof c=="string"&&c.length!==0&&(this.set("X-Content-Type-Options","nosniff"),this.set("Content-Type","text/javascript"),c=c.replace(/[^\[\]\w$.]/g,""),a===void 0?a="":typeof a=="string"&&(a=a.replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")),a="/**/ typeof "+c+" === 'function' && "+c+"("+a+");"),this.send(a)};$t.sendStatus=function(e){var r=fv.message[e]||String(e);return this.statusCode=e,this.type("txt"),this.send(r)};$t.sendFile=function(e,r,n){var i=n,s=this.req,o=this,a=s.next,c=r||{};if(!e)throw new TypeError("path argument is required to res.sendFile");if(typeof e!="string")throw new TypeError("path must be a string to res.sendFile");if(typeof r=="function"&&(i=r,c={}),!c.root&&!Nce(e))throw new TypeError("path must be absolute or specify root to res.sendFile");var u=encodeURI(e),l=qT(s,u,c);z2(o,l,c,function(d){if(i)return i(d);if(d&&d.code==="EISDIR")return a();d&&d.code!=="ECONNABORTED"&&d.syscall!=="write"&&a(d)})};$t.sendfile=function(t,e,r){var n=r,i=this.req,s=this,o=i.next,a=e||{};typeof e=="function"&&(n=e,a={});var c=qT(i,t,a);z2(s,c,a,function(u){if(n)return n(u);if(u&&u.code==="EISDIR")return o();u&&u.code!=="ECONNABORTED"&&u.syscall!=="write"&&o(u)})};$t.sendfile=mn.function($t.sendfile,"res.sendfile: Use res.sendFile instead");$t.download=function(e,r,n,i){var s=i,o=r,a=n||null;typeof r=="function"?(s=r,o=null,a=null):typeof n=="function"&&(s=n,a=null),typeof r=="object"&&(typeof n=="function"||n===void 0)&&(o=null,a=r);var c={"Content-Disposition":N2(o||e)};if(a&&a.headers)for(var u=Object.keys(a.headers),l=0;l0?e.accepts(n):!1;return this.vary("Accept"),i?(this.set("Content-Type",jce(i).value),t[i](e,this,r)):t.default?t.default(e,this,r):r(Oce(406,{types:zce(n).map(function(s){return s.value})})),this};$t.attachment=function(e){return e&&this.type(Fce(e)),this.set("Content-Disposition",N2(e)),this};$t.append=function(e,r){var n=this.get(e),i=r;return n&&(i=Array.isArray(n)?n.concat(r):Array.isArray(r)?[n].concat(r):[n,r]),this.set(e,i)};$t.set=$t.header=function(e,r){if(arguments.length===2){var n=Array.isArray(r)?r.map(String):String(r);if(e.toLowerCase()==="content-type"){if(Array.isArray(n))throw new TypeError("Content-Type cannot be set to an Array");if(!Zce.test(n)){var i=j2.charsets.lookup(n.split(";")[0]);i&&(n+="; charset="+i.toLowerCase())}}this.setHeader(e,n)}else for(var s in e)this.set(s,e[s]);return this};$t.get=function(t){return this.getHeader(t)};$t.clearCookie=function(e,r){r&&(r.maxAge&&mn('res.clearCookie: Passing "options.maxAge" is deprecated. In v5.0.0 of Express, this option will be ignored, as res.clearCookie will automatically set cookies to expire immediately. Please update your code to omit this option.'),r.expires&&mn('res.clearCookie: Passing "options.expires" is deprecated. In v5.0.0 of Express, this option will be ignored, as res.clearCookie will automatically set cookies to expire immediately. Please update your code to omit this option.'));var n=D2({expires:new Date(1),path:"/"},r);return this.cookie(e,"",n)};$t.cookie=function(t,e,r){var n=D2({},r),i=this.req.secret,s=n.signed;if(s&&!i)throw new Error('cookieParser("secret") required for signed cookies');var o=typeof e=="object"?"j:"+JSON.stringify(e):String(e);if(s&&(o="s:"+Dce(o,i)),n.maxAge!=null){var a=n.maxAge-0;isNaN(a)||(n.expires=new Date(Date.now()+a),n.maxAge=Math.floor(a/1e3))}return n.path==null&&(n.path="/"),this.append("Set-Cookie",Uce.serialize(t,String(o),n)),this};$t.location=function(e){var r;return e==="back"?(mn('res.location("back"): use res.location(req.get("Referrer") || "/") and refer to https://dub.sh/security-redirect for best practices'),r=this.req.get("Referrer")||"/"):r=String(e),this.set("Location",Cce(r))};$t.redirect=function(e){var r=e,n,i=302;arguments.length===2&&(typeof arguments[0]=="number"?(i=arguments[0],r=arguments[1]):(mn("res.redirect(url, status): Use res.redirect(status, url) instead"),i=arguments[1])),r=this.location(r).get("Location"),this.format({text:function(){n=fv.message[i]+". Redirecting to "+r},html:function(){var s=Pce(r);n="

"+fv.message[i]+". Redirecting to "+s+"

"},default:function(){n=""}}),this.statusCode=i,this.set("Content-Length",Sp.byteLength(n)),this.req.method==="HEAD"?this.end():this.end(n)};$t.vary=function(t){return!t||Array.isArray(t)&&!t.length?(mn("res.vary(): Provide a field name"),this):(Hce(this,t),this)};$t.render=function(e,r,n){var i=this.req.app,s=n,o=r||{},a=this.req,c=this;typeof r=="function"&&(s=r,o={}),o._locals=c.locals,s=s||function(u,l){if(u)return a.next(u);c.send(l)},i.render(e,o,s)};function z2(t,e,r,n){var i=!1,s;function o(){if(!i){i=!0;var f=new Error("Request aborted");f.code="ECONNABORTED",n(f)}}function a(){if(!i){i=!0;var f=new Error("EISDIR, read");f.code="EISDIR",n(f)}}function c(f){i||(i=!0,n(f))}function u(){i||(i=!0,n())}function l(){s=!1}function d(f){if(f&&f.code==="ECONNRESET")return o();if(f)return c(f);i||setImmediate(function(){if(s!==!1&&!i){o();return}i||(i=!0,n())})}function p(){s=!0}e.on("directory",a),e.on("end",u),e.on("error",c),e.on("file",l),e.on("stream",p),Mce(t,d),r.headers&&e.on("headers",function(m){for(var h=r.headers,g=Object.keys(h),v=0;v&]/g,function(s){switch(s.charCodeAt(0)){case 60:return"\\u003c";case 62:return"\\u003e";case 38:return"\\u0026";default:return s}})),i}});var H2=$((_Ne,ZT)=>{"use strict";var Bce=fp(),Gce=mp(),HT=Kc(),Wce=require("path").resolve,q2=ov(),Vce=require("url");ZT.exports=Kce;ZT.exports.mime=q2.mime;function Kce(t,e){if(!t)throw new TypeError("root path required");if(typeof t!="string")throw new TypeError("root path must be a string");var r=Object.create(e||null),n=r.fallthrough!==!1,i=r.redirect!==!1,s=r.setHeaders;if(s&&typeof s!="function")throw new TypeError("option setHeaders must be function");r.maxage=r.maxage||r.maxAge||0,r.root=Wce(t);var o=i?Qce():Yce();return function(c,u,l){if(c.method!=="GET"&&c.method!=="HEAD"){if(n)return l();u.statusCode=405,u.setHeader("Allow","GET, HEAD"),u.setHeader("Content-Length","0"),u.end();return}var d=!n,p=HT.original(c),f=HT(c).pathname;f==="/"&&p.pathname.substr(-1)!=="/"&&(f="");var m=q2(c,f,r);m.on("directory",o),s&&m.on("headers",s),n&&m.on("file",function(){d=!0}),m.on("error",function(g){if(d||!(g.statusCode<500)){l(g);return}l()}),m.pipe(u)}}function Jce(t){for(var e=0;e1?"/"+t.substr(e):t}function Xce(t,e){return` +`}function dae(t,e){return e?e instanceof Error?FT(t,e,{expose:!1}):FT(t,e):FT(t)}function pae(t){try{return decodeURIComponent(t)}catch{return-1}}function fae(t){return typeof t.getHeaderNames!="function"?Object.keys(t._headers||{}):t.getHeaderNames()}function r2(t,e){var r=typeof t.listenerCount!="function"?t.listeners(e).length:t.listenerCount(e);return r>0}function mae(t){return typeof t.headersSent!="boolean"?!!t._header:t.headersSent}function ZT(t,e){for(var r=[].concat(t||[]),n=0;n{"use strict";n2.exports=vae;function vae(t){if(!t)throw new TypeError("argument req is required");var e=_ae(t.headers["x-forwarded-for"]||""),r=yae(t),n=[r].concat(e);return n}function yae(t){return t.socket?t.socket.remoteAddress:t.connection.remoteAddress}function _ae(t){for(var e=t.length,r=[],n=t.length,i=t.length-1;i>=0;i--)switch(t.charCodeAt(i)){case 32:n===e&&(n=e=i);break;case 44:n!==e&&r.push(t.substring(n,e)),n=e=i;break;default:n=i;break}return n!==e&&r.push(t.substring(n,e)),r}});var o2=$((s2,Np)=>{(function(){var t,e,r,n,i,s,o,a,c;e={},a=this,typeof Np<"u"&&Np!==null&&Np.exports?Np.exports=e:a.ipaddr=e,o=function(u,l,d,p){var f,m;if(u.length!==l.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");for(f=0;p>0;){if(m=d-p,m<0&&(m=0),u[f]>>m!==l[f]>>m)return!1;p-=d,f+=1}return!0},e.subnetMatch=function(u,l,d){var p,f,m,h,g;d==null&&(d="unicast");for(m in l)for(h=l[m],h[0]&&!(h[0]instanceof Array)&&(h=[h]),p=0,f=h.length;p=0;d=p+=-1)if(f=this.octets[d],f in g){if(h=g[f],m&&h!==0)return null;h!==8&&(m=!0),l+=h}else return null;return 32-l},u})(),r="(0?\\d+|0x[a-f0-9]+)",n={fourOctet:new RegExp("^"+r+"\\."+r+"\\."+r+"\\."+r+"$","i"),longValue:new RegExp("^"+r+"$","i")},e.IPv4.parser=function(u){var l,d,p,f,m;if(d=function(h){return h[0]==="0"&&h[1]!=="x"?parseInt(h,8):parseInt(h)},l=u.match(n.fourOctet))return(function(){var h,g,v,y;for(v=l.slice(1,6),y=[],h=0,g=v.length;h4294967295||m<0)throw new Error("ipaddr: address outside defined range");return(function(){var h,g;for(g=[],f=h=0;h<=24;f=h+=8)g.push(m>>f&255);return g})().reverse()}else return null},e.IPv6=(function(){function u(l,d){var p,f,m,h,g,v;if(l.length===16)for(this.parts=[],p=f=0;f<=14;p=f+=2)this.parts.push(l[p]<<8|l[p+1]);else if(l.length===8)this.parts=l;else throw new Error("ipaddr: ipv6 part count should be 8 or 16");for(v=this.parts,m=0,h=v.length;md&&(l=p.index,d=p[0].length);return d<0?m:m.substring(0,l)+"::"+m.substring(l+d)},u.prototype.toByteArray=function(){var l,d,p,f,m;for(l=[],m=this.parts,d=0,p=m.length;d>8),l.push(f&255);return l},u.prototype.toNormalizedString=function(){var l,d,p;return l=(function(){var f,m,h,g;for(h=this.parts,g=[],f=0,m=h.length;f>8,l&255,d>>8,d&255])},u.prototype.prefixLengthFromSubnetMask=function(){var l,d,p,f,m,h,g;for(g={0:16,32768:15,49152:14,57344:13,61440:12,63488:11,64512:10,65024:9,65280:8,65408:7,65472:6,65504:5,65520:4,65528:3,65532:2,65534:1,65535:0},l=0,m=!1,d=p=7;p>=0;d=p+=-1)if(f=this.parts[d],f in g){if(h=g[f],m&&h!==0)return null;h!==16&&(m=!0),l+=h}else return null;return 128-l},u})(),i="(?:[0-9a-f]+::?)+",c="%[0-9a-z]{1,}",s={zoneIndex:new RegExp(c,"i"),native:new RegExp("^(::)?("+i+")?([0-9a-f]+)?(::)?("+c+")?$","i"),transitional:new RegExp("^((?:"+i+")|(?:::)(?:"+i+")?)"+(r+"\\."+r+"\\."+r+"\\."+r)+("("+c+")?$"),"i")},t=function(u,l){var d,p,f,m,h,g;if(u.indexOf("::")!==u.lastIndexOf("::"))return null;for(g=(u.match(s.zoneIndex)||[])[0],g&&(g=g.substring(1),u=u.replace(/%.+$/,"")),d=0,p=-1;(p=u.indexOf(":",p+1))>=0;)d++;if(u.substr(0,2)==="::"&&d--,u.substr(-2,2)==="::"&&d--,d>l)return null;for(h=l-d,m=":";h--;)m+="0:";return u=u.replace("::",m),u[0]===":"&&(u=u.slice(1)),u[u.length-1]===":"&&(u=u.slice(0,-1)),l=(function(){var v,y,b,S;for(b=u.split(":"),S=[],v=0,y=b.length;v=0&&l<=32))return p=[this.parse(d[1]),l],Object.defineProperty(p,"toString",{value:function(){return this.join("/")}}),p;throw new Error("ipaddr: string is not formatted like an IPv4 CIDR range")},e.IPv4.subnetMaskFromPrefixLength=function(u){var l,d,p;if(u=parseInt(u),u<0||u>32)throw new Error("ipaddr: invalid IPv4 prefix length");for(p=[0,0,0,0],d=0,l=Math.floor(u/8);d=0&&l<=128))return p=[this.parse(d[1]),l],Object.defineProperty(p,"toString",{value:function(){return this.join("/")}}),p;throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range")},e.isValid=function(u){return e.IPv6.isValid(u)||e.IPv4.isValid(u)},e.parse=function(u){if(e.IPv6.isValid(u))return e.IPv6.parse(u);if(e.IPv4.isValid(u))return e.IPv4.parse(u);throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format")},e.parseCIDR=function(u){var l;try{return e.IPv6.parseCIDR(u)}catch(d){l=d;try{return e.IPv4.parseCIDR(u)}catch(p){throw l=p,new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format")}}},e.fromByteArray=function(u){var l;if(l=u.length,l===4)return new e.IPv4(u);if(l===16)return new e.IPv6(u);throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address")},e.process=function(u){var l;return l=this.parse(u),l.kind()==="ipv6"&&l.isIPv4MappedAddress()?l.toIPv4Address():l}}).call(s2)});var WT=$((WNe,bv)=>{"use strict";bv.exports=Tae;bv.exports.all=u2;bv.exports.compile=l2;var bae=i2(),c2=o2(),Sae=/^[0-9]+$/,yv=c2.isValid,_v=c2.parse,a2={linklocal:["169.254.0.0/16","fe80::/10"],loopback:["127.0.0.1/8","::1/128"],uniquelocal:["10.0.0.0/8","172.16.0.0/12","192.168.0.0/16","fc00::/7"]};function u2(t,e){var r=bae(t);if(!e)return r;typeof e!="function"&&(e=l2(e));for(var n=0;ni)throw new TypeError("invalid range on address: "+t);return[n,s]}function kae(t){var e=_v(t),r=e.kind();return r==="ipv4"?e.prefixLengthFromSubnetMask():null}function Tae(t,e){if(!t)throw new TypeError("req argument is required");if(!e)throw new TypeError("trust argument is required");var r=u2(t,e),n=r[r.length-1];return n}function $ae(){return!1}function Iae(t){return function(r){if(!yv(r))return!1;for(var n=_v(r),i,s=n.kind(),o=0;o{"use strict";var d2=pv().Buffer,Oae=jT(),p2=ep(),f2=Vi()("express"),Cae=Op(),Pae=vv().mime,Aae=zT(),Nae=WT(),Mae=nv(),Dae=require("querystring");en.etag=m2({weak:!1});en.wetag=m2({weak:!0});en.isAbsolute=function(t){if(t[0]==="/"||t[1]===":"&&(t[2]==="\\"||t[2]==="/")||t.substring(0,2)==="\\\\")return!0};en.flatten=f2.function(Cae,"utils.flatten: use array-flatten npm module instead");en.normalizeType=function(t){return~t.indexOf("/")?jae(t):{value:Pae.lookup(t),params:{}}};en.normalizeTypes=function(t){for(var e=[],r=0;r{"use strict";var Uae=XL(),Fae=AT(),KT=av(),qae=wU(),Hae=NT(),Sv=Vn()("express:application"),Zae=RU(),Bae=require("http"),Gae=ko().compileETag,Wae=ko().compileQueryParser,Vae=ko().compileTrust,Kae=Vi()("express"),Jae=Op(),VT=Cp(),Xae=require("path").resolve,vu=tp(),Yae=Object.prototype.hasOwnProperty,XT=Array.prototype.slice,rr=h2=g2.exports={},JT="@@symbol:trust_proxy_default";rr.init=function(){this.cache={},this.engines={},this.settings={},this.defaultConfiguration()};rr.defaultConfiguration=function(){var e=process.env.NODE_ENV||"development";this.enable("x-powered-by"),this.set("etag","weak"),this.set("env",e),this.set("query parser","extended"),this.set("subdomain offset",2),this.set("trust proxy",!1),Object.defineProperty(this.settings,JT,{configurable:!0,value:!0}),Sv("booting in %s mode",e),this.on("mount",function(n){this.settings[JT]===!0&&typeof n.settings["trust proxy fn"]=="function"&&(delete this.settings["trust proxy"],delete this.settings["trust proxy fn"]),vu(this.request,n.request),vu(this.response,n.response),vu(this.engines,n.engines),vu(this.settings,n.settings)}),this.locals=Object.create(null),this.mountpath="/",this.locals.settings=this.settings,this.set("view",Zae),this.set("views",Xae("views")),this.set("jsonp callback name","callback"),e==="production"&&this.enable("view cache"),Object.defineProperty(this,"router",{get:function(){throw new Error(`'app.router' is deprecated! +Please see the 3.x to 4.x migration guide for details on how to update your app.`)}})};rr.lazyrouter=function(){this._router||(this._router=new Fae({caseSensitive:this.enabled("case sensitive routing"),strict:this.enabled("strict routing")}),this._router.use(Hae(this.get("query parser fn"))),this._router.use(qae.init(this)))};rr.handle=function(e,r,n){var i=this._router,s=n||Uae(e,r,{env:this.get("env"),onerror:Qae.bind(this)});if(!i){Sv("no routes defined on app"),s();return}i.handle(e,r,s)};rr.use=function(e){var r=0,n="/";if(typeof e!="function"){for(var i=e;Array.isArray(i)&&i.length!==0;)i=i[0];typeof i!="function"&&(r=1,n=e)}var s=Jae(XT.call(arguments,r));if(s.length===0)throw new TypeError("app.use() requires a middleware function");this.lazyrouter();var o=this._router;return s.forEach(function(a){if(!a||!a.handle||!a.set)return o.use(n,a);Sv(".use app under %s",n),a.mountpath=n,a.parent=this,o.use(n,function(u,l,d){var p=u.app;a.handle(u,l,function(f){vu(u,p.request),vu(l,p.response),d(f)})}),a.emit("mount",this)},this),this};rr.route=function(e){return this.lazyrouter(),this._router.route(e)};rr.engine=function(e,r){if(typeof r!="function")throw new Error("callback function required");var n=e[0]!=="."?"."+e:e;return this.engines[n]=r,this};rr.param=function(e,r){if(this.lazyrouter(),Array.isArray(e)){for(var n=0;n1?'directories "'+u.root.slice(0,-1).join('", "')+'" or "'+u.root[u.root.length-1]+'"':'directory "'+u.root+'"',p=new Error('Failed to lookup view "'+e+'" in views '+d);return p.view=u,s(p)}c.cache&&(i[e]=u)}ece(u,c,s)};rr.listen=function(){var e=Bae.createServer(this);return e.listen.apply(e,arguments)};function Qae(t){this.get("env")!=="test"&&console.error(t.stack||t.toString())}function ece(t,e,r){try{t.render(e,r)}catch(n){r(n)}}});var S2=$((KNe,YT)=>{"use strict";YT.exports=b2;YT.exports.preferredCharsets=b2;var tce=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function rce(t){for(var e=t.split(","),r=0,n=0;r0}});var T2=$((JNe,QT)=>{"use strict";QT.exports=k2;QT.exports.preferredEncodings=k2;var ace=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function cce(t){for(var e=t.split(","),r=!1,n=1,i=0,s=0;i0}});var C2=$((XNe,e$)=>{"use strict";e$.exports=O2;e$.exports.preferredLanguages=O2;var pce=/^\s*([^\s\-;]+)(?:-([^\s;]+))?\s*(?:;(.*))?$/;function fce(t){for(var e=t.split(","),r=0,n=0;r0}});var j2=$((YNe,t$)=>{"use strict";t$.exports=M2;t$.exports.preferredMediaTypes=M2;var vce=/^\s*([^\s\/;]+)\/([^;\s]+)\s*(?:;(.*))?$/;function yce(t){for(var e=wce(t),r=0,n=0;r0)if(s.every(function(o){return e.params[o]=="*"||(e.params[o]||"").toLowerCase()==(n.params[o]||"").toLowerCase()}))i|=1;else return null;return{i:r,o:e.i,q:e.q,s:i}}function M2(t,e){var r=yce(t===void 0?"*/*":t||"");if(!e)return r.filter(A2).sort(P2).map(Sce);var n=e.map(function(s,o){return _ce(s,r,o)});return n.filter(A2).sort(P2).map(function(s){return e[n.indexOf(s)]})}function P2(t,e){return e.q-t.q||e.s-t.s||t.o-e.o||t.i-e.i||0}function Sce(t){return t.type+"/"+t.subtype}function A2(t){return t.q>0}function D2(t){for(var e=0,r=0;(r=t.indexOf('"',r))!==-1;)e++,r++;return e}function xce(t){var e=t.indexOf("="),r,n;return e===-1?r=t:(r=t.substr(0,e),n=t.substr(e+1)),[r,n]}function wce(t){for(var e=t.split(","),r=1,n=0;r{"use strict";var kce=S2(),Tce=T2(),$ce=C2(),Ice=j2();r$.exports=_t;r$.exports.Negotiator=_t;function _t(t){if(!(this instanceof _t))return new _t(t);this.request=t}_t.prototype.charset=function(e){var r=this.charsets(e);return r&&r[0]};_t.prototype.charsets=function(e){return kce(this.request.headers["accept-charset"],e)};_t.prototype.encoding=function(e){var r=this.encodings(e);return r&&r[0]};_t.prototype.encodings=function(e){return Tce(this.request.headers["accept-encoding"],e)};_t.prototype.language=function(e){var r=this.languages(e);return r&&r[0]};_t.prototype.languages=function(e){return $ce(this.request.headers["accept-language"],e)};_t.prototype.mediaType=function(e){var r=this.mediaTypes(e);return r&&r[0]};_t.prototype.mediaTypes=function(e){return Ice(this.request.headers.accept,e)};_t.prototype.preferredCharset=_t.prototype.charset;_t.prototype.preferredCharsets=_t.prototype.charsets;_t.prototype.preferredEncoding=_t.prototype.encoding;_t.prototype.preferredEncodings=_t.prototype.encodings;_t.prototype.preferredLanguage=_t.prototype.language;_t.prototype.preferredLanguages=_t.prototype.languages;_t.prototype.preferredMediaType=_t.prototype.mediaType;_t.prototype.preferredMediaTypes=_t.prototype.mediaTypes});var U2=$((eMe,L2)=>{"use strict";var Rce=z2(),Oce=Jk();L2.exports=Pn;function Pn(t){if(!(this instanceof Pn))return new Pn(t);this.headers=t.headers,this.negotiator=new Rce(t)}Pn.prototype.type=Pn.prototype.types=function(t){var e=t;if(e&&!Array.isArray(e)){e=new Array(arguments.length);for(var r=0;r{"use strict";var xv=U2(),Mp=Vi()("express"),Ace=require("net").isIP,Nce=tu(),Mce=require("http"),Dce=LT(),jce=UT(),zce=uu(),F2=WT(),Et=Object.create(Mce.IncomingMessage.prototype);q2.exports=Et;Et.get=Et.header=function(e){if(!e)throw new TypeError("name argument is required to req.get");if(typeof e!="string")throw new TypeError("name must be a string to req.get");var r=e.toLowerCase();switch(r){case"referer":case"referrer":return this.headers.referrer||this.headers.referer;default:return this.headers[r]}};Et.accepts=function(){var t=xv(this);return t.types.apply(t,arguments)};Et.acceptsEncodings=function(){var t=xv(this);return t.encodings.apply(t,arguments)};Et.acceptsEncoding=Mp.function(Et.acceptsEncodings,"req.acceptsEncoding: Use acceptsEncodings instead");Et.acceptsCharsets=function(){var t=xv(this);return t.charsets.apply(t,arguments)};Et.acceptsCharset=Mp.function(Et.acceptsCharsets,"req.acceptsCharset: Use acceptsCharsets instead");Et.acceptsLanguages=function(){var t=xv(this);return t.languages.apply(t,arguments)};Et.acceptsLanguage=Mp.function(Et.acceptsLanguages,"req.acceptsLanguage: Use acceptsLanguages instead");Et.range=function(e,r){var n=this.get("Range");if(n)return jce(e,n,r)};Et.param=function(e,r){var n=this.params||{},i=this.body||{},s=this.query||{},o=arguments.length===1?"name":"name, default";return Mp("req.param("+o+"): Use req.params, req.body, or req.query instead"),n[e]!=null&&n.hasOwnProperty(e)?n[e]:i[e]!=null?i[e]:s[e]!=null?s[e]:r};Et.is=function(e){var r=e;if(!Array.isArray(e)){r=new Array(arguments.length);for(var n=0;n=200&&r<300||r===304?Dce(this.headers,{etag:e.get("ETag"),"last-modified":e.get("Last-Modified")}):!1});yi(Et,"stale",function(){return!this.fresh});yi(Et,"xhr",function(){var e=this.get("X-Requested-With")||"";return e.toLowerCase()==="xmlhttprequest"});function yi(t,e,r){Object.defineProperty(t,e,{configurable:!0,enumerable:!0,get:r})}});var G2=$(wv=>{var B2=require("crypto");wv.sign=function(t,e){if(typeof t!="string")throw new TypeError("Cookie value must be provided as a string.");if(e==null)throw new TypeError("Secret key must be provided.");return t+"."+B2.createHmac("sha256",e).update(t).digest("base64").replace(/\=+$/,"")};wv.unsign=function(t,e){if(typeof t!="string")throw new TypeError("Signed cookie string must be provided.");if(e==null)throw new TypeError("Secret key must be provided.");var r=t.slice(0,t.lastIndexOf(".")),n=wv.sign(r,e);return Z2(n)==Z2(t)?r:!1};function Z2(t){return B2.createHash("sha1").update(t).digest("hex")}});var K2=$(n$=>{"use strict";n$.parse=Bce;n$.serialize=Gce;var Lce=Object.prototype.toString,Uce=Object.prototype.hasOwnProperty,Fce=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,qce=/^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/,Hce=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,Zce=/^[\u0020-\u003A\u003D-\u007E]*$/;function Bce(t,e){if(typeof t!="string")throw new TypeError("argument str must be a string");var r={},n=t.length;if(n<2)return r;var i=e&&e.decode||Wce,s=0,o=0,a=0;do{if(o=t.indexOf("=",s),o===-1)break;if(a=t.indexOf(";",s),a===-1)a=n;else if(o>a){s=t.lastIndexOf(";",o-1)+1;continue}var c=W2(t,s,o),u=V2(t,o,c),l=t.slice(c,u);if(!Uce.call(r,l)){var d=W2(t,o+1,a),p=V2(t,a,d);t.charCodeAt(d)===34&&t.charCodeAt(p-1)===34&&(d++,p--);var f=t.slice(d,p);r[l]=Kce(f,i)}s=a+1}while(sr;){var n=t.charCodeAt(--e);if(n!==32&&n!==9)return e+1}return r}function Gce(t,e,r){var n=r&&r.encode||encodeURIComponent;if(typeof n!="function")throw new TypeError("option encode is invalid");if(!Fce.test(t))throw new TypeError("argument name is invalid");var i=n(e);if(!qce.test(i))throw new TypeError("argument val is invalid");var s=t+"="+i;if(!r)return s;if(r.maxAge!=null){var o=Math.floor(r.maxAge);if(!isFinite(o))throw new TypeError("option maxAge is invalid");s+="; Max-Age="+o}if(r.domain){if(!Hce.test(r.domain))throw new TypeError("option domain is invalid");s+="; Domain="+r.domain}if(r.path){if(!Zce.test(r.path))throw new TypeError("option path is invalid");s+="; Path="+r.path}if(r.expires){var a=r.expires;if(!Vce(a)||isNaN(a.valueOf()))throw new TypeError("option expires is invalid");s+="; Expires="+a.toUTCString()}if(r.httpOnly&&(s+="; HttpOnly"),r.secure&&(s+="; Secure"),r.partitioned&&(s+="; Partitioned"),r.priority){var c=typeof r.priority=="string"?r.priority.toLowerCase():r.priority;switch(c){case"low":s+="; Priority=Low";break;case"medium":s+="; Priority=Medium";break;case"high":s+="; Priority=High";break;default:throw new TypeError("option priority is invalid")}}if(r.sameSite){var u=typeof r.sameSite=="string"?r.sameSite.toLowerCase():r.sameSite;switch(u){case!0:s+="; SameSite=Strict";break;case"lax":s+="; SameSite=Lax";break;case"strict":s+="; SameSite=Strict";break;case"none":s+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return s}function Wce(t){return t.indexOf("%")!==-1?decodeURIComponent(t):t}function Vce(t){return Lce.call(t)==="[object Date]"}function Kce(t,e){try{return e(t)}catch{return t}}});var s$=$((iMe,i$)=>{"use strict";i$.exports=Xce;i$.exports.append=X2;var Jce=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;function X2(t,e){if(typeof t!="string")throw new TypeError("header argument is required");if(!e)throw new TypeError("field argument is required");for(var r=Array.isArray(e)?e:J2(String(e)),n=0;n{"use strict";var Dp=pv().Buffer,Y2=jT(),Yce=ca(),gn=Vi()("express"),Qce=Ip(),eue=Rp(),tue=require("http"),rue=ko().isAbsolute,nue=dp(),Q2=require("path"),Ev=rp(),e6=Cp(),iue=G2().sign,sue=ko().normalizeType,oue=ko().normalizeTypes,aue=ko().setCharset,cue=K2(),o$=vv(),uue=Q2.extname,t6=o$.mime,lue=Q2.resolve,due=s$(),Ot=Object.create(tue.ServerResponse.prototype);i6.exports=Ot;var pue=/;\s*charset\s*=/;Ot.status=function(e){return(typeof e=="string"||Math.floor(e)!==e)&&e>99&&e<1e3&&gn("res.status("+JSON.stringify(e)+"): use res.status("+Math.floor(e)+") instead"),this.statusCode=e,this};Ot.links=function(t){var e=this.get("Link")||"";return e&&(e+=", "),this.set("Link",e+Object.keys(t).map(function(r){return"<"+t[r]+'>; rel="'+r+'"'}).join(", "))};Ot.send=function(e){var r=e,n,i=this.req,s,o=this.app;switch(arguments.length===2&&(typeof arguments[0]!="number"&&typeof arguments[1]=="number"?(gn("res.send(body, status): Use res.status(status).send(body) instead"),this.statusCode=arguments[1]):(gn("res.send(status, body): Use res.status(status).send(body) instead"),this.statusCode=arguments[0],r=arguments[1])),typeof r=="number"&&arguments.length===1&&(this.get("Content-Type")||this.type("txt"),gn("res.send(status): Use res.sendStatus(status) instead"),this.statusCode=r,r=Ev.message[r]),typeof r){case"string":this.get("Content-Type")||this.type("html");break;case"boolean":case"number":case"object":if(r===null)r="";else if(Dp.isBuffer(r))this.get("Content-Type")||this.type("bin");else return this.json(r);break}typeof r=="string"&&(n="utf8",s=this.get("Content-Type"),typeof s=="string"&&this.set("Content-Type",aue(s,"utf-8")));var a=o.get("etag fn"),c=!this.get("ETag")&&typeof a=="function",u;r!==void 0&&(Dp.isBuffer(r)?u=r.length:!c&&r.length<1e3?u=Dp.byteLength(r,n):(r=Dp.from(r,n),n=void 0,u=r.length),this.set("Content-Length",u));var l;return c&&u!==void 0&&(l=a(r,n))&&this.set("ETag",l),i.fresh&&(this.statusCode=304),(this.statusCode===204||this.statusCode===304)&&(this.removeHeader("Content-Type"),this.removeHeader("Content-Length"),this.removeHeader("Transfer-Encoding"),r=""),this.statusCode===205&&(this.set("Content-Length","0"),this.removeHeader("Transfer-Encoding"),r=""),i.method==="HEAD"?this.end():this.end(r,n),this};Ot.json=function(e){var r=e;arguments.length===2&&(typeof arguments[1]=="number"?(gn("res.json(obj, status): Use res.status(status).json(obj) instead"),this.statusCode=arguments[1]):(gn("res.json(status, obj): Use res.status(status).json(obj) instead"),this.statusCode=arguments[0],r=arguments[1]));var n=this.app,i=n.get("json escape"),s=n.get("json replacer"),o=n.get("json spaces"),a=n6(r,s,o,i);return this.get("Content-Type")||this.set("Content-Type","application/json"),this.send(a)};Ot.jsonp=function(e){var r=e;arguments.length===2&&(typeof arguments[1]=="number"?(gn("res.jsonp(obj, status): Use res.status(status).jsonp(obj) instead"),this.statusCode=arguments[1]):(gn("res.jsonp(status, obj): Use res.status(status).jsonp(obj) instead"),this.statusCode=arguments[0],r=arguments[1]));var n=this.app,i=n.get("json escape"),s=n.get("json replacer"),o=n.get("json spaces"),a=n6(r,s,o,i),c=this.req.query[n.get("jsonp callback name")];return this.get("Content-Type")||(this.set("X-Content-Type-Options","nosniff"),this.set("Content-Type","application/json")),Array.isArray(c)&&(c=c[0]),typeof c=="string"&&c.length!==0&&(this.set("X-Content-Type-Options","nosniff"),this.set("Content-Type","text/javascript"),c=c.replace(/[^\[\]\w$.]/g,""),a===void 0?a="":typeof a=="string"&&(a=a.replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")),a="/**/ typeof "+c+" === 'function' && "+c+"("+a+");"),this.send(a)};Ot.sendStatus=function(e){var r=Ev.message[e]||String(e);return this.statusCode=e,this.type("txt"),this.send(r)};Ot.sendFile=function(e,r,n){var i=n,s=this.req,o=this,a=s.next,c=r||{};if(!e)throw new TypeError("path argument is required to res.sendFile");if(typeof e!="string")throw new TypeError("path must be a string to res.sendFile");if(typeof r=="function"&&(i=r,c={}),!c.root&&!rue(e))throw new TypeError("path must be absolute or specify root to res.sendFile");var u=encodeURI(e),l=o$(s,u,c);r6(o,l,c,function(d){if(i)return i(d);if(d&&d.code==="EISDIR")return a();d&&d.code!=="ECONNABORTED"&&d.syscall!=="write"&&a(d)})};Ot.sendfile=function(t,e,r){var n=r,i=this.req,s=this,o=i.next,a=e||{};typeof e=="function"&&(n=e,a={});var c=o$(i,t,a);r6(s,c,a,function(u){if(n)return n(u);if(u&&u.code==="EISDIR")return o();u&&u.code!=="ECONNABORTED"&&u.syscall!=="write"&&o(u)})};Ot.sendfile=gn.function(Ot.sendfile,"res.sendfile: Use res.sendFile instead");Ot.download=function(e,r,n,i){var s=i,o=r,a=n||null;typeof r=="function"?(s=r,o=null,a=null):typeof n=="function"&&(s=n,a=null),typeof r=="object"&&(typeof n=="function"||n===void 0)&&(o=null,a=r);var c={"Content-Disposition":Y2(o||e)};if(a&&a.headers)for(var u=Object.keys(a.headers),l=0;l0?e.accepts(n):!1;return this.vary("Accept"),i?(this.set("Content-Type",sue(i).value),t[i](e,this,r)):t.default?t.default(e,this,r):r(Yce(406,{types:oue(n).map(function(s){return s.value})})),this};Ot.attachment=function(e){return e&&this.type(uue(e)),this.set("Content-Disposition",Y2(e)),this};Ot.append=function(e,r){var n=this.get(e),i=r;return n&&(i=Array.isArray(n)?n.concat(r):Array.isArray(r)?[n].concat(r):[n,r]),this.set(e,i)};Ot.set=Ot.header=function(e,r){if(arguments.length===2){var n=Array.isArray(r)?r.map(String):String(r);if(e.toLowerCase()==="content-type"){if(Array.isArray(n))throw new TypeError("Content-Type cannot be set to an Array");if(!pue.test(n)){var i=t6.charsets.lookup(n.split(";")[0]);i&&(n+="; charset="+i.toLowerCase())}}this.setHeader(e,n)}else for(var s in e)this.set(s,e[s]);return this};Ot.get=function(t){return this.getHeader(t)};Ot.clearCookie=function(e,r){r&&(r.maxAge&&gn('res.clearCookie: Passing "options.maxAge" is deprecated. In v5.0.0 of Express, this option will be ignored, as res.clearCookie will automatically set cookies to expire immediately. Please update your code to omit this option.'),r.expires&&gn('res.clearCookie: Passing "options.expires" is deprecated. In v5.0.0 of Express, this option will be ignored, as res.clearCookie will automatically set cookies to expire immediately. Please update your code to omit this option.'));var n=e6({expires:new Date(1),path:"/"},r);return this.cookie(e,"",n)};Ot.cookie=function(t,e,r){var n=e6({},r),i=this.req.secret,s=n.signed;if(s&&!i)throw new Error('cookieParser("secret") required for signed cookies');var o=typeof e=="object"?"j:"+JSON.stringify(e):String(e);if(s&&(o="s:"+iue(o,i)),n.maxAge!=null){var a=n.maxAge-0;isNaN(a)||(n.expires=new Date(Date.now()+a),n.maxAge=Math.floor(a/1e3))}return n.path==null&&(n.path="/"),this.append("Set-Cookie",cue.serialize(t,String(o),n)),this};Ot.location=function(e){var r;return e==="back"?(gn('res.location("back"): use res.location(req.get("Referrer") || "/") and refer to https://dub.sh/security-redirect for best practices'),r=this.req.get("Referrer")||"/"):r=String(e),this.set("Location",Qce(r))};Ot.redirect=function(e){var r=e,n,i=302;arguments.length===2&&(typeof arguments[0]=="number"?(i=arguments[0],r=arguments[1]):(gn("res.redirect(url, status): Use res.redirect(status, url) instead"),i=arguments[1])),r=this.location(r).get("Location"),this.format({text:function(){n=Ev.message[i]+". Redirecting to "+r},html:function(){var s=eue(r);n="

"+Ev.message[i]+". Redirecting to "+s+"

"},default:function(){n=""}}),this.statusCode=i,this.set("Content-Length",Dp.byteLength(n)),this.req.method==="HEAD"?this.end():this.end(n)};Ot.vary=function(t){return!t||Array.isArray(t)&&!t.length?(gn("res.vary(): Provide a field name"),this):(due(this,t),this)};Ot.render=function(e,r,n){var i=this.req.app,s=n,o=r||{},a=this.req,c=this;typeof r=="function"&&(s=r,o={}),o._locals=c.locals,s=s||function(u,l){if(u)return a.next(u);c.send(l)},i.render(e,o,s)};function r6(t,e,r,n){var i=!1,s;function o(){if(!i){i=!0;var f=new Error("Request aborted");f.code="ECONNABORTED",n(f)}}function a(){if(!i){i=!0;var f=new Error("EISDIR, read");f.code="EISDIR",n(f)}}function c(f){i||(i=!0,n(f))}function u(){i||(i=!0,n())}function l(){s=!1}function d(f){if(f&&f.code==="ECONNRESET")return o();if(f)return c(f);i||setImmediate(function(){if(s!==!1&&!i){o();return}i||(i=!0,n())})}function p(){s=!0}e.on("directory",a),e.on("end",u),e.on("error",c),e.on("file",l),e.on("stream",p),nue(t,d),r.headers&&e.on("headers",function(m){for(var h=r.headers,g=Object.keys(h),v=0;v&]/g,function(s){switch(s.charCodeAt(0)){case 60:return"\\u003c";case 62:return"\\u003e";case 38:return"\\u0026";default:return s}})),i}});var a6=$((oMe,c$)=>{"use strict";var fue=Ip(),mue=Rp(),a$=uu(),hue=require("path").resolve,o6=vv(),gue=require("url");c$.exports=vue;c$.exports.mime=o6.mime;function vue(t,e){if(!t)throw new TypeError("root path required");if(typeof t!="string")throw new TypeError("root path must be a string");var r=Object.create(e||null),n=r.fallthrough!==!1,i=r.redirect!==!1,s=r.setHeaders;if(s&&typeof s!="function")throw new TypeError("option setHeaders must be function");r.maxage=r.maxage||r.maxAge||0,r.root=hue(t);var o=i?Sue():bue();return function(c,u,l){if(c.method!=="GET"&&c.method!=="HEAD"){if(n)return l();u.statusCode=405,u.setHeader("Allow","GET, HEAD"),u.setHeader("Content-Length","0"),u.end();return}var d=!n,p=a$.original(c),f=a$(c).pathname;f==="/"&&p.pathname.substr(-1)!=="/"&&(f="");var m=o6(c,f,r);m.on("directory",o),s&&m.on("headers",s),n&&m.on("file",function(){d=!0}),m.on("error",function(g){if(d||!(g.statusCode<500)){l(g);return}l()}),m.pipe(u)}}function yue(t){for(var e=0;e1?"/"+t.substr(e):t}function _ue(t,e){return` @@ -660,14 +714,14 @@ Please see the 3.x to 4.x migration guide for details on how to update your app.
`+e+`
-`}function Yce(){return function(){this.error(404)}}function Qce(){return function(e){if(this.hasTrailingSlash()){this.error(404);return}var r=HT.original(this.req);r.path=null,r.pathname=Jce(r.pathname+"/");var n=Bce(Vce.format(r)),i=Xce("Redirecting","Redirecting to "+Gce(n));e.statusCode=301,e.setHeader("Content-Type","text/html; charset=UTF-8"),e.setHeader("Content-Length",Buffer.byteLength(i)),e.setHeader("Content-Security-Policy","default-src 'none'"),e.setHeader("X-Content-Type-Options","nosniff"),e.setHeader("Location",n),e.end(i)}}});var K2=$((hn,V2)=>{"use strict";var mv=_L(),eue=require("events").EventEmitter,Z2=SL(),B2=QU(),tue=fT(),rue=hT(),G2=k2(),W2=F2();hn=V2.exports=nue;function nue(){var t=function(e,r,n){t.handle(e,r,n)};return Z2(t,eue.prototype,!1),Z2(t,B2,!1),t.request=Object.create(G2,{app:{configurable:!0,enumerable:!0,writable:!0,value:t}}),t.response=Object.create(W2,{app:{configurable:!0,enumerable:!0,writable:!0,value:t}}),t.init(),t}hn.application=B2;hn.request=G2;hn.response=W2;hn.Route=tue;hn.Router=rue;hn.json=mv.json;hn.query=gT();hn.raw=mv.raw;hn.static=H2();hn.text=mv.text;hn.urlencoded=mv.urlencoded;var iue=["bodyParser","compress","cookieSession","session","logger","cookieParser","favicon","responseTime","errorHandler","timeout","methodOverride","vhost","csrf","directory","limit","multipart","staticCache"];iue.forEach(function(t){Object.defineProperty(hn,t,{get:function(){throw new Error("Most middleware (like "+t+") is no longer bundled with Express and must be installed separately. Please see https://github.com/senchalabs/connect#middleware.")},configurable:!0})})});var hv=$((bNe,J2)=>{"use strict";J2.exports=K2()});var t6=$((xNe,e6)=>{"use strict";var Q2=Object.getOwnPropertySymbols,sue=Object.prototype.hasOwnProperty,oue=Object.prototype.propertyIsEnumerable;function aue(t){if(t==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}function cue(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de",Object.getOwnPropertyNames(t)[0]==="5")return!1;for(var e={},r=0;r<10;r++)e["_"+String.fromCharCode(r)]=r;var n=Object.getOwnPropertyNames(e).map(function(s){return e[s]});if(n.join("")!=="0123456789")return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(s){i[s]=s}),Object.keys(Object.assign({},i)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}e6.exports=cue()?Object.assign:function(t,e){for(var r,n=aue(t),i,s=1;s{(function(){"use strict";var t=t6(),e=FT(),r={origin:"*",methods:"GET,HEAD,PUT,PATCH,POST,DELETE",preflightContinue:!1,optionsSuccessStatus:204};function n(m){return typeof m=="string"||m instanceof String}function i(m,h){if(Array.isArray(h)){for(var g=0;g{"use strict"});var ou={};_n(ou,{PendingMessageStore:()=>$p});var wue,$p,ha=Oe(()=>{"use strict";re();wue=6e4,$p=class{db;maxRetries;constructor(e,r=3){this.db=e,this.maxRetries=r}enqueue(e,r,n){let i=Date.now();return this.db.prepare(` +`}function bue(){return function(){this.error(404)}}function Sue(){return function(e){if(this.hasTrailingSlash()){this.error(404);return}var r=a$.original(this.req);r.path=null,r.pathname=yue(r.pathname+"/");var n=fue(gue.format(r)),i=_ue("Redirecting","Redirecting to "+mue(n));e.statusCode=301,e.setHeader("Content-Type","text/html; charset=UTF-8"),e.setHeader("Content-Length",Buffer.byteLength(i)),e.setHeader("Content-Security-Policy","default-src 'none'"),e.setHeader("X-Content-Type-Options","nosniff"),e.setHeader("Location",n),e.end(i)}}});var f6=$((vn,p6)=>{"use strict";var kv=jL(),xue=require("events").EventEmitter,c6=LL(),u6=v2(),wue=CT(),Eue=AT(),l6=H2(),d6=s6();vn=p6.exports=kue;function kue(){var t=function(e,r,n){t.handle(e,r,n)};return c6(t,xue.prototype,!1),c6(t,u6,!1),t.request=Object.create(l6,{app:{configurable:!0,enumerable:!0,writable:!0,value:t}}),t.response=Object.create(d6,{app:{configurable:!0,enumerable:!0,writable:!0,value:t}}),t.init(),t}vn.application=u6;vn.request=l6;vn.response=d6;vn.Route=wue;vn.Router=Eue;vn.json=kv.json;vn.query=NT();vn.raw=kv.raw;vn.static=a6();vn.text=kv.text;vn.urlencoded=kv.urlencoded;var Tue=["bodyParser","compress","cookieSession","session","logger","cookieParser","favicon","responseTime","errorHandler","timeout","methodOverride","vhost","csrf","directory","limit","multipart","staticCache"];Tue.forEach(function(t){Object.defineProperty(vn,t,{get:function(){throw new Error("Most middleware (like "+t+") is no longer bundled with Express and must be installed separately. Please see https://github.com/senchalabs/connect#middleware.")},configurable:!0})})});var Tv=$((aMe,m6)=>{"use strict";m6.exports=f6()});var _6=$((uMe,y6)=>{"use strict";var v6=Object.getOwnPropertySymbols,$ue=Object.prototype.hasOwnProperty,Iue=Object.prototype.propertyIsEnumerable;function Rue(t){if(t==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}function Oue(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de",Object.getOwnPropertyNames(t)[0]==="5")return!1;for(var e={},r=0;r<10;r++)e["_"+String.fromCharCode(r)]=r;var n=Object.getOwnPropertyNames(e).map(function(s){return e[s]});if(n.join("")!=="0123456789")return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(s){i[s]=s}),Object.keys(Object.assign({},i)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}y6.exports=Oue()?Object.assign:function(t,e){for(var r,n=Rue(t),i,s=1;s{(function(){"use strict";var t=_6(),e=s$(),r={origin:"*",methods:"GET,HEAD,PUT,PATCH,POST,DELETE",preflightContinue:!1,optionsSuccessStatus:204};function n(m){return typeof m=="string"||m instanceof String}function i(m,h){if(Array.isArray(h)){for(var g=0;g{"use strict"});var _u={};wn(_u,{PendingMessageStore:()=>qp});var Bue,qp,Ea=we(()=>{"use strict";re();Bue=6e4,qp=class{db;maxRetries;constructor(e,r=3){this.db=e,this.maxRetries=r}enqueue(e,r,n){let i=Date.now();return this.db.prepare(` INSERT INTO pending_messages ( session_db_id, content_session_id, message_type, tool_name, tool_input, tool_response, cwd, last_assistant_message, prompt_number, status, retry_count, created_at_epoch ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, 'pending', 0, ?) - `).run(e,r,n.type,n.tool_name||null,n.tool_input?JSON.stringify(n.tool_input):null,n.tool_response?JSON.stringify(n.tool_response):null,n.cwd||null,n.last_assistant_message||null,n.prompt_number||null,i).lastInsertRowid}claimNextMessage(e){return this.db.transaction(n=>{let i=Date.now(),s=i-wue,a=this.db.prepare(` + `).run(e,r,n.type,n.tool_name||null,n.tool_input?JSON.stringify(n.tool_input):null,n.tool_response?JSON.stringify(n.tool_response):null,n.cwd||null,n.last_assistant_message||null,n.prompt_number||null,i).lastInsertRowid}claimNextMessage(e){return this.db.transaction(n=>{let i=Date.now(),s=i-Bue,a=this.db.prepare(` UPDATE pending_messages SET status = 'pending', started_processing_at_epoch = NULL WHERE session_db_id = ? AND status = 'processing' @@ -772,63 +826,115 @@ Please see the 3.x to 4.x migration guide for details on how to update your app. `).run().changes}clearAll(){return this.db.prepare(` DELETE FROM pending_messages WHERE status IN ('pending', 'processing', 'failed') - `).run().changes}toPendingMessage(e){return{type:e.message_type,tool_name:e.tool_name||void 0,tool_input:e.tool_input?JSON.parse(e.tool_input):void 0,tool_response:e.tool_response?JSON.parse(e.tool_response):void 0,prompt_number:e.prompt_number||void 0,cwd:e.cwd||void 0,last_assistant_message:e.last_assistant_message||void 0}}}});var N6={};_n(N6,{ModeManager:()=>He});var Op,Tv,He,Qr=Oe(()=>{"use strict";Op=require("fs"),Tv=require("path");re();zt();He=class t{static instance=null;activeMode=null;modesDir;constructor(){let e=dn(),r=[(0,Tv.join)(e,"modes"),(0,Tv.join)(e,"..","plugin","modes")],n=r.find(i=>(0,Op.existsSync)(i));this.modesDir=n||r[0]}static getInstance(){return t.instance||(t.instance=new t),t.instance}parseInheritance(e){let r=e.split("--");if(r.length===1)return{hasParent:!1,parentId:"",overrideId:""};if(r.length>2)throw new Error(`Invalid mode inheritance: ${e}. Only one level of inheritance supported (parent--override)`);return{hasParent:!0,parentId:r[0],overrideId:e}}isPlainObject(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}deepMerge(e,r){let n={...e};for(let i in r){let s=r[i],o=e[i];this.isPlainObject(s)&&this.isPlainObject(o)?n[i]=this.deepMerge(o,s):n[i]=s}return n}loadModeFile(e){let r=(0,Tv.join)(this.modesDir,`${e}.json`);if(!(0,Op.existsSync)(r))throw new Error(`Mode file not found: ${r}`);let n=(0,Op.readFileSync)(r,"utf-8");return JSON.parse(n)}loadMode(e){let r=this.parseInheritance(e);if(!r.hasParent)try{let c=this.loadModeFile(e);return this.activeMode=c,_.debug("SYSTEM",`Loaded mode: ${c.name} (${e})`,void 0,{types:c.observation_types.map(u=>u.id),concepts:c.observation_concepts.map(u=>u.id)}),c}catch{if(_.warn("SYSTEM",`Mode file not found: ${e}, falling back to 'code'`),e==="code")throw new Error("Critical: code.json mode file missing");return this.loadMode("code")}let{parentId:n,overrideId:i}=r,s;try{s=this.loadMode(n)}catch{_.warn("SYSTEM",`Parent mode '${n}' not found for ${e}, falling back to 'code'`),s=this.loadMode("code")}let o;try{o=this.loadModeFile(i),_.debug("SYSTEM",`Loaded override file: ${i} for parent ${n}`)}catch{return _.warn("SYSTEM",`Override file '${i}' not found, using parent mode '${n}' only`),this.activeMode=s,s}if(!o)return _.warn("SYSTEM",`Invalid override file: ${i}, using parent mode '${n}' only`),this.activeMode=s,s;let a=this.deepMerge(s,o);return this.activeMode=a,_.debug("SYSTEM",`Loaded mode with inheritance: ${a.name} (${e} = ${n} + ${i})`,void 0,{parent:n,override:i,types:a.observation_types.map(c=>c.id),concepts:a.observation_concepts.map(c=>c.id)}),a}getActiveMode(){if(!this.activeMode)throw new Error("No mode loaded. Call loadMode() first.");return this.activeMode}getObservationTypes(){return this.getActiveMode().observation_types}getObservationConcepts(){return this.getActiveMode().observation_concepts}getTypeIcon(e){return this.getObservationTypes().find(n=>n.id===e)?.emoji||"\u{1F4DD}"}getWorkEmoji(e){return this.getObservationTypes().find(n=>n.id===e)?.work_emoji||"\u{1F4DD}"}validateType(e){return this.getObservationTypes().some(r=>r.id===e)}getTypeLabel(e){return this.getObservationTypes().find(n=>n.id===e)?.label||e}}});function Iv(t){if(!t)return[];try{let e=JSON.parse(t);return Array.isArray(e)?e:[]}catch(e){return _.debug("PARSER","Failed to parse JSON array, using empty fallback",{preview:t?.substring(0,50)},e),[]}}function Rn(t){return new Date(t).toLocaleString("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit",hour12:!0})}function pr(t){return new Date(t).toLocaleString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}function Rs(t){return new Date(t).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric"})}function j6(t,e){return r$.default.isAbsolute(t)?r$.default.relative(e,t):t}function vi(t,e,r){let n=Iv(t);if(n.length>0)return j6(n[0],e);if(r){let i=Iv(r);if(i.length>0)return j6(i[0],e)}return"General"}function du(t){return t?Math.ceil(t.length/4):0}function Os(t,e){let r=new Map;for(let i of t){let s=e(i),o=Rs(s);r.has(o)||r.set(o,[]),r.get(o).push(i)}let n=Array.from(r.entries()).sort((i,s)=>{let o=new Date(i[0]).getTime(),a=new Date(s[0]).getTime();return o-a});return new Map(n)}var r$,ga=Oe(()=>{"use strict";r$=Pe(require("path"),1);re()});function x9(t){let e=by.default.join(t,".git"),r;try{r=(0,Sy.statSync)(e)}catch{return uf}if(!r.isFile())return uf;let n;try{n=(0,Sy.readFileSync)(e,"utf-8").trim()}catch{return uf}let i=n.match(/^gitdir:\s*(.+)$/);if(!i)return uf;let o=i[1].match(/^(.+)[/\\]\.git[/\\]worktrees[/\\]([^/\\]+)$/);if(!o)return uf;let a=o[1],c=by.default.basename(t),u=by.default.basename(a);return{isWorktree:!0,worktreeName:c,parentRepoPath:a,parentProjectName:u}}var Sy,by,uf,w9=Oe(()=>{"use strict";Sy=require("fs"),by=Pe(require("path"),1),uf={isWorktree:!1,worktreeName:null,parentRepoPath:null,parentProjectName:null}});function Ta(t){if(!t||t.trim()==="")return _.warn("PROJECT_NAME","Empty cwd provided, using fallback",{cwd:t}),"unknown-project";let e=E9.default.basename(t);if(e===""){if(process.platform==="win32"){let n=t.match(/^([A-Z]):\\/i);if(n){let s=`drive-${n[1].toUpperCase()}`;return _.info("PROJECT_NAME","Drive root detected",{cwd:t,projectName:s}),s}}return _.warn("PROJECT_NAME","Root directory detected, using fallback",{cwd:t}),"unknown-project"}return e}function xy(t){let e=Ta(t);if(!t)return{primary:e,parent:null,isWorktree:!1,allProjects:[e]};let r=x9(t);return r.isWorktree&&r.parentProjectName?{primary:e,parent:r.parentProjectName,isWorktree:!0,allProjects:[r.parentProjectName,e]}:{primary:e,parent:null,isWorktree:!1,allProjects:[e]}}var E9,lf=Oe(()=>{"use strict";E9=Pe(require("path"),1);re();w9()});function eI(){let t=k9.default.join((0,T9.homedir)(),".claude-mem","settings.json"),e=Se.loadFromFile(t),r=He.getInstance().getActiveMode(),n=new Set(r.observation_types.map(s=>s.id)),i=new Set(r.observation_concepts.map(s=>s.id));return{totalObservationCount:parseInt(e.CLAUDE_MEM_CONTEXT_OBSERVATIONS,10),fullObservationCount:parseInt(e.CLAUDE_MEM_CONTEXT_FULL_COUNT,10),sessionCount:parseInt(e.CLAUDE_MEM_CONTEXT_SESSION_COUNT,10),showReadTokens:e.CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS==="true",showWorkTokens:e.CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS==="true",showSavingsAmount:e.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT==="true",showSavingsPercent:e.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT==="true",observationTypes:n,observationConcepts:i,fullObservationField:e.CLAUDE_MEM_CONTEXT_FULL_FIELD,showLastSummary:e.CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY==="true",showLastMessage:e.CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE==="true"}}var k9,T9,tI=Oe(()=>{"use strict";k9=Pe(require("path"),1),T9=require("os");rr();Qr()});var Y,$9,rI,df=Oe(()=>{"use strict";Y={reset:"\x1B[0m",bright:"\x1B[1m",dim:"\x1B[2m",cyan:"\x1B[36m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",gray:"\x1B[90m",red:"\x1B[31m"},$9=4,rI=1});function nI(t){let e=(t.title?.length||0)+(t.subtitle?.length||0)+(t.narrative?.length||0)+JSON.stringify(t.facts||[]).length;return Math.ceil(e/$9)}function iI(t){let e=t.length,r=t.reduce((o,a)=>o+nI(a),0),n=t.reduce((o,a)=>o+(a.discovery_tokens||0),0),i=n-r,s=n>0?Math.round(i/n*100):0;return{totalObservations:e,totalReadTokens:r,totalDiscoveryTokens:n,savings:i,savingsPercent:s}}function b_e(t){return He.getInstance().getWorkEmoji(t)}function pf(t,e){let r=nI(t),n=t.discovery_tokens||0,i=b_e(t.type),s=n>0?`${i} ${n.toLocaleString()}`:"-";return{readTokens:r,discoveryTokens:n,discoveryDisplay:s,workEmoji:i}}function wy(t){return t.showReadTokens||t.showWorkTokens||t.showSavingsAmount||t.showSavingsPercent}var $a=Oe(()=>{"use strict";df();Qr()});function sI(t,e,r){let n=Array.from(r.observationTypes),i=n.map(()=>"?").join(","),s=Array.from(r.observationConcepts),o=s.map(()=>"?").join(",");return t.db.prepare(` + `).run().changes}toPendingMessage(e){return{type:e.message_type,tool_name:e.tool_name||void 0,tool_input:e.tool_input?JSON.parse(e.tool_input):void 0,tool_response:e.tool_response?JSON.parse(e.tool_response):void 0,prompt_number:e.prompt_number||void 0,cwd:e.cwd||void 0,last_assistant_message:e.last_assistant_message||void 0}}}});var Y6={};wn(Y6,{ModeManager:()=>He});var Bp,jv,He,tn=we(()=>{"use strict";Bp=require("fs"),jv=require("path");re();It();He=class t{static instance=null;activeMode=null;modesDir;constructor(){let e=fn(),r=[(0,jv.join)(e,"modes"),(0,jv.join)(e,"..","plugin","modes")],n=r.find(i=>(0,Bp.existsSync)(i));this.modesDir=n||r[0]}static getInstance(){return t.instance||(t.instance=new t),t.instance}parseInheritance(e){let r=e.split("--");if(r.length===1)return{hasParent:!1,parentId:"",overrideId:""};if(r.length>2)throw new Error(`Invalid mode inheritance: ${e}. Only one level of inheritance supported (parent--override)`);return{hasParent:!0,parentId:r[0],overrideId:e}}isPlainObject(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}deepMerge(e,r){let n={...e};for(let i in r){let s=r[i],o=e[i];this.isPlainObject(s)&&this.isPlainObject(o)?n[i]=this.deepMerge(o,s):n[i]=s}return n}loadModeFile(e){let r=(0,jv.join)(this.modesDir,`${e}.json`);if(!(0,Bp.existsSync)(r))throw new Error(`Mode file not found: ${r}`);let n=(0,Bp.readFileSync)(r,"utf-8");return JSON.parse(n)}loadMode(e){let r=this.parseInheritance(e);if(!r.hasParent)try{let c=this.loadModeFile(e);return this.activeMode=c,_.debug("SYSTEM",`Loaded mode: ${c.name} (${e})`,void 0,{types:c.observation_types.map(u=>u.id),concepts:c.observation_concepts.map(u=>u.id)}),c}catch{if(_.warn("SYSTEM",`Mode file not found: ${e}, falling back to 'code'`),e==="code")throw new Error("Critical: code.json mode file missing");return this.loadMode("code")}let{parentId:n,overrideId:i}=r,s;try{s=this.loadMode(n)}catch{_.warn("SYSTEM",`Parent mode '${n}' not found for ${e}, falling back to 'code'`),s=this.loadMode("code")}let o;try{o=this.loadModeFile(i),_.debug("SYSTEM",`Loaded override file: ${i} for parent ${n}`)}catch{return _.warn("SYSTEM",`Override file '${i}' not found, using parent mode '${n}' only`),this.activeMode=s,s}if(!o)return _.warn("SYSTEM",`Invalid override file: ${i}, using parent mode '${n}' only`),this.activeMode=s,s;let a=this.deepMerge(s,o);return this.activeMode=a,_.debug("SYSTEM",`Loaded mode with inheritance: ${a.name} (${e} = ${n} + ${i})`,void 0,{parent:n,override:i,types:a.observation_types.map(c=>c.id),concepts:a.observation_concepts.map(c=>c.id)}),a}getActiveMode(){if(!this.activeMode)throw new Error("No mode loaded. Call loadMode() first.");return this.activeMode}getObservationTypes(){return this.getActiveMode().observation_types}getObservationConcepts(){return this.getActiveMode().observation_concepts}getTypeIcon(e){return this.getObservationTypes().find(n=>n.id===e)?.emoji||"\u{1F4DD}"}getWorkEmoji(e){return this.getObservationTypes().find(n=>n.id===e)?.work_emoji||"\u{1F4DD}"}validateType(e){return this.getObservationTypes().some(r=>r.id===e)}getTypeLabel(e){return this.getObservationTypes().find(n=>n.id===e)?.label||e}}});function ka(t){if(!t)return[];try{let e=JSON.parse(t);return Array.isArray(e)?e:[]}catch(e){return _.debug("PARSER","Failed to parse JSON array, using empty fallback",{preview:t?.substring(0,50)},e),[]}}function An(t){return new Date(t).toLocaleString("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit",hour12:!0})}function hr(t){return new Date(t).toLocaleString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}function Ns(t){return new Date(t).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric"})}function tF(t,e){return b$.default.isAbsolute(t)?b$.default.relative(e,t):t}function Si(t,e,r){let n=ka(t);if(n.length>0)return tF(n[0],e);if(r){let i=ka(r);if(i.length>0)return tF(i[0],e)}return"General"}function Ms(t){return t?Math.ceil(t.length/4):0}function Ds(t,e){let r=new Map;for(let i of t){let s=e(i),o=Ns(s);r.has(o)||r.set(o,[]),r.get(o).push(i)}let n=Array.from(r.entries()).sort((i,s)=>{let o=new Date(i[0]).getTime(),a=new Date(s[0]).getTime();return o-a});return new Map(n)}var b$,js=we(()=>{"use strict";b$=Pe(require("path"),1);re()});function z8(t){let e=Wy.default.join(t,".git"),r;try{r=(0,Vy.statSync)(e)}catch{return Ff}if(!r.isFile())return Ff;let n;try{n=(0,Vy.readFileSync)(e,"utf-8").trim()}catch{return Ff}let i=n.match(/^gitdir:\s*(.+)$/);if(!i)return Ff;let o=i[1].match(/^(.+)[/\\]\.git[/\\]worktrees[/\\]([^/\\]+)$/);if(!o)return Ff;let a=o[1],c=Wy.default.basename(t),u=Wy.default.basename(a);return{isWorktree:!0,worktreeName:c,parentRepoPath:a,parentProjectName:u}}var Vy,Wy,Ff,L8=we(()=>{"use strict";Vy=require("fs"),Wy=Pe(require("path"),1),Ff={isWorktree:!1,worktreeName:null,parentRepoPath:null,parentProjectName:null}});function q8(t){return t==="~"||t.startsWith("~/")?t.replace(/^~/,(0,U8.homedir)()):t}function Xs(t){if(!t||t.trim()==="")return _.warn("PROJECT_NAME","Empty cwd provided, using fallback",{cwd:t}),"unknown-project";let e=q8(t),r=F8.default.basename(e);if(r===""){if(process.platform==="win32"){let i=t.match(/^([A-Z]):\\/i);if(i){let o=`drive-${i[1].toUpperCase()}`;return _.info("PROJECT_NAME","Drive root detected",{cwd:t,projectName:o}),o}}return _.warn("PROJECT_NAME","Root directory detected, using fallback",{cwd:t}),"unknown-project"}return r}function il(t){let e=Xs(t);if(!t)return{primary:e,parent:null,isWorktree:!1,allProjects:[e]};let r=q8(t),n=z8(r);return n.isWorktree&&n.parentProjectName?{primary:e,parent:n.parentProjectName,isWorktree:!0,allProjects:[n.parentProjectName,e]}:{primary:e,parent:null,isWorktree:!1,allProjects:[e]}}var U8,F8,za=we(()=>{"use strict";U8=require("os"),F8=Pe(require("path"),1);re();L8()});function SSe(t){let e=t.startsWith("~")?(0,H8.homedir)()+t.slice(1):t;e=e.replace(/\\/g,"/");let r=e.replace(/[.+^${}()|[\]\\]/g,"\\$&");return r=r.replace(/\*\*/g,"<<>>").replace(/\*/g,"[^/]*").replace(/\?/g,"[^/]").replace(/<<>>/g,".*"),new RegExp(`^${r}$`)}function sl(t,e){if(!e||!e.trim())return!1;let r=t.replace(/\\/g,"/"),n=e.split(",").map(i=>i.trim()).filter(Boolean);for(let i of n)try{if(SSe(i).test(r))return!0}catch{continue}return!1}var H8,Ky=we(()=>{"use strict";H8=require("os")});var qf,Jy=we(()=>{"use strict";Ir();za();re();On();Ky();tr();It();Gi();qf={async execute(t){if(!await sr())return{continue:!0,suppressOutput:!0,exitCode:nt.SUCCESS};let{sessionId:r,cwd:n,prompt:i}=t;if(!r)return _.warn("HOOK","session-init: No sessionId provided, skipping (Codex CLI or unknown platform)"),{continue:!0,suppressOutput:!0,exitCode:nt.SUCCESS};let s=ve.loadFromFile(vt);if(n&&sl(n,s.CLAUDE_MEM_EXCLUDED_PROJECTS))return _.info("HOOK","Project excluded from tracking",{cwd:n}),{continue:!0,suppressOutput:!0};let o=!i||!i.trim()?"[media prompt]":i,a=Xs(n),c=Rt(t.platform);_.debug("HOOK","session-init: Calling /api/sessions/init",{contentSessionId:r,project:a});let u=await at("/api/sessions/init",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:r,project:a,prompt:o,platformSource:c})});if(!u.ok)return _.failure("HOOK",`Session initialization failed: ${u.status}`,{contentSessionId:r,project:a}),{continue:!0,suppressOutput:!0,exitCode:nt.SUCCESS};let l=await u.json(),d=l.sessionDbId,p=l.promptNumber;if(_.debug("HOOK","session-init: Received from /api/sessions/init",{sessionDbId:d,promptNumber:p,skipped:l.skipped,contextInjected:l.contextInjected}),_.debug("HOOK",`[ALIGNMENT] Hook Entry | contentSessionId=${r} | prompt#=${p} | sessionDbId=${d}`),l.skipped&&l.reason==="private")return _.info("HOOK",`INIT_COMPLETE | sessionDbId=${d} | promptNumber=${p} | skipped=true | reason=private`,{sessionId:d}),{continue:!0,suppressOutput:!0};let f=!!l.contextInjected;if(f&&_.info("HOOK",`INIT_COMPLETE | sessionDbId=${d} | promptNumber=${p} | skipped_agent_init=true | reason=context_already_injected`,{sessionId:d}),!f&&t.platform!=="cursor"&&d){let g=o.startsWith("/")?o.substring(1):o;_.debug("HOOK","session-init: Calling /sessions/{sessionDbId}/init",{sessionDbId:d,promptNumber:p});let v=await at(`/sessions/${d}/init`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({userPrompt:g,promptNumber:p})});v.ok||_.failure("HOOK",`SDK agent start failed: ${v.status}`,{sessionDbId:d,promptNumber:p})}else!f&&t.platform==="cursor"&&_.debug("HOOK","session-init: Skipping SDK agent init for Cursor platform",{sessionDbId:d,promptNumber:p});let m=String(s.CLAUDE_MEM_SEMANTIC_INJECT).toLowerCase()==="true",h="";if(m&&o&&o.length>=20&&o!=="[media prompt]")try{let g=s.CLAUDE_MEM_SEMANTIC_INJECT_LIMIT||"5",v=await at("/api/context/semantic",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({q:o,project:a,limit:g})});if(v.ok){let y=await v.json();y.context&&(h=y.context,_.debug("HOOK",`Semantic injection: ${y.count} observations for prompt`,{sessionId:d,count:y.count}))}}catch(g){_.debug("HOOK","Semantic injection unavailable",{error:g instanceof Error?g.message:String(g)})}return _.info("HOOK",`INIT_COMPLETE | sessionDbId=${d} | promptNumber=${p} | project=${a}`,{sessionId:d}),h?{continue:!0,suppressOutput:!0,hookSpecificOutput:{hookEventName:"UserPromptSubmit",additionalContext:h}}:{continue:!0,suppressOutput:!0}}}});var Hf,Xy=we(()=>{"use strict";Ir();re();On();Ky();tr();It();Gi();Hf={async execute(t){if(!await sr())return{continue:!0,suppressOutput:!0,exitCode:nt.SUCCESS};let{sessionId:r,cwd:n,toolName:i,toolInput:s,toolResponse:o}=t,a=Rt(t.platform);if(!i)return{continue:!0,suppressOutput:!0,exitCode:nt.SUCCESS};let c=_.formatTool(i,s);if(_.dataIn("HOOK",`PostToolUse: ${c}`,{}),!n)throw new Error(`Missing cwd in PostToolUse hook input for session ${r}, tool ${i}`);let u=ve.loadFromFile(vt);if(sl(n,u.CLAUDE_MEM_EXCLUDED_PROJECTS))return _.debug("HOOK","Project excluded from tracking, skipping observation",{cwd:n,toolName:i}),{continue:!0,suppressOutput:!0};try{let l=await at("/api/sessions/observations",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:r,platformSource:a,tool_name:i,tool_input:s,tool_response:o,cwd:n})});if(!l.ok)return _.warn("HOOK","Observation storage failed, skipping",{status:l.status,toolName:i}),{continue:!0,suppressOutput:!0,exitCode:nt.SUCCESS};_.debug("HOOK","Observation sent successfully",{toolName:i})}catch(l){return _.warn("HOOK","Observation fetch error, skipping",{error:l instanceof Error?l.message:String(l)}),{continue:!0,suppressOutput:!0,exitCode:nt.SUCCESS}}return{continue:!0,suppressOutput:!0}}}});var Zf,Yy=we(()=>{"use strict";Ir();re();On();Gi();Zf={async execute(t){if(!await sr())return{continue:!0,suppressOutput:!0,exitCode:nt.SUCCESS};let{sessionId:r,cwd:n,filePath:i,edits:s}=t,o=Rt(t.platform);if(!i)throw new Error("fileEditHandler requires filePath");if(_.dataIn("HOOK",`FileEdit: ${i}`,{editCount:s?.length??0}),!n)throw new Error(`Missing cwd in FileEdit hook input for session ${r}, file ${i}`);try{let a=await at("/api/sessions/observations",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:r,platformSource:o,tool_name:"write_file",tool_input:{filePath:i,edits:s},tool_response:{success:!0},cwd:n})});if(!a.ok)return _.warn("HOOK","File edit observation storage failed, skipping",{status:a.status,filePath:i}),{continue:!0,suppressOutput:!0,exitCode:nt.SUCCESS};_.debug("HOOK","File edit observation sent successfully",{filePath:i})}catch(a){return _.warn("HOOK","File edit observation fetch error, skipping",{error:a instanceof Error?a.message:String(a)}),{continue:!0,suppressOutput:!0,exitCode:nt.SUCCESS}}return{continue:!0,suppressOutput:!0}}}});var Bf,Qy=we(()=>{"use strict";Ir();re();Gi();Bf={async execute(t){if(!await sr())return{continue:!0,suppressOutput:!0};let{sessionId:r}=t,n=Rt(t.platform);if(!r)return _.warn("HOOK","session-complete: Missing sessionId, skipping"),{continue:!0,suppressOutput:!0};_.info("HOOK","\u2192 session-complete: Removing session from active map",{contentSessionId:r});try{let i=await at("/api/sessions/complete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:r,platformSource:n})});if(i.ok)_.info("HOOK","Session completed successfully",{contentSessionId:r});else{let s=await i.text();_.warn("HOOK","session-complete: Failed to complete session",{status:i.status,body:s})}}catch(i){_.warn("HOOK","session-complete: Error completing session",{error:i.message})}return{continue:!0,suppressOutput:!0}}}});function wSe(t){let e=(t.match(//g)||[]).length,r=(t.match(//g)||[]).length,n=(t.match(//g)||[]).length,i=(t.match(//g)||[]).length,s=(t.match(//g)||[]).length,o=(t.match(//g)||[]).length;return e+r+n+i+s+o}function X8(t){let e=wSe(t);return e>J8&&_.warn("SYSTEM","tag count exceeds limit",void 0,{tagCount:e,maxAllowed:J8,contentLength:t.length}),t.replace(/[\s\S]*?<\/claude-mem-context>/g,"").replace(/[\s\S]*?<\/private>/g,"").replace(/[\s\S]*?<\/system_instruction>/g,"").replace(/[\s\S]*?<\/system-instruction>/g,"").replace(/[\s\S]*?<\/persisted-output>/g,"").replace(Gf,"").trim()}function zI(t){return X8(t)}function Y8(t){return X8(t)}var Gf,J8,a_=we(()=>{"use strict";re();Gf=/[\s\S]*?<\/system-reminder>/g,J8=100});function UI(){let t=tH.default.join((0,rH.homedir)(),".claude-mem","settings.json"),e=ve.loadFromFile(t),r=He.getInstance().getActiveMode(),n=new Set(r.observation_types.map(s=>s.id)),i=new Set(r.observation_concepts.map(s=>s.id));return{totalObservationCount:parseInt(e.CLAUDE_MEM_CONTEXT_OBSERVATIONS,10),fullObservationCount:parseInt(e.CLAUDE_MEM_CONTEXT_FULL_COUNT,10),sessionCount:parseInt(e.CLAUDE_MEM_CONTEXT_SESSION_COUNT,10),showReadTokens:e.CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS==="true",showWorkTokens:e.CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS==="true",showSavingsAmount:e.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT==="true",showSavingsPercent:e.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT==="true",observationTypes:n,observationConcepts:i,fullObservationField:e.CLAUDE_MEM_CONTEXT_FULL_FIELD,showLastSummary:e.CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY==="true",showLastMessage:e.CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE==="true"}}var tH,rH,FI=we(()=>{"use strict";tH=Pe(require("path"),1),rH=require("os");tr();tn()});var Y,nH,qI,Vf=we(()=>{"use strict";Y={reset:"\x1B[0m",bright:"\x1B[1m",dim:"\x1B[2m",cyan:"\x1B[36m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",gray:"\x1B[90m",red:"\x1B[31m"},nH=4,qI=1});function HI(t){let e=(t.title?.length||0)+(t.subtitle?.length||0)+(t.narrative?.length||0)+JSON.stringify(t.facts||[]).length;return Math.ceil(e/nH)}function ZI(t){let e=t.length,r=t.reduce((o,a)=>o+HI(a),0),n=t.reduce((o,a)=>o+(a.discovery_tokens||0),0),i=n-r,s=n>0?Math.round(i/n*100):0;return{totalObservations:e,totalReadTokens:r,totalDiscoveryTokens:n,savings:i,savingsPercent:s}}function ESe(t){return He.getInstance().getWorkEmoji(t)}function Kf(t,e){let r=HI(t),n=t.discovery_tokens||0,i=ESe(t.type),s=n>0?`${i} ${n.toLocaleString()}`:"-";return{readTokens:r,discoveryTokens:n,discoveryDisplay:s,workEmoji:i}}function d_(t){return t.showReadTokens||t.showWorkTokens||t.showSavingsAmount||t.showSavingsPercent}var La=we(()=>{"use strict";Vf();tn()});function BI(t,e,r,n){let i=Array.from(r.observationTypes),s=i.map(()=>"?").join(","),o=Array.from(r.observationConcepts),a=o.map(()=>"?").join(",");return t.db.prepare(` SELECT - id, memory_session_id, type, title, subtitle, narrative, - facts, concepts, files_read, files_modified, discovery_tokens, - created_at, created_at_epoch - FROM observations - WHERE project = ? - AND type IN (${i}) + o.id, + o.memory_session_id, + COALESCE(s.platform_source, 'claude') as platform_source, + o.type, + o.title, + o.subtitle, + o.narrative, + o.facts, + o.concepts, + o.files_read, + o.files_modified, + o.discovery_tokens, + o.created_at, + o.created_at_epoch + FROM observations o + LEFT JOIN sdk_sessions s ON o.memory_session_id = s.memory_session_id + WHERE o.project = ? + AND type IN (${s}) AND EXISTS ( - SELECT 1 FROM json_each(concepts) - WHERE value IN (${o}) + SELECT 1 FROM json_each(o.concepts) + WHERE value IN (${a}) ) - ORDER BY created_at_epoch DESC + ${n?"AND COALESCE(s.platform_source, 'claude') = ?":""} + ORDER BY o.created_at_epoch DESC LIMIT ? - `).all(e,...n,...s,r.totalObservationCount)}function oI(t,e,r){return t.db.prepare(` - SELECT id, memory_session_id, request, investigated, learned, completed, next_steps, created_at, created_at_epoch - FROM session_summaries - WHERE project = ? - ORDER BY created_at_epoch DESC - LIMIT ? - `).all(e,r.sessionCount+rI)}function R9(t,e,r){let n=Array.from(r.observationTypes),i=n.map(()=>"?").join(","),s=Array.from(r.observationConcepts),o=s.map(()=>"?").join(","),a=e.map(()=>"?").join(",");return t.db.prepare(` + `).all(e,...i,...o,...n?[n]:[],r.totalObservationCount)}function GI(t,e,r,n){return t.db.prepare(` SELECT - id, memory_session_id, type, title, subtitle, narrative, - facts, concepts, files_read, files_modified, discovery_tokens, - created_at, created_at_epoch, project - FROM observations - WHERE project IN (${a}) - AND type IN (${i}) + ss.id, + ss.memory_session_id, + COALESCE(s.platform_source, 'claude') as platform_source, + ss.request, + ss.investigated, + ss.learned, + ss.completed, + ss.next_steps, + ss.created_at, + ss.created_at_epoch + FROM session_summaries ss + LEFT JOIN sdk_sessions s ON ss.memory_session_id = s.memory_session_id + WHERE ss.project = ? + ${n?"AND COALESCE(s.platform_source, 'claude') = ?":""} + ORDER BY ss.created_at_epoch DESC + LIMIT ? + `).all(e,...n?[n]:[],r.sessionCount+qI)}function sH(t,e,r,n){let i=Array.from(r.observationTypes),s=i.map(()=>"?").join(","),o=Array.from(r.observationConcepts),a=o.map(()=>"?").join(","),c=e.map(()=>"?").join(",");return t.db.prepare(` + SELECT + o.id, + o.memory_session_id, + COALESCE(s.platform_source, 'claude') as platform_source, + o.type, + o.title, + o.subtitle, + o.narrative, + o.facts, + o.concepts, + o.files_read, + o.files_modified, + o.discovery_tokens, + o.created_at, + o.created_at_epoch, + o.project + FROM observations o + LEFT JOIN sdk_sessions s ON o.memory_session_id = s.memory_session_id + WHERE o.project IN (${c}) + AND type IN (${s}) AND EXISTS ( - SELECT 1 FROM json_each(concepts) - WHERE value IN (${o}) + SELECT 1 FROM json_each(o.concepts) + WHERE value IN (${a}) ) - ORDER BY created_at_epoch DESC + ${n?"AND COALESCE(s.platform_source, 'claude') = ?":""} + ORDER BY o.created_at_epoch DESC LIMIT ? - `).all(...e,...n,...s,r.totalObservationCount)}function O9(t,e,r){let n=e.map(()=>"?").join(",");return t.db.prepare(` - SELECT id, memory_session_id, request, investigated, learned, completed, next_steps, created_at, created_at_epoch, project - FROM session_summaries - WHERE project IN (${n}) - ORDER BY created_at_epoch DESC + `).all(...e,...i,...o,...n?[n]:[],r.totalObservationCount)}function oH(t,e,r,n){let i=e.map(()=>"?").join(",");return t.db.prepare(` + SELECT + ss.id, + ss.memory_session_id, + COALESCE(s.platform_source, 'claude') as platform_source, + ss.request, + ss.investigated, + ss.learned, + ss.completed, + ss.next_steps, + ss.created_at, + ss.created_at_epoch, + ss.project + FROM session_summaries ss + LEFT JOIN sdk_sessions s ON ss.memory_session_id = s.memory_session_id + WHERE ss.project IN (${i}) + ${n?"AND COALESCE(s.platform_source, 'claude') = ?":""} + ORDER BY ss.created_at_epoch DESC LIMIT ? - `).all(...e,r.sessionCount+rI)}function S_e(t){return t.replace(/\//g,"-")}function x_e(t){try{if(!(0,Ey.existsSync)(t))return{userMessage:"",assistantMessage:""};let e=(0,Ey.readFileSync)(t,"utf-8").trim();if(!e)return{userMessage:"",assistantMessage:""};let r=e.split(` -`).filter(i=>i.trim()),n="";for(let i=r.length-1;i>=0;i--)try{let s=r[i];if(!s.includes('"type":"assistant"'))continue;let o=JSON.parse(s);if(o.type==="assistant"&&o.message?.content&&Array.isArray(o.message.content)){let a="";for(let c of o.message.content)c.type==="text"&&(a+=c.text);if(a=a.replace(/[\s\S]*?<\/system-reminder>/g,"").trim(),a){n=a;break}}}catch(s){_.debug("PARSER","Skipping malformed transcript line",{lineIndex:i},s);continue}return{userMessage:"",assistantMessage:n}}catch(e){return _.failure("WORKER","Failed to extract prior messages from transcript",{transcriptPath:t},e),{userMessage:"",assistantMessage:""}}}function aI(t,e,r,n){if(!e.showLastMessage||t.length===0)return{userMessage:"",assistantMessage:""};let i=t.find(c=>c.memory_session_id!==r);if(!i)return{userMessage:"",assistantMessage:""};let s=i.memory_session_id,o=S_e(n),a=I9.default.join(bs,"projects",o,`${s}.jsonl`);return x_e(a)}function C9(t,e){let r=e[0]?.id;return t.map((n,i)=>{let s=i===0?null:e[i+1];return{...n,displayEpoch:s?s.created_at_epoch:n.created_at_epoch,displayTime:s?s.created_at:n.created_at,shouldShowLink:n.id!==r}})}function cI(t,e){let r=[...t.map(n=>({type:"observation",data:n})),...e.map(n=>({type:"summary",data:n}))];return r.sort((n,i)=>{let s=n.type==="observation"?n.data.created_at_epoch:n.data.displayEpoch,o=i.type==="observation"?i.data.created_at_epoch:i.data.displayEpoch;return s-o}),r}function P9(t,e){return new Set(t.slice(0,e).map(r=>r.id))}var I9,Ey,uI=Oe(()=>{"use strict";I9=Pe(require("path"),1),Ey=require("fs");re();zt();df()});function A9(){let t=new Date,e=t.toLocaleDateString("en-CA"),r=t.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0}).toLowerCase().replace(" ",""),n=t.toLocaleTimeString("en-US",{timeZoneName:"short"}).split(" ").pop();return`${e} ${r} ${n}`}function N9(t){return[`# $CMEM ${t} ${A9()}`,""]}function M9(){return[`Legend: \u{1F3AF}session ${He.getInstance().getActiveMode().observation_types.map(r=>`${r.emoji}${r.id}`).join(" ")}`,"Format: ID TIME TYPE TITLE","Fetch details: get_observations([IDs]) | Search: mem-search skill",""]}function D9(){return[]}function j9(){return[]}function z9(t,e){let r=[],n=[`${t.totalObservations} obs (${t.totalReadTokens.toLocaleString()}t read)`,`${t.totalDiscoveryTokens.toLocaleString()}t work`];return t.totalDiscoveryTokens>0&&(e.showSavingsAmount||e.showSavingsPercent)&&(e.showSavingsPercent?n.push(`${t.savingsPercent}% savings`):e.showSavingsAmount&&n.push(`${t.savings.toLocaleString()}t saved`)),r.push(`Stats: ${n.join(" | ")}`),r.push(""),r}function L9(t){return[`### ${t}`]}function U9(t){return t.toLowerCase().replace(" am","a").replace(" pm","p")}function F9(t,e,r){let n=t.title||"Untitled",i=He.getInstance().getTypeIcon(t.type),s=e?U9(e):'"';return`${t.id} ${s} ${i} ${n}`}function q9(t,e,r,n){let i=[],s=t.title||"Untitled",o=He.getInstance().getTypeIcon(t.type),a=e?U9(e):'"',{readTokens:c,discoveryDisplay:u}=pf(t,n);i.push(`**${t.id}** ${a} ${o} **${s}**`),r&&i.push(r);let l=[];return n.showReadTokens&&l.push(`~${c}t`),n.showWorkTokens&&l.push(u),l.length>0&&i.push(l.join(" ")),i.push(""),i}function H9(t,e){return[`S${t.id} ${t.request||"Session started"} (${e})`]}function ff(t,e){return e?[`**${t}**: ${e}`,""]:[]}function Z9(t){return t.assistantMessage?["","---","","**Previously**","",`A: ${t.assistantMessage}`,""]:[]}function B9(t,e){return["",`Access ${Math.round(t/1e3)}k tokens of past work via get_observations([IDs]) or mem-search skill.`]}function G9(t){return`# $CMEM ${t} ${A9()} + `).all(...e,...n?[n]:[],r.sessionCount+qI)}function kSe(t){return t.replace(/\//g,"-")}function TSe(t){try{if(!(0,p_.existsSync)(t))return{userMessage:"",assistantMessage:""};let e=(0,p_.readFileSync)(t,"utf-8").trim();if(!e)return{userMessage:"",assistantMessage:""};let r=e.split(` +`).filter(i=>i.trim()),n="";for(let i=r.length-1;i>=0;i--)try{let s=r[i];if(!s.includes('"type":"assistant"'))continue;let o=JSON.parse(s);if(o.type==="assistant"&&o.message?.content&&Array.isArray(o.message.content)){let a="";for(let c of o.message.content)c.type==="text"&&(a+=c.text);if(a=a.replace(Gf,"").trim(),a){n=a;break}}}catch(s){_.debug("PARSER","Skipping malformed transcript line",{lineIndex:i},s);continue}return{userMessage:"",assistantMessage:n}}catch(e){return _.failure("WORKER","Failed to extract prior messages from transcript",{transcriptPath:t},e),{userMessage:"",assistantMessage:""}}}function WI(t,e,r,n){if(!e.showLastMessage||t.length===0)return{userMessage:"",assistantMessage:""};let i=t.find(c=>c.memory_session_id!==r);if(!i)return{userMessage:"",assistantMessage:""};let s=i.memory_session_id,o=kSe(n),a=iH.default.join(ks,"projects",o,`${s}.jsonl`);return TSe(a)}function aH(t,e){let r=e[0]?.id;return t.map((n,i)=>{let s=i===0?null:e[i+1];return{...n,displayEpoch:s?s.created_at_epoch:n.created_at_epoch,displayTime:s?s.created_at:n.created_at,shouldShowLink:n.id!==r}})}function VI(t,e){let r=[...t.map(n=>({type:"observation",data:n})),...e.map(n=>({type:"summary",data:n}))];return r.sort((n,i)=>{let s=n.type==="observation"?n.data.created_at_epoch:n.data.displayEpoch,o=i.type==="observation"?i.data.created_at_epoch:i.data.displayEpoch;return s-o}),r}function cH(t,e){return new Set(t.slice(0,e).map(r=>r.id))}var iH,p_,KI=we(()=>{"use strict";iH=Pe(require("path"),1),p_=require("fs");re();a_();It();Vf()});function uH(){let t=new Date,e=t.toLocaleDateString("en-CA"),r=t.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0}).toLowerCase().replace(" ",""),n=t.toLocaleTimeString("en-US",{timeZoneName:"short"}).split(" ").pop();return`${e} ${r} ${n}`}function lH(t){return[`# $CMEM ${t} ${uH()}`,""]}function dH(){return[`Legend: \u{1F3AF}session ${He.getInstance().getActiveMode().observation_types.map(r=>`${r.emoji}${r.id}`).join(" ")}`,"Format: ID TIME TYPE TITLE","Fetch details: get_observations([IDs]) | Search: mem-search skill",""]}function pH(){return[]}function fH(){return[]}function mH(t,e){let r=[],n=[`${t.totalObservations} obs (${t.totalReadTokens.toLocaleString()}t read)`,`${t.totalDiscoveryTokens.toLocaleString()}t work`];return t.totalDiscoveryTokens>0&&(e.showSavingsAmount||e.showSavingsPercent)&&(e.showSavingsPercent?n.push(`${t.savingsPercent}% savings`):e.showSavingsAmount&&n.push(`${t.savings.toLocaleString()}t saved`)),r.push(`Stats: ${n.join(" | ")}`),r.push(""),r}function hH(t){return[`### ${t}`]}function gH(t){return t.toLowerCase().replace(" am","a").replace(" pm","p")}function vH(t,e,r){let n=t.title||"Untitled",i=He.getInstance().getTypeIcon(t.type),s=e?gH(e):'"';return`${t.id} ${s} ${i} ${n}`}function yH(t,e,r,n){let i=[],s=t.title||"Untitled",o=He.getInstance().getTypeIcon(t.type),a=e?gH(e):'"',{readTokens:c,discoveryDisplay:u}=Kf(t,n);i.push(`**${t.id}** ${a} ${o} **${s}**`),r&&i.push(r);let l=[];return n.showReadTokens&&l.push(`~${c}t`),n.showWorkTokens&&l.push(u),l.length>0&&i.push(l.join(" ")),i.push(""),i}function _H(t,e){return[`S${t.id} ${t.request||"Session started"} (${e})`]}function Jf(t,e){return e?[`**${t}**: ${e}`,""]:[]}function bH(t){return t.assistantMessage?["","---","","**Previously**","",`A: ${t.assistantMessage}`,""]:[]}function SH(t,e){return["",`Access ${Math.round(t/1e3)}k tokens of past work via get_observations([IDs]) or mem-search skill.`]}function xH(t){return`# $CMEM ${t} ${uH()} -No previous sessions found.`}var zu=Oe(()=>{"use strict";Qr();$a()});function W9(){let t=new Date,e=t.toLocaleDateString("en-CA"),r=t.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0}).toLowerCase().replace(" ",""),n=t.toLocaleTimeString("en-US",{timeZoneName:"short"}).split(" ").pop();return`${e} ${r} ${n}`}function V9(t){return["",`${Y.bright}${Y.cyan}[${t}] recent context, ${W9()}${Y.reset}`,`${Y.gray}${"\u2500".repeat(60)}${Y.reset}`,""]}function K9(){let e=He.getInstance().getActiveMode().observation_types.map(r=>`${r.emoji} ${r.id}`).join(" | ");return[`${Y.dim}Legend: session-request | ${e}${Y.reset}`,""]}function J9(){return[`${Y.bright}Column Key${Y.reset}`,`${Y.dim} Read: Tokens to read this observation (cost to learn it now)${Y.reset}`,`${Y.dim} Work: Tokens spent on work that produced this record ( research, building, deciding)${Y.reset}`,""]}function X9(){return[`${Y.dim}Context Index: This semantic index (titles, types, files, tokens) is usually sufficient to understand past work.${Y.reset}`,"",`${Y.dim}When you need implementation details, rationale, or debugging context:${Y.reset}`,`${Y.dim} - Fetch by ID: get_observations([IDs]) for observations visible in this index${Y.reset}`,`${Y.dim} - Search history: Use the mem-search skill for past decisions, bugs, and deeper research${Y.reset}`,`${Y.dim} - Trust this index over re-reading code for past decisions and learnings${Y.reset}`,""]}function Y9(t,e){let r=[];if(r.push(`${Y.bright}${Y.cyan}Context Economics${Y.reset}`),r.push(`${Y.dim} Loading: ${t.totalObservations} observations (${t.totalReadTokens.toLocaleString()} tokens to read)${Y.reset}`),r.push(`${Y.dim} Work investment: ${t.totalDiscoveryTokens.toLocaleString()} tokens spent on research, building, and decisions${Y.reset}`),t.totalDiscoveryTokens>0&&(e.showSavingsAmount||e.showSavingsPercent)){let n=" Your savings: ";e.showSavingsAmount&&e.showSavingsPercent?n+=`${t.savings.toLocaleString()} tokens (${t.savingsPercent}% reduction from reuse)`:e.showSavingsAmount?n+=`${t.savings.toLocaleString()} tokens`:n+=`${t.savingsPercent}% reduction from reuse`,r.push(`${Y.green}${n}${Y.reset}`)}return r.push(""),r}function Q9(t){return[`${Y.bright}${Y.cyan}${t}${Y.reset}`,""]}function e8(t){return[`${Y.dim}${t}${Y.reset}`]}function t8(t,e,r,n){let i=t.title||"Untitled",s=He.getInstance().getTypeIcon(t.type),{readTokens:o,discoveryTokens:a,workEmoji:c}=pf(t,n),u=r?`${Y.dim}${e}${Y.reset}`:" ".repeat(e.length),l=n.showReadTokens&&o>0?`${Y.dim}(~${o}t)${Y.reset}`:"",d=n.showWorkTokens&&a>0?`${Y.dim}(${c} ${a.toLocaleString()}t)${Y.reset}`:"";return` ${Y.dim}#${t.id}${Y.reset} ${u} ${s} ${i} ${l} ${d}`}function r8(t,e,r,n,i){let s=[],o=t.title||"Untitled",a=He.getInstance().getTypeIcon(t.type),{readTokens:c,discoveryTokens:u,workEmoji:l}=pf(t,i),d=r?`${Y.dim}${e}${Y.reset}`:" ".repeat(e.length),p=i.showReadTokens&&c>0?`${Y.dim}(~${c}t)${Y.reset}`:"",f=i.showWorkTokens&&u>0?`${Y.dim}(${l} ${u.toLocaleString()}t)${Y.reset}`:"";return s.push(` ${Y.dim}#${t.id}${Y.reset} ${d} ${a} ${Y.bright}${o}${Y.reset}`),n&&s.push(` ${Y.dim}${n}${Y.reset}`),(p||f)&&s.push(` ${p} ${f}`),s.push(""),s}function n8(t,e){let r=`${t.request||"Session started"} (${e})`;return[`${Y.yellow}#S${t.id}${Y.reset} ${r}`,""]}function mf(t,e,r){return e?[`${r}${t}:${Y.reset} ${e}`,""]:[]}function i8(t){return t.assistantMessage?["","---","",`${Y.bright}${Y.magenta}Previously${Y.reset}`,"",`${Y.dim}A: ${t.assistantMessage}${Y.reset}`,""]:[]}function s8(t,e){let r=Math.round(t/1e3);return["",`${Y.dim}Access ${r}k tokens of past research & decisions for just ${e.toLocaleString()}t. Use the claude-mem skill to access memories by ID.${Y.reset}`]}function o8(t){return` -${Y.bright}${Y.cyan}[${t}] recent context, ${W9()}${Y.reset} +No previous sessions found.`}var cl=we(()=>{"use strict";tn();La()});function wH(){let t=new Date,e=t.toLocaleDateString("en-CA"),r=t.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0}).toLowerCase().replace(" ",""),n=t.toLocaleTimeString("en-US",{timeZoneName:"short"}).split(" ").pop();return`${e} ${r} ${n}`}function EH(t){return["",`${Y.bright}${Y.cyan}[${t}] recent context, ${wH()}${Y.reset}`,`${Y.gray}${"\u2500".repeat(60)}${Y.reset}`,""]}function kH(){let e=He.getInstance().getActiveMode().observation_types.map(r=>`${r.emoji} ${r.id}`).join(" | ");return[`${Y.dim}Legend: session-request | ${e}${Y.reset}`,""]}function TH(){return[`${Y.bright}Column Key${Y.reset}`,`${Y.dim} Read: Tokens to read this observation (cost to learn it now)${Y.reset}`,`${Y.dim} Work: Tokens spent on work that produced this record ( research, building, deciding)${Y.reset}`,""]}function $H(){return[`${Y.dim}Context Index: This semantic index (titles, types, files, tokens) is usually sufficient to understand past work.${Y.reset}`,"",`${Y.dim}When you need implementation details, rationale, or debugging context:${Y.reset}`,`${Y.dim} - Fetch by ID: get_observations([IDs]) for observations visible in this index${Y.reset}`,`${Y.dim} - Search history: Use the mem-search skill for past decisions, bugs, and deeper research${Y.reset}`,`${Y.dim} - Trust this index over re-reading code for past decisions and learnings${Y.reset}`,""]}function IH(t,e){let r=[];if(r.push(`${Y.bright}${Y.cyan}Context Economics${Y.reset}`),r.push(`${Y.dim} Loading: ${t.totalObservations} observations (${t.totalReadTokens.toLocaleString()} tokens to read)${Y.reset}`),r.push(`${Y.dim} Work investment: ${t.totalDiscoveryTokens.toLocaleString()} tokens spent on research, building, and decisions${Y.reset}`),t.totalDiscoveryTokens>0&&(e.showSavingsAmount||e.showSavingsPercent)){let n=" Your savings: ";e.showSavingsAmount&&e.showSavingsPercent?n+=`${t.savings.toLocaleString()} tokens (${t.savingsPercent}% reduction from reuse)`:e.showSavingsAmount?n+=`${t.savings.toLocaleString()} tokens`:n+=`${t.savingsPercent}% reduction from reuse`,r.push(`${Y.green}${n}${Y.reset}`)}return r.push(""),r}function RH(t){return[`${Y.bright}${Y.cyan}${t}${Y.reset}`,""]}function OH(t){return[`${Y.dim}${t}${Y.reset}`]}function CH(t,e,r,n){let i=t.title||"Untitled",s=He.getInstance().getTypeIcon(t.type),{readTokens:o,discoveryTokens:a,workEmoji:c}=Kf(t,n),u=r?`${Y.dim}${e}${Y.reset}`:" ".repeat(e.length),l=n.showReadTokens&&o>0?`${Y.dim}(~${o}t)${Y.reset}`:"",d=n.showWorkTokens&&a>0?`${Y.dim}(${c} ${a.toLocaleString()}t)${Y.reset}`:"";return` ${Y.dim}#${t.id}${Y.reset} ${u} ${s} ${i} ${l} ${d}`}function PH(t,e,r,n,i){let s=[],o=t.title||"Untitled",a=He.getInstance().getTypeIcon(t.type),{readTokens:c,discoveryTokens:u,workEmoji:l}=Kf(t,i),d=r?`${Y.dim}${e}${Y.reset}`:" ".repeat(e.length),p=i.showReadTokens&&c>0?`${Y.dim}(~${c}t)${Y.reset}`:"",f=i.showWorkTokens&&u>0?`${Y.dim}(${l} ${u.toLocaleString()}t)${Y.reset}`:"";return s.push(` ${Y.dim}#${t.id}${Y.reset} ${d} ${a} ${Y.bright}${o}${Y.reset}`),n&&s.push(` ${Y.dim}${n}${Y.reset}`),(p||f)&&s.push(` ${p} ${f}`),s.push(""),s}function AH(t,e){let r=`${t.request||"Session started"} (${e})`;return[`${Y.yellow}#S${t.id}${Y.reset} ${r}`,""]}function Xf(t,e,r){return e?[`${r}${t}:${Y.reset} ${e}`,""]:[]}function NH(t){return t.assistantMessage?["","---","",`${Y.bright}${Y.magenta}Previously${Y.reset}`,"",`${Y.dim}A: ${t.assistantMessage}${Y.reset}`,""]:[]}function MH(t,e){let r=Math.round(t/1e3);return["",`${Y.dim}Access ${r}k tokens of past research & decisions for just ${e.toLocaleString()}t. Use the claude-mem skill to access memories by ID.${Y.reset}`]}function DH(t){return` +${Y.bright}${Y.cyan}[${t}] recent context, ${wH()}${Y.reset} ${Y.gray}${"\u2500".repeat(60)}${Y.reset} ${Y.dim}No previous sessions found for this project yet.${Y.reset} -`}var Lu=Oe(()=>{"use strict";df();Qr();$a()});function a8(t,e,r,n){let i=[];return n?i.push(...V9(t)):i.push(...N9(t)),n?i.push(...K9()):i.push(...M9()),n?i.push(...J9()):i.push(...D9()),n?i.push(...X9()):i.push(...j9()),wy(r)&&(n?i.push(...Y9(e,r)):i.push(...z9(e,r))),i}var c8=Oe(()=>{"use strict";$a();zu();Lu()});function w_e(t){let e=new Map;for(let n of t){let i=n.type==="observation"?n.data.created_at:n.data.displayTime,s=Rs(i);e.has(s)||e.set(s,[]),e.get(s).push(n)}let r=Array.from(e.entries()).sort((n,i)=>{let s=new Date(n[0]).getTime(),o=new Date(i[0]).getTime();return s-o});return new Map(r)}function u8(t,e){return e.fullObservationField==="narrative"?t.narrative:t.facts?Iv(t.facts).join(` -`):null}function E_e(t,e,r,n){let i=[];i.push(...L9(t));let s="";for(let o of e)if(o.type==="summary"){s="";let a=o.data,c=Rn(a.displayTime);i.push(...H9(a,c))}else{let a=o.data,c=pr(a.created_at),l=c!==s?c:"";if(s=c,r.has(a.id)){let p=u8(a,n);i.push(...q9(a,l,p,n))}else i.push(F9(a,l,n))}return i}function k_e(t,e,r,n,i){let s=[];s.push(...Q9(t));let o=null,a="";for(let c of e)if(c.type==="summary"){o=null,a="";let u=c.data,l=Rn(u.displayTime);s.push(...n8(u,l))}else{let u=c.data,l=vi(u.files_modified,i,u.files_read),d=pr(u.created_at),p=d!==a;a=d;let f=r.has(u.id);if(l!==o&&(s.push(...e8(l)),o=l),f){let m=u8(u,n);s.push(...r8(u,d,p,m,n))}else s.push(t8(u,d,p,n))}return s.push(""),s}function T_e(t,e,r,n,i,s){return s?k_e(t,e,r,n,i):E_e(t,e,r,n)}function l8(t,e,r,n,i){let s=[],o=w_e(t);for(let[a,c]of o)s.push(...T_e(a,c,e,r,n,i));return s}var d8=Oe(()=>{"use strict";ga();zu();Lu()});function p8(t,e,r){return!(!t.showLastSummary||!e||!!!(e.investigated||e.learned||e.completed||e.next_steps)||r&&e.created_at_epoch<=r.created_at_epoch)}function f8(t,e){let r=[];return e?(r.push(...mf("Investigated",t.investigated,Y.blue)),r.push(...mf("Learned",t.learned,Y.yellow)),r.push(...mf("Completed",t.completed,Y.green)),r.push(...mf("Next Steps",t.next_steps,Y.magenta))):(r.push(...ff("Investigated",t.investigated)),r.push(...ff("Learned",t.learned)),r.push(...ff("Completed",t.completed)),r.push(...ff("Next Steps",t.next_steps))),r}var m8=Oe(()=>{"use strict";df();zu();Lu()});function h8(t,e){return e?i8(t):Z9(t)}function g8(t,e,r){return!wy(e)||t.totalDiscoveryTokens<=0||t.savings<=0?[]:r?s8(t.totalDiscoveryTokens,t.totalReadTokens):B9(t.totalDiscoveryTokens,t.totalReadTokens)}var v8=Oe(()=>{"use strict";$a();zu();Lu()});function I_e(){try{return new Es}catch(t){if(t.code==="ERR_DLOPEN_FAILED"){try{(0,b8.unlinkSync)($_e)}catch(e){_.debug("SYSTEM","Marker file cleanup failed (may not exist)",{},e)}return _.error("SYSTEM","Native module rebuild needed - restart Claude Code to auto-fix"),null}throw t}}function R_e(t,e){return e?o8(t):G9(t)}function O_e(t,e,r,n,i,s,o){let a=[],c=iI(e);a.push(...a8(t,c,n,o));let u=r.slice(0,n.sessionCount),l=C9(u,r),d=cI(e,l),p=P9(e,n.fullObservationCount);a.push(...l8(d,p,n,i,o));let f=r[0],m=e[0];p8(n,f,m)&&a.push(...f8(f,o));let h=aI(e,n,s,i);return a.push(...h8(h,o)),a.push(...g8(c,n,o)),a.join(` -`).trimEnd()}async function lI(t,e=!1){let r=eI(),n=t?.cwd??process.cwd(),i=Ta(n),s=t?.projects||[i];t?.full&&(r.totalObservationCount=999999,r.sessionCount=999999);let o=I_e();if(!o)return"";try{let a=s.length>1?R9(o,s,r):sI(o,i,r),c=s.length>1?O9(o,s,r):oI(o,i,r);return a.length===0&&c.length===0?R_e(i,e):O_e(i,a,c,r,n,t?.session_id,e)}finally{o.close()}}var y8,_8,b8,$_e,S8=Oe(()=>{"use strict";y8=Pe(require("path"),1),_8=require("os"),b8=require("fs");ng();re();lf();tI();$a();uI();c8();d8();m8();v8();zu();Lu();$_e=y8.default.join((0,_8.homedir)(),".claude","plugins","marketplaces","thedotmack","plugin",".install-version")});var x8=Oe(()=>{"use strict";S8();tI();$a();uI()});var dI={};_n(dI,{generateContext:()=>lI});var pI=Oe(()=>{"use strict";x8()});function sSe(t){let e=t.startsWith("~")?(0,x5.homedir)()+t.slice(1):t;e=e.replace(/\\/g,"/");let r=e.replace(/[.+^${}()|[\]\\]/g,"\\$&");return r=r.replace(/\*\*/g,"<<>>").replace(/\*/g,"[^/]*").replace(/\?/g,"[^/]").replace(/<<>>/g,".*"),new RegExp(`^${r}$`)}function t_(t,e){if(!e||!e.trim())return!1;let r=t.replace(/\\/g,"/"),n=e.split(",").map(i=>i.trim()).filter(Boolean);for(let i of n)try{if(sSe(i).test(r))return!0}catch{continue}return!1}var x5,jI=Oe(()=>{"use strict";x5=require("os")});var Af,r_=Oe(()=>{"use strict";Dr();lf();re();Tn();jI();rr();zt();Af={async execute(t){if(!await kr())return{continue:!0,suppressOutput:!0,exitCode:rt.SUCCESS};let{sessionId:r,cwd:n,prompt:i}=t;if(!r)return _.warn("HOOK","session-init: No sessionId provided, skipping (Codex CLI or unknown platform)"),{continue:!0,suppressOutput:!0,exitCode:rt.SUCCESS};let s=Se.loadFromFile(jt);if(n&&t_(n,s.CLAUDE_MEM_EXCLUDED_PROJECTS))return _.info("HOOK","Project excluded from tracking",{cwd:n}),{continue:!0,suppressOutput:!0};let o=!i||!i.trim()?"[media prompt]":i,a=Ta(n);_.debug("HOOK","session-init: Calling /api/sessions/init",{contentSessionId:r,project:a});let c=await dt("/api/sessions/init",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:r,project:a,prompt:o})});if(!c.ok)return _.failure("HOOK",`Session initialization failed: ${c.status}`,{contentSessionId:r,project:a}),{continue:!0,suppressOutput:!0,exitCode:rt.SUCCESS};let u=await c.json(),l=u.sessionDbId,d=u.promptNumber;if(_.debug("HOOK","session-init: Received from /api/sessions/init",{sessionDbId:l,promptNumber:d,skipped:u.skipped,contextInjected:u.contextInjected}),_.debug("HOOK",`[ALIGNMENT] Hook Entry | contentSessionId=${r} | prompt#=${d} | sessionDbId=${l}`),u.skipped&&u.reason==="private")return _.info("HOOK",`INIT_COMPLETE | sessionDbId=${l} | promptNumber=${d} | skipped=true | reason=private`,{sessionId:l}),{continue:!0,suppressOutput:!0};let p=!!u.contextInjected;if(p&&_.info("HOOK",`INIT_COMPLETE | sessionDbId=${l} | promptNumber=${d} | skipped_agent_init=true | reason=context_already_injected`,{sessionId:l}),!p&&t.platform!=="cursor"&&l){let h=o.startsWith("/")?o.substring(1):o;_.debug("HOOK","session-init: Calling /sessions/{sessionDbId}/init",{sessionDbId:l,promptNumber:d});let g=await dt(`/sessions/${l}/init`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({userPrompt:h,promptNumber:d})});g.ok||_.failure("HOOK",`SDK agent start failed: ${g.status}`,{sessionDbId:l,promptNumber:d})}else!p&&t.platform==="cursor"&&_.debug("HOOK","session-init: Skipping SDK agent init for Cursor platform",{sessionDbId:l,promptNumber:d});let f=String(s.CLAUDE_MEM_SEMANTIC_INJECT).toLowerCase()==="true",m="";if(f&&o&&o.length>=20&&o!=="[media prompt]")try{let h=s.CLAUDE_MEM_SEMANTIC_INJECT_LIMIT||"5",g=await dt("/api/context/semantic",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({q:o,project:a,limit:h})});if(g.ok){let v=await g.json();v.context&&(m=v.context,_.debug("HOOK",`Semantic injection: ${v.count} observations for prompt`,{sessionId:l,count:v.count}))}}catch(h){_.debug("HOOK","Semantic injection unavailable",{error:h instanceof Error?h.message:String(h)})}return _.info("HOOK",`INIT_COMPLETE | sessionDbId=${l} | promptNumber=${d} | project=${a}`,{sessionId:l}),m?{continue:!0,suppressOutput:!0,hookSpecificOutput:{hookEventName:"UserPromptSubmit",additionalContext:m}}:{continue:!0,suppressOutput:!0}}}});var Nf,n_=Oe(()=>{"use strict";Dr();re();Tn();jI();rr();zt();Nf={async execute(t){if(!await kr())return{continue:!0,suppressOutput:!0,exitCode:rt.SUCCESS};let{sessionId:r,cwd:n,toolName:i,toolInput:s,toolResponse:o}=t;if(!i)return{continue:!0,suppressOutput:!0,exitCode:rt.SUCCESS};let a=_.formatTool(i,s);if(_.dataIn("HOOK",`PostToolUse: ${a}`,{}),!n)throw new Error(`Missing cwd in PostToolUse hook input for session ${r}, tool ${i}`);let c=Se.loadFromFile(jt);if(t_(n,c.CLAUDE_MEM_EXCLUDED_PROJECTS))return _.debug("HOOK","Project excluded from tracking, skipping observation",{cwd:n,toolName:i}),{continue:!0,suppressOutput:!0};try{let u=await dt("/api/sessions/observations",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:r,tool_name:i,tool_input:s,tool_response:o,cwd:n})});if(!u.ok)return _.warn("HOOK","Observation storage failed, skipping",{status:u.status,toolName:i}),{continue:!0,suppressOutput:!0,exitCode:rt.SUCCESS};_.debug("HOOK","Observation sent successfully",{toolName:i})}catch(u){return _.warn("HOOK","Observation fetch error, skipping",{error:u instanceof Error?u.message:String(u)}),{continue:!0,suppressOutput:!0,exitCode:rt.SUCCESS}}return{continue:!0,suppressOutput:!0}}}});var Mf,i_=Oe(()=>{"use strict";Dr();re();Tn();Mf={async execute(t){if(!await kr())return{continue:!0,suppressOutput:!0,exitCode:rt.SUCCESS};let{sessionId:r,cwd:n,filePath:i,edits:s}=t;if(!i)throw new Error("fileEditHandler requires filePath");if(_.dataIn("HOOK",`FileEdit: ${i}`,{editCount:s?.length??0}),!n)throw new Error(`Missing cwd in FileEdit hook input for session ${r}, file ${i}`);try{let o=await dt("/api/sessions/observations",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:r,tool_name:"write_file",tool_input:{filePath:i,edits:s},tool_response:{success:!0},cwd:n})});if(!o.ok)return _.warn("HOOK","File edit observation storage failed, skipping",{status:o.status,filePath:i}),{continue:!0,suppressOutput:!0,exitCode:rt.SUCCESS};_.debug("HOOK","File edit observation sent successfully",{filePath:i})}catch(o){return _.warn("HOOK","File edit observation fetch error, skipping",{error:o instanceof Error?o.message:String(o)}),{continue:!0,suppressOutput:!0,exitCode:rt.SUCCESS}}return{continue:!0,suppressOutput:!0}}}});var Df,s_=Oe(()=>{"use strict";Dr();re();Df={async execute(t){if(!await kr())return{continue:!0,suppressOutput:!0};let{sessionId:r}=t;if(!r)return _.warn("HOOK","session-complete: Missing sessionId, skipping"),{continue:!0,suppressOutput:!0};_.info("HOOK","\u2192 session-complete: Removing session from active map",{contentSessionId:r});try{let n=await dt("/api/sessions/complete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:r})});if(n.ok)_.info("HOOK","Session completed successfully",{contentSessionId:r});else{let i=await n.text();_.warn("HOOK","session-complete: Failed to complete session",{status:n.status,body:i})}}catch(n){_.warn("HOOK","session-complete: Error completing session",{error:n.message})}return{continue:!0,suppressOutput:!0}}}});function aSe(){try{let t=process.stdin;return t.isTTY?!1:(t.readable,!0)}catch{return!1}}function cSe(t){let e=t.trim();if(!e)return{success:!1};try{return{success:!0,value:JSON.parse(e)}}catch{return{success:!1}}}async function R5(){if(aSe())return new Promise((t,e)=>{let r="",n=!1,i=null,s=()=>{try{process.stdin.removeAllListeners("data"),process.stdin.removeAllListeners("end"),process.stdin.removeAllListeners("error")}catch{}},o=l=>{n||(n=!0,i&&clearTimeout(i),clearTimeout(u),s(),t(l))},a=l=>{n||(n=!0,i&&clearTimeout(i),clearTimeout(u),s(),e(l))},c=()=>{let l=cSe(r);return l.success?(o(l.value),!0):!1},u=setTimeout(()=>{n||c()||(r.trim()?a(new Error(`Incomplete JSON after ${I5}ms: ${r.slice(0,100)}...`)):o(void 0))},I5);try{process.stdin.on("data",l=>{r+=l,i&&(clearTimeout(i),i=null),!c()&&(i=setTimeout(()=>{c()},uSe))}),process.stdin.on("end",()=>{n||c()||o((r.trim(),void 0))}),process.stdin.on("error",()=>{n||o(void 0)})}catch{n=!0,clearTimeout(u),s(),t(void 0)}})}var I5,uSe,O5=Oe(()=>{"use strict";I5=3e4,uSe=50});var C5,P5=Oe(()=>{"use strict";C5={normalizeInput(t){let e=t??{};return{sessionId:e.session_id??e.id??e.sessionId,cwd:e.cwd??process.cwd(),prompt:e.prompt,toolName:e.tool_name,toolInput:e.tool_input,toolResponse:e.tool_response,transcriptPath:e.transcript_path}},formatOutput(t){let e=t??{};if(e.hookSpecificOutput){let n={hookSpecificOutput:t.hookSpecificOutput};return e.systemMessage&&(n.systemMessage=e.systemMessage),n}let r={};return e.systemMessage&&(r.systemMessage=e.systemMessage),r}}});var A5,N5=Oe(()=>{"use strict";A5={normalizeInput(t){let e=t??{},r=!!e.command&&!e.tool_name;return{sessionId:e.conversation_id||e.generation_id||e.id,cwd:e.workspace_roots?.[0]??e.cwd??process.cwd(),prompt:e.prompt??e.query??e.input??e.message,toolName:r?"Bash":e.tool_name,toolInput:r?{command:e.command}:e.tool_input,toolResponse:r?{output:e.output}:e.result_json,transcriptPath:void 0,filePath:e.file_path,edits:e.edits}},formatOutput(t){return{continue:t.continue??!0}}}});var M5,D5=Oe(()=>{"use strict";M5={normalizeInput(t){let e=t??{},r=e.cwd??process.env.GEMINI_CWD??process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR??process.cwd(),n=e.session_id??process.env.GEMINI_SESSION_ID??void 0,i=e.hook_event_name,s=e.tool_name,o=e.tool_input,a=e.tool_response;i==="AfterAgent"&&e.prompt_response&&(s=s??"GeminiAgent",o=o??{prompt:e.prompt},a=a??{response:e.prompt_response}),i==="BeforeTool"&&s&&!a&&(a={_preExecution:!0}),i==="Notification"&&(s=s??"GeminiNotification",o=o??{notification_type:e.notification_type,message:e.message},a=a??{details:e.details});let c={};return e.source&&(c.source=e.source),e.reason&&(c.reason=e.reason),e.trigger&&(c.trigger=e.trigger),e.mcp_context&&(c.mcp_context=e.mcp_context),e.notification_type&&(c.notification_type=e.notification_type),e.stop_hook_active!==void 0&&(c.stop_hook_active=e.stop_hook_active),e.original_request_name&&(c.original_request_name=e.original_request_name),i&&(c.hook_event_name=i),{sessionId:n,cwd:r,prompt:e.prompt,toolName:s,toolInput:o,toolResponse:a,transcriptPath:e.transcript_path,metadata:Object.keys(c).length>0?c:void 0}},formatOutput(t){let e={};if(e.continue=t.continue??!0,t.suppressOutput!==void 0&&(e.suppressOutput=t.suppressOutput),t.systemMessage){let r=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;e.systemMessage=t.systemMessage.replace(r,"")}return t.hookSpecificOutput&&(e.hookSpecificOutput={additionalContext:t.hookSpecificOutput.additionalContext}),e}}});var UI,j5=Oe(()=>{"use strict";UI={normalizeInput(t){let e=t;return{sessionId:e.sessionId??e.session_id??"unknown",cwd:e.cwd??process.cwd(),prompt:e.prompt,toolName:e.toolName??e.tool_name,toolInput:e.toolInput??e.tool_input,toolResponse:e.toolResponse??e.tool_response,transcriptPath:e.transcriptPath??e.transcript_path,filePath:e.filePath??e.file_path,edits:e.edits}},formatOutput(t){return t}}});var z5,L5=Oe(()=>{"use strict";z5={normalizeInput(t){let e=t??{},r=e.tool_info??{},n=e.agent_action_name??"",i={sessionId:e.trajectory_id??e.execution_id,cwd:r.cwd??process.cwd(),platform:"windsurf"};switch(n){case"pre_user_prompt":return{...i,prompt:r.user_prompt};case"post_write_code":return{...i,toolName:"Write",filePath:r.file_path,edits:r.edits,toolInput:{file_path:r.file_path,edits:r.edits}};case"post_run_command":return{...i,cwd:r.cwd??i.cwd,toolName:"Bash",toolInput:{command:r.command_line}};case"post_mcp_tool_use":return{...i,toolName:r.mcp_tool_name??"mcp_tool",toolInput:r.mcp_tool_arguments,toolResponse:r.mcp_result};case"post_cascade_response":return{...i,toolName:"cascade_response",toolResponse:r.response};default:return i}},formatOutput(t){return{continue:t.continue??!0}}}});function U5(t){switch(t){case"claude-code":return C5;case"cursor":return A5;case"gemini":case"gemini-cli":return M5;case"windsurf":return z5;case"raw":return UI;default:return UI}}var F5=Oe(()=>{"use strict";P5();N5();D5();j5();L5()});var FI,qI=Oe(()=>{"use strict";Dr();lf();Tn();re();rr();zt();FI={async execute(t){if(!await kr())return{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:""},exitCode:rt.SUCCESS};let r=t.cwd??process.cwd(),n=xy(r),i=Jr(),o=Se.loadFromFile(jt).CLAUDE_MEM_CONTEXT_SHOW_TERMINAL_OUTPUT==="true",a=n.allProjects.join(","),c=`/api/context/inject?projects=${encodeURIComponent(a)}`,u=t.platform==="claude-code"?`${c}&colors=true`:c;try{let[l,d]=await Promise.all([dt(c),o?dt(u).catch(()=>null):Promise.resolve(null)]);if(!l.ok)return _.warn("HOOK","Context generation failed, returning empty",{status:l.status}),{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:""},exitCode:rt.SUCCESS};let[p,f]=await Promise.all([l.text(),d?.ok?d.text():Promise.resolve("")]),m=p.trim(),h=f.trim(),g=t.platform,v=h||(g==="gemini-cli"||g==="gemini"?m:""),S=o&&v?`${v} +`}var ul=we(()=>{"use strict";Vf();tn();La()});function jH(t,e,r,n){let i=[];return n?i.push(...EH(t)):i.push(...lH(t)),n?i.push(...kH()):i.push(...dH()),n?i.push(...TH()):i.push(...pH()),n?i.push(...$H()):i.push(...fH()),d_(r)&&(n?i.push(...IH(e,r)):i.push(...mH(e,r))),i}var zH=we(()=>{"use strict";La();cl();ul()});function $Se(t){let e=new Map;for(let n of t){let i=n.type==="observation"?n.data.created_at:n.data.displayTime,s=Ns(i);e.has(s)||e.set(s,[]),e.get(s).push(n)}let r=Array.from(e.entries()).sort((n,i)=>{let s=new Date(n[0]).getTime(),o=new Date(i[0]).getTime();return s-o});return new Map(r)}function LH(t,e){return e.fullObservationField==="narrative"?t.narrative:t.facts?ka(t.facts).join(` +`):null}function ISe(t,e,r,n){let i=[];i.push(...hH(t));let s="";for(let o of e)if(o.type==="summary"){let a=o.data,c=An(a.displayTime);i.push(..._H(a,c))}else{let a=o.data,c=hr(a.created_at),l=c!==s?c:"";if(s=c,r.has(a.id)){let p=LH(a,n);i.push(...yH(a,l,p,n))}else i.push(vH(a,l,n))}return i}function RSe(t,e,r,n,i){let s=[];s.push(...RH(t));let o=null,a="";for(let c of e)if(c.type==="summary"){o=null,a="";let u=c.data,l=An(u.displayTime);s.push(...AH(u,l))}else{let u=c.data,l=Si(u.files_modified,i,u.files_read),d=hr(u.created_at),p=d!==a;a=d;let f=r.has(u.id);if(l!==o&&(s.push(...OH(l)),o=l),f){let m=LH(u,n);s.push(...PH(u,d,p,m,n))}else s.push(CH(u,d,p,n))}return s.push(""),s}function OSe(t,e,r,n,i,s){return s?RSe(t,e,r,n,i):ISe(t,e,r,n)}function UH(t,e,r,n,i){let s=[],o=$Se(t);for(let[a,c]of o)s.push(...OSe(a,c,e,r,n,i));return s}var FH=we(()=>{"use strict";js();cl();ul()});function qH(t,e,r){return!(!t.showLastSummary||!e||!!!(e.investigated||e.learned||e.completed||e.next_steps)||r&&e.created_at_epoch<=r.created_at_epoch)}function HH(t,e){let r=[];return e?(r.push(...Xf("Investigated",t.investigated,Y.blue)),r.push(...Xf("Learned",t.learned,Y.yellow)),r.push(...Xf("Completed",t.completed,Y.green)),r.push(...Xf("Next Steps",t.next_steps,Y.magenta))):(r.push(...Jf("Investigated",t.investigated)),r.push(...Jf("Learned",t.learned)),r.push(...Jf("Completed",t.completed)),r.push(...Jf("Next Steps",t.next_steps))),r}var ZH=we(()=>{"use strict";Vf();cl();ul()});function BH(t,e){return e?NH(t):bH(t)}function GH(t,e,r){return!d_(e)||t.totalDiscoveryTokens<=0||t.savings<=0?[]:r?MH(t.totalDiscoveryTokens,t.totalReadTokens):SH(t.totalDiscoveryTokens,t.totalReadTokens)}var WH=we(()=>{"use strict";La();cl();ul()});function PSe(){try{return new Is}catch(t){if(t.code==="ERR_DLOPEN_FAILED"){try{(0,JH.unlinkSync)(CSe)}catch(e){_.debug("SYSTEM","Marker file cleanup failed (may not exist)",{},e)}return _.error("SYSTEM","Native module rebuild needed - restart Claude Code to auto-fix"),null}throw t}}function ASe(t,e){return e?DH(t):xH(t)}function NSe(t,e,r,n,i,s,o){let a=[],c=ZI(e);a.push(...jH(t,c,n,o));let u=r.slice(0,n.sessionCount),l=aH(u,r),d=VI(e,l),p=cH(e,n.fullObservationCount);a.push(...UH(d,p,n,i,o));let f=r[0],m=e[0];qH(n,f,m)&&a.push(...HH(f,o));let h=WI(e,n,s,i);return a.push(...BH(h,o)),a.push(...GH(c,n,o)),a.join(` +`).trimEnd()}async function JI(t,e=!1){let r=UI(),n=t?.cwd??process.cwd(),i=Xs(n),s=t?.platform_source,o=t?.projects||[i];t?.full&&(r.totalObservationCount=999999,r.sessionCount=999999);let a=PSe();if(!a)return"";try{let c=o.length>1?sH(a,o,r,s):BI(a,i,r,s),u=o.length>1?oH(a,o,r,s):GI(a,i,r,s);return c.length===0&&u.length===0?ASe(i,e):NSe(i,c,u,r,n,t?.session_id,e)}finally{a.close()}}var VH,KH,JH,CSe,XH=we(()=>{"use strict";VH=Pe(require("path"),1),KH=require("os"),JH=require("fs");vg();re();za();FI();La();KI();zH();FH();ZH();WH();cl();ul();CSe=VH.default.join((0,KH.homedir)(),".claude","plugins","marketplaces","thedotmack","plugin",".install-version")});var YH=we(()=>{"use strict";XH();FI();La();KI()});var XI={};wn(XI,{generateContext:()=>JI});var YI=we(()=>{"use strict";YH()});function jSe(){try{let t=process.stdin;return t.isTTY?!1:(t.readable,!0)}catch{return!1}}function zSe(t){let e=t.trim();if(!e)return{success:!1};try{return{success:!0,value:JSON.parse(e)}}catch{return{success:!1}}}async function n5(){if(jSe())return new Promise((t,e)=>{let r="",n=!1,i=null,s=()=>{try{process.stdin.removeAllListeners("data"),process.stdin.removeAllListeners("end"),process.stdin.removeAllListeners("error")}catch{}},o=l=>{n||(n=!0,i&&clearTimeout(i),clearTimeout(u),s(),t(l))},a=l=>{n||(n=!0,i&&clearTimeout(i),clearTimeout(u),s(),e(l))},c=()=>{let l=zSe(r);return l.success?(o(l.value),!0):!1},u=setTimeout(()=>{n||c()||(r.trim()?a(new Error(`Incomplete JSON after ${r5}ms: ${r.slice(0,100)}...`)):o(void 0))},r5);try{process.stdin.on("data",l=>{r+=l,i&&(clearTimeout(i),i=null),!c()&&(i=setTimeout(()=>{c()},LSe))}),process.stdin.on("end",()=>{n||c()||o((r.trim(),void 0))}),process.stdin.on("error",()=>{n||o(void 0)})}catch{n=!0,clearTimeout(u),s(),t(void 0)}})}var r5,LSe,i5=we(()=>{"use strict";r5=3e4,LSe=50});var s5,o5=we(()=>{"use strict";s5={normalizeInput(t){let e=t??{};return{sessionId:e.session_id??e.id??e.sessionId,cwd:e.cwd??process.cwd(),prompt:e.prompt,toolName:e.tool_name,toolInput:e.tool_input,toolResponse:e.tool_response,transcriptPath:e.transcript_path}},formatOutput(t){let e=t??{};if(e.hookSpecificOutput){let n={hookSpecificOutput:t.hookSpecificOutput};return e.systemMessage&&(n.systemMessage=e.systemMessage),n}let r={};return e.systemMessage&&(r.systemMessage=e.systemMessage),r}}});var a5,c5=we(()=>{"use strict";a5={normalizeInput(t){let e=t??{},r=!!e.command&&!e.tool_name;return{sessionId:e.conversation_id||e.generation_id||e.id,cwd:e.workspace_roots?.[0]??e.cwd??process.cwd(),prompt:e.prompt??e.query??e.input??e.message,toolName:r?"Bash":e.tool_name,toolInput:r?{command:e.command}:e.tool_input,toolResponse:r?{output:e.output}:e.result_json,transcriptPath:void 0,filePath:e.file_path,edits:e.edits}},formatOutput(t){return{continue:t.continue??!0}}}});var u5,l5=we(()=>{"use strict";u5={normalizeInput(t){let e=t??{},r=e.cwd??process.env.GEMINI_CWD??process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR??process.cwd(),n=e.session_id??process.env.GEMINI_SESSION_ID??void 0,i=e.hook_event_name,s=e.tool_name,o=e.tool_input,a=e.tool_response;i==="AfterAgent"&&e.prompt_response&&(s=s??"GeminiAgent",o=o??{prompt:e.prompt},a=a??{response:e.prompt_response}),i==="BeforeTool"&&s&&!a&&(a={_preExecution:!0}),i==="Notification"&&(s=s??"GeminiNotification",o=o??{notification_type:e.notification_type,message:e.message},a=a??{details:e.details});let c={};return e.source&&(c.source=e.source),e.reason&&(c.reason=e.reason),e.trigger&&(c.trigger=e.trigger),e.mcp_context&&(c.mcp_context=e.mcp_context),e.notification_type&&(c.notification_type=e.notification_type),e.stop_hook_active!==void 0&&(c.stop_hook_active=e.stop_hook_active),e.original_request_name&&(c.original_request_name=e.original_request_name),i&&(c.hook_event_name=i),{sessionId:n,cwd:r,prompt:e.prompt,toolName:s,toolInput:o,toolResponse:a,transcriptPath:e.transcript_path,metadata:Object.keys(c).length>0?c:void 0}},formatOutput(t){let e={};if(e.continue=t.continue??!0,t.suppressOutput!==void 0&&(e.suppressOutput=t.suppressOutput),t.systemMessage){let r=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g;e.systemMessage=t.systemMessage.replace(r,"")}return t.hookSpecificOutput&&(e.hookSpecificOutput={additionalContext:t.hookSpecificOutput.additionalContext}),e}}});var nR,d5=we(()=>{"use strict";nR={normalizeInput(t){let e=t;return{sessionId:e.sessionId??e.session_id??"unknown",cwd:e.cwd??process.cwd(),prompt:e.prompt,toolName:e.toolName??e.tool_name,toolInput:e.toolInput??e.tool_input,toolResponse:e.toolResponse??e.tool_response,transcriptPath:e.transcriptPath??e.transcript_path,filePath:e.filePath??e.file_path,edits:e.edits}},formatOutput(t){return t}}});var p5,f5=we(()=>{"use strict";p5={normalizeInput(t){let e=t??{},r=e.tool_info??{},n=e.agent_action_name??"",i={sessionId:e.trajectory_id??e.execution_id,cwd:r.cwd??process.cwd(),platform:"windsurf"};switch(n){case"pre_user_prompt":return{...i,prompt:r.user_prompt};case"post_write_code":return{...i,toolName:"Write",filePath:r.file_path,edits:r.edits,toolInput:{file_path:r.file_path,edits:r.edits}};case"post_run_command":return{...i,cwd:r.cwd??i.cwd,toolName:"Bash",toolInput:{command:r.command_line}};case"post_mcp_tool_use":return{...i,toolName:r.mcp_tool_name??"mcp_tool",toolInput:r.mcp_tool_arguments,toolResponse:r.mcp_result};case"post_cascade_response":return{...i,toolName:"cascade_response",toolResponse:r.response};default:return i}},formatOutput(t){return{continue:t.continue??!0}}}});function m5(t){switch(t){case"claude-code":return s5;case"cursor":return a5;case"gemini":case"gemini-cli":return u5;case"windsurf":return p5;case"raw":return nR;default:return nR}}var h5=we(()=>{"use strict";o5();c5();l5();d5();f5()});var iR,sR=we(()=>{"use strict";Ir();za();On();re();tr();It();Gi();iR={async execute(t){if(!await sr())return{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:""},exitCode:nt.SUCCESS};let r=t.cwd??process.cwd(),n=il(r),i=Yr(),s=Rt(t.platform),a=ve.loadFromFile(vt).CLAUDE_MEM_CONTEXT_SHOW_TERMINAL_OUTPUT==="true",c=n.allProjects.join(","),u=`/api/context/inject?projects=${encodeURIComponent(c)}&platformSource=${encodeURIComponent(s)}`,l=t.platform==="claude-code"?`${u}&colors=true`:u;try{let[d,p]=await Promise.all([at(u),a?at(l).catch(()=>null):Promise.resolve(null)]);if(!d.ok)return _.warn("HOOK","Context generation failed, returning empty",{status:d.status}),{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:""},exitCode:nt.SUCCESS};let[f,m]=await Promise.all([d.text(),p?.ok?p.text():Promise.resolve("")]),h=f.trim(),g=m.trim(),v=t.platform,y=g||(v==="gemini-cli"||v==="gemini"?h:""),b=a&&y?`${y} -View Observations Live @ http://localhost:${i}`:void 0;return{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:m},systemMessage:S}}catch(l){return _.warn("HOOK","Context fetch error, returning empty",{error:l instanceof Error?l.message:String(l)}),{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:""},exitCode:rt.SUCCESS}}}}});function q5(t,e,r=!1){if(!t||!(0,l_.existsSync)(t))return _.warn("PARSER",`Transcript path missing or file does not exist: ${t}`),"";let n=(0,l_.readFileSync)(t,"utf-8").trim();if(!n)return _.warn("PARSER",`Transcript file exists but is empty: ${t}`),"";let i=n.split(` +View Observations Live @ http://localhost:${i}`:void 0;return{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:h},systemMessage:b}}catch(d){return _.warn("HOOK","Context fetch error, returning empty",{error:d instanceof Error?d.message:String(d)}),{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:""},exitCode:nt.SUCCESS}}}}});function g5(t,e,r=!1){if(!t||!(0,x_.existsSync)(t))return _.warn("PARSER",`Transcript path missing or file does not exist: ${t}`),"";let n=(0,x_.readFileSync)(t,"utf-8").trim();if(!n)return _.warn("PARSER",`Transcript file exists but is empty: ${t}`),"";let i=n.split(` `),s=!1;for(let o=i.length-1;o>=0;o--){let a=JSON.parse(i[o]);if(a.type===e&&(s=!0,a.message?.content)){let c="",u=a.message.content;if(typeof u=="string")c=u;else if(Array.isArray(u))c=u.filter(l=>l.type==="text").map(l=>l.text).join(` -`);else throw new Error(`Unknown message content format in transcript. Type: ${typeof u}`);return r&&(c=c.replace(/[\s\S]*?<\/system-reminder>/g,""),c=c.replace(/\n{3,}/g,` +`);else throw new Error(`Unknown message content format in transcript. Type: ${typeof u}`);return r&&(c=c.replace(Gf,""),c=c.replace(/\n{3,}/g,` -`).trim()),c}}return""}var l_,H5=Oe(()=>{"use strict";l_=require("fs");re()});var lSe,dSe,pSe,HI,ZI=Oe(()=>{"use strict";Dr();re();H5();Tn();lSe=Gh(Er.DEFAULT),dSe=500,pSe=11e4,HI={async execute(t){if(!await kr())return{continue:!0,suppressOutput:!0,exitCode:rt.SUCCESS};let{sessionId:r,transcriptPath:n}=t;if(!n)return _.debug("HOOK",`No transcriptPath in Stop hook input for session ${r} - skipping summary`),{continue:!0,suppressOutput:!0,exitCode:rt.SUCCESS};let i="";try{i=q5(n,"assistant",!0)}catch(a){return _.warn("HOOK",`Stop hook: failed to extract last assistant message for session ${r}: ${a instanceof Error?a.message:a}`),{continue:!0,suppressOutput:!0,exitCode:rt.SUCCESS}}if(!i||!i.trim())return _.debug("HOOK","No assistant message in transcript - skipping summary",{sessionId:r,transcriptPath:n}),{continue:!0,suppressOutput:!0,exitCode:rt.SUCCESS};if(_.dataIn("HOOK","Stop: Requesting summary",{hasLastAssistantMessage:!!i}),!(await dt("/api/sessions/summarize",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:r,last_assistant_message:i}),timeoutMs:lSe})).ok)return{continue:!0,suppressOutput:!0};_.debug("HOOK","Summary request queued, waiting for completion");let o=Date.now();for(;Date.now()-osetTimeout(a,dSe));try{let a=await dt(`/api/sessions/status?contentSessionId=${encodeURIComponent(r)}`,{timeoutMs:5e3});if(a.ok&&((await a.json()).queueLength??0)===0){_.info("HOOK","Summary processing complete",{waitedMs:Date.now()-o});break}}catch{}}try{await dt("/api/sessions/complete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:r}),timeoutMs:1e4}),_.info("HOOK","Session completed in Stop hook",{contentSessionId:r})}catch(a){_.warn("HOOK",`Stop hook: session-complete failed: ${a instanceof Error?a.message:a}`)}return{continue:!0,suppressOutput:!0}}}});var Z5,BI,GI=Oe(()=>{"use strict";Z5=require("path");Dr();Tn();BI={async execute(t){if(!await kr())return{exitCode:rt.SUCCESS};let r=Jr(),n=(0,Z5.basename)(t.cwd??process.cwd()),i=t.platform==="claude-code"?"&colors=true":"";try{let s=await dt(`/api/context/inject?project=${encodeURIComponent(n)}${i}`);if(!s.ok)return{exitCode:rt.SUCCESS};let o=await s.text();process.stderr.write(` +`).trim()),c}}return""}var x_,v5=we(()=>{"use strict";x_=require("fs");re();a_()});var USe,FSe,qSe,oR,aR=we(()=>{"use strict";Ir();re();v5();On();USe=ag($r.DEFAULT),FSe=500,qSe=11e4,oR={async execute(t){if(!await sr())return{continue:!0,suppressOutput:!0,exitCode:nt.SUCCESS};let{sessionId:r,transcriptPath:n}=t;if(!n)return _.debug("HOOK",`No transcriptPath in Stop hook input for session ${r} - skipping summary`),{continue:!0,suppressOutput:!0,exitCode:nt.SUCCESS};let i="";try{i=g5(n,"assistant",!0)}catch(a){return _.warn("HOOK",`Stop hook: failed to extract last assistant message for session ${r}: ${a instanceof Error?a.message:a}`),{continue:!0,suppressOutput:!0,exitCode:nt.SUCCESS}}if(!i||!i.trim())return _.debug("HOOK","No assistant message in transcript - skipping summary",{sessionId:r,transcriptPath:n}),{continue:!0,suppressOutput:!0,exitCode:nt.SUCCESS};if(_.dataIn("HOOK","Stop: Requesting summary",{hasLastAssistantMessage:!!i}),!(await at("/api/sessions/summarize",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:r,last_assistant_message:i}),timeoutMs:USe})).ok)return{continue:!0,suppressOutput:!0};_.debug("HOOK","Summary request queued, waiting for completion");let o=Date.now();for(;Date.now()-osetTimeout(a,FSe));try{let a=await at(`/api/sessions/status?contentSessionId=${encodeURIComponent(r)}`,{timeoutMs:5e3});if(a.ok&&((await a.json()).queueLength??0)===0){_.info("HOOK","Summary processing complete",{waitedMs:Date.now()-o});break}}catch{}}try{await at("/api/sessions/complete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:r}),timeoutMs:1e4}),_.info("HOOK","Session completed in Stop hook",{contentSessionId:r})}catch(a){_.warn("HOOK",`Stop hook: session-complete failed: ${a instanceof Error?a.message:a}`)}return{continue:!0,suppressOutput:!0}}}});var y5,cR,uR=we(()=>{"use strict";y5=require("path");Ir();On();cR={async execute(t){if(!await sr())return{exitCode:nt.SUCCESS};let r=Yr(),n=(0,y5.basename)(t.cwd??process.cwd()),i=t.platform==="claude-code"?"&colors=true":"";try{let s=await at(`/api/context/inject?project=${encodeURIComponent(n)}${i}`);if(!s.ok)return{exitCode:nt.SUCCESS};let o=await s.text();process.stderr.write(` `+String.fromCodePoint(128221)+` Claude-Mem Context Loaded @@ -838,17 +944,18 @@ View Observations Live @ http://localhost:${i}`:void 0;return{hookSpecificOutput `+String.fromCodePoint(128172)+` Community https://discord.gg/J4wttp9vDu `+String.fromCodePoint(128250)+` Watch live in browser http://localhost:${r}/ -`)}catch{}return{exitCode:rt.SUCCESS}}}});function B5(t){let e=fSe[t];return e||(_.warn("HOOK",`Unknown event type: ${t}, returning no-op`),{async execute(){return{continue:!0,suppressOutput:!0,exitCode:rt.SUCCESS}}})}var fSe,G5=Oe(()=>{"use strict";Tn();re();qI();r_();n_();ZI();GI();i_();s_();qI();r_();n_();ZI();GI();i_();s_();fSe={context:FI,"session-init":Af,observation:Nf,summarize:HI,"session-complete":Df,"user-message":BI,"file-edit":Mf}});var V5={};_n(V5,{hookCommand:()=>mSe,isWorkerUnavailableError:()=>W5});function W5(t){let e=t instanceof Error?t.message:String(t),r=e.toLowerCase();return["econnrefused","econnreset","epipe","etimedout","enotfound","econnaborted","enetunreach","ehostunreach","fetch failed","unable to connect","socket hang up"].some(i=>r.includes(i))||r.includes("timed out")||r.includes("timeout")||/failed:\s*5\d{2}/.test(e)||/status[:\s]+5\d{2}/.test(e)||/failed:\s*429/.test(e)||/status[:\s]+429/.test(e)?!0:(/failed:\s*4\d{2}/.test(e)||/status[:\s]+4\d{2}/.test(e)||t instanceof TypeError||t instanceof ReferenceError||t instanceof SyntaxError,!1)}async function mSe(t,e,r={}){let n=process.stderr.write.bind(process.stderr);process.stderr.write=(()=>!0);try{let i=U5(t),s=B5(e),o=await R5(),a=i.normalizeInput(o);a.platform=t;let c=await s.execute(a),u=i.formatOutput(c);console.log(JSON.stringify(u));let l=c.exitCode??rt.SUCCESS;return r.skipExit||process.exit(l),l}catch(i){return W5(i)?(_.warn("HOOK",`Worker unavailable, skipping hook: ${i instanceof Error?i.message:i}`),r.skipExit||process.exit(rt.SUCCESS),rt.SUCCESS):(_.error("HOOK",`Hook error: ${i instanceof Error?i.message:i}`,{},i instanceof Error?i:void 0),r.skipExit||process.exit(rt.BLOCKING_ERROR),rt.BLOCKING_ERROR)}finally{process.stderr.write=n}}var K5=Oe(()=>{"use strict";O5();F5();G5();Tn();re()});var VI={};_n(VI,{cleanClaudeMd:()=>$Se,generateClaudeMd:()=>TSe});function vSe(t){return gSe[t]||"\u{1F4DD}"}function ySe(t){let e=(t.title?.length||0)+(t.subtitle?.length||0)+(t.narrative?.length||0)+(t.facts?.length||0);return Math.ceil(e/4)}function _Se(t){let e=new Set;try{let n=(0,Y5.execSync)("git ls-files",{cwd:t,encoding:"utf-8",maxBuffer:52428800}).trim().split(` -`).filter(i=>i);for(let i of n){let s=ar.default.join(t,i),o=ar.default.dirname(s);for(;o.length>t.length&&o.startsWith(t);)e.add(o),o=ar.default.dirname(o)}}catch(r){_.warn("CLAUDE_MD","git ls-files failed, falling back to directory walk",{error:String(r)}),Q5(t,e)}return e}function Q5(t,e,r=0){if(r>10)return;let n=["node_modules",".git",".next","dist","build",".cache","__pycache__",".venv","venv",".idea",".vscode","coverage",".claude-mem",".open-next",".turbo"];try{let i=(0,cr.readdirSync)(t,{withFileTypes:!0});for(let s of i){if(!s.isDirectory()||n.includes(s.name)||s.name.startsWith(".")&&s.name!==".claude")continue;let o=ar.default.join(t,s.name);e.add(o),Q5(o,e,r+1)}}catch{}}function bSe(t,e){let r=n=>{if(!n)return!1;try{let i=JSON.parse(n);if(Array.isArray(i))return i.some(s=>ma(s,e))}catch{}return!1};return r(t.files_modified)||r(t.files_read)}function SSe(t,e,r,n){let i=n*3,s=` +`)}catch{}return{exitCode:nt.SUCCESS}}}});function WSe(t){return t.toLowerCase().replace(" am","a").replace(" pm","p")}function VSe(t){return new Date(t).toLocaleString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}function KSe(t){return new Date(t).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric"})}function JSe(t,e,r){let n=new Set,i=[];for(let o of t){let a=o.memory_session_id??`no-session-${o.id}`;n.has(a)||(n.add(a),i.push(o))}let s=i.map(o=>{let a=ka(o.files_read),c=ka(o.files_modified),u=a.length+c.length,l=e.replace(/\\/g,"/"),d=c.some(f=>f.replace(/\\/g,"/")===l),p=0;return d&&(p+=2),u<=3?p+=2:u<=8&&(p+=1),{obs:o,specificityScore:p}});return s.sort((o,a)=>a.specificityScore-o.specificityScore),s.slice(0,r).map(o=>o.obs)}function XSe(t,e){let r=e.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n"),n=new Map;for(let l of t){let d=KSe(l.created_at_epoch);n.has(d)||n.set(d,[]),n.get(d).push(l)}let i=Array.from(n.entries()).sort((l,d)=>{let p=Math.min(...l[1].map(m=>m.created_at_epoch)),f=Math.min(...d[1].map(m=>m.created_at_epoch));return p-f}),s=new Date,o=s.toLocaleDateString("en-CA"),a=s.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0}).toLowerCase().replace(" ",""),c=s.toLocaleTimeString("en-US",{timeZoneName:"short"}).split(" ").pop(),u=[`Current: ${o} ${a} ${c}`,"This file has prior observations. Only line 1 was read to save tokens.","- **Already know enough?** The timeline below may be all you need (semantic priming).","- **Need details?** get_observations([IDs]) \u2014 ~300 tokens each.","- **Need full file?** Read again with offset/limit for the section you need.",`- **Need to edit?** Edit works \u2014 the file is registered as read. Use smart_outline("${r}") for line numbers.`];for(let[l,d]of i){let p=[...d].sort((f,m)=>f.created_at_epoch-m.created_at_epoch);u.push(`### ${l}`);for(let f of p){let m=(f.title||"Untitled").replace(/[\r\n\t]+/g," ").replace(/\s+/g," ").trim().slice(0,160),h=GSe[f.type]||"\u2753",g=WSe(VSe(f.created_at_epoch));u.push(`${f.id} ${g} ${h} ${m}`)}}return u.join(` +`)}var _5,qa,HSe,ZSe,BSe,GSe,lR,dR=we(()=>{"use strict";Ir();re();js();_5=require("fs"),qa=Pe(require("path"),1);Ky();tr();It();za();HSe=1500,ZSe=40,BSe=15,GSe={decision:"\u2696\uFE0F",bugfix:"\u{1F534}",feature:"\u{1F7E3}",refactor:"\u{1F504}",discovery:"\u{1F535}",change:"\u2705"};lR={async execute(t){let r=t.toolInput?.file_path;if(!r)return{continue:!0,suppressOutput:!0};try{let s=qa.default.isAbsolute(r)?r:qa.default.resolve(t.cwd||process.cwd(),r);if((0,_5.statSync)(s).size0&&u.set("projects",s.allProjects.join(",")),u.set("limit",String(ZSe));let l=await at(`/api/observations/by-file?${u.toString()}`,{method:"GET"});if(!l.ok)return _.warn("HOOK","File context query failed, skipping",{status:l.status,filePath:r}),{continue:!0,suppressOutput:!0};let d=await l.json();if(!d.observations||d.observations.length===0)return{continue:!0,suppressOutput:!0};let p=JSe(d.observations,c,BSe);return p.length===0?{continue:!0,suppressOutput:!0}:{hookSpecificOutput:{hookEventName:"PreToolUse",additionalContext:XSe(p,r),permissionDecision:"allow",updatedInput:{file_path:r,limit:1}}}}catch(s){return _.warn("HOOK","File context fetch error, skipping",{error:s instanceof Error?s.message:String(s)}),{continue:!0,suppressOutput:!0}}}}});function b5(t){let e=YSe[t];return e||(_.warn("HOOK",`Unknown event type: ${t}, returning no-op`),{async execute(){return{continue:!0,suppressOutput:!0,exitCode:nt.SUCCESS}}})}var YSe,S5=we(()=>{"use strict";On();re();sR();Jy();Xy();aR();uR();Yy();dR();Qy();sR();Jy();Xy();aR();uR();Yy();dR();Qy();YSe={context:iR,"session-init":qf,observation:Hf,summarize:oR,"session-complete":Bf,"user-message":cR,"file-edit":Zf,"file-context":lR}});var w5={};wn(w5,{hookCommand:()=>QSe,isWorkerUnavailableError:()=>x5});function x5(t){let e=t instanceof Error?t.message:String(t),r=e.toLowerCase();return["econnrefused","econnreset","epipe","etimedout","enotfound","econnaborted","enetunreach","ehostunreach","fetch failed","unable to connect","socket hang up"].some(i=>r.includes(i))||r.includes("timed out")||r.includes("timeout")||/failed:\s*5\d{2}/.test(e)||/status[:\s]+5\d{2}/.test(e)||/failed:\s*429/.test(e)||/status[:\s]+429/.test(e)?!0:(/failed:\s*4\d{2}/.test(e)||/status[:\s]+4\d{2}/.test(e)||t instanceof TypeError||t instanceof ReferenceError||t instanceof SyntaxError,!1)}async function QSe(t,e,r={}){let n=process.stderr.write.bind(process.stderr);process.stderr.write=(()=>!0);try{let i=m5(t),s=b5(e),o=await n5(),a=i.normalizeInput(o);a.platform=t;let c=await s.execute(a),u=i.formatOutput(c);console.log(JSON.stringify(u));let l=c.exitCode??nt.SUCCESS;return r.skipExit||process.exit(l),l}catch(i){return x5(i)?(_.warn("HOOK",`Worker unavailable, skipping hook: ${i instanceof Error?i.message:i}`),r.skipExit||process.exit(nt.SUCCESS),nt.SUCCESS):(_.error("HOOK",`Hook error: ${i instanceof Error?i.message:i}`,{},i instanceof Error?i:void 0),r.skipExit||process.exit(nt.BLOCKING_ERROR),nt.BLOCKING_ERROR)}finally{process.stderr.write=n}}var E5=we(()=>{"use strict";i5();h5();S5();On();re()});var fR={};wn(fR,{cleanClaudeMd:()=>pxe,generateClaudeMd:()=>dxe});function rxe(t){return txe[t]||"\u{1F4DD}"}function nxe(t){let e=(t.title?.length||0)+(t.subtitle?.length||0)+(t.narrative?.length||0)+(t.facts?.length||0);return Math.ceil(e/4)}function ixe(t){let e=new Set;try{let n=(0,$5.execSync)("git ls-files",{cwd:t,encoding:"utf-8",maxBuffer:52428800}).trim().split(` +`).filter(i=>i);for(let i of n){let s=lr.default.join(t,i),o=lr.default.dirname(s);for(;o.length>t.length&&o.startsWith(t);)e.add(o),o=lr.default.dirname(o)}}catch(r){_.warn("CLAUDE_MD","git ls-files failed, falling back to directory walk",{error:String(r)}),I5(t,e)}return e}function I5(t,e,r=0){if(r>10)return;let n=["node_modules",".git",".next","dist","build",".cache","__pycache__",".venv","venv",".idea",".vscode","coverage",".claude-mem",".open-next",".turbo"];try{let i=(0,dr.readdirSync)(t,{withFileTypes:!0});for(let s of i){if(!s.isDirectory()||n.includes(s.name)||s.name.startsWith(".")&&s.name!==".claude")continue;let o=lr.default.join(t,s.name);e.add(o),I5(o,e,r+1)}}catch{}}function sxe(t,e){let r=n=>{if(!n)return!1;try{let i=JSON.parse(n);if(Array.isArray(i))return i.some(s=>wa(s,e))}catch{}return!1};return r(t.files_modified)||r(t.files_read)}function oxe(t,e,r,n){let i=n*3,s=` SELECT o.*, o.discovery_tokens FROM observations o WHERE o.project = ? AND (o.files_modified LIKE ? OR o.files_read LIKE ?) ORDER BY o.created_at_epoch DESC LIMIT ? - `,a=`%"${e.split(ar.default.sep).join("/")}/%`;return t.prepare(s).all(r,a,a,i).filter(u=>bSe(u,e)).slice(0,n)}function xSe(t,e){if(t.files_modified)try{let r=JSON.parse(t.files_modified);if(Array.isArray(r)){for(let n of r)if(ma(n,e))return ar.default.basename(n)}}catch{}if(t.files_read)try{let r=JSON.parse(t.files_read);if(Array.isArray(r)){for(let n of r)if(ma(n,e))return ar.default.basename(n)}}catch{}return"General"}function wSe(t,e){let r=[];if(r.push("# Recent Activity"),r.push(""),r.push(""),r.push(""),t.length===0)return r.push("*No recent activity*"),r.join(` -`);let n=Os(t,i=>i.created_at);for(let[i,s]of n){r.push(`### ${i}`),r.push("");let o=new Map;for(let a of s){let c=xSe(a,e);o.has(c)||o.set(c,[]),o.get(c).push(a)}for(let[a,c]of o){r.push(`**${a}**`),r.push("| ID | Time | T | Title | Read |"),r.push("|----|------|---|-------|------|");let u="";for(let l of c){let d=pr(l.created_at_epoch),p=d===u?'"':d;u=d;let f=vSe(l.type),m=l.title||"Untitled",h=ySe(l);r.push(`| #${l.id} | ${p} | ${f} | ${m} | ~${h} |`)}r.push("")}}return r.join(` -`).trim()}function ESe(t,e){let r=ar.default.resolve(t);if(r.includes("/.git/")||r.includes("\\.git\\")||r.endsWith("/.git")||r.endsWith("\\.git"))return;let n=ar.default.join(t,"CLAUDE.md"),i=`${n}.tmp`;if(!(0,cr.existsSync)(t))throw new Error(`Folder does not exist: ${t}`);let s="";(0,cr.existsSync)(n)&&(s=(0,cr.readFileSync)(n,"utf-8"));let o="",a="",c;if(!s)c=`${o} + `,a=`%"${e.split(lr.default.sep).join("/")}/%`;return t.prepare(s).all(r,a,a,i).filter(u=>sxe(u,e)).slice(0,n)}function axe(t,e){if(t.files_modified)try{let r=JSON.parse(t.files_modified);if(Array.isArray(r)){for(let n of r)if(wa(n,e))return lr.default.basename(n)}}catch{}if(t.files_read)try{let r=JSON.parse(t.files_read);if(Array.isArray(r)){for(let n of r)if(wa(n,e))return lr.default.basename(n)}}catch{}return"General"}function cxe(t,e){let r=[];if(r.push("# Recent Activity"),r.push(""),r.push(""),r.push(""),t.length===0)return r.push("*No recent activity*"),r.join(` +`);let n=Ds(t,i=>i.created_at);for(let[i,s]of n){r.push(`### ${i}`),r.push("");let o=new Map;for(let a of s){let c=axe(a,e);o.has(c)||o.set(c,[]),o.get(c).push(a)}for(let[a,c]of o){r.push(`**${a}**`),r.push("| ID | Time | T | Title | Read |"),r.push("|----|------|---|-------|------|");let u="";for(let l of c){let d=hr(l.created_at_epoch),p=d===u?'"':d;u=d;let f=rxe(l.type),m=l.title||"Untitled",h=nxe(l);r.push(`| #${l.id} | ${p} | ${f} | ${m} | ~${h} |`)}r.push("")}}return r.join(` +`).trim()}function uxe(t,e){let r=lr.default.resolve(t);if(r.includes("/.git/")||r.includes("\\.git\\")||r.endsWith("/.git")||r.endsWith("\\.git"))return;let n=lr.default.join(t,"CLAUDE.md"),i=`${n}.tmp`;if(!(0,dr.existsSync)(t))throw new Error(`Folder does not exist: ${t}`);let s="";(0,dr.existsSync)(n)&&(s=(0,dr.readFileSync)(n,"utf-8"));let o="",a="",c;if(!s)c=`${o} ${e} ${a}`;else{let u=s.indexOf(o),l=s.indexOf(a);u!==-1&&l!==-1?c=s.substring(0,u)+`${o} ${e} @@ -856,61 +963,61 @@ ${a}`+s.substring(l+a.length):c=s+` ${o} ${e} -${a}`}(0,cr.writeFileSync)(i,c),(0,cr.renameSync)(i,n)}function kSe(t,e,r,n,i,s,o){try{if(!(0,cr.existsSync)(e))return{success:!1,observationCount:0,error:"Folder no longer exists"};let a=ar.default.resolve(e),c=ar.default.resolve(s);if(!a.startsWith(c+ar.default.sep))return{success:!1,observationCount:0,error:"Path escapes project root"};let u=SSe(t,r,n,o);if(u.length===0)return{success:!1,observationCount:0,error:"No observations for folder"};if(i)return{success:!0,observationCount:u.length};let l=wSe(u,r);return ESe(e,l),{success:!0,observationCount:u.length}}catch(a){return{success:!1,observationCount:0,error:String(a)}}}async function TSe(t){try{let e=process.cwd(),r=Se.loadFromFile(hSe),n=parseInt(r.CLAUDE_MEM_CONTEXT_OBSERVATIONS,10)||50;_.info("CLAUDE_MD","Starting CLAUDE.md generation",{workingDir:e,dryRun:t,observationLimit:n});let i=ar.default.basename(e),s=_Se(e);if(s.size===0)return _.info("CLAUDE_MD","No folders found in project"),0;if(_.info("CLAUDE_MD",`Found ${s.size} folders in project`),!(0,cr.existsSync)(J5))return _.info("CLAUDE_MD","Database not found, no observations to process"),0;let o=new X5.Database(J5,{readonly:!0,create:!1}),a=0,c=0,u=0,l=Array.from(s).sort();for(let d of l){let p=ar.default.relative(e,d),f=kSe(o,d,p,i,t,e,n);f.success?(_.debug("CLAUDE_MD",`Processed folder: ${p}`,{observationCount:f.observationCount}),a++):f.error?.includes("No observations")?c++:(_.warn("CLAUDE_MD",`Error processing folder: ${p}`,{error:f.error}),u++)}return o.close(),_.info("CLAUDE_MD","CLAUDE.md generation complete",{totalFolders:l.length,withObservations:a,noObservations:c,errors:u,dryRun:t}),0}catch(e){return _.error("CLAUDE_MD","Fatal error during CLAUDE.md generation",{error:String(e)}),1}}async function $Se(t){try{let i=function(c){let u=["node_modules",".git",".next","dist","build",".cache","__pycache__",".venv","venv",".idea",".vscode","coverage",".claude-mem",".open-next",".turbo"];try{let l=(0,cr.readdirSync)(c,{withFileTypes:!0});for(let d of l){let p=ar.default.join(c,d.name);if(d.isDirectory())u.includes(d.name)||i(p);else if(d.name==="CLAUDE.md")try{(0,cr.readFileSync)(p,"utf-8").includes("")&&n.push(p)}catch{}}}catch{}};var e=i;let r=process.cwd();_.info("CLAUDE_MD","Starting CLAUDE.md cleanup",{workingDir:r,dryRun:t});let n=[];if(i(r),n.length===0)return _.info("CLAUDE_MD","No CLAUDE.md files with auto-generated content found"),0;_.info("CLAUDE_MD",`Found ${n.length} CLAUDE.md files with auto-generated content`);let s=0,o=0,a=0;for(let c of n){let u=ar.default.relative(r,c);try{let d=(0,cr.readFileSync)(c,"utf-8").replace(/[\s\S]*?<\/claude-mem-context>/g,"").trim();d===""?(t||(0,cr.unlinkSync)(c),_.debug("CLAUDE_MD",`${t?"[DRY-RUN] Would delete":"Deleted"} (empty): ${u}`),s++):(t||(0,cr.writeFileSync)(c,d),_.debug("CLAUDE_MD",`${t?"[DRY-RUN] Would clean":"Cleaned"}: ${u}`),o++)}catch(l){_.warn("CLAUDE_MD",`Error processing ${u}`,{error:String(l)}),a++}}return _.info("CLAUDE_MD","CLAUDE.md cleanup complete",{deleted:s,cleaned:o,errors:a,dryRun:t}),0}catch(r){return _.error("CLAUDE_MD","Fatal error during CLAUDE.md cleanup",{error:String(r)}),1}}var X5,ar,WI,cr,Y5,J5,hSe,gSe,KI=Oe(()=>{"use strict";X5=require("bun:sqlite"),ar=Pe(require("path"),1),WI=Pe(require("os"),1),cr=require("fs"),Y5=require("child_process");rr();ga();e$();re();J5=ar.default.join(WI.default.homedir(),".claude-mem","claude-mem.db"),hSe=ar.default.join(WI.default.homedir(),".claude-mem","settings.json"),gSe={bugfix:"\u{1F534}",feature:"\u{1F7E3}",refactor:"\u{1F504}",change:"\u2705",discovery:"\u{1F535}",decision:"\u2696\uFE0F",session:"\u{1F3AF}",prompt:"\u{1F4AC}"}});var MSe={};_n(MSe,{WorkerService:()=>d_,buildStatusOutput:()=>tH,isPluginDisabledInClaudeSettings:()=>sg});module.exports=zf(MSe);var JI=Pe(require("path"),1),ns=require("fs");var Ye;(function(t){t.assertEqual=i=>{};function e(i){}t.assertIs=e;function r(i){throw new Error}t.assertNever=r,t.arrayToEnum=i=>{let s={};for(let o of i)s[o]=o;return s},t.getValidEnumValues=i=>{let s=t.objectKeys(i).filter(a=>typeof i[i[a]]!="number"),o={};for(let a of s)o[a]=i[a];return t.objectValues(o)},t.objectValues=i=>t.objectKeys(i).map(function(s){return i[s]}),t.objectKeys=typeof Object.keys=="function"?i=>Object.keys(i):i=>{let s=[];for(let o in i)Object.prototype.hasOwnProperty.call(i,o)&&s.push(o);return s},t.find=(i,s)=>{for(let o of i)if(s(o))return o},t.isInteger=typeof Number.isInteger=="function"?i=>Number.isInteger(i):i=>typeof i=="number"&&Number.isFinite(i)&&Math.floor(i)===i;function n(i,s=" | "){return i.map(o=>typeof o=="string"?`'${o}'`:o).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(i,s)=>typeof s=="bigint"?s.toString():s})(Ye||(Ye={}));var tR;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(tR||(tR={}));var ie=Ye.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),is=t=>{switch(typeof t){case"undefined":return ie.undefined;case"string":return ie.string;case"number":return Number.isNaN(t)?ie.nan:ie.number;case"boolean":return ie.boolean;case"function":return ie.function;case"bigint":return ie.bigint;case"symbol":return ie.symbol;case"object":return Array.isArray(t)?ie.array:t===null?ie.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?ie.promise:typeof Map<"u"&&t instanceof Map?ie.map:typeof Set<"u"&&t instanceof Set?ie.set:typeof Date<"u"&&t instanceof Date?ie.date:ie.object;default:return ie.unknown}};var B=Ye.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);var bn=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},i=s=>{for(let o of s.issues)if(o.code==="invalid_union")o.unionErrors.map(i);else if(o.code==="invalid_return_type")i(o.returnTypeError);else if(o.code==="invalid_arguments")i(o.argumentsError);else if(o.path.length===0)n._errors.push(r(o));else{let a=n,c=0;for(;cr.message){let r=Object.create(null),n=[];for(let i of this.issues)if(i.path.length>0){let s=i.path[0];r[s]=r[s]||[],r[s].push(e(i))}else n.push(e(i));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};bn.create=t=>new bn(t);var cH=(t,e)=>{let r;switch(t.code){case B.invalid_type:t.received===ie.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case B.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,Ye.jsonStringifyReplacer)}`;break;case B.unrecognized_keys:r=`Unrecognized key(s) in object: ${Ye.joinValues(t.keys,", ")}`;break;case B.invalid_union:r="Invalid input";break;case B.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${Ye.joinValues(t.options)}`;break;case B.invalid_enum_value:r=`Invalid enum value. Expected ${Ye.joinValues(t.options)}, received '${t.received}'`;break;case B.invalid_arguments:r="Invalid function arguments";break;case B.invalid_return_type:r="Invalid function return type";break;case B.invalid_date:r="Invalid date";break;case B.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:Ye.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case B.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case B.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case B.custom:r="Invalid input";break;case B.invalid_intersection_types:r="Intersection results could not be merged";break;case B.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case B.not_finite:r="Number must be finite";break;default:r=e.defaultError,Ye.assertNever(t)}return{message:r}},qs=cH;var uH=qs;function Qu(){return uH}var Lf=t=>{let{data:e,path:r,errorMaps:n,issueData:i}=t,s=[...r,...i.path||[]],o={...i,path:s};if(i.message!==void 0)return{...i,path:s,message:i.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(o,{data:e,defaultError:a}).message;return{...i,path:s,message:a}};function Q(t,e){let r=Qu(),n=Lf({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===qs?void 0:qs].filter(i=>!!i)});t.common.issues.push(n)}var Rr=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let i of r){if(i.status==="aborted")return we;i.status==="dirty"&&e.dirty(),n.push(i.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let i of r){let s=await i.key,o=await i.value;n.push({key:s,value:o})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let i of r){let{key:s,value:o}=i;if(s.status==="aborted"||o.status==="aborted")return we;s.status==="dirty"&&e.dirty(),o.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof o.value<"u"||i.alwaysSet)&&(n[s.value]=o.value)}return{status:e.value,value:n}}},we=Object.freeze({status:"aborted"}),Ma=t=>({status:"dirty",value:t}),Hr=t=>({status:"valid",value:t}),m_=t=>t.status==="aborted",h_=t=>t.status==="dirty",Io=t=>t.status==="valid",el=t=>typeof Promise<"u"&&t instanceof Promise;var de;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(de||(de={}));var Mn=class{constructor(e,r,n,i){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=i}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},rR=(t,e)=>{if(Io(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new bn(t.common.issues);return this._error=r,this._error}}};function Ae(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:i}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:i}:{errorMap:(o,a)=>{let{message:c}=t;return o.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:o.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:i}}var Fe=class{get description(){return this._def.description}_getType(e){return is(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:is(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Rr,ctx:{common:e.parent.common,data:e.data,parsedType:is(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(el(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:is(e)},i=this._parseSync({data:e,path:n.path,parent:n});return rR(n,i)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:is(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Io(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>Io(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:is(e)},i=this._parse({data:e,path:n.path,parent:n}),s=await(el(i)?i:Promise.resolve(i));return rR(n,s)}refine(e,r){let n=i=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(i):r;return this._refinement((i,s)=>{let o=e(i),a=()=>s.addIssue({code:B.custom,...n(i)});return typeof Promise<"u"&&o instanceof Promise?o.then(c=>c?!0:(a(),!1)):o?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,i)=>e(n)?!0:(i.addIssue(typeof r=="function"?r(n,i):r),!1))}_refinement(e){return new ii({schema:this,typeName:ye.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return ni.create(this,this._def)}nullable(){return as.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Zs.create(this)}promise(){return Ro.create(this,this._def)}or(e){return Ua.create([this,e],this._def)}and(e){return Fa.create(this,e,this._def)}transform(e){return new ii({...Ae(this._def),schema:this,typeName:ye.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Ga({...Ae(this._def),innerType:this,defaultValue:r,typeName:ye.ZodDefault})}brand(){return new Uf({typeName:ye.ZodBranded,type:this,...Ae(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Wa({...Ae(this._def),innerType:this,catchValue:r,typeName:ye.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Ff.create(this,e)}readonly(){return Va.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},lH=/^c[^\s-]{8,}$/i,dH=/^[0-9a-z]+$/,pH=/^[0-9A-HJKMNP-TV-Z]{26}$/i,fH=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,mH=/^[a-z0-9_-]{21}$/i,hH=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,gH=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,vH=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,yH="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",g_,_H=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,bH=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,SH=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,xH=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,wH=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,EH=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nR="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",kH=new RegExp(`^${nR}$`);function iR(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function TH(t){return new RegExp(`^${iR(t)}$`)}function $H(t){let e=`${nR}T${iR(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function IH(t,e){return!!((e==="v4"||!e)&&_H.test(t)||(e==="v6"||!e)&&SH.test(t))}function RH(t,e){if(!hH.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),i=JSON.parse(atob(n));return!(typeof i!="object"||i===null||"typ"in i&&i?.typ!=="JWT"||!i.alg||e&&i.alg!==e)}catch{return!1}}function OH(t,e){return!!((e==="v4"||!e)&&bH.test(t)||(e==="v6"||!e)&&xH.test(t))}var ja=class t extends Fe{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==ie.string){let s=this._getOrReturnCtx(e);return Q(s,{code:B.invalid_type,expected:ie.string,received:s.parsedType}),we}let n=new Rr,i;for(let s of this._def.checks)if(s.kind==="min")e.data.lengths.value&&(i=this._getOrReturnCtx(e,i),Q(i,{code:B.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let o=e.data.length>s.value,a=e.data.lengthe.test(i),{validation:r,code:B.invalid_string,...de.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...de.errToObj(e)})}url(e){return this._addCheck({kind:"url",...de.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...de.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...de.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...de.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...de.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...de.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...de.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...de.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...de.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...de.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...de.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...de.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...de.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...de.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...de.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...de.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...de.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...de.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...de.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...de.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...de.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...de.errToObj(r)})}nonempty(e){return this.min(1,de.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew ja({checks:[],typeName:ye.ZodString,coerce:t?.coerce??!1,...Ae(t)});function CH(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,i=r>n?r:n,s=Number.parseInt(t.toFixed(i).replace(".","")),o=Number.parseInt(e.toFixed(i).replace(".",""));return s%o/10**i}var tl=class t extends Fe{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==ie.number){let s=this._getOrReturnCtx(e);return Q(s,{code:B.invalid_type,expected:ie.number,received:s.parsedType}),we}let n,i=new Rr;for(let s of this._def.checks)s.kind==="int"?Ye.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),Q(n,{code:B.invalid_type,expected:"integer",received:"float",message:s.message}),i.dirty()):s.kind==="min"?(s.inclusive?e.datas.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),Q(n,{code:B.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),i.dirty()):s.kind==="multipleOf"?CH(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),Q(n,{code:B.not_multiple_of,multipleOf:s.value,message:s.message}),i.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),Q(n,{code:B.not_finite,message:s.message}),i.dirty()):Ye.assertNever(s);return{status:i.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,de.toString(r))}gt(e,r){return this.setLimit("min",e,!1,de.toString(r))}lte(e,r){return this.setLimit("max",e,!0,de.toString(r))}lt(e,r){return this.setLimit("max",e,!1,de.toString(r))}setLimit(e,r,n,i){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:de.toString(i)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:de.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:de.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:de.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:de.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:de.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:de.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:de.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:de.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:de.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuee.kind==="int"||e.kind==="multipleOf"&&Ye.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.valuenew tl({checks:[],typeName:ye.ZodNumber,coerce:t?.coerce||!1,...Ae(t)});var rl=class t extends Fe{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==ie.bigint)return this._getInvalidInput(e);let n,i=new Rr;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.datas.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),Q(n,{code:B.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),i.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),Q(n,{code:B.not_multiple_of,multipleOf:s.value,message:s.message}),i.dirty()):Ye.assertNever(s);return{status:i.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return Q(r,{code:B.invalid_type,expected:ie.bigint,received:r.parsedType}),we}gte(e,r){return this.setLimit("min",e,!0,de.toString(r))}gt(e,r){return this.setLimit("min",e,!1,de.toString(r))}lte(e,r){return this.setLimit("max",e,!0,de.toString(r))}lt(e,r){return this.setLimit("max",e,!1,de.toString(r))}setLimit(e,r,n,i){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:de.toString(i)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:de.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:de.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:de.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:de.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:de.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew rl({checks:[],typeName:ye.ZodBigInt,coerce:t?.coerce??!1,...Ae(t)});var nl=class extends Fe{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==ie.boolean){let n=this._getOrReturnCtx(e);return Q(n,{code:B.invalid_type,expected:ie.boolean,received:n.parsedType}),we}return Hr(e.data)}};nl.create=t=>new nl({typeName:ye.ZodBoolean,coerce:t?.coerce||!1,...Ae(t)});var il=class t extends Fe{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==ie.date){let s=this._getOrReturnCtx(e);return Q(s,{code:B.invalid_type,expected:ie.date,received:s.parsedType}),we}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return Q(s,{code:B.invalid_date}),we}let n=new Rr,i;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()s.value&&(i=this._getOrReturnCtx(e,i),Q(i,{code:B.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):Ye.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:de.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:de.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew il({checks:[],coerce:t?.coerce||!1,typeName:ye.ZodDate,...Ae(t)});var sl=class extends Fe{_parse(e){if(this._getType(e)!==ie.symbol){let n=this._getOrReturnCtx(e);return Q(n,{code:B.invalid_type,expected:ie.symbol,received:n.parsedType}),we}return Hr(e.data)}};sl.create=t=>new sl({typeName:ye.ZodSymbol,...Ae(t)});var za=class extends Fe{_parse(e){if(this._getType(e)!==ie.undefined){let n=this._getOrReturnCtx(e);return Q(n,{code:B.invalid_type,expected:ie.undefined,received:n.parsedType}),we}return Hr(e.data)}};za.create=t=>new za({typeName:ye.ZodUndefined,...Ae(t)});var La=class extends Fe{_parse(e){if(this._getType(e)!==ie.null){let n=this._getOrReturnCtx(e);return Q(n,{code:B.invalid_type,expected:ie.null,received:n.parsedType}),we}return Hr(e.data)}};La.create=t=>new La({typeName:ye.ZodNull,...Ae(t)});var ol=class extends Fe{constructor(){super(...arguments),this._any=!0}_parse(e){return Hr(e.data)}};ol.create=t=>new ol({typeName:ye.ZodAny,...Ae(t)});var Hs=class extends Fe{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Hr(e.data)}};Hs.create=t=>new Hs({typeName:ye.ZodUnknown,...Ae(t)});var Oi=class extends Fe{_parse(e){let r=this._getOrReturnCtx(e);return Q(r,{code:B.invalid_type,expected:ie.never,received:r.parsedType}),we}};Oi.create=t=>new Oi({typeName:ye.ZodNever,...Ae(t)});var al=class extends Fe{_parse(e){if(this._getType(e)!==ie.undefined){let n=this._getOrReturnCtx(e);return Q(n,{code:B.invalid_type,expected:ie.void,received:n.parsedType}),we}return Hr(e.data)}};al.create=t=>new al({typeName:ye.ZodVoid,...Ae(t)});var Zs=class t extends Fe{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),i=this._def;if(r.parsedType!==ie.array)return Q(r,{code:B.invalid_type,expected:ie.array,received:r.parsedType}),we;if(i.exactLength!==null){let o=r.data.length>i.exactLength.value,a=r.data.lengthi.maxLength.value&&(Q(r,{code:B.too_big,maximum:i.maxLength.value,type:"array",inclusive:!0,exact:!1,message:i.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((o,a)=>i.type._parseAsync(new Mn(r,o,r.path,a)))).then(o=>Rr.mergeArray(n,o));let s=[...r.data].map((o,a)=>i.type._parseSync(new Mn(r,o,r.path,a)));return Rr.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:de.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:de.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:de.toString(r)}})}nonempty(e){return this.min(1,e)}};Zs.create=(t,e)=>new Zs({type:t,minLength:null,maxLength:null,exactLength:null,typeName:ye.ZodArray,...Ae(e)});function Da(t){if(t instanceof Sn){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=ni.create(Da(n))}return new Sn({...t._def,shape:()=>e})}else return t instanceof Zs?new Zs({...t._def,type:Da(t.element)}):t instanceof ni?ni.create(Da(t.unwrap())):t instanceof as?as.create(Da(t.unwrap())):t instanceof os?os.create(t.items.map(e=>Da(e))):t}var Sn=class t extends Fe{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=Ye.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==ie.object){let u=this._getOrReturnCtx(e);return Q(u,{code:B.invalid_type,expected:ie.object,received:u.parsedType}),we}let{status:n,ctx:i}=this._processInputParams(e),{shape:s,keys:o}=this._getCached(),a=[];if(!(this._def.catchall instanceof Oi&&this._def.unknownKeys==="strip"))for(let u in i.data)o.includes(u)||a.push(u);let c=[];for(let u of o){let l=s[u],d=i.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new Mn(i,d,i.path,u)),alwaysSet:u in i.data})}if(this._def.catchall instanceof Oi){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:i.data[l]}});else if(u==="strict")a.length>0&&(Q(i,{code:B.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=i.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new Mn(i,d,i.path,l)),alwaysSet:l in i.data})}}return i.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,p=await l.value;u.push({key:d,value:p,alwaysSet:l.alwaysSet})}return u}).then(u=>Rr.mergeObjectSync(n,u)):Rr.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return de.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let i=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:de.errToObj(e).message??i}:{message:i}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:ye.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of Ye.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of Ye.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return Da(this)}partial(e){let r={};for(let n of Ye.objectKeys(this.shape)){let i=this.shape[n];e&&!e[n]?r[n]=i:r[n]=i.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of Ye.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof ni;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return sR(Ye.objectKeys(this.shape))}};Sn.create=(t,e)=>new Sn({shape:()=>t,unknownKeys:"strip",catchall:Oi.create(),typeName:ye.ZodObject,...Ae(e)});Sn.strictCreate=(t,e)=>new Sn({shape:()=>t,unknownKeys:"strict",catchall:Oi.create(),typeName:ye.ZodObject,...Ae(e)});Sn.lazycreate=(t,e)=>new Sn({shape:t,unknownKeys:"strip",catchall:Oi.create(),typeName:ye.ZodObject,...Ae(e)});var Ua=class extends Fe{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function i(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let o=s.map(a=>new bn(a.ctx.common.issues));return Q(r,{code:B.invalid_union,unionErrors:o}),we}if(r.common.async)return Promise.all(n.map(async s=>{let o={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:o}),ctx:o}})).then(i);{let s,o=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!s&&(s={result:l,ctx:u}),u.common.issues.length&&o.push(u.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let a=o.map(c=>new bn(c));return Q(r,{code:B.invalid_union,unionErrors:a}),we}}get options(){return this._def.options}};Ua.create=(t,e)=>new Ua({options:t,typeName:ye.ZodUnion,...Ae(e)});var ss=t=>t instanceof qa?ss(t.schema):t instanceof ii?ss(t.innerType()):t instanceof Ha?[t.value]:t instanceof Za?t.options:t instanceof Ba?Ye.objectValues(t.enum):t instanceof Ga?ss(t._def.innerType):t instanceof za?[void 0]:t instanceof La?[null]:t instanceof ni?[void 0,...ss(t.unwrap())]:t instanceof as?[null,...ss(t.unwrap())]:t instanceof Uf||t instanceof Va?ss(t.unwrap()):t instanceof Wa?ss(t._def.innerType):[],v_=class t extends Fe{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==ie.object)return Q(r,{code:B.invalid_type,expected:ie.object,received:r.parsedType}),we;let n=this.discriminator,i=r.data[n],s=this.optionsMap.get(i);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(Q(r,{code:B.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),we)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let i=new Map;for(let s of r){let o=ss(s.shape[e]);if(!o.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of o){if(i.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);i.set(a,s)}}return new t({typeName:ye.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:i,...Ae(n)})}};function y_(t,e){let r=is(t),n=is(e);if(t===e)return{valid:!0,data:t};if(r===ie.object&&n===ie.object){let i=Ye.objectKeys(e),s=Ye.objectKeys(t).filter(a=>i.indexOf(a)!==-1),o={...t,...e};for(let a of s){let c=y_(t[a],e[a]);if(!c.valid)return{valid:!1};o[a]=c.data}return{valid:!0,data:o}}else if(r===ie.array&&n===ie.array){if(t.length!==e.length)return{valid:!1};let i=[];for(let s=0;s{if(m_(s)||m_(o))return we;let a=y_(s.value,o.value);return a.valid?((h_(s)||h_(o))&&r.dirty(),{status:r.value,value:a.data}):(Q(n,{code:B.invalid_intersection_types}),we)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,o])=>i(s,o)):i(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};Fa.create=(t,e,r)=>new Fa({left:t,right:e,typeName:ye.ZodIntersection,...Ae(r)});var os=class t extends Fe{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==ie.array)return Q(n,{code:B.invalid_type,expected:ie.array,received:n.parsedType}),we;if(n.data.lengththis._def.items.length&&(Q(n,{code:B.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((o,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new Mn(n,o,n.path,a)):null}).filter(o=>!!o);return n.common.async?Promise.all(s).then(o=>Rr.mergeArray(r,o)):Rr.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};os.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new os({items:t,typeName:ye.ZodTuple,rest:null,...Ae(e)})};var __=class t extends Fe{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==ie.object)return Q(n,{code:B.invalid_type,expected:ie.object,received:n.parsedType}),we;let i=[],s=this._def.keyType,o=this._def.valueType;for(let a in n.data)i.push({key:s._parse(new Mn(n,a,n.path,a)),value:o._parse(new Mn(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Rr.mergeObjectAsync(r,i):Rr.mergeObjectSync(r,i)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof Fe?new t({keyType:e,valueType:r,typeName:ye.ZodRecord,...Ae(n)}):new t({keyType:ja.create(),valueType:e,typeName:ye.ZodRecord,...Ae(r)})}},cl=class extends Fe{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==ie.map)return Q(n,{code:B.invalid_type,expected:ie.map,received:n.parsedType}),we;let i=this._def.keyType,s=this._def.valueType,o=[...n.data.entries()].map(([a,c],u)=>({key:i._parse(new Mn(n,a,n.path,[u,"key"])),value:s._parse(new Mn(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of o){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return we;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of o){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return we;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};cl.create=(t,e,r)=>new cl({valueType:e,keyType:t,typeName:ye.ZodMap,...Ae(r)});var ul=class t extends Fe{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==ie.set)return Q(n,{code:B.invalid_type,expected:ie.set,received:n.parsedType}),we;let i=this._def;i.minSize!==null&&n.data.sizei.maxSize.value&&(Q(n,{code:B.too_big,maximum:i.maxSize.value,type:"set",inclusive:!0,exact:!1,message:i.maxSize.message}),r.dirty());let s=this._def.valueType;function o(c){let u=new Set;for(let l of c){if(l.status==="aborted")return we;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new Mn(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>o(c)):o(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:de.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:de.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};ul.create=(t,e)=>new ul({valueType:t,minSize:null,maxSize:null,typeName:ye.ZodSet,...Ae(e)});var b_=class t extends Fe{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==ie.function)return Q(r,{code:B.invalid_type,expected:ie.function,received:r.parsedType}),we;function n(a,c){return Lf({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Qu(),qs].filter(u=>!!u),issueData:{code:B.invalid_arguments,argumentsError:c}})}function i(a,c){return Lf({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Qu(),qs].filter(u=>!!u),issueData:{code:B.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},o=r.data;if(this._def.returns instanceof Ro){let a=this;return Hr(async function(...c){let u=new bn([]),l=await a._def.args.parseAsync(c,s).catch(f=>{throw u.addIssue(n(c,f)),u}),d=await Reflect.apply(o,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(f=>{throw u.addIssue(i(d,f)),u})})}else{let a=this;return Hr(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new bn([n(c,u.error)]);let l=Reflect.apply(o,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new bn([i(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:os.create(e).rest(Hs.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||os.create([]).rest(Hs.create()),returns:r||Hs.create(),typeName:ye.ZodFunction,...Ae(n)})}},qa=class extends Fe{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};qa.create=(t,e)=>new qa({getter:t,typeName:ye.ZodLazy,...Ae(e)});var Ha=class extends Fe{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return Q(r,{received:r.data,code:B.invalid_literal,expected:this._def.value}),we}return{status:"valid",value:e.data}}get value(){return this._def.value}};Ha.create=(t,e)=>new Ha({value:t,typeName:ye.ZodLiteral,...Ae(e)});function sR(t,e){return new Za({values:t,typeName:ye.ZodEnum,...Ae(e)})}var Za=class t extends Fe{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return Q(r,{expected:Ye.joinValues(n),received:r.parsedType,code:B.invalid_type}),we}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return Q(r,{received:r.data,code:B.invalid_enum_value,options:n}),we}return Hr(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};Za.create=sR;var Ba=class extends Fe{_parse(e){let r=Ye.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==ie.string&&n.parsedType!==ie.number){let i=Ye.objectValues(r);return Q(n,{expected:Ye.joinValues(i),received:n.parsedType,code:B.invalid_type}),we}if(this._cache||(this._cache=new Set(Ye.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let i=Ye.objectValues(r);return Q(n,{received:n.data,code:B.invalid_enum_value,options:i}),we}return Hr(e.data)}get enum(){return this._def.values}};Ba.create=(t,e)=>new Ba({values:t,typeName:ye.ZodNativeEnum,...Ae(e)});var Ro=class extends Fe{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==ie.promise&&r.common.async===!1)return Q(r,{code:B.invalid_type,expected:ie.promise,received:r.parsedType}),we;let n=r.parsedType===ie.promise?r.data:Promise.resolve(r.data);return Hr(n.then(i=>this._def.type.parseAsync(i,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Ro.create=(t,e)=>new Ro({type:t,typeName:ye.ZodPromise,...Ae(e)});var ii=class extends Fe{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===ye.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),i=this._def.effect||null,s={addIssue:o=>{Q(n,o),o.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),i.type==="preprocess"){let o=i.transform(n.data,s);if(n.common.async)return Promise.resolve(o).then(async a=>{if(r.value==="aborted")return we;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?we:c.status==="dirty"?Ma(c.value):r.value==="dirty"?Ma(c.value):c});{if(r.value==="aborted")return we;let a=this._def.schema._parseSync({data:o,path:n.path,parent:n});return a.status==="aborted"?we:a.status==="dirty"?Ma(a.value):r.value==="dirty"?Ma(a.value):a}}if(i.type==="refinement"){let o=a=>{let c=i.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?we:(a.status==="dirty"&&r.dirty(),o(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?we:(a.status==="dirty"&&r.dirty(),o(a.value).then(()=>({status:r.value,value:a.value}))))}if(i.type==="transform")if(n.common.async===!1){let o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!Io(o))return we;let a=i.transform(o.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>Io(o)?Promise.resolve(i.transform(o.value,s)).then(a=>({status:r.value,value:a})):we);Ye.assertNever(i)}};ii.create=(t,e,r)=>new ii({schema:t,typeName:ye.ZodEffects,effect:e,...Ae(r)});ii.createWithPreprocess=(t,e,r)=>new ii({schema:e,effect:{type:"preprocess",transform:t},typeName:ye.ZodEffects,...Ae(r)});var ni=class extends Fe{_parse(e){return this._getType(e)===ie.undefined?Hr(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};ni.create=(t,e)=>new ni({innerType:t,typeName:ye.ZodOptional,...Ae(e)});var as=class extends Fe{_parse(e){return this._getType(e)===ie.null?Hr(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};as.create=(t,e)=>new as({innerType:t,typeName:ye.ZodNullable,...Ae(e)});var Ga=class extends Fe{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===ie.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Ga.create=(t,e)=>new Ga({innerType:t,typeName:ye.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Ae(e)});var Wa=class extends Fe{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},i=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return el(i)?i.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new bn(n.common.issues)},input:n.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new bn(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Wa.create=(t,e)=>new Wa({innerType:t,typeName:ye.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Ae(e)});var ll=class extends Fe{_parse(e){if(this._getType(e)!==ie.nan){let n=this._getOrReturnCtx(e);return Q(n,{code:B.invalid_type,expected:ie.nan,received:n.parsedType}),we}return{status:"valid",value:e.data}}};ll.create=t=>new ll({typeName:ye.ZodNaN,...Ae(t)});var Uf=class extends Fe{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},Ff=class t extends Fe{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?we:s.status==="dirty"?(r.dirty(),Ma(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let i=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?we:i.status==="dirty"?(r.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:ye.ZodPipeline})}},Va=class extends Fe{_parse(e){let r=this._def.innerType._parse(e),n=i=>(Io(i)&&(i.value=Object.freeze(i.value)),i);return el(r)?r.then(i=>n(i)):n(r)}unwrap(){return this._def.innerType}};Va.create=(t,e)=>new Va({innerType:t,typeName:ye.ZodReadonly,...Ae(e)});var txe={object:Sn.lazycreate},ye;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(ye||(ye={}));var rxe=ja.create,nxe=tl.create,ixe=ll.create,sxe=rl.create,oxe=nl.create,axe=il.create,cxe=sl.create,uxe=za.create,lxe=La.create,dxe=ol.create,pxe=Hs.create,fxe=Oi.create,mxe=al.create,hxe=Zs.create,PH=Sn.create,gxe=Sn.strictCreate,vxe=Ua.create,yxe=v_.create,_xe=Fa.create,bxe=os.create,Sxe=__.create,xxe=cl.create,wxe=ul.create,Exe=b_.create,kxe=qa.create,Txe=Ha.create,$xe=Za.create,Ixe=Ba.create,Rxe=Ro.create,Oxe=ii.create,Cxe=ni.create,Pxe=as.create,Axe=ii.createWithPreprocess,Nxe=Ff.create;var oR=Object.freeze({status:"aborted"});function O(t,e,r){function n(a,c){if(a._zod||Object.defineProperty(a,"_zod",{value:{def:c,constr:o,traits:new Set},enumerable:!1}),a._zod.traits.has(t))return;a._zod.traits.add(t),e(a,c);let u=o.prototype,l=Object.keys(u);for(let d=0;dr?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(o,"name",{value:t}),o}var Ci=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Oo=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}},qf={};function tr(t){return t&&Object.assign(qf,t),qf}var G={};_n(G,{BIGINT_FORMAT_RANGES:()=>R_,Class:()=>x_,NUMBER_FORMAT_RANGES:()=>I_,aborted:()=>Vs,allowsEval:()=>k_,assert:()=>LH,assertEqual:()=>MH,assertIs:()=>jH,assertNever:()=>zH,assertNotEqual:()=>DH,assignProp:()=>Gs,base64ToUint8Array:()=>uR,base64urlToUint8Array:()=>r3,cached:()=>Ja,captureStackTrace:()=>Zf,cleanEnum:()=>t3,cleanRegex:()=>fl,clone:()=>Zr,cloneDef:()=>FH,createTransparentProxy:()=>WH,defineLazy:()=>Le,esc:()=>Hf,escapeRegex:()=>Dn,extend:()=>JH,finalizeIssue:()=>on,floatSafeRemainder:()=>w_,getElementAtPath:()=>qH,getEnumValues:()=>pl,getLengthableOrigin:()=>gl,getParsedType:()=>GH,getSizableOrigin:()=>hl,hexToUint8Array:()=>i3,isObject:()=>Co,isPlainObject:()=>Ws,issue:()=>Xa,joinValues:()=>_e,jsonStringifyReplacer:()=>Ka,merge:()=>YH,mergeDefs:()=>cs,normalizeParams:()=>ee,nullish:()=>Bs,numKeys:()=>BH,objectClone:()=>UH,omit:()=>KH,optionalKeys:()=>$_,parsedType:()=>Ee,partial:()=>QH,pick:()=>VH,prefixIssues:()=>xn,primitiveTypes:()=>T_,promiseAllObject:()=>HH,propertyKeyTypes:()=>ml,randomString:()=>ZH,required:()=>e3,safeExtend:()=>XH,shallowClone:()=>cR,slugify:()=>E_,stringifyPrimitive:()=>be,uint8ArrayToBase64:()=>lR,uint8ArrayToBase64url:()=>n3,uint8ArrayToHex:()=>s3,unwrapMessage:()=>dl});function MH(t){return t}function DH(t){return t}function jH(t){}function zH(t){throw new Error("Unexpected value in exhaustive check")}function LH(t){}function pl(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,i])=>e.indexOf(+n)===-1).map(([n,i])=>i)}function _e(t,e="|"){return t.map(r=>be(r)).join(e)}function Ka(t,e){return typeof e=="bigint"?e.toString():e}function Ja(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Bs(t){return t==null}function fl(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function w_(t,e){let r=(t.toString().split(".")[1]||"").length,n=e.toString(),i=(n.split(".")[1]||"").length;if(i===0&&/\d?e-\d?/.test(n)){let c=n.match(/\d?e-(\d?)/);c?.[1]&&(i=Number.parseInt(c[1]))}let s=r>i?r:i,o=Number.parseInt(t.toFixed(s).replace(".","")),a=Number.parseInt(e.toFixed(s).replace(".",""));return o%a/10**s}var aR=Symbol("evaluating");function Le(t,e,r){let n;Object.defineProperty(t,e,{get(){if(n!==aR)return n===void 0&&(n=aR,n=r()),n},set(i){Object.defineProperty(t,e,{value:i})},configurable:!0})}function UH(t){return Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t))}function Gs(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function cs(...t){let e={};for(let r of t){let n=Object.getOwnPropertyDescriptors(r);Object.assign(e,n)}return Object.defineProperties({},e)}function FH(t){return cs(t._zod.def)}function qH(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function HH(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let i={};for(let s=0;s{};function Co(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var k_=Ja(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function Ws(t){if(Co(t)===!1)return!1;let e=t.constructor;if(e===void 0||typeof e!="function")return!0;let r=e.prototype;return!(Co(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function cR(t){return Ws(t)?{...t}:Array.isArray(t)?[...t]:t}function BH(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var GH=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},ml=new Set(["string","number","symbol"]),T_=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Dn(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Zr(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function ee(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function WH(t){let e;return new Proxy({},{get(r,n,i){return e??(e=t()),Reflect.get(e,n,i)},set(r,n,i,s){return e??(e=t()),Reflect.set(e,n,i,s)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,i){return e??(e=t()),Reflect.defineProperty(e,n,i)}})}function be(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function $_(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var I_={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},R_={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function VH(t,e){let r=t._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");let s=cs(t._zod.def,{get shape(){let o={};for(let a in e){if(!(a in r.shape))throw new Error(`Unrecognized key: "${a}"`);e[a]&&(o[a]=r.shape[a])}return Gs(this,"shape",o),o},checks:[]});return Zr(t,s)}function KH(t,e){let r=t._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");let s=cs(t._zod.def,{get shape(){let o={...t._zod.def.shape};for(let a in e){if(!(a in r.shape))throw new Error(`Unrecognized key: "${a}"`);e[a]&&delete o[a]}return Gs(this,"shape",o),o},checks:[]});return Zr(t,s)}function JH(t,e){if(!Ws(e))throw new Error("Invalid input to extend: expected a plain object");let r=t._zod.def.checks;if(r&&r.length>0){let s=t._zod.def.shape;for(let o in e)if(Object.getOwnPropertyDescriptor(s,o)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let i=cs(t._zod.def,{get shape(){let s={...t._zod.def.shape,...e};return Gs(this,"shape",s),s}});return Zr(t,i)}function XH(t,e){if(!Ws(e))throw new Error("Invalid input to safeExtend: expected a plain object");let r=cs(t._zod.def,{get shape(){let n={...t._zod.def.shape,...e};return Gs(this,"shape",n),n}});return Zr(t,r)}function YH(t,e){let r=cs(t._zod.def,{get shape(){let n={...t._zod.def.shape,...e._zod.def.shape};return Gs(this,"shape",n),n},get catchall(){return e._zod.def.catchall},checks:[]});return Zr(t,r)}function QH(t,e,r){let i=e._zod.def.checks;if(i&&i.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");let o=cs(e._zod.def,{get shape(){let a=e._zod.def.shape,c={...a};if(r)for(let u in r){if(!(u in a))throw new Error(`Unrecognized key: "${u}"`);r[u]&&(c[u]=t?new t({type:"optional",innerType:a[u]}):a[u])}else for(let u in a)c[u]=t?new t({type:"optional",innerType:a[u]}):a[u];return Gs(this,"shape",c),c},checks:[]});return Zr(e,o)}function e3(t,e,r){let n=cs(e._zod.def,{get shape(){let i=e._zod.def.shape,s={...i};if(r)for(let o in r){if(!(o in s))throw new Error(`Unrecognized key: "${o}"`);r[o]&&(s[o]=new t({type:"nonoptional",innerType:i[o]}))}else for(let o in i)s[o]=new t({type:"nonoptional",innerType:i[o]});return Gs(this,"shape",s),s}});return Zr(e,n)}function Vs(t,e=0){if(t.aborted===!0)return!0;for(let r=e;r{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function dl(t){return typeof t=="string"?t:t?.message}function on(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let i=dl(t.inst?._zod.def?.error?.(t))??dl(e?.error?.(t))??dl(r.customError?.(t))??dl(r.localeError?.(t))??"Invalid input";n.message=i}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function hl(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function gl(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Ee(t){let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"nan":"number";case"object":{if(t===null)return"null";if(Array.isArray(t))return"array";let r=t;if(r&&Object.getPrototypeOf(r)!==Object.prototype&&"constructor"in r&&r.constructor)return r.constructor.name}}return e}function Xa(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function t3(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}function uR(t){let e=atob(t),r=new Uint8Array(e.length);for(let n=0;ne.toString(16).padStart(2,"0")).join("")}var x_=class{constructor(...e){}};var dR=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),t.message=JSON.stringify(e,Ka,2),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Bf=O("$ZodError",dR),vl=O("$ZodError",dR,{Parent:Error});function Gf(t,e=r=>r.message){let r={},n=[];for(let i of t.issues)i.path.length>0?(r[i.path[0]]=r[i.path[0]]||[],r[i.path[0]].push(e(i))):n.push(e(i));return{formErrors:n,fieldErrors:r}}function Wf(t,e=r=>r.message){let r={_errors:[]},n=i=>{for(let s of i.issues)if(s.code==="invalid_union"&&s.errors.length)s.errors.map(o=>n({issues:o}));else if(s.code==="invalid_key")n({issues:s.issues});else if(s.code==="invalid_element")n({issues:s.issues});else if(s.path.length===0)r._errors.push(e(s));else{let o=r,a=0;for(;a(e,r,n,i)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},o=e._zod.run({value:r,issues:[]},s);if(o instanceof Promise)throw new Ci;if(o.issues.length){let a=new(i?.Err??t)(o.issues.map(c=>on(c,s,tr())));throw Zf(a,i?.callee),a}return o.value},_l=yl(vl),bl=t=>async(e,r,n,i)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},o=e._zod.run({value:r,issues:[]},s);if(o instanceof Promise&&(o=await o),o.issues.length){let a=new(i?.Err??t)(o.issues.map(c=>on(c,s,tr())));throw Zf(a,i?.callee),a}return o.value},Sl=bl(vl),xl=t=>(e,r,n)=>{let i=n?{...n,async:!1}:{async:!1},s=e._zod.run({value:r,issues:[]},i);if(s instanceof Promise)throw new Ci;return s.issues.length?{success:!1,error:new(t??Bf)(s.issues.map(o=>on(o,i,tr())))}:{success:!0,data:s.value}},Ya=xl(vl),wl=t=>async(e,r,n)=>{let i=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},i);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(o=>on(o,i,tr())))}:{success:!0,data:s.value}},El=wl(vl),pR=t=>(e,r,n)=>{let i=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return yl(t)(e,r,i)};var fR=t=>(e,r,n)=>yl(t)(e,r,n);var mR=t=>async(e,r,n)=>{let i=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return bl(t)(e,r,i)};var hR=t=>async(e,r,n)=>bl(t)(e,r,n);var gR=t=>(e,r,n)=>{let i=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return xl(t)(e,r,i)};var vR=t=>(e,r,n)=>xl(t)(e,r,n);var yR=t=>async(e,r,n)=>{let i=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return wl(t)(e,r,i)};var _R=t=>async(e,r,n)=>wl(t)(e,r,n);var jn={};_n(jn,{base64:()=>B_,base64url:()=>Vf,bigint:()=>X_,boolean:()=>Q_,browserEmail:()=>m3,cidrv4:()=>H_,cidrv6:()=>Z_,cuid:()=>O_,cuid2:()=>C_,date:()=>W_,datetime:()=>K_,domain:()=>v3,duration:()=>D_,e164:()=>G_,email:()=>z_,emoji:()=>L_,extendedDuration:()=>a3,guid:()=>j_,hex:()=>y3,hostname:()=>g3,html5Email:()=>d3,idnEmail:()=>f3,integer:()=>Y_,ipv4:()=>U_,ipv6:()=>F_,ksuid:()=>N_,lowercase:()=>rb,mac:()=>q_,md5_base64:()=>b3,md5_base64url:()=>S3,md5_hex:()=>_3,nanoid:()=>M_,null:()=>eb,number:()=>Kf,rfc5322Email:()=>p3,sha1_base64:()=>w3,sha1_base64url:()=>E3,sha1_hex:()=>x3,sha256_base64:()=>T3,sha256_base64url:()=>$3,sha256_hex:()=>k3,sha384_base64:()=>R3,sha384_base64url:()=>O3,sha384_hex:()=>I3,sha512_base64:()=>P3,sha512_base64url:()=>A3,sha512_hex:()=>C3,string:()=>J_,time:()=>V_,ulid:()=>P_,undefined:()=>tb,unicodeEmail:()=>bR,uppercase:()=>nb,uuid:()=>Po,uuid4:()=>c3,uuid6:()=>u3,uuid7:()=>l3,xid:()=>A_});var O_=/^[cC][^\s-]{8,}$/,C_=/^[0-9a-z]+$/,P_=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,A_=/^[0-9a-vA-V]{20}$/,N_=/^[A-Za-z0-9]{27}$/,M_=/^[a-zA-Z0-9_-]{21}$/,D_=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,a3=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,j_=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Po=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,c3=Po(4),u3=Po(6),l3=Po(7),z_=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,d3=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,p3=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,bR=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,f3=bR,m3=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,h3="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function L_(){return new RegExp(h3,"u")}var U_=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,F_=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,q_=t=>{let e=Dn(t??":");return new RegExp(`^(?:[0-9A-F]{2}${e}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${e}){5}[0-9a-f]{2}$`)},H_=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Z_=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,B_=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Vf=/^[A-Za-z0-9_-]*$/,g3=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,v3=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,G_=/^\+[1-9]\d{6,14}$/,SR="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",W_=new RegExp(`^${SR}$`);function xR(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function V_(t){return new RegExp(`^${xR(t)}$`)}function K_(t){let e=xR({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let n=`${e}(?:${r.join("|")})`;return new RegExp(`^${SR}T(?:${n})$`)}var J_=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},X_=/^-?\d+n?$/,Y_=/^-?\d+$/,Kf=/^-?\d+(?:\.\d+)?$/,Q_=/^(?:true|false)$/i,eb=/^null$/i;var tb=/^undefined$/i;var rb=/^[^A-Z]*$/,nb=/^[^a-z]*$/,y3=/^[0-9a-fA-F]*$/;function kl(t,e){return new RegExp(`^[A-Za-z0-9+/]{${t}}${e}$`)}function Tl(t){return new RegExp(`^[A-Za-z0-9_-]{${t}}$`)}var _3=/^[0-9a-fA-F]{32}$/,b3=kl(22,"=="),S3=Tl(22),x3=/^[0-9a-fA-F]{40}$/,w3=kl(27,"="),E3=Tl(27),k3=/^[0-9a-fA-F]{64}$/,T3=kl(43,"="),$3=Tl(43),I3=/^[0-9a-fA-F]{96}$/,R3=kl(64,""),O3=Tl(64),C3=/^[0-9a-fA-F]{128}$/,P3=kl(86,"=="),A3=Tl(86);var _t=O("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),ER={number:"number",bigint:"bigint",object:"date"},ib=O("$ZodCheckLessThan",(t,e)=>{_t.init(t,e);let r=ER[typeof e.value];t._zod.onattach.push(n=>{let i=n._zod.bag,s=(e.inclusive?i.maximum:i.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value{(e.inclusive?n.value<=e.value:n.value{_t.init(t,e);let r=ER[typeof e.value];t._zod.onattach.push(n=>{let i=n._zod.bag,s=(e.inclusive?i.minimum:i.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>s&&(e.inclusive?i.minimum=e.value:i.exclusiveMinimum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value>=e.value:n.value>e.value)||n.issues.push({origin:r,code:"too_small",minimum:typeof e.value=="object"?e.value.getTime():e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),kR=O("$ZodCheckMultipleOf",(t,e)=>{_t.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):w_(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),TR=O("$ZodCheckNumberFormat",(t,e)=>{_t.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[i,s]=I_[e.format];t._zod.onattach.push(o=>{let a=o._zod.bag;a.format=e.format,a.minimum=i,a.maximum=s,r&&(a.pattern=Y_)}),t._zod.check=o=>{let a=o.value;if(r){if(!Number.isInteger(a)){o.issues.push({expected:n,format:e.format,code:"invalid_type",continue:!1,input:a,inst:t});return}if(!Number.isSafeInteger(a)){a>0?o.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,inclusive:!0,continue:!e.abort}):o.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,inclusive:!0,continue:!e.abort});return}}as&&o.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inclusive:!0,inst:t,continue:!e.abort})}}),$R=O("$ZodCheckBigIntFormat",(t,e)=>{_t.init(t,e);let[r,n]=R_[e.format];t._zod.onattach.push(i=>{let s=i._zod.bag;s.format=e.format,s.minimum=r,s.maximum=n}),t._zod.check=i=>{let s=i.value;sn&&i.issues.push({origin:"bigint",input:s,code:"too_big",maximum:n,inclusive:!0,inst:t,continue:!e.abort})}}),IR=O("$ZodCheckMaxSize",(t,e)=>{var r;_t.init(t,e),(r=t._zod.def).when??(r.when=n=>{let i=n.value;return!Bs(i)&&i.size!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum{let i=n.value;i.size<=e.maximum||n.issues.push({origin:hl(i),code:"too_big",maximum:e.maximum,inclusive:!0,input:i,inst:t,continue:!e.abort})}}),RR=O("$ZodCheckMinSize",(t,e)=>{var r;_t.init(t,e),(r=t._zod.def).when??(r.when=n=>{let i=n.value;return!Bs(i)&&i.size!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>i&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let i=n.value;i.size>=e.minimum||n.issues.push({origin:hl(i),code:"too_small",minimum:e.minimum,inclusive:!0,input:i,inst:t,continue:!e.abort})}}),OR=O("$ZodCheckSizeEquals",(t,e)=>{var r;_t.init(t,e),(r=t._zod.def).when??(r.when=n=>{let i=n.value;return!Bs(i)&&i.size!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag;i.minimum=e.size,i.maximum=e.size,i.size=e.size}),t._zod.check=n=>{let i=n.value,s=i.size;if(s===e.size)return;let o=s>e.size;n.issues.push({origin:hl(i),...o?{code:"too_big",maximum:e.size}:{code:"too_small",minimum:e.size},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),CR=O("$ZodCheckMaxLength",(t,e)=>{var r;_t.init(t,e),(r=t._zod.def).when??(r.when=n=>{let i=n.value;return!Bs(i)&&i.length!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum{let i=n.value;if(i.length<=e.maximum)return;let o=gl(i);n.issues.push({origin:o,code:"too_big",maximum:e.maximum,inclusive:!0,input:i,inst:t,continue:!e.abort})}}),PR=O("$ZodCheckMinLength",(t,e)=>{var r;_t.init(t,e),(r=t._zod.def).when??(r.when=n=>{let i=n.value;return!Bs(i)&&i.length!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>i&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let i=n.value;if(i.length>=e.minimum)return;let o=gl(i);n.issues.push({origin:o,code:"too_small",minimum:e.minimum,inclusive:!0,input:i,inst:t,continue:!e.abort})}}),AR=O("$ZodCheckLengthEquals",(t,e)=>{var r;_t.init(t,e),(r=t._zod.def).when??(r.when=n=>{let i=n.value;return!Bs(i)&&i.length!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag;i.minimum=e.length,i.maximum=e.length,i.length=e.length}),t._zod.check=n=>{let i=n.value,s=i.length;if(s===e.length)return;let o=gl(i),a=s>e.length;n.issues.push({origin:o,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),$l=O("$ZodCheckStringFormat",(t,e)=>{var r,n;_t.init(t,e),t._zod.onattach.push(i=>{let s=i._zod.bag;s.format=e.format,e.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=i=>{e.pattern.lastIndex=0,!e.pattern.test(i.value)&&i.issues.push({origin:"string",code:"invalid_format",format:e.format,input:i.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),NR=O("$ZodCheckRegex",(t,e)=>{$l.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),MR=O("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=rb),$l.init(t,e)}),DR=O("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=nb),$l.init(t,e)}),jR=O("$ZodCheckIncludes",(t,e)=>{_t.init(t,e);let r=Dn(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(i=>{let s=i._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=i=>{i.value.includes(e.includes,e.position)||i.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:i.value,inst:t,continue:!e.abort})}}),zR=O("$ZodCheckStartsWith",(t,e)=>{_t.init(t,e);let r=new RegExp(`^${Dn(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let i=n._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),LR=O("$ZodCheckEndsWith",(t,e)=>{_t.init(t,e);let r=new RegExp(`.*${Dn(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let i=n._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}});function wR(t,e,r){t.issues.length&&e.issues.push(...xn(r,t.issues))}var UR=O("$ZodCheckProperty",(t,e)=>{_t.init(t,e),t._zod.check=r=>{let n=e.schema._zod.run({value:r.value[e.property],issues:[]},{});if(n instanceof Promise)return n.then(i=>wR(i,r,e.property));wR(n,r,e.property)}}),FR=O("$ZodCheckMimeType",(t,e)=>{_t.init(t,e);let r=new Set(e.mime);t._zod.onattach.push(n=>{n._zod.bag.mime=e.mime}),t._zod.check=n=>{r.has(n.value.type)||n.issues.push({code:"invalid_value",values:e.mime,input:n.value.type,inst:t,continue:!e.abort})}}),qR=O("$ZodCheckOverwrite",(t,e)=>{_t.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Jf=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(` +${a}`}(0,dr.writeFileSync)(i,c),(0,dr.renameSync)(i,n)}function lxe(t,e,r,n,i,s,o){try{if(!(0,dr.existsSync)(e))return{success:!1,observationCount:0,error:"Folder no longer exists"};let a=lr.default.resolve(e),c=lr.default.resolve(s);if(!a.startsWith(c+lr.default.sep))return{success:!1,observationCount:0,error:"Path escapes project root"};let u=oxe(t,r,n,o);if(u.length===0)return{success:!1,observationCount:0,error:"No observations for folder"};if(i)return{success:!0,observationCount:u.length};let l=cxe(u,r);return uxe(e,l),{success:!0,observationCount:u.length}}catch(a){return{success:!1,observationCount:0,error:String(a)}}}async function dxe(t){try{let e=process.cwd(),r=ve.loadFromFile(exe),n=parseInt(r.CLAUDE_MEM_CONTEXT_OBSERVATIONS,10)||50;_.info("CLAUDE_MD","Starting CLAUDE.md generation",{workingDir:e,dryRun:t,observationLimit:n});let i=lr.default.basename(e),s=ixe(e);if(s.size===0)return _.info("CLAUDE_MD","No folders found in project"),0;if(_.info("CLAUDE_MD",`Found ${s.size} folders in project`),!(0,dr.existsSync)(k5))return _.info("CLAUDE_MD","Database not found, no observations to process"),0;let o=new T5.Database(k5,{readonly:!0,create:!1}),a=0,c=0,u=0,l=Array.from(s).sort();for(let d of l){let p=lr.default.relative(e,d),f=lxe(o,d,p,i,t,e,n);f.success?(_.debug("CLAUDE_MD",`Processed folder: ${p}`,{observationCount:f.observationCount}),a++):f.error?.includes("No observations")?c++:(_.warn("CLAUDE_MD",`Error processing folder: ${p}`,{error:f.error}),u++)}return o.close(),_.info("CLAUDE_MD","CLAUDE.md generation complete",{totalFolders:l.length,withObservations:a,noObservations:c,errors:u,dryRun:t}),0}catch(e){return _.error("CLAUDE_MD","Fatal error during CLAUDE.md generation",{error:String(e)}),1}}async function pxe(t){try{let i=function(c){let u=["node_modules",".git",".next","dist","build",".cache","__pycache__",".venv","venv",".idea",".vscode","coverage",".claude-mem",".open-next",".turbo"];try{let l=(0,dr.readdirSync)(c,{withFileTypes:!0});for(let d of l){let p=lr.default.join(c,d.name);if(d.isDirectory())u.includes(d.name)||i(p);else if(d.name==="CLAUDE.md")try{(0,dr.readFileSync)(p,"utf-8").includes("")&&n.push(p)}catch{}}}catch{}};var e=i;let r=process.cwd();_.info("CLAUDE_MD","Starting CLAUDE.md cleanup",{workingDir:r,dryRun:t});let n=[];if(i(r),n.length===0)return _.info("CLAUDE_MD","No CLAUDE.md files with auto-generated content found"),0;_.info("CLAUDE_MD",`Found ${n.length} CLAUDE.md files with auto-generated content`);let s=0,o=0,a=0;for(let c of n){let u=lr.default.relative(r,c);try{let d=(0,dr.readFileSync)(c,"utf-8").replace(/[\s\S]*?<\/claude-mem-context>/g,"").trim();d===""?(t||(0,dr.unlinkSync)(c),_.debug("CLAUDE_MD",`${t?"[DRY-RUN] Would delete":"Deleted"} (empty): ${u}`),s++):(t||(0,dr.writeFileSync)(c,d),_.debug("CLAUDE_MD",`${t?"[DRY-RUN] Would clean":"Cleaned"}: ${u}`),o++)}catch(l){_.warn("CLAUDE_MD",`Error processing ${u}`,{error:String(l)}),a++}}return _.info("CLAUDE_MD","CLAUDE.md cleanup complete",{deleted:s,cleaned:o,errors:a,dryRun:t}),0}catch(r){return _.error("CLAUDE_MD","Fatal error during CLAUDE.md cleanup",{error:String(r)}),1}}var T5,lr,pR,dr,$5,k5,exe,txe,mR=we(()=>{"use strict";T5=require("bun:sqlite"),lr=Pe(require("path"),1),pR=Pe(require("os"),1),dr=require("fs"),$5=require("child_process");tr();js();y$();re();k5=lr.default.join(pR.default.homedir(),".claude-mem","claude-mem.db"),exe=lr.default.join(pR.default.homedir(),".claude-mem","settings.json"),txe={bugfix:"\u{1F534}",feature:"\u{1F7E3}",refactor:"\u{1F504}",change:"\u2705",discovery:"\u{1F535}",decision:"\u2696\uFE0F",session:"\u{1F3AF}",prompt:"\u{1F4AC}"}});var bxe={};wn(bxe,{WorkerService:()=>w_,buildStatusOutput:()=>R5,ensureWorkerStarted:()=>hR,isPluginDisabledInClaudeSettings:()=>_g});module.exports=em(bxe);var gR=Pe(require("path"),1),Ni=require("fs");var Ye;(function(t){t.assertEqual=i=>{};function e(i){}t.assertIs=e;function r(i){throw new Error}t.assertNever=r,t.arrayToEnum=i=>{let s={};for(let o of i)s[o]=o;return s},t.getValidEnumValues=i=>{let s=t.objectKeys(i).filter(a=>typeof i[i[a]]!="number"),o={};for(let a of s)o[a]=i[a];return t.objectValues(o)},t.objectValues=i=>t.objectKeys(i).map(function(s){return i[s]}),t.objectKeys=typeof Object.keys=="function"?i=>Object.keys(i):i=>{let s=[];for(let o in i)Object.prototype.hasOwnProperty.call(i,o)&&s.push(o);return s},t.find=(i,s)=>{for(let o of i)if(s(o))return o},t.isInteger=typeof Number.isInteger=="function"?i=>Number.isInteger(i):i=>typeof i=="number"&&Number.isFinite(i)&&Math.floor(i)===i;function n(i,s=" | "){return i.map(o=>typeof o=="string"?`'${o}'`:o).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(i,s)=>typeof s=="bigint"?s.toString():s})(Ye||(Ye={}));var SR;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(SR||(SR={}));var ie=Ye.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),us=t=>{switch(typeof t){case"undefined":return ie.undefined;case"string":return ie.string;case"number":return Number.isNaN(t)?ie.nan:ie.number;case"boolean":return ie.boolean;case"function":return ie.function;case"bigint":return ie.bigint;case"symbol":return ie.symbol;case"object":return Array.isArray(t)?ie.array:t===null?ie.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?ie.promise:typeof Map<"u"&&t instanceof Map?ie.map:typeof Set<"u"&&t instanceof Set?ie.set:typeof Date<"u"&&t instanceof Date?ie.date:ie.object;default:return ie.unknown}};var B=Ye.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);var En=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},i=s=>{for(let o of s.issues)if(o.code==="invalid_union")o.unionErrors.map(i);else if(o.code==="invalid_return_type")i(o.returnTypeError);else if(o.code==="invalid_arguments")i(o.argumentsError);else if(o.path.length===0)n._errors.push(r(o));else{let a=n,c=0;for(;cr.message){let r=Object.create(null),n=[];for(let i of this.issues)if(i.path.length>0){let s=i.path[0];r[s]=r[s]||[],r[s].push(e(i))}else n.push(e(i));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};En.create=t=>new En(t);var D5=(t,e)=>{let r;switch(t.code){case B.invalid_type:t.received===ie.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case B.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,Ye.jsonStringifyReplacer)}`;break;case B.unrecognized_keys:r=`Unrecognized key(s) in object: ${Ye.joinValues(t.keys,", ")}`;break;case B.invalid_union:r="Invalid input";break;case B.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${Ye.joinValues(t.options)}`;break;case B.invalid_enum_value:r=`Invalid enum value. Expected ${Ye.joinValues(t.options)}, received '${t.received}'`;break;case B.invalid_arguments:r="Invalid function arguments";break;case B.invalid_return_type:r="Invalid function return type";break;case B.invalid_date:r="Invalid date";break;case B.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:Ye.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case B.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case B.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case B.custom:r="Invalid input";break;case B.invalid_intersection_types:r="Intersection results could not be merged";break;case B.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case B.not_finite:r="Number must be finite";break;default:r=e.defaultError,Ye.assertNever(t)}return{message:r}},Ys=D5;var j5=Ys;function dl(){return j5}var tm=t=>{let{data:e,path:r,errorMaps:n,issueData:i}=t,s=[...r,...i.path||[]],o={...i,path:s};if(i.message!==void 0)return{...i,path:s,message:i.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(o,{data:e,defaultError:a}).message;return{...i,path:s,message:a}};function Q(t,e){let r=dl(),n=tm({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Ys?void 0:Ys].filter(i=>!!i)});t.common.issues.push(n)}var Cr=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let i of r){if(i.status==="aborted")return Ee;i.status==="dirty"&&e.dirty(),n.push(i.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let i of r){let s=await i.key,o=await i.value;n.push({key:s,value:o})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let i of r){let{key:s,value:o}=i;if(s.status==="aborted"||o.status==="aborted")return Ee;s.status==="dirty"&&e.dirty(),o.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof o.value<"u"||i.alwaysSet)&&(n[s.value]=o.value)}return{status:e.value,value:n}}},Ee=Object.freeze({status:"aborted"}),Za=t=>({status:"dirty",value:t}),Br=t=>({status:"valid",value:t}),T_=t=>t.status==="aborted",$_=t=>t.status==="dirty",zo=t=>t.status==="valid",pl=t=>typeof Promise<"u"&&t instanceof Promise;var de;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(de||(de={}));var Ln=class{constructor(e,r,n,i){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=i}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},xR=(t,e)=>{if(zo(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new En(t.common.issues);return this._error=r,this._error}}};function Ae(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:i}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:i}:{errorMap:(o,a)=>{let{message:c}=t;return o.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:o.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:i}}var Fe=class{get description(){return this._def.description}_getType(e){return us(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:us(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Cr,ctx:{common:e.parent.common,data:e.data,parsedType:us(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(pl(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:us(e)},i=this._parseSync({data:e,path:n.path,parent:n});return xR(n,i)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:us(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return zo(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>zo(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:us(e)},i=this._parse({data:e,path:n.path,parent:n}),s=await(pl(i)?i:Promise.resolve(i));return xR(n,s)}refine(e,r){let n=i=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(i):r;return this._refinement((i,s)=>{let o=e(i),a=()=>s.addIssue({code:B.custom,...n(i)});return typeof Promise<"u"&&o instanceof Promise?o.then(c=>c?!0:(a(),!1)):o?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,i)=>e(n)?!0:(i.addIssue(typeof r=="function"?r(n,i):r),!1))}_refinement(e){return new ci({schema:this,typeName:_e.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return ai.create(this,this._def)}nullable(){return ps.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return eo.create(this)}promise(){return Lo.create(this,this._def)}or(e){return Ka.create([this,e],this._def)}and(e){return Ja.create(this,e,this._def)}transform(e){return new ci({...Ae(this._def),schema:this,typeName:_e.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new tc({...Ae(this._def),innerType:this,defaultValue:r,typeName:_e.ZodDefault})}brand(){return new rm({typeName:_e.ZodBranded,type:this,...Ae(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new rc({...Ae(this._def),innerType:this,catchValue:r,typeName:_e.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return nm.create(this,e)}readonly(){return nc.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},z5=/^c[^\s-]{8,}$/i,L5=/^[0-9a-z]+$/,U5=/^[0-9A-HJKMNP-TV-Z]{26}$/i,F5=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,q5=/^[a-z0-9_-]{21}$/i,H5=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Z5=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,B5=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,G5="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",I_,W5=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,V5=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,K5=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,J5=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,X5=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Y5=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,wR="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Q5=new RegExp(`^${wR}$`);function ER(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function e3(t){return new RegExp(`^${ER(t)}$`)}function t3(t){let e=`${wR}T${ER(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function r3(t,e){return!!((e==="v4"||!e)&&W5.test(t)||(e==="v6"||!e)&&K5.test(t))}function n3(t,e){if(!H5.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),i=JSON.parse(atob(n));return!(typeof i!="object"||i===null||"typ"in i&&i?.typ!=="JWT"||!i.alg||e&&i.alg!==e)}catch{return!1}}function i3(t,e){return!!((e==="v4"||!e)&&V5.test(t)||(e==="v6"||!e)&&J5.test(t))}var Ga=class t extends Fe{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==ie.string){let s=this._getOrReturnCtx(e);return Q(s,{code:B.invalid_type,expected:ie.string,received:s.parsedType}),Ee}let n=new Cr,i;for(let s of this._def.checks)if(s.kind==="min")e.data.lengths.value&&(i=this._getOrReturnCtx(e,i),Q(i,{code:B.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let o=e.data.length>s.value,a=e.data.lengthe.test(i),{validation:r,code:B.invalid_string,...de.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...de.errToObj(e)})}url(e){return this._addCheck({kind:"url",...de.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...de.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...de.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...de.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...de.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...de.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...de.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...de.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...de.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...de.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...de.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...de.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...de.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...de.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...de.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...de.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...de.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...de.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...de.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...de.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...de.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...de.errToObj(r)})}nonempty(e){return this.min(1,de.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew Ga({checks:[],typeName:_e.ZodString,coerce:t?.coerce??!1,...Ae(t)});function s3(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,i=r>n?r:n,s=Number.parseInt(t.toFixed(i).replace(".","")),o=Number.parseInt(e.toFixed(i).replace(".",""));return s%o/10**i}var fl=class t extends Fe{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==ie.number){let s=this._getOrReturnCtx(e);return Q(s,{code:B.invalid_type,expected:ie.number,received:s.parsedType}),Ee}let n,i=new Cr;for(let s of this._def.checks)s.kind==="int"?Ye.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),Q(n,{code:B.invalid_type,expected:"integer",received:"float",message:s.message}),i.dirty()):s.kind==="min"?(s.inclusive?e.datas.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),Q(n,{code:B.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),i.dirty()):s.kind==="multipleOf"?s3(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),Q(n,{code:B.not_multiple_of,multipleOf:s.value,message:s.message}),i.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),Q(n,{code:B.not_finite,message:s.message}),i.dirty()):Ye.assertNever(s);return{status:i.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,de.toString(r))}gt(e,r){return this.setLimit("min",e,!1,de.toString(r))}lte(e,r){return this.setLimit("max",e,!0,de.toString(r))}lt(e,r){return this.setLimit("max",e,!1,de.toString(r))}setLimit(e,r,n,i){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:de.toString(i)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:de.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:de.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:de.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:de.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:de.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:de.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:de.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:de.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:de.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuee.kind==="int"||e.kind==="multipleOf"&&Ye.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.valuenew fl({checks:[],typeName:_e.ZodNumber,coerce:t?.coerce||!1,...Ae(t)});var ml=class t extends Fe{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==ie.bigint)return this._getInvalidInput(e);let n,i=new Cr;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.datas.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),Q(n,{code:B.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),i.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),Q(n,{code:B.not_multiple_of,multipleOf:s.value,message:s.message}),i.dirty()):Ye.assertNever(s);return{status:i.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return Q(r,{code:B.invalid_type,expected:ie.bigint,received:r.parsedType}),Ee}gte(e,r){return this.setLimit("min",e,!0,de.toString(r))}gt(e,r){return this.setLimit("min",e,!1,de.toString(r))}lte(e,r){return this.setLimit("max",e,!0,de.toString(r))}lt(e,r){return this.setLimit("max",e,!1,de.toString(r))}setLimit(e,r,n,i){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:de.toString(i)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:de.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:de.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:de.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:de.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:de.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew ml({checks:[],typeName:_e.ZodBigInt,coerce:t?.coerce??!1,...Ae(t)});var hl=class extends Fe{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==ie.boolean){let n=this._getOrReturnCtx(e);return Q(n,{code:B.invalid_type,expected:ie.boolean,received:n.parsedType}),Ee}return Br(e.data)}};hl.create=t=>new hl({typeName:_e.ZodBoolean,coerce:t?.coerce||!1,...Ae(t)});var gl=class t extends Fe{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==ie.date){let s=this._getOrReturnCtx(e);return Q(s,{code:B.invalid_type,expected:ie.date,received:s.parsedType}),Ee}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return Q(s,{code:B.invalid_date}),Ee}let n=new Cr,i;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()s.value&&(i=this._getOrReturnCtx(e,i),Q(i,{code:B.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):Ye.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:de.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:de.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew gl({checks:[],coerce:t?.coerce||!1,typeName:_e.ZodDate,...Ae(t)});var vl=class extends Fe{_parse(e){if(this._getType(e)!==ie.symbol){let n=this._getOrReturnCtx(e);return Q(n,{code:B.invalid_type,expected:ie.symbol,received:n.parsedType}),Ee}return Br(e.data)}};vl.create=t=>new vl({typeName:_e.ZodSymbol,...Ae(t)});var Wa=class extends Fe{_parse(e){if(this._getType(e)!==ie.undefined){let n=this._getOrReturnCtx(e);return Q(n,{code:B.invalid_type,expected:ie.undefined,received:n.parsedType}),Ee}return Br(e.data)}};Wa.create=t=>new Wa({typeName:_e.ZodUndefined,...Ae(t)});var Va=class extends Fe{_parse(e){if(this._getType(e)!==ie.null){let n=this._getOrReturnCtx(e);return Q(n,{code:B.invalid_type,expected:ie.null,received:n.parsedType}),Ee}return Br(e.data)}};Va.create=t=>new Va({typeName:_e.ZodNull,...Ae(t)});var yl=class extends Fe{constructor(){super(...arguments),this._any=!0}_parse(e){return Br(e.data)}};yl.create=t=>new yl({typeName:_e.ZodAny,...Ae(t)});var Qs=class extends Fe{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Br(e.data)}};Qs.create=t=>new Qs({typeName:_e.ZodUnknown,...Ae(t)});var Mi=class extends Fe{_parse(e){let r=this._getOrReturnCtx(e);return Q(r,{code:B.invalid_type,expected:ie.never,received:r.parsedType}),Ee}};Mi.create=t=>new Mi({typeName:_e.ZodNever,...Ae(t)});var _l=class extends Fe{_parse(e){if(this._getType(e)!==ie.undefined){let n=this._getOrReturnCtx(e);return Q(n,{code:B.invalid_type,expected:ie.void,received:n.parsedType}),Ee}return Br(e.data)}};_l.create=t=>new _l({typeName:_e.ZodVoid,...Ae(t)});var eo=class t extends Fe{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),i=this._def;if(r.parsedType!==ie.array)return Q(r,{code:B.invalid_type,expected:ie.array,received:r.parsedType}),Ee;if(i.exactLength!==null){let o=r.data.length>i.exactLength.value,a=r.data.lengthi.maxLength.value&&(Q(r,{code:B.too_big,maximum:i.maxLength.value,type:"array",inclusive:!0,exact:!1,message:i.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((o,a)=>i.type._parseAsync(new Ln(r,o,r.path,a)))).then(o=>Cr.mergeArray(n,o));let s=[...r.data].map((o,a)=>i.type._parseSync(new Ln(r,o,r.path,a)));return Cr.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:de.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:de.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:de.toString(r)}})}nonempty(e){return this.min(1,e)}};eo.create=(t,e)=>new eo({type:t,minLength:null,maxLength:null,exactLength:null,typeName:_e.ZodArray,...Ae(e)});function Ba(t){if(t instanceof kn){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=ai.create(Ba(n))}return new kn({...t._def,shape:()=>e})}else return t instanceof eo?new eo({...t._def,type:Ba(t.element)}):t instanceof ai?ai.create(Ba(t.unwrap())):t instanceof ps?ps.create(Ba(t.unwrap())):t instanceof ds?ds.create(t.items.map(e=>Ba(e))):t}var kn=class t extends Fe{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=Ye.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==ie.object){let u=this._getOrReturnCtx(e);return Q(u,{code:B.invalid_type,expected:ie.object,received:u.parsedType}),Ee}let{status:n,ctx:i}=this._processInputParams(e),{shape:s,keys:o}=this._getCached(),a=[];if(!(this._def.catchall instanceof Mi&&this._def.unknownKeys==="strip"))for(let u in i.data)o.includes(u)||a.push(u);let c=[];for(let u of o){let l=s[u],d=i.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new Ln(i,d,i.path,u)),alwaysSet:u in i.data})}if(this._def.catchall instanceof Mi){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:i.data[l]}});else if(u==="strict")a.length>0&&(Q(i,{code:B.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=i.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new Ln(i,d,i.path,l)),alwaysSet:l in i.data})}}return i.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,p=await l.value;u.push({key:d,value:p,alwaysSet:l.alwaysSet})}return u}).then(u=>Cr.mergeObjectSync(n,u)):Cr.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return de.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let i=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:de.errToObj(e).message??i}:{message:i}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:_e.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of Ye.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of Ye.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return Ba(this)}partial(e){let r={};for(let n of Ye.objectKeys(this.shape)){let i=this.shape[n];e&&!e[n]?r[n]=i:r[n]=i.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of Ye.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof ai;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return kR(Ye.objectKeys(this.shape))}};kn.create=(t,e)=>new kn({shape:()=>t,unknownKeys:"strip",catchall:Mi.create(),typeName:_e.ZodObject,...Ae(e)});kn.strictCreate=(t,e)=>new kn({shape:()=>t,unknownKeys:"strict",catchall:Mi.create(),typeName:_e.ZodObject,...Ae(e)});kn.lazycreate=(t,e)=>new kn({shape:t,unknownKeys:"strip",catchall:Mi.create(),typeName:_e.ZodObject,...Ae(e)});var Ka=class extends Fe{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function i(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let o=s.map(a=>new En(a.ctx.common.issues));return Q(r,{code:B.invalid_union,unionErrors:o}),Ee}if(r.common.async)return Promise.all(n.map(async s=>{let o={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:o}),ctx:o}})).then(i);{let s,o=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!s&&(s={result:l,ctx:u}),u.common.issues.length&&o.push(u.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let a=o.map(c=>new En(c));return Q(r,{code:B.invalid_union,unionErrors:a}),Ee}}get options(){return this._def.options}};Ka.create=(t,e)=>new Ka({options:t,typeName:_e.ZodUnion,...Ae(e)});var ls=t=>t instanceof Xa?ls(t.schema):t instanceof ci?ls(t.innerType()):t instanceof Ya?[t.value]:t instanceof Qa?t.options:t instanceof ec?Ye.objectValues(t.enum):t instanceof tc?ls(t._def.innerType):t instanceof Wa?[void 0]:t instanceof Va?[null]:t instanceof ai?[void 0,...ls(t.unwrap())]:t instanceof ps?[null,...ls(t.unwrap())]:t instanceof rm||t instanceof nc?ls(t.unwrap()):t instanceof rc?ls(t._def.innerType):[],R_=class t extends Fe{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==ie.object)return Q(r,{code:B.invalid_type,expected:ie.object,received:r.parsedType}),Ee;let n=this.discriminator,i=r.data[n],s=this.optionsMap.get(i);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(Q(r,{code:B.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),Ee)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let i=new Map;for(let s of r){let o=ls(s.shape[e]);if(!o.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of o){if(i.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);i.set(a,s)}}return new t({typeName:_e.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:i,...Ae(n)})}};function O_(t,e){let r=us(t),n=us(e);if(t===e)return{valid:!0,data:t};if(r===ie.object&&n===ie.object){let i=Ye.objectKeys(e),s=Ye.objectKeys(t).filter(a=>i.indexOf(a)!==-1),o={...t,...e};for(let a of s){let c=O_(t[a],e[a]);if(!c.valid)return{valid:!1};o[a]=c.data}return{valid:!0,data:o}}else if(r===ie.array&&n===ie.array){if(t.length!==e.length)return{valid:!1};let i=[];for(let s=0;s{if(T_(s)||T_(o))return Ee;let a=O_(s.value,o.value);return a.valid?(($_(s)||$_(o))&&r.dirty(),{status:r.value,value:a.data}):(Q(n,{code:B.invalid_intersection_types}),Ee)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,o])=>i(s,o)):i(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};Ja.create=(t,e,r)=>new Ja({left:t,right:e,typeName:_e.ZodIntersection,...Ae(r)});var ds=class t extends Fe{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==ie.array)return Q(n,{code:B.invalid_type,expected:ie.array,received:n.parsedType}),Ee;if(n.data.lengththis._def.items.length&&(Q(n,{code:B.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((o,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new Ln(n,o,n.path,a)):null}).filter(o=>!!o);return n.common.async?Promise.all(s).then(o=>Cr.mergeArray(r,o)):Cr.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};ds.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new ds({items:t,typeName:_e.ZodTuple,rest:null,...Ae(e)})};var C_=class t extends Fe{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==ie.object)return Q(n,{code:B.invalid_type,expected:ie.object,received:n.parsedType}),Ee;let i=[],s=this._def.keyType,o=this._def.valueType;for(let a in n.data)i.push({key:s._parse(new Ln(n,a,n.path,a)),value:o._parse(new Ln(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Cr.mergeObjectAsync(r,i):Cr.mergeObjectSync(r,i)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof Fe?new t({keyType:e,valueType:r,typeName:_e.ZodRecord,...Ae(n)}):new t({keyType:Ga.create(),valueType:e,typeName:_e.ZodRecord,...Ae(r)})}},bl=class extends Fe{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==ie.map)return Q(n,{code:B.invalid_type,expected:ie.map,received:n.parsedType}),Ee;let i=this._def.keyType,s=this._def.valueType,o=[...n.data.entries()].map(([a,c],u)=>({key:i._parse(new Ln(n,a,n.path,[u,"key"])),value:s._parse(new Ln(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of o){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return Ee;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of o){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return Ee;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};bl.create=(t,e,r)=>new bl({valueType:e,keyType:t,typeName:_e.ZodMap,...Ae(r)});var Sl=class t extends Fe{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==ie.set)return Q(n,{code:B.invalid_type,expected:ie.set,received:n.parsedType}),Ee;let i=this._def;i.minSize!==null&&n.data.sizei.maxSize.value&&(Q(n,{code:B.too_big,maximum:i.maxSize.value,type:"set",inclusive:!0,exact:!1,message:i.maxSize.message}),r.dirty());let s=this._def.valueType;function o(c){let u=new Set;for(let l of c){if(l.status==="aborted")return Ee;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new Ln(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>o(c)):o(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:de.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:de.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};Sl.create=(t,e)=>new Sl({valueType:t,minSize:null,maxSize:null,typeName:_e.ZodSet,...Ae(e)});var P_=class t extends Fe{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==ie.function)return Q(r,{code:B.invalid_type,expected:ie.function,received:r.parsedType}),Ee;function n(a,c){return tm({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,dl(),Ys].filter(u=>!!u),issueData:{code:B.invalid_arguments,argumentsError:c}})}function i(a,c){return tm({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,dl(),Ys].filter(u=>!!u),issueData:{code:B.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},o=r.data;if(this._def.returns instanceof Lo){let a=this;return Br(async function(...c){let u=new En([]),l=await a._def.args.parseAsync(c,s).catch(f=>{throw u.addIssue(n(c,f)),u}),d=await Reflect.apply(o,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(f=>{throw u.addIssue(i(d,f)),u})})}else{let a=this;return Br(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new En([n(c,u.error)]);let l=Reflect.apply(o,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new En([i(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:ds.create(e).rest(Qs.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||ds.create([]).rest(Qs.create()),returns:r||Qs.create(),typeName:_e.ZodFunction,...Ae(n)})}},Xa=class extends Fe{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Xa.create=(t,e)=>new Xa({getter:t,typeName:_e.ZodLazy,...Ae(e)});var Ya=class extends Fe{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return Q(r,{received:r.data,code:B.invalid_literal,expected:this._def.value}),Ee}return{status:"valid",value:e.data}}get value(){return this._def.value}};Ya.create=(t,e)=>new Ya({value:t,typeName:_e.ZodLiteral,...Ae(e)});function kR(t,e){return new Qa({values:t,typeName:_e.ZodEnum,...Ae(e)})}var Qa=class t extends Fe{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return Q(r,{expected:Ye.joinValues(n),received:r.parsedType,code:B.invalid_type}),Ee}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return Q(r,{received:r.data,code:B.invalid_enum_value,options:n}),Ee}return Br(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};Qa.create=kR;var ec=class extends Fe{_parse(e){let r=Ye.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==ie.string&&n.parsedType!==ie.number){let i=Ye.objectValues(r);return Q(n,{expected:Ye.joinValues(i),received:n.parsedType,code:B.invalid_type}),Ee}if(this._cache||(this._cache=new Set(Ye.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let i=Ye.objectValues(r);return Q(n,{received:n.data,code:B.invalid_enum_value,options:i}),Ee}return Br(e.data)}get enum(){return this._def.values}};ec.create=(t,e)=>new ec({values:t,typeName:_e.ZodNativeEnum,...Ae(e)});var Lo=class extends Fe{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==ie.promise&&r.common.async===!1)return Q(r,{code:B.invalid_type,expected:ie.promise,received:r.parsedType}),Ee;let n=r.parsedType===ie.promise?r.data:Promise.resolve(r.data);return Br(n.then(i=>this._def.type.parseAsync(i,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Lo.create=(t,e)=>new Lo({type:t,typeName:_e.ZodPromise,...Ae(e)});var ci=class extends Fe{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===_e.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),i=this._def.effect||null,s={addIssue:o=>{Q(n,o),o.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),i.type==="preprocess"){let o=i.transform(n.data,s);if(n.common.async)return Promise.resolve(o).then(async a=>{if(r.value==="aborted")return Ee;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?Ee:c.status==="dirty"?Za(c.value):r.value==="dirty"?Za(c.value):c});{if(r.value==="aborted")return Ee;let a=this._def.schema._parseSync({data:o,path:n.path,parent:n});return a.status==="aborted"?Ee:a.status==="dirty"?Za(a.value):r.value==="dirty"?Za(a.value):a}}if(i.type==="refinement"){let o=a=>{let c=i.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?Ee:(a.status==="dirty"&&r.dirty(),o(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?Ee:(a.status==="dirty"&&r.dirty(),o(a.value).then(()=>({status:r.value,value:a.value}))))}if(i.type==="transform")if(n.common.async===!1){let o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!zo(o))return Ee;let a=i.transform(o.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>zo(o)?Promise.resolve(i.transform(o.value,s)).then(a=>({status:r.value,value:a})):Ee);Ye.assertNever(i)}};ci.create=(t,e,r)=>new ci({schema:t,typeName:_e.ZodEffects,effect:e,...Ae(r)});ci.createWithPreprocess=(t,e,r)=>new ci({schema:e,effect:{type:"preprocess",transform:t},typeName:_e.ZodEffects,...Ae(r)});var ai=class extends Fe{_parse(e){return this._getType(e)===ie.undefined?Br(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};ai.create=(t,e)=>new ai({innerType:t,typeName:_e.ZodOptional,...Ae(e)});var ps=class extends Fe{_parse(e){return this._getType(e)===ie.null?Br(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};ps.create=(t,e)=>new ps({innerType:t,typeName:_e.ZodNullable,...Ae(e)});var tc=class extends Fe{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===ie.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};tc.create=(t,e)=>new tc({innerType:t,typeName:_e.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Ae(e)});var rc=class extends Fe{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},i=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return pl(i)?i.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new En(n.common.issues)},input:n.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new En(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};rc.create=(t,e)=>new rc({innerType:t,typeName:_e.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Ae(e)});var xl=class extends Fe{_parse(e){if(this._getType(e)!==ie.nan){let n=this._getOrReturnCtx(e);return Q(n,{code:B.invalid_type,expected:ie.nan,received:n.parsedType}),Ee}return{status:"valid",value:e.data}}};xl.create=t=>new xl({typeName:_e.ZodNaN,...Ae(t)});var rm=class extends Fe{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},nm=class t extends Fe{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?Ee:s.status==="dirty"?(r.dirty(),Za(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let i=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?Ee:i.status==="dirty"?(r.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:_e.ZodPipeline})}},nc=class extends Fe{_parse(e){let r=this._def.innerType._parse(e),n=i=>(zo(i)&&(i.value=Object.freeze(i.value)),i);return pl(r)?r.then(i=>n(i)):n(r)}unwrap(){return this._def.innerType}};nc.create=(t,e)=>new nc({innerType:t,typeName:_e.ZodReadonly,...Ae(e)});var Uxe={object:kn.lazycreate},_e;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(_e||(_e={}));var Fxe=Ga.create,qxe=fl.create,Hxe=xl.create,Zxe=ml.create,Bxe=hl.create,Gxe=gl.create,Wxe=vl.create,Vxe=Wa.create,Kxe=Va.create,Jxe=yl.create,Xxe=Qs.create,Yxe=Mi.create,Qxe=_l.create,ewe=eo.create,o3=kn.create,twe=kn.strictCreate,rwe=Ka.create,nwe=R_.create,iwe=Ja.create,swe=ds.create,owe=C_.create,awe=bl.create,cwe=Sl.create,uwe=P_.create,lwe=Xa.create,dwe=Ya.create,pwe=Qa.create,fwe=ec.create,mwe=Lo.create,hwe=ci.create,gwe=ai.create,vwe=ps.create,ywe=ci.createWithPreprocess,_we=nm.create;var TR=Object.freeze({status:"aborted"});function O(t,e,r){function n(a,c){if(a._zod||Object.defineProperty(a,"_zod",{value:{def:c,constr:o,traits:new Set},enumerable:!1}),a._zod.traits.has(t))return;a._zod.traits.add(t),e(a,c);let u=o.prototype,l=Object.keys(u);for(let d=0;dr?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(o,"name",{value:t}),o}var Di=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Uo=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}},im={};function ir(t){return t&&Object.assign(im,t),im}var G={};wn(G,{BIGINT_FORMAT_RANGES:()=>q_,Class:()=>N_,NUMBER_FORMAT_RANGES:()=>F_,aborted:()=>io,allowsEval:()=>j_,assert:()=>f3,assertEqual:()=>u3,assertIs:()=>d3,assertNever:()=>p3,assertNotEqual:()=>l3,assignProp:()=>ro,base64ToUint8Array:()=>NR,base64urlToUint8Array:()=>E3,cached:()=>sc,captureStackTrace:()=>om,cleanEnum:()=>w3,cleanRegex:()=>kl,clone:()=>Gr,cloneDef:()=>h3,createTransparentProxy:()=>S3,defineLazy:()=>De,esc:()=>sm,escapeRegex:()=>Un,extend:()=>OR,finalizeIssue:()=>cn,floatSafeRemainder:()=>M_,getElementAtPath:()=>g3,getEnumValues:()=>El,getLengthableOrigin:()=>Il,getParsedType:()=>b3,getSizableOrigin:()=>$l,hexToUint8Array:()=>T3,isObject:()=>Fo,isPlainObject:()=>no,issue:()=>oc,joinValues:()=>be,jsonStringifyReplacer:()=>ic,merge:()=>x3,mergeDefs:()=>fs,normalizeParams:()=>ee,nullish:()=>to,numKeys:()=>_3,objectClone:()=>m3,omit:()=>RR,optionalKeys:()=>U_,parsedType:()=>ke,partial:()=>PR,pick:()=>IR,prefixIssues:()=>Tn,primitiveTypes:()=>L_,promiseAllObject:()=>v3,propertyKeyTypes:()=>Tl,randomString:()=>y3,required:()=>AR,safeExtend:()=>CR,shallowClone:()=>z_,slugify:()=>D_,stringifyPrimitive:()=>Se,uint8ArrayToBase64:()=>MR,uint8ArrayToBase64url:()=>k3,uint8ArrayToHex:()=>$3,unwrapMessage:()=>wl});function u3(t){return t}function l3(t){return t}function d3(t){}function p3(t){throw new Error("Unexpected value in exhaustive check")}function f3(t){}function El(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,i])=>e.indexOf(+n)===-1).map(([n,i])=>i)}function be(t,e="|"){return t.map(r=>Se(r)).join(e)}function ic(t,e){return typeof e=="bigint"?e.toString():e}function sc(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function to(t){return t==null}function kl(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function M_(t,e){let r=(t.toString().split(".")[1]||"").length,n=e.toString(),i=(n.split(".")[1]||"").length;if(i===0&&/\d?e-\d?/.test(n)){let c=n.match(/\d?e-(\d?)/);c?.[1]&&(i=Number.parseInt(c[1]))}let s=r>i?r:i,o=Number.parseInt(t.toFixed(s).replace(".","")),a=Number.parseInt(e.toFixed(s).replace(".",""));return o%a/10**s}var $R=Symbol("evaluating");function De(t,e,r){let n;Object.defineProperty(t,e,{get(){if(n!==$R)return n===void 0&&(n=$R,n=r()),n},set(i){Object.defineProperty(t,e,{value:i})},configurable:!0})}function m3(t){return Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t))}function ro(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function fs(...t){let e={};for(let r of t){let n=Object.getOwnPropertyDescriptors(r);Object.assign(e,n)}return Object.defineProperties({},e)}function h3(t){return fs(t._zod.def)}function g3(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function v3(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let i={};for(let s=0;s{};function Fo(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var j_=sc(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function no(t){if(Fo(t)===!1)return!1;let e=t.constructor;if(e===void 0||typeof e!="function")return!0;let r=e.prototype;return!(Fo(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function z_(t){return no(t)?{...t}:Array.isArray(t)?[...t]:t}function _3(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var b3=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},Tl=new Set(["string","number","symbol"]),L_=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Un(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Gr(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function ee(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function S3(t){let e;return new Proxy({},{get(r,n,i){return e??(e=t()),Reflect.get(e,n,i)},set(r,n,i,s){return e??(e=t()),Reflect.set(e,n,i,s)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,i){return e??(e=t()),Reflect.defineProperty(e,n,i)}})}function Se(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function U_(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var F_={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},q_={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function IR(t,e){let r=t._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");let s=fs(t._zod.def,{get shape(){let o={};for(let a in e){if(!(a in r.shape))throw new Error(`Unrecognized key: "${a}"`);e[a]&&(o[a]=r.shape[a])}return ro(this,"shape",o),o},checks:[]});return Gr(t,s)}function RR(t,e){let r=t._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");let s=fs(t._zod.def,{get shape(){let o={...t._zod.def.shape};for(let a in e){if(!(a in r.shape))throw new Error(`Unrecognized key: "${a}"`);e[a]&&delete o[a]}return ro(this,"shape",o),o},checks:[]});return Gr(t,s)}function OR(t,e){if(!no(e))throw new Error("Invalid input to extend: expected a plain object");let r=t._zod.def.checks;if(r&&r.length>0){let s=t._zod.def.shape;for(let o in e)if(Object.getOwnPropertyDescriptor(s,o)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let i=fs(t._zod.def,{get shape(){let s={...t._zod.def.shape,...e};return ro(this,"shape",s),s}});return Gr(t,i)}function CR(t,e){if(!no(e))throw new Error("Invalid input to safeExtend: expected a plain object");let r=fs(t._zod.def,{get shape(){let n={...t._zod.def.shape,...e};return ro(this,"shape",n),n}});return Gr(t,r)}function x3(t,e){let r=fs(t._zod.def,{get shape(){let n={...t._zod.def.shape,...e._zod.def.shape};return ro(this,"shape",n),n},get catchall(){return e._zod.def.catchall},checks:[]});return Gr(t,r)}function PR(t,e,r){let i=e._zod.def.checks;if(i&&i.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");let o=fs(e._zod.def,{get shape(){let a=e._zod.def.shape,c={...a};if(r)for(let u in r){if(!(u in a))throw new Error(`Unrecognized key: "${u}"`);r[u]&&(c[u]=t?new t({type:"optional",innerType:a[u]}):a[u])}else for(let u in a)c[u]=t?new t({type:"optional",innerType:a[u]}):a[u];return ro(this,"shape",c),c},checks:[]});return Gr(e,o)}function AR(t,e,r){let n=fs(e._zod.def,{get shape(){let i=e._zod.def.shape,s={...i};if(r)for(let o in r){if(!(o in s))throw new Error(`Unrecognized key: "${o}"`);r[o]&&(s[o]=new t({type:"nonoptional",innerType:i[o]}))}else for(let o in i)s[o]=new t({type:"nonoptional",innerType:i[o]});return ro(this,"shape",s),s}});return Gr(e,n)}function io(t,e=0){if(t.aborted===!0)return!0;for(let r=e;r{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function wl(t){return typeof t=="string"?t:t?.message}function cn(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let i=wl(t.inst?._zod.def?.error?.(t))??wl(e?.error?.(t))??wl(r.customError?.(t))??wl(r.localeError?.(t))??"Invalid input";n.message=i}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function $l(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Il(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function ke(t){let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"nan":"number";case"object":{if(t===null)return"null";if(Array.isArray(t))return"array";let r=t;if(r&&Object.getPrototypeOf(r)!==Object.prototype&&"constructor"in r&&r.constructor)return r.constructor.name}}return e}function oc(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function w3(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}function NR(t){let e=atob(t),r=new Uint8Array(e.length);for(let n=0;ne.toString(16).padStart(2,"0")).join("")}var N_=class{constructor(...e){}};var DR=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),t.message=JSON.stringify(e,ic,2),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},am=O("$ZodError",DR),Rl=O("$ZodError",DR,{Parent:Error});function cm(t,e=r=>r.message){let r={},n=[];for(let i of t.issues)i.path.length>0?(r[i.path[0]]=r[i.path[0]]||[],r[i.path[0]].push(e(i))):n.push(e(i));return{formErrors:n,fieldErrors:r}}function um(t,e=r=>r.message){let r={_errors:[]},n=i=>{for(let s of i.issues)if(s.code==="invalid_union"&&s.errors.length)s.errors.map(o=>n({issues:o}));else if(s.code==="invalid_key")n({issues:s.issues});else if(s.code==="invalid_element")n({issues:s.issues});else if(s.path.length===0)r._errors.push(e(s));else{let o=r,a=0;for(;a(e,r,n,i)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},o=e._zod.run({value:r,issues:[]},s);if(o instanceof Promise)throw new Di;if(o.issues.length){let a=new(i?.Err??t)(o.issues.map(c=>cn(c,s,ir())));throw om(a,i?.callee),a}return o.value},Cl=Ol(Rl),Pl=t=>async(e,r,n,i)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},o=e._zod.run({value:r,issues:[]},s);if(o instanceof Promise&&(o=await o),o.issues.length){let a=new(i?.Err??t)(o.issues.map(c=>cn(c,s,ir())));throw om(a,i?.callee),a}return o.value},Al=Pl(Rl),Nl=t=>(e,r,n)=>{let i=n?{...n,async:!1}:{async:!1},s=e._zod.run({value:r,issues:[]},i);if(s instanceof Promise)throw new Di;return s.issues.length?{success:!1,error:new(t??am)(s.issues.map(o=>cn(o,i,ir())))}:{success:!0,data:s.value}},ac=Nl(Rl),Ml=t=>async(e,r,n)=>{let i=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},i);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(o=>cn(o,i,ir())))}:{success:!0,data:s.value}},Dl=Ml(Rl),jR=t=>(e,r,n)=>{let i=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Ol(t)(e,r,i)};var zR=t=>(e,r,n)=>Ol(t)(e,r,n);var LR=t=>async(e,r,n)=>{let i=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Pl(t)(e,r,i)};var UR=t=>async(e,r,n)=>Pl(t)(e,r,n);var FR=t=>(e,r,n)=>{let i=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Nl(t)(e,r,i)};var qR=t=>(e,r,n)=>Nl(t)(e,r,n);var HR=t=>async(e,r,n)=>{let i=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return Ml(t)(e,r,i)};var ZR=t=>async(e,r,n)=>Ml(t)(e,r,n);var Fn={};wn(Fn,{base64:()=>ib,base64url:()=>lm,bigint:()=>lb,boolean:()=>pb,browserEmail:()=>D3,cidrv4:()=>rb,cidrv6:()=>nb,cuid:()=>H_,cuid2:()=>Z_,date:()=>ob,datetime:()=>cb,domain:()=>L3,duration:()=>K_,e164:()=>sb,email:()=>X_,emoji:()=>Y_,extendedDuration:()=>R3,guid:()=>J_,hex:()=>U3,hostname:()=>z3,html5Email:()=>A3,idnEmail:()=>M3,integer:()=>db,ipv4:()=>Q_,ipv6:()=>eb,ksuid:()=>W_,lowercase:()=>hb,mac:()=>tb,md5_base64:()=>q3,md5_base64url:()=>H3,md5_hex:()=>F3,nanoid:()=>V_,null:()=>fb,number:()=>dm,rfc5322Email:()=>N3,sha1_base64:()=>B3,sha1_base64url:()=>G3,sha1_hex:()=>Z3,sha256_base64:()=>V3,sha256_base64url:()=>K3,sha256_hex:()=>W3,sha384_base64:()=>X3,sha384_base64url:()=>Y3,sha384_hex:()=>J3,sha512_base64:()=>eZ,sha512_base64url:()=>tZ,sha512_hex:()=>Q3,string:()=>ub,time:()=>ab,ulid:()=>B_,undefined:()=>mb,unicodeEmail:()=>BR,uppercase:()=>gb,uuid:()=>qo,uuid4:()=>O3,uuid6:()=>C3,uuid7:()=>P3,xid:()=>G_});var H_=/^[cC][^\s-]{8,}$/,Z_=/^[0-9a-z]+$/,B_=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,G_=/^[0-9a-vA-V]{20}$/,W_=/^[A-Za-z0-9]{27}$/,V_=/^[a-zA-Z0-9_-]{21}$/,K_=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,R3=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,J_=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,qo=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,O3=qo(4),C3=qo(6),P3=qo(7),X_=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,A3=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,N3=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,BR=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,M3=BR,D3=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,j3="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Y_(){return new RegExp(j3,"u")}var Q_=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,eb=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,tb=t=>{let e=Un(t??":");return new RegExp(`^(?:[0-9A-F]{2}${e}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${e}){5}[0-9a-f]{2}$`)},rb=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,nb=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,ib=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,lm=/^[A-Za-z0-9_-]*$/,z3=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,L3=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,sb=/^\+[1-9]\d{6,14}$/,GR="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",ob=new RegExp(`^${GR}$`);function WR(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function ab(t){return new RegExp(`^${WR(t)}$`)}function cb(t){let e=WR({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let n=`${e}(?:${r.join("|")})`;return new RegExp(`^${GR}T(?:${n})$`)}var ub=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},lb=/^-?\d+n?$/,db=/^-?\d+$/,dm=/^-?\d+(?:\.\d+)?$/,pb=/^(?:true|false)$/i,fb=/^null$/i;var mb=/^undefined$/i;var hb=/^[^A-Z]*$/,gb=/^[^a-z]*$/,U3=/^[0-9a-fA-F]*$/;function jl(t,e){return new RegExp(`^[A-Za-z0-9+/]{${t}}${e}$`)}function zl(t){return new RegExp(`^[A-Za-z0-9_-]{${t}}$`)}var F3=/^[0-9a-fA-F]{32}$/,q3=jl(22,"=="),H3=zl(22),Z3=/^[0-9a-fA-F]{40}$/,B3=jl(27,"="),G3=zl(27),W3=/^[0-9a-fA-F]{64}$/,V3=jl(43,"="),K3=zl(43),J3=/^[0-9a-fA-F]{96}$/,X3=jl(64,""),Y3=zl(64),Q3=/^[0-9a-fA-F]{128}$/,eZ=jl(86,"=="),tZ=zl(86);var bt=O("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),KR={number:"number",bigint:"bigint",object:"date"},vb=O("$ZodCheckLessThan",(t,e)=>{bt.init(t,e);let r=KR[typeof e.value];t._zod.onattach.push(n=>{let i=n._zod.bag,s=(e.inclusive?i.maximum:i.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value{(e.inclusive?n.value<=e.value:n.value{bt.init(t,e);let r=KR[typeof e.value];t._zod.onattach.push(n=>{let i=n._zod.bag,s=(e.inclusive?i.minimum:i.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>s&&(e.inclusive?i.minimum=e.value:i.exclusiveMinimum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value>=e.value:n.value>e.value)||n.issues.push({origin:r,code:"too_small",minimum:typeof e.value=="object"?e.value.getTime():e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),JR=O("$ZodCheckMultipleOf",(t,e)=>{bt.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):M_(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),XR=O("$ZodCheckNumberFormat",(t,e)=>{bt.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[i,s]=F_[e.format];t._zod.onattach.push(o=>{let a=o._zod.bag;a.format=e.format,a.minimum=i,a.maximum=s,r&&(a.pattern=db)}),t._zod.check=o=>{let a=o.value;if(r){if(!Number.isInteger(a)){o.issues.push({expected:n,format:e.format,code:"invalid_type",continue:!1,input:a,inst:t});return}if(!Number.isSafeInteger(a)){a>0?o.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,inclusive:!0,continue:!e.abort}):o.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,inclusive:!0,continue:!e.abort});return}}as&&o.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inclusive:!0,inst:t,continue:!e.abort})}}),YR=O("$ZodCheckBigIntFormat",(t,e)=>{bt.init(t,e);let[r,n]=q_[e.format];t._zod.onattach.push(i=>{let s=i._zod.bag;s.format=e.format,s.minimum=r,s.maximum=n}),t._zod.check=i=>{let s=i.value;sn&&i.issues.push({origin:"bigint",input:s,code:"too_big",maximum:n,inclusive:!0,inst:t,continue:!e.abort})}}),QR=O("$ZodCheckMaxSize",(t,e)=>{var r;bt.init(t,e),(r=t._zod.def).when??(r.when=n=>{let i=n.value;return!to(i)&&i.size!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum{let i=n.value;i.size<=e.maximum||n.issues.push({origin:$l(i),code:"too_big",maximum:e.maximum,inclusive:!0,input:i,inst:t,continue:!e.abort})}}),eO=O("$ZodCheckMinSize",(t,e)=>{var r;bt.init(t,e),(r=t._zod.def).when??(r.when=n=>{let i=n.value;return!to(i)&&i.size!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>i&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let i=n.value;i.size>=e.minimum||n.issues.push({origin:$l(i),code:"too_small",minimum:e.minimum,inclusive:!0,input:i,inst:t,continue:!e.abort})}}),tO=O("$ZodCheckSizeEquals",(t,e)=>{var r;bt.init(t,e),(r=t._zod.def).when??(r.when=n=>{let i=n.value;return!to(i)&&i.size!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag;i.minimum=e.size,i.maximum=e.size,i.size=e.size}),t._zod.check=n=>{let i=n.value,s=i.size;if(s===e.size)return;let o=s>e.size;n.issues.push({origin:$l(i),...o?{code:"too_big",maximum:e.size}:{code:"too_small",minimum:e.size},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),rO=O("$ZodCheckMaxLength",(t,e)=>{var r;bt.init(t,e),(r=t._zod.def).when??(r.when=n=>{let i=n.value;return!to(i)&&i.length!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum{let i=n.value;if(i.length<=e.maximum)return;let o=Il(i);n.issues.push({origin:o,code:"too_big",maximum:e.maximum,inclusive:!0,input:i,inst:t,continue:!e.abort})}}),nO=O("$ZodCheckMinLength",(t,e)=>{var r;bt.init(t,e),(r=t._zod.def).when??(r.when=n=>{let i=n.value;return!to(i)&&i.length!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>i&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let i=n.value;if(i.length>=e.minimum)return;let o=Il(i);n.issues.push({origin:o,code:"too_small",minimum:e.minimum,inclusive:!0,input:i,inst:t,continue:!e.abort})}}),iO=O("$ZodCheckLengthEquals",(t,e)=>{var r;bt.init(t,e),(r=t._zod.def).when??(r.when=n=>{let i=n.value;return!to(i)&&i.length!==void 0}),t._zod.onattach.push(n=>{let i=n._zod.bag;i.minimum=e.length,i.maximum=e.length,i.length=e.length}),t._zod.check=n=>{let i=n.value,s=i.length;if(s===e.length)return;let o=Il(i),a=s>e.length;n.issues.push({origin:o,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),Ll=O("$ZodCheckStringFormat",(t,e)=>{var r,n;bt.init(t,e),t._zod.onattach.push(i=>{let s=i._zod.bag;s.format=e.format,e.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=i=>{e.pattern.lastIndex=0,!e.pattern.test(i.value)&&i.issues.push({origin:"string",code:"invalid_format",format:e.format,input:i.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),sO=O("$ZodCheckRegex",(t,e)=>{Ll.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),oO=O("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=hb),Ll.init(t,e)}),aO=O("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=gb),Ll.init(t,e)}),cO=O("$ZodCheckIncludes",(t,e)=>{bt.init(t,e);let r=Un(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(i=>{let s=i._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=i=>{i.value.includes(e.includes,e.position)||i.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:i.value,inst:t,continue:!e.abort})}}),uO=O("$ZodCheckStartsWith",(t,e)=>{bt.init(t,e);let r=new RegExp(`^${Un(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let i=n._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),lO=O("$ZodCheckEndsWith",(t,e)=>{bt.init(t,e);let r=new RegExp(`.*${Un(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let i=n._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}});function VR(t,e,r){t.issues.length&&e.issues.push(...Tn(r,t.issues))}var dO=O("$ZodCheckProperty",(t,e)=>{bt.init(t,e),t._zod.check=r=>{let n=e.schema._zod.run({value:r.value[e.property],issues:[]},{});if(n instanceof Promise)return n.then(i=>VR(i,r,e.property));VR(n,r,e.property)}}),pO=O("$ZodCheckMimeType",(t,e)=>{bt.init(t,e);let r=new Set(e.mime);t._zod.onattach.push(n=>{n._zod.bag.mime=e.mime}),t._zod.check=n=>{r.has(n.value.type)||n.issues.push({code:"invalid_value",values:e.mime,input:n.value.type,inst:t,continue:!e.abort})}}),fO=O("$ZodCheckOverwrite",(t,e)=>{bt.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var pm=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(` `).filter(o=>o),i=Math.min(...n.map(o=>o.length-o.trimStart().length)),s=n.map(o=>o.slice(i)).map(o=>" ".repeat(this.indent*2)+o);for(let o of s)this.content.push(o)}compile(){let e=Function,r=this?.args,i=[...(this?.content??[""]).map(s=>` ${s}`)];return new e(...r,i.join(` -`))}};var ZR={major:4,minor:3,patch:4};var Ce=O("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=ZR;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let i of n)for(let s of i._zod.onattach)s(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let i=(o,a,c)=>{let u=Vs(o),l;for(let d of a){if(d._zod.def.when){if(!d._zod.def.when(o))continue}else if(u)continue;let p=o.issues.length,f=d._zod.check(o);if(f instanceof Promise&&c?.async===!1)throw new Ci;if(l||f instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await f,o.issues.length!==p&&(u||(u=Vs(o,p)))});else{if(o.issues.length===p)continue;u||(u=Vs(o,p))}}return l?l.then(()=>o):o},s=(o,a,c)=>{if(Vs(o))return o.aborted=!0,o;let u=i(a,n,c);if(u instanceof Promise){if(c.async===!1)throw new Ci;return u.then(l=>t._zod.parse(l,c))}return t._zod.parse(u,c)};t._zod.run=(o,a)=>{if(a.skipChecks)return t._zod.parse(o,a);if(a.direction==="backward"){let u=t._zod.parse({value:o.value,issues:[]},{...a,skipChecks:!0});return u instanceof Promise?u.then(l=>s(l,o,a)):s(u,o,a)}let c=t._zod.parse(o,a);if(c instanceof Promise){if(a.async===!1)throw new Ci;return c.then(u=>i(u,n,a))}return i(c,n,a)}}Le(t,"~standard",()=>({validate:i=>{try{let s=Ya(t,i);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return El(t,i).then(o=>o.success?{value:o.data}:{issues:o.error?.issues})}},vendor:"zod",version:1}))}),Ao=O("$ZodString",(t,e)=>{Ce.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??J_(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),mt=O("$ZodStringFormat",(t,e)=>{$l.init(t,e),Ao.init(t,e)}),ab=O("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=j_),mt.init(t,e)}),cb=O("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=Po(n))}else e.pattern??(e.pattern=Po());mt.init(t,e)}),ub=O("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=z_),mt.init(t,e)}),lb=O("$ZodURL",(t,e)=>{mt.init(t,e),t._zod.check=r=>{try{let n=r.value.trim(),i=new URL(n);e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(i.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:e.hostname.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:r.value,inst:t,continue:!e.abort})),e.normalize?r.value=i.href:r.value=n;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),db=O("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=L_()),mt.init(t,e)}),pb=O("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=M_),mt.init(t,e)}),fb=O("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=O_),mt.init(t,e)}),mb=O("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=C_),mt.init(t,e)}),hb=O("$ZodULID",(t,e)=>{e.pattern??(e.pattern=P_),mt.init(t,e)}),gb=O("$ZodXID",(t,e)=>{e.pattern??(e.pattern=A_),mt.init(t,e)}),vb=O("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=N_),mt.init(t,e)}),yb=O("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=K_(e)),mt.init(t,e)}),_b=O("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=W_),mt.init(t,e)}),bb=O("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=V_(e)),mt.init(t,e)}),Sb=O("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=D_),mt.init(t,e)}),xb=O("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=U_),mt.init(t,e),t._zod.bag.format="ipv4"}),wb=O("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=F_),mt.init(t,e),t._zod.bag.format="ipv6",t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),Eb=O("$ZodMAC",(t,e)=>{e.pattern??(e.pattern=q_(e.delimiter)),mt.init(t,e),t._zod.bag.format="mac"}),kb=O("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=H_),mt.init(t,e)}),Tb=O("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Z_),mt.init(t,e),t._zod.check=r=>{let n=r.value.split("/");try{if(n.length!==2)throw new Error;let[i,s]=n;if(!s)throw new Error;let o=Number(s);if(`${o}`!==s)throw new Error;if(o<0||o>128)throw new Error;new URL(`http://[${i}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function r1(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var $b=O("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=B_),mt.init(t,e),t._zod.bag.contentEncoding="base64",t._zod.check=r=>{r1(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function N3(t){if(!Vf.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return r1(r)}var Ib=O("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Vf),mt.init(t,e),t._zod.bag.contentEncoding="base64url",t._zod.check=r=>{N3(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),Rb=O("$ZodE164",(t,e)=>{e.pattern??(e.pattern=G_),mt.init(t,e)});function M3(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let i=JSON.parse(atob(n));return!("typ"in i&&i?.typ!=="JWT"||!i.alg||e&&(!("alg"in i)||i.alg!==e))}catch{return!1}}var Ob=O("$ZodJWT",(t,e)=>{mt.init(t,e),t._zod.check=r=>{M3(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),Cb=O("$ZodCustomStringFormat",(t,e)=>{mt.init(t,e),t._zod.check=r=>{e.fn(r.value)||r.issues.push({code:"invalid_format",format:e.format,input:r.value,inst:t,continue:!e.abort})}}),rm=O("$ZodNumber",(t,e)=>{Ce.init(t,e),t._zod.pattern=t._zod.bag.pattern??Kf,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let i=r.value;if(typeof i=="number"&&!Number.isNaN(i)&&Number.isFinite(i))return r;let s=typeof i=="number"?Number.isNaN(i)?"NaN":Number.isFinite(i)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:i,inst:t,...s?{received:s}:{}}),r}}),Pb=O("$ZodNumberFormat",(t,e)=>{TR.init(t,e),rm.init(t,e)}),Il=O("$ZodBoolean",(t,e)=>{Ce.init(t,e),t._zod.pattern=Q_,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let i=r.value;return typeof i=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:t}),r}}),nm=O("$ZodBigInt",(t,e)=>{Ce.init(t,e),t._zod.pattern=X_,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=BigInt(r.value)}catch{}return typeof r.value=="bigint"||r.issues.push({expected:"bigint",code:"invalid_type",input:r.value,inst:t}),r}}),Ab=O("$ZodBigIntFormat",(t,e)=>{$R.init(t,e),nm.init(t,e)}),Nb=O("$ZodSymbol",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;return typeof i=="symbol"||r.issues.push({expected:"symbol",code:"invalid_type",input:i,inst:t}),r}}),Mb=O("$ZodUndefined",(t,e)=>{Ce.init(t,e),t._zod.pattern=tb,t._zod.values=new Set([void 0]),t._zod.optin="optional",t._zod.optout="optional",t._zod.parse=(r,n)=>{let i=r.value;return typeof i>"u"||r.issues.push({expected:"undefined",code:"invalid_type",input:i,inst:t}),r}}),Db=O("$ZodNull",(t,e)=>{Ce.init(t,e),t._zod.pattern=eb,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let i=r.value;return i===null||r.issues.push({expected:"null",code:"invalid_type",input:i,inst:t}),r}}),jb=O("$ZodAny",(t,e)=>{Ce.init(t,e),t._zod.parse=r=>r}),zb=O("$ZodUnknown",(t,e)=>{Ce.init(t,e),t._zod.parse=r=>r}),Lb=O("$ZodNever",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)}),Ub=O("$ZodVoid",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;return typeof i>"u"||r.issues.push({expected:"void",code:"invalid_type",input:i,inst:t}),r}}),Fb=O("$ZodDate",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=new Date(r.value)}catch{}let i=r.value,s=i instanceof Date;return s&&!Number.isNaN(i.getTime())||r.issues.push({expected:"date",code:"invalid_type",input:i,...s?{received:"Invalid Date"}:{},inst:t}),r}});function BR(t,e,r){t.issues.length&&e.issues.push(...xn(r,t.issues)),e.value[r]=t.value}var qb=O("$ZodArray",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;if(!Array.isArray(i))return r.issues.push({expected:"array",code:"invalid_type",input:i,inst:t}),r;r.value=Array(i.length);let s=[];for(let o=0;oBR(u,r,o))):BR(c,r,o)}return s.length?Promise.all(s).then(()=>r):r}});function tm(t,e,r,n,i){if(t.issues.length){if(i&&!(r in n))return;e.issues.push(...xn(r,t.issues))}t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}function n1(t){let e=Object.keys(t.shape);for(let n of e)if(!t.shape?.[n]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${n}": expected a Zod schema`);let r=$_(t.shape);return{...t,keys:e,keySet:new Set(e),numKeys:e.length,optionalKeys:new Set(r)}}function i1(t,e,r,n,i,s){let o=[],a=i.keySet,c=i.catchall._zod,u=c.def.type,l=c.optout==="optional";for(let d in e){if(a.has(d))continue;if(u==="never"){o.push(d);continue}let p=c.run({value:e[d],issues:[]},n);p instanceof Promise?t.push(p.then(f=>tm(f,r,d,e,l))):tm(p,r,d,e,l)}return o.length&&r.issues.push({code:"unrecognized_keys",keys:o,input:e,inst:s}),t.length?Promise.all(t).then(()=>r):r}var s1=O("$ZodObject",(t,e)=>{if(Ce.init(t,e),!Object.getOwnPropertyDescriptor(e,"shape")?.get){let a=e.shape;Object.defineProperty(e,"shape",{get:()=>{let c={...a};return Object.defineProperty(e,"shape",{value:c}),c}})}let n=Ja(()=>n1(e));Le(t._zod,"propValues",()=>{let a=e.shape,c={};for(let u in a){let l=a[u]._zod;if(l.values){c[u]??(c[u]=new Set);for(let d of l.values)c[u].add(d)}}return c});let i=Co,s=e.catchall,o;t._zod.parse=(a,c)=>{o??(o=n.value);let u=a.value;if(!i(u))return a.issues.push({expected:"object",code:"invalid_type",input:u,inst:t}),a;a.value={};let l=[],d=o.shape;for(let p of o.keys){let f=d[p],m=f._zod.optout==="optional",h=f._zod.run({value:u[p],issues:[]},c);h instanceof Promise?l.push(h.then(g=>tm(g,a,p,u,m))):tm(h,a,p,u,m)}return s?i1(l,u,a,c,n.value,t):l.length?Promise.all(l).then(()=>a):a}}),o1=O("$ZodObjectJIT",(t,e)=>{s1.init(t,e);let r=t._zod.parse,n=Ja(()=>n1(e)),i=p=>{let f=new Jf(["shape","payload","ctx"]),m=n.value,h=b=>{let y=Hf(b);return`shape[${y}]._zod.run({ value: input[${y}], issues: [] }, ctx)`};f.write("const input = payload.value;");let g=Object.create(null),v=0;for(let b of m.keys)g[b]=`key_${v++}`;f.write("const newResult = {};");for(let b of m.keys){let y=g[b],x=Hf(b),E=p[b]?._zod?.optout==="optional";f.write(`const ${y} = ${h(b)};`),E?f.write(` - if (${y}.issues.length) { +`))}};var hO={major:4,minor:3,patch:6};var Ce=O("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=hO;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let i of n)for(let s of i._zod.onattach)s(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let i=(o,a,c)=>{let u=io(o),l;for(let d of a){if(d._zod.def.when){if(!d._zod.def.when(o))continue}else if(u)continue;let p=o.issues.length,f=d._zod.check(o);if(f instanceof Promise&&c?.async===!1)throw new Di;if(l||f instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await f,o.issues.length!==p&&(u||(u=io(o,p)))});else{if(o.issues.length===p)continue;u||(u=io(o,p))}}return l?l.then(()=>o):o},s=(o,a,c)=>{if(io(o))return o.aborted=!0,o;let u=i(a,n,c);if(u instanceof Promise){if(c.async===!1)throw new Di;return u.then(l=>t._zod.parse(l,c))}return t._zod.parse(u,c)};t._zod.run=(o,a)=>{if(a.skipChecks)return t._zod.parse(o,a);if(a.direction==="backward"){let u=t._zod.parse({value:o.value,issues:[]},{...a,skipChecks:!0});return u instanceof Promise?u.then(l=>s(l,o,a)):s(u,o,a)}let c=t._zod.parse(o,a);if(c instanceof Promise){if(a.async===!1)throw new Di;return c.then(u=>i(u,n,a))}return i(c,n,a)}}De(t,"~standard",()=>({validate:i=>{try{let s=ac(t,i);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Dl(t,i).then(o=>o.success?{value:o.data}:{issues:o.error?.issues})}},vendor:"zod",version:1}))}),Ho=O("$ZodString",(t,e)=>{Ce.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??ub(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),mt=O("$ZodStringFormat",(t,e)=>{Ll.init(t,e),Ho.init(t,e)}),bb=O("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=J_),mt.init(t,e)}),Sb=O("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=qo(n))}else e.pattern??(e.pattern=qo());mt.init(t,e)}),xb=O("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=X_),mt.init(t,e)}),wb=O("$ZodURL",(t,e)=>{mt.init(t,e),t._zod.check=r=>{try{let n=r.value.trim(),i=new URL(n);e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(i.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:e.hostname.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:r.value,inst:t,continue:!e.abort})),e.normalize?r.value=i.href:r.value=n;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),Eb=O("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Y_()),mt.init(t,e)}),kb=O("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=V_),mt.init(t,e)}),Tb=O("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=H_),mt.init(t,e)}),$b=O("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Z_),mt.init(t,e)}),Ib=O("$ZodULID",(t,e)=>{e.pattern??(e.pattern=B_),mt.init(t,e)}),Rb=O("$ZodXID",(t,e)=>{e.pattern??(e.pattern=G_),mt.init(t,e)}),Ob=O("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=W_),mt.init(t,e)}),Cb=O("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=cb(e)),mt.init(t,e)}),Pb=O("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=ob),mt.init(t,e)}),Ab=O("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=ab(e)),mt.init(t,e)}),Nb=O("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=K_),mt.init(t,e)}),Mb=O("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Q_),mt.init(t,e),t._zod.bag.format="ipv4"}),Db=O("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=eb),mt.init(t,e),t._zod.bag.format="ipv6",t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),jb=O("$ZodMAC",(t,e)=>{e.pattern??(e.pattern=tb(e.delimiter)),mt.init(t,e),t._zod.bag.format="mac"}),zb=O("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=rb),mt.init(t,e)}),Lb=O("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=nb),mt.init(t,e),t._zod.check=r=>{let n=r.value.split("/");try{if(n.length!==2)throw new Error;let[i,s]=n;if(!s)throw new Error;let o=Number(s);if(`${o}`!==s)throw new Error;if(o<0||o>128)throw new Error;new URL(`http://[${i}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function $O(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var Ub=O("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=ib),mt.init(t,e),t._zod.bag.contentEncoding="base64",t._zod.check=r=>{$O(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function rZ(t){if(!lm.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return $O(r)}var Fb=O("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=lm),mt.init(t,e),t._zod.bag.contentEncoding="base64url",t._zod.check=r=>{rZ(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),qb=O("$ZodE164",(t,e)=>{e.pattern??(e.pattern=sb),mt.init(t,e)});function nZ(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let i=JSON.parse(atob(n));return!("typ"in i&&i?.typ!=="JWT"||!i.alg||e&&(!("alg"in i)||i.alg!==e))}catch{return!1}}var Hb=O("$ZodJWT",(t,e)=>{mt.init(t,e),t._zod.check=r=>{nZ(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),Zb=O("$ZodCustomStringFormat",(t,e)=>{mt.init(t,e),t._zod.check=r=>{e.fn(r.value)||r.issues.push({code:"invalid_format",format:e.format,input:r.value,inst:t,continue:!e.abort})}}),ym=O("$ZodNumber",(t,e)=>{Ce.init(t,e),t._zod.pattern=t._zod.bag.pattern??dm,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let i=r.value;if(typeof i=="number"&&!Number.isNaN(i)&&Number.isFinite(i))return r;let s=typeof i=="number"?Number.isNaN(i)?"NaN":Number.isFinite(i)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:i,inst:t,...s?{received:s}:{}}),r}}),Bb=O("$ZodNumberFormat",(t,e)=>{XR.init(t,e),ym.init(t,e)}),Ul=O("$ZodBoolean",(t,e)=>{Ce.init(t,e),t._zod.pattern=pb,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let i=r.value;return typeof i=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:t}),r}}),_m=O("$ZodBigInt",(t,e)=>{Ce.init(t,e),t._zod.pattern=lb,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=BigInt(r.value)}catch{}return typeof r.value=="bigint"||r.issues.push({expected:"bigint",code:"invalid_type",input:r.value,inst:t}),r}}),Gb=O("$ZodBigIntFormat",(t,e)=>{YR.init(t,e),_m.init(t,e)}),Wb=O("$ZodSymbol",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;return typeof i=="symbol"||r.issues.push({expected:"symbol",code:"invalid_type",input:i,inst:t}),r}}),Vb=O("$ZodUndefined",(t,e)=>{Ce.init(t,e),t._zod.pattern=mb,t._zod.values=new Set([void 0]),t._zod.optin="optional",t._zod.optout="optional",t._zod.parse=(r,n)=>{let i=r.value;return typeof i>"u"||r.issues.push({expected:"undefined",code:"invalid_type",input:i,inst:t}),r}}),Kb=O("$ZodNull",(t,e)=>{Ce.init(t,e),t._zod.pattern=fb,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let i=r.value;return i===null||r.issues.push({expected:"null",code:"invalid_type",input:i,inst:t}),r}}),Jb=O("$ZodAny",(t,e)=>{Ce.init(t,e),t._zod.parse=r=>r}),Xb=O("$ZodUnknown",(t,e)=>{Ce.init(t,e),t._zod.parse=r=>r}),Yb=O("$ZodNever",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)}),Qb=O("$ZodVoid",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;return typeof i>"u"||r.issues.push({expected:"void",code:"invalid_type",input:i,inst:t}),r}}),eS=O("$ZodDate",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=new Date(r.value)}catch{}let i=r.value,s=i instanceof Date;return s&&!Number.isNaN(i.getTime())||r.issues.push({expected:"date",code:"invalid_type",input:i,...s?{received:"Invalid Date"}:{},inst:t}),r}});function gO(t,e,r){t.issues.length&&e.issues.push(...Tn(r,t.issues)),e.value[r]=t.value}var tS=O("$ZodArray",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;if(!Array.isArray(i))return r.issues.push({expected:"array",code:"invalid_type",input:i,inst:t}),r;r.value=Array(i.length);let s=[];for(let o=0;ogO(u,r,o))):gO(c,r,o)}return s.length?Promise.all(s).then(()=>r):r}});function vm(t,e,r,n,i){if(t.issues.length){if(i&&!(r in n))return;e.issues.push(...Tn(r,t.issues))}t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}function IO(t){let e=Object.keys(t.shape);for(let n of e)if(!t.shape?.[n]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${n}": expected a Zod schema`);let r=U_(t.shape);return{...t,keys:e,keySet:new Set(e),numKeys:e.length,optionalKeys:new Set(r)}}function RO(t,e,r,n,i,s){let o=[],a=i.keySet,c=i.catchall._zod,u=c.def.type,l=c.optout==="optional";for(let d in e){if(a.has(d))continue;if(u==="never"){o.push(d);continue}let p=c.run({value:e[d],issues:[]},n);p instanceof Promise?t.push(p.then(f=>vm(f,r,d,e,l))):vm(p,r,d,e,l)}return o.length&&r.issues.push({code:"unrecognized_keys",keys:o,input:e,inst:s}),t.length?Promise.all(t).then(()=>r):r}var OO=O("$ZodObject",(t,e)=>{if(Ce.init(t,e),!Object.getOwnPropertyDescriptor(e,"shape")?.get){let a=e.shape;Object.defineProperty(e,"shape",{get:()=>{let c={...a};return Object.defineProperty(e,"shape",{value:c}),c}})}let n=sc(()=>IO(e));De(t._zod,"propValues",()=>{let a=e.shape,c={};for(let u in a){let l=a[u]._zod;if(l.values){c[u]??(c[u]=new Set);for(let d of l.values)c[u].add(d)}}return c});let i=Fo,s=e.catchall,o;t._zod.parse=(a,c)=>{o??(o=n.value);let u=a.value;if(!i(u))return a.issues.push({expected:"object",code:"invalid_type",input:u,inst:t}),a;a.value={};let l=[],d=o.shape;for(let p of o.keys){let f=d[p],m=f._zod.optout==="optional",h=f._zod.run({value:u[p],issues:[]},c);h instanceof Promise?l.push(h.then(g=>vm(g,a,p,u,m))):vm(h,a,p,u,m)}return s?RO(l,u,a,c,n.value,t):l.length?Promise.all(l).then(()=>a):a}}),CO=O("$ZodObjectJIT",(t,e)=>{OO.init(t,e);let r=t._zod.parse,n=sc(()=>IO(e)),i=p=>{let f=new pm(["shape","payload","ctx"]),m=n.value,h=b=>{let S=sm(b);return`shape[${S}]._zod.run({ value: input[${S}], issues: [] }, ctx)`};f.write("const input = payload.value;");let g=Object.create(null),v=0;for(let b of m.keys)g[b]=`key_${v++}`;f.write("const newResult = {};");for(let b of m.keys){let S=g[b],x=sm(b),E=p[b]?._zod?.optout==="optional";f.write(`const ${S} = ${h(b)};`),E?f.write(` + if (${S}.issues.length) { if (${x} in input) { - payload.issues = payload.issues.concat(${y}.issues.map(iss => ({ + payload.issues = payload.issues.concat(${S}.issues.map(iss => ({ ...iss, path: iss.path ? [${x}, ...iss.path] : [${x}] }))); } } - if (${y}.value === undefined) { + if (${S}.value === undefined) { if (${x} in input) { newResult[${x}] = undefined; } } else { - newResult[${x}] = ${y}.value; + newResult[${x}] = ${S}.value; } `):f.write(` - if (${y}.issues.length) { - payload.issues = payload.issues.concat(${y}.issues.map(iss => ({ + if (${S}.issues.length) { + payload.issues = payload.issues.concat(${S}.issues.map(iss => ({ ...iss, path: iss.path ? [${x}, ...iss.path] : [${x}] }))); } - if (${y}.value === undefined) { + if (${S}.value === undefined) { if (${x} in input) { newResult[${x}] = undefined; } } else { - newResult[${x}] = ${y}.value; + newResult[${x}] = ${S}.value; } - `)}f.write("payload.value = newResult;"),f.write("return payload;");let S=f.compile();return(b,y)=>S(p,b,y)},s,o=Co,a=!qf.jitless,u=a&&k_.value,l=e.catchall,d;t._zod.parse=(p,f)=>{d??(d=n.value);let m=p.value;return o(m)?a&&u&&f?.async===!1&&f.jitless!==!0?(s||(s=i(e.shape)),p=s(p,f),l?i1([],m,p,f,d,t):p):r(p,f):(p.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),p)}});function GR(t,e,r,n){for(let s of t)if(s.issues.length===0)return e.value=s.value,e;let i=t.filter(s=>!Vs(s));return i.length===1?(e.value=i[0].value,i[0]):(e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(s=>s.issues.map(o=>on(o,n,tr())))}),e)}var Rl=O("$ZodUnion",(t,e)=>{Ce.init(t,e),Le(t._zod,"optin",()=>e.options.some(i=>i._zod.optin==="optional")?"optional":void 0),Le(t._zod,"optout",()=>e.options.some(i=>i._zod.optout==="optional")?"optional":void 0),Le(t._zod,"values",()=>{if(e.options.every(i=>i._zod.values))return new Set(e.options.flatMap(i=>Array.from(i._zod.values)))}),Le(t._zod,"pattern",()=>{if(e.options.every(i=>i._zod.pattern)){let i=e.options.map(s=>s._zod.pattern);return new RegExp(`^(${i.map(s=>fl(s.source)).join("|")})$`)}});let r=e.options.length===1,n=e.options[0]._zod.run;t._zod.parse=(i,s)=>{if(r)return n(i,s);let o=!1,a=[];for(let c of e.options){let u=c._zod.run({value:i.value,issues:[]},s);if(u instanceof Promise)a.push(u),o=!0;else{if(u.issues.length===0)return u;a.push(u)}}return o?Promise.all(a).then(c=>GR(c,i,t,s)):GR(a,i,t,s)}});function WR(t,e,r,n){let i=t.filter(s=>s.issues.length===0);return i.length===1?(e.value=i[0].value,e):(i.length===0?e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(s=>s.issues.map(o=>on(o,n,tr())))}):e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:[],inclusive:!1}),e)}var Hb=O("$ZodXor",(t,e)=>{Rl.init(t,e),e.inclusive=!1;let r=e.options.length===1,n=e.options[0]._zod.run;t._zod.parse=(i,s)=>{if(r)return n(i,s);let o=!1,a=[];for(let c of e.options){let u=c._zod.run({value:i.value,issues:[]},s);u instanceof Promise?(a.push(u),o=!0):a.push(u)}return o?Promise.all(a).then(c=>WR(c,i,t,s)):WR(a,i,t,s)}}),Zb=O("$ZodDiscriminatedUnion",(t,e)=>{e.inclusive=!1,Rl.init(t,e);let r=t._zod.parse;Le(t._zod,"propValues",()=>{let i={};for(let s of e.options){let o=s._zod.propValues;if(!o||Object.keys(o).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(o)){i[a]||(i[a]=new Set);for(let u of c)i[a].add(u)}}return i});let n=Ja(()=>{let i=e.options,s=new Map;for(let o of i){let a=o._zod.propValues?.[e.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(o)}"`);for(let c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,o)}}return s});t._zod.parse=(i,s)=>{let o=i.value;if(!Co(o))return i.issues.push({code:"invalid_type",expected:"object",input:o,inst:t}),i;let a=n.value.get(o?.[e.discriminator]);return a?a._zod.run(i,s):e.unionFallback?r(i,s):(i.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:e.discriminator,input:o,path:[e.discriminator],inst:t}),i)}}),Bb=O("$ZodIntersection",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value,s=e.left._zod.run({value:i,issues:[]},n),o=e.right._zod.run({value:i,issues:[]},n);return s instanceof Promise||o instanceof Promise?Promise.all([s,o]).then(([c,u])=>VR(r,c,u)):VR(r,s,o)}});function ob(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(Ws(t)&&Ws(e)){let r=Object.keys(e),n=Object.keys(t).filter(s=>r.indexOf(s)!==-1),i={...t,...e};for(let s of n){let o=ob(t[s],e[s]);if(!o.valid)return{valid:!1,mergeErrorPath:[s,...o.mergeErrorPath]};i[s]=o.data}return{valid:!0,data:i}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;na.l&&a.r).map(([a])=>a);if(s.length&&i&&t.issues.push({...i,keys:s}),Vs(t))return t;let o=ob(e.value,r.value);if(!o.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return t.value=o.data,t}var im=O("$ZodTuple",(t,e)=>{Ce.init(t,e);let r=e.items;t._zod.parse=(n,i)=>{let s=n.value;if(!Array.isArray(s))return n.issues.push({input:s,inst:t,expected:"tuple",code:"invalid_type"}),n;n.value=[];let o=[],a=[...r].reverse().findIndex(l=>l._zod.optin!=="optional"),c=a===-1?0:r.length-a;if(!e.rest){let l=s.length>r.length,d=s.length=s.length&&u>=c)continue;let d=l._zod.run({value:s[u],issues:[]},i);d instanceof Promise?o.push(d.then(p=>Xf(p,n,u))):Xf(d,n,u)}if(e.rest){let l=s.slice(r.length);for(let d of l){u++;let p=e.rest._zod.run({value:d,issues:[]},i);p instanceof Promise?o.push(p.then(f=>Xf(f,n,u))):Xf(p,n,u)}}return o.length?Promise.all(o).then(()=>n):n}});function Xf(t,e,r){t.issues.length&&e.issues.push(...xn(r,t.issues)),e.value[r]=t.value}var Gb=O("$ZodRecord",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;if(!Ws(i))return r.issues.push({expected:"record",code:"invalid_type",input:i,inst:t}),r;let s=[],o=e.keyType._zod.values;if(o){r.value={};let a=new Set;for(let u of o)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){a.add(typeof u=="number"?u.toString():u);let l=e.valueType._zod.run({value:i[u],issues:[]},n);l instanceof Promise?s.push(l.then(d=>{d.issues.length&&r.issues.push(...xn(u,d.issues)),r.value[u]=d.value})):(l.issues.length&&r.issues.push(...xn(u,l.issues)),r.value[u]=l.value)}let c;for(let u in i)a.has(u)||(c=c??[],c.push(u));c&&c.length>0&&r.issues.push({code:"unrecognized_keys",input:i,inst:t,keys:c})}else{r.value={};for(let a of Reflect.ownKeys(i)){if(a==="__proto__")continue;let c=e.keyType._zod.run({value:a,issues:[]},n);if(c instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof a=="string"&&Kf.test(a)&&c.issues.length&&c.issues.some(d=>d.code==="invalid_type"&&d.expected==="number")){let d=e.keyType._zod.run({value:Number(a),issues:[]},n);if(d instanceof Promise)throw new Error("Async schemas not supported in object keys currently");d.issues.length===0&&(c=d)}if(c.issues.length){e.mode==="loose"?r.value[a]=i[a]:r.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map(d=>on(d,n,tr())),input:a,path:[a],inst:t});continue}let l=e.valueType._zod.run({value:i[a],issues:[]},n);l instanceof Promise?s.push(l.then(d=>{d.issues.length&&r.issues.push(...xn(a,d.issues)),r.value[c.value]=d.value})):(l.issues.length&&r.issues.push(...xn(a,l.issues)),r.value[c.value]=l.value)}}return s.length?Promise.all(s).then(()=>r):r}}),Wb=O("$ZodMap",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;if(!(i instanceof Map))return r.issues.push({expected:"map",code:"invalid_type",input:i,inst:t}),r;let s=[];r.value=new Map;for(let[o,a]of i){let c=e.keyType._zod.run({value:o,issues:[]},n),u=e.valueType._zod.run({value:a,issues:[]},n);c instanceof Promise||u instanceof Promise?s.push(Promise.all([c,u]).then(([l,d])=>{KR(l,d,r,o,i,t,n)})):KR(c,u,r,o,i,t,n)}return s.length?Promise.all(s).then(()=>r):r}});function KR(t,e,r,n,i,s,o){t.issues.length&&(ml.has(typeof n)?r.issues.push(...xn(n,t.issues)):r.issues.push({code:"invalid_key",origin:"map",input:i,inst:s,issues:t.issues.map(a=>on(a,o,tr()))})),e.issues.length&&(ml.has(typeof n)?r.issues.push(...xn(n,e.issues)):r.issues.push({origin:"map",code:"invalid_element",input:i,inst:s,key:n,issues:e.issues.map(a=>on(a,o,tr()))})),r.value.set(t.value,e.value)}var Vb=O("$ZodSet",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;if(!(i instanceof Set))return r.issues.push({input:i,inst:t,expected:"set",code:"invalid_type"}),r;let s=[];r.value=new Set;for(let o of i){let a=e.valueType._zod.run({value:o,issues:[]},n);a instanceof Promise?s.push(a.then(c=>JR(c,r))):JR(a,r)}return s.length?Promise.all(s).then(()=>r):r}});function JR(t,e){t.issues.length&&e.issues.push(...t.issues),e.value.add(t.value)}var Kb=O("$ZodEnum",(t,e)=>{Ce.init(t,e);let r=pl(e.entries),n=new Set(r);t._zod.values=n,t._zod.pattern=new RegExp(`^(${r.filter(i=>ml.has(typeof i)).map(i=>typeof i=="string"?Dn(i):i.toString()).join("|")})$`),t._zod.parse=(i,s)=>{let o=i.value;return n.has(o)||i.issues.push({code:"invalid_value",values:r,input:o,inst:t}),i}}),Jb=O("$ZodLiteral",(t,e)=>{if(Ce.init(t,e),e.values.length===0)throw new Error("Cannot create literal schema with no valid values");let r=new Set(e.values);t._zod.values=r,t._zod.pattern=new RegExp(`^(${e.values.map(n=>typeof n=="string"?Dn(n):n?Dn(n.toString()):String(n)).join("|")})$`),t._zod.parse=(n,i)=>{let s=n.value;return r.has(s)||n.issues.push({code:"invalid_value",values:e.values,input:s,inst:t}),n}}),Xb=O("$ZodFile",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;return i instanceof File||r.issues.push({expected:"file",code:"invalid_type",input:i,inst:t}),r}}),Yb=O("$ZodTransform",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Oo(t.constructor.name);let i=e.transform(r.value,r);if(n.async)return(i instanceof Promise?i:Promise.resolve(i)).then(o=>(r.value=o,r));if(i instanceof Promise)throw new Ci;return r.value=i,r}});function XR(t,e){return t.issues.length&&e===void 0?{issues:[],value:void 0}:t}var sm=O("$ZodOptional",(t,e)=>{Ce.init(t,e),t._zod.optin="optional",t._zod.optout="optional",Le(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),Le(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${fl(r.source)})?$`):void 0}),t._zod.parse=(r,n)=>{if(e.innerType._zod.optin==="optional"){let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>XR(s,r.value)):XR(i,r.value)}return r.value===void 0?r:e.innerType._zod.run(r,n)}}),Qb=O("$ZodExactOptional",(t,e)=>{sm.init(t,e),Le(t._zod,"values",()=>e.innerType._zod.values),Le(t._zod,"pattern",()=>e.innerType._zod.pattern),t._zod.parse=(r,n)=>e.innerType._zod.run(r,n)}),eS=O("$ZodNullable",(t,e)=>{Ce.init(t,e),Le(t._zod,"optin",()=>e.innerType._zod.optin),Le(t._zod,"optout",()=>e.innerType._zod.optout),Le(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${fl(r.source)}|null)$`):void 0}),Le(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),tS=O("$ZodDefault",(t,e)=>{Ce.init(t,e),t._zod.optin="optional",Le(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(n.direction==="backward")return e.innerType._zod.run(r,n);if(r.value===void 0)return r.value=e.defaultValue,r;let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>YR(s,e)):YR(i,e)}});function YR(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var rS=O("$ZodPrefault",(t,e)=>{Ce.init(t,e),t._zod.optin="optional",Le(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(n.direction==="backward"||r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),nS=O("$ZodNonOptional",(t,e)=>{Ce.init(t,e),Le(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>QR(s,t)):QR(i,t)}});function QR(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}var iS=O("$ZodSuccess",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Oo("ZodSuccess");let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>(r.value=s.issues.length===0,r)):(r.value=i.issues.length===0,r)}}),sS=O("$ZodCatch",(t,e)=>{Ce.init(t,e),Le(t._zod,"optin",()=>e.innerType._zod.optin),Le(t._zod,"optout",()=>e.innerType._zod.optout),Le(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(n.direction==="backward")return e.innerType._zod.run(r,n);let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(o=>on(o,n,tr()))},input:r.value}),r.issues=[]),r)):(r.value=i.value,i.issues.length&&(r.value=e.catchValue({...r,error:{issues:i.issues.map(s=>on(s,n,tr()))},input:r.value}),r.issues=[]),r)}}),oS=O("$ZodNaN",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>((typeof r.value!="number"||!Number.isNaN(r.value))&&r.issues.push({input:r.value,inst:t,expected:"nan",code:"invalid_type"}),r)}),aS=O("$ZodPipe",(t,e)=>{Ce.init(t,e),Le(t._zod,"values",()=>e.in._zod.values),Le(t._zod,"optin",()=>e.in._zod.optin),Le(t._zod,"optout",()=>e.out._zod.optout),Le(t._zod,"propValues",()=>e.in._zod.propValues),t._zod.parse=(r,n)=>{if(n.direction==="backward"){let s=e.out._zod.run(r,n);return s instanceof Promise?s.then(o=>Yf(o,e.in,n)):Yf(s,e.in,n)}let i=e.in._zod.run(r,n);return i instanceof Promise?i.then(s=>Yf(s,e.out,n)):Yf(i,e.out,n)}});function Yf(t,e,r){return t.issues.length?(t.aborted=!0,t):e._zod.run({value:t.value,issues:t.issues},r)}var Ol=O("$ZodCodec",(t,e)=>{Ce.init(t,e),Le(t._zod,"values",()=>e.in._zod.values),Le(t._zod,"optin",()=>e.in._zod.optin),Le(t._zod,"optout",()=>e.out._zod.optout),Le(t._zod,"propValues",()=>e.in._zod.propValues),t._zod.parse=(r,n)=>{if((n.direction||"forward")==="forward"){let s=e.in._zod.run(r,n);return s instanceof Promise?s.then(o=>Qf(o,e,n)):Qf(s,e,n)}else{let s=e.out._zod.run(r,n);return s instanceof Promise?s.then(o=>Qf(o,e,n)):Qf(s,e,n)}}});function Qf(t,e,r){if(t.issues.length)return t.aborted=!0,t;if((r.direction||"forward")==="forward"){let i=e.transform(t.value,t);return i instanceof Promise?i.then(s=>em(t,s,e.out,r)):em(t,i,e.out,r)}else{let i=e.reverseTransform(t.value,t);return i instanceof Promise?i.then(s=>em(t,s,e.in,r)):em(t,i,e.in,r)}}function em(t,e,r,n){return t.issues.length?(t.aborted=!0,t):r._zod.run({value:e,issues:t.issues},n)}var cS=O("$ZodReadonly",(t,e)=>{Ce.init(t,e),Le(t._zod,"propValues",()=>e.innerType._zod.propValues),Le(t._zod,"values",()=>e.innerType._zod.values),Le(t._zod,"optin",()=>e.innerType?._zod?.optin),Le(t._zod,"optout",()=>e.innerType?._zod?.optout),t._zod.parse=(r,n)=>{if(n.direction==="backward")return e.innerType._zod.run(r,n);let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(e1):e1(i)}});function e1(t){return t.value=Object.freeze(t.value),t}var uS=O("$ZodTemplateLiteral",(t,e)=>{Ce.init(t,e);let r=[];for(let n of e.parts)if(typeof n=="object"&&n!==null){if(!n._zod.pattern)throw new Error(`Invalid template literal part, no pattern found: ${[...n._zod.traits].shift()}`);let i=n._zod.pattern instanceof RegExp?n._zod.pattern.source:n._zod.pattern;if(!i)throw new Error(`Invalid template literal part: ${n._zod.traits}`);let s=i.startsWith("^")?1:0,o=i.endsWith("$")?i.length-1:i.length;r.push(i.slice(s,o))}else if(n===null||T_.has(typeof n))r.push(Dn(`${n}`));else throw new Error(`Invalid template literal part: ${n}`);t._zod.pattern=new RegExp(`^${r.join("")}$`),t._zod.parse=(n,i)=>typeof n.value!="string"?(n.issues.push({input:n.value,inst:t,expected:"string",code:"invalid_type"}),n):(t._zod.pattern.lastIndex=0,t._zod.pattern.test(n.value)||n.issues.push({input:n.value,inst:t,code:"invalid_format",format:e.format??"template_literal",pattern:t._zod.pattern.source}),n)}),lS=O("$ZodFunction",(t,e)=>(Ce.init(t,e),t._def=e,t._zod.def=e,t.implement=r=>{if(typeof r!="function")throw new Error("implement() must be called with a function");return function(...n){let i=t._def.input?_l(t._def.input,n):n,s=Reflect.apply(r,this,i);return t._def.output?_l(t._def.output,s):s}},t.implementAsync=r=>{if(typeof r!="function")throw new Error("implementAsync() must be called with a function");return async function(...n){let i=t._def.input?await Sl(t._def.input,n):n,s=await Reflect.apply(r,this,i);return t._def.output?await Sl(t._def.output,s):s}},t._zod.parse=(r,n)=>typeof r.value!="function"?(r.issues.push({code:"invalid_type",expected:"function",input:r.value,inst:t}),r):(t._def.output&&t._def.output._zod.def.type==="promise"?r.value=t.implementAsync(r.value):r.value=t.implement(r.value),r),t.input=(...r)=>{let n=t.constructor;return Array.isArray(r[0])?new n({type:"function",input:new im({type:"tuple",items:r[0],rest:r[1]}),output:t._def.output}):new n({type:"function",input:r[0],output:t._def.output})},t.output=r=>{let n=t.constructor;return new n({type:"function",input:t._def.input,output:r})},t)),dS=O("$ZodPromise",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>Promise.resolve(r.value).then(i=>e.innerType._zod.run({value:i,issues:[]},n))}),pS=O("$ZodLazy",(t,e)=>{Ce.init(t,e),Le(t._zod,"innerType",()=>e.getter()),Le(t._zod,"pattern",()=>t._zod.innerType?._zod?.pattern),Le(t._zod,"propValues",()=>t._zod.innerType?._zod?.propValues),Le(t._zod,"optin",()=>t._zod.innerType?._zod?.optin??void 0),Le(t._zod,"optout",()=>t._zod.innerType?._zod?.optout??void 0),t._zod.parse=(r,n)=>t._zod.innerType._zod.run(r,n)}),fS=O("$ZodCustom",(t,e)=>{_t.init(t,e),Ce.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,i=e.fn(n);if(i instanceof Promise)return i.then(s=>t1(s,r,n,t));t1(i,r,n,t)}});function t1(t,e,r,n){if(!t){let i={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(i.params=n._zod.def.params),e.issues.push(Xa(i))}}var j3=()=>{let t={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function e(i){return t[i]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},n={nan:"NaN"};return i=>{switch(i.code){case"invalid_type":{let s=n[i.expected]??i.expected,o=Ee(i.input),a=n[o]??o;return`Invalid input: expected ${s}, received ${a}`}case"invalid_value":return i.values.length===1?`Invalid input: expected ${be(i.values[0])}`:`Invalid option: expected one of ${_e(i.values,"|")}`;case"too_big":{let s=i.inclusive?"<=":"<",o=e(i.origin);return o?`Too big: expected ${i.origin??"value"} to have ${s}${i.maximum.toString()} ${o.unit??"elements"}`:`Too big: expected ${i.origin??"value"} to be ${s}${i.maximum.toString()}`}case"too_small":{let s=i.inclusive?">=":">",o=e(i.origin);return o?`Too small: expected ${i.origin} to have ${s}${i.minimum.toString()} ${o.unit}`:`Too small: expected ${i.origin} to be ${s}${i.minimum.toString()}`}case"invalid_format":{let s=i;return s.format==="starts_with"?`Invalid string: must start with "${s.prefix}"`:s.format==="ends_with"?`Invalid string: must end with "${s.suffix}"`:s.format==="includes"?`Invalid string: must include "${s.includes}"`:s.format==="regex"?`Invalid string: must match pattern ${s.pattern}`:`Invalid ${r[s.format]??i.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${i.divisor}`;case"unrecognized_keys":return`Unrecognized key${i.keys.length>1?"s":""}: ${_e(i.keys,", ")}`;case"invalid_key":return`Invalid key in ${i.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${i.origin}`;default:return"Invalid input"}}};function mS(){return{localeError:j3()}}var a1;var gS=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...r){let n=r[0];return this._map.set(e,n),n&&typeof n=="object"&&"id"in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let r=this._map.get(e);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(e),this}get(e){let r=e._zod.parent;if(r){let n={...this.get(r)??{}};delete n.id;let i={...n,...this._map.get(e)};return Object.keys(i).length?i:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function vS(){return new gS}(a1=globalThis).__zod_globalRegistry??(a1.__zod_globalRegistry=vS());var Br=globalThis.__zod_globalRegistry;function yS(t,e){return new t({type:"string",...ee(e)})}function om(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...ee(e)})}function Cl(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...ee(e)})}function am(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...ee(e)})}function cm(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...ee(e)})}function um(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...ee(e)})}function lm(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...ee(e)})}function Pl(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...ee(e)})}function dm(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...ee(e)})}function pm(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...ee(e)})}function fm(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...ee(e)})}function mm(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...ee(e)})}function hm(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...ee(e)})}function gm(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...ee(e)})}function vm(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...ee(e)})}function ym(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...ee(e)})}function _m(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...ee(e)})}function _S(t,e){return new t({type:"string",format:"mac",check:"string_format",abort:!1,...ee(e)})}function bm(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...ee(e)})}function Sm(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...ee(e)})}function xm(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...ee(e)})}function wm(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...ee(e)})}function Em(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...ee(e)})}function km(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...ee(e)})}function bS(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...ee(e)})}function SS(t,e){return new t({type:"string",format:"date",check:"string_format",...ee(e)})}function xS(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...ee(e)})}function wS(t,e){return new t({type:"string",format:"duration",check:"string_format",...ee(e)})}function ES(t,e){return new t({type:"number",checks:[],...ee(e)})}function kS(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...ee(e)})}function TS(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"float32",...ee(e)})}function $S(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"float64",...ee(e)})}function IS(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"int32",...ee(e)})}function RS(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"uint32",...ee(e)})}function OS(t,e){return new t({type:"boolean",...ee(e)})}function CS(t,e){return new t({type:"bigint",...ee(e)})}function PS(t,e){return new t({type:"bigint",check:"bigint_format",abort:!1,format:"int64",...ee(e)})}function AS(t,e){return new t({type:"bigint",check:"bigint_format",abort:!1,format:"uint64",...ee(e)})}function NS(t,e){return new t({type:"symbol",...ee(e)})}function MS(t,e){return new t({type:"undefined",...ee(e)})}function DS(t,e){return new t({type:"null",...ee(e)})}function jS(t){return new t({type:"any"})}function zS(t){return new t({type:"unknown"})}function LS(t,e){return new t({type:"never",...ee(e)})}function US(t,e){return new t({type:"void",...ee(e)})}function FS(t,e){return new t({type:"date",...ee(e)})}function qS(t,e){return new t({type:"nan",...ee(e)})}function us(t,e){return new ib({check:"less_than",...ee(e),value:t,inclusive:!1})}function wn(t,e){return new ib({check:"less_than",...ee(e),value:t,inclusive:!0})}function ls(t,e){return new sb({check:"greater_than",...ee(e),value:t,inclusive:!1})}function Gr(t,e){return new sb({check:"greater_than",...ee(e),value:t,inclusive:!0})}function HS(t){return ls(0,t)}function ZS(t){return us(0,t)}function BS(t){return wn(0,t)}function GS(t){return Gr(0,t)}function No(t,e){return new kR({check:"multiple_of",...ee(e),value:t})}function Mo(t,e){return new IR({check:"max_size",...ee(e),maximum:t})}function ds(t,e){return new RR({check:"min_size",...ee(e),minimum:t})}function Qa(t,e){return new OR({check:"size_equals",...ee(e),size:t})}function ec(t,e){return new CR({check:"max_length",...ee(e),maximum:t})}function Ks(t,e){return new PR({check:"min_length",...ee(e),minimum:t})}function tc(t,e){return new AR({check:"length_equals",...ee(e),length:t})}function Al(t,e){return new NR({check:"string_format",format:"regex",...ee(e),pattern:t})}function Nl(t){return new MR({check:"string_format",format:"lowercase",...ee(t)})}function Ml(t){return new DR({check:"string_format",format:"uppercase",...ee(t)})}function Dl(t,e){return new jR({check:"string_format",format:"includes",...ee(e),includes:t})}function jl(t,e){return new zR({check:"string_format",format:"starts_with",...ee(e),prefix:t})}function zl(t,e){return new LR({check:"string_format",format:"ends_with",...ee(e),suffix:t})}function WS(t,e,r){return new UR({check:"property",property:t,schema:e,...ee(r)})}function Ll(t,e){return new FR({check:"mime_type",mime:t,...ee(e)})}function Pi(t){return new qR({check:"overwrite",tx:t})}function Ul(t){return Pi(e=>e.normalize(t))}function Fl(){return Pi(t=>t.trim())}function ql(){return Pi(t=>t.toLowerCase())}function Hl(){return Pi(t=>t.toUpperCase())}function Tm(){return Pi(t=>E_(t))}function c1(t,e,r){return new t({type:"array",element:e,...ee(r)})}function VS(t,e){return new t({type:"file",...ee(e)})}function KS(t,e,r){let n=ee(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function JS(t,e,r){return new t({type:"custom",check:"custom",fn:e,...ee(r)})}function XS(t){let e=F3(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(Xa(n,r.value,e._zod.def));else{let i=n;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=e),i.continue??(i.continue=!e._zod.def.abort),r.issues.push(Xa(i))}},t(r.value,r)));return e}function F3(t,e){let r=new _t({check:"custom",...ee(e)});return r._zod.check=t,r}function YS(t){let e=new _t({check:"describe"});return e._zod.onattach=[r=>{let n=Br.get(r)??{};Br.add(r,{...n,description:t})}],e._zod.check=()=>{},e}function QS(t){let e=new _t({check:"meta"});return e._zod.onattach=[r=>{let n=Br.get(r)??{};Br.add(r,{...n,...t})}],e._zod.check=()=>{},e}function ex(t,e){let r=ee(e),n=r.truthy??["true","1","yes","on","y","enabled"],i=r.falsy??["false","0","no","off","n","disabled"];r.case!=="sensitive"&&(n=n.map(f=>typeof f=="string"?f.toLowerCase():f),i=i.map(f=>typeof f=="string"?f.toLowerCase():f));let s=new Set(n),o=new Set(i),a=t.Codec??Ol,c=t.Boolean??Il,u=t.String??Ao,l=new u({type:"string",error:r.error}),d=new c({type:"boolean",error:r.error}),p=new a({type:"pipe",in:l,out:d,transform:((f,m)=>{let h=f;return r.case!=="sensitive"&&(h=h.toLowerCase()),s.has(h)?!0:o.has(h)?!1:(m.issues.push({code:"invalid_value",expected:"stringbool",values:[...s,...o],input:m.value,inst:p,continue:!1}),{})}),reverseTransform:((f,m)=>f===!0?n[0]||"true":i[0]||"false"),error:r.error});return p}function rc(t,e,r,n={}){let i=ee(n),s={...ee(n),check:"string_format",type:"string",format:e,fn:typeof r=="function"?r:a=>r.test(a),...i};return r instanceof RegExp&&(s.pattern=r),new t(s)}function $m(t){let e=t?.target??"draft-2020-12";return e==="draft-4"&&(e="draft-04"),e==="draft-7"&&(e="draft-07"),{processors:t.processors??{},metadataRegistry:t?.metadata??Br,target:e,unrepresentable:t?.unrepresentable??"throw",override:t?.override??(()=>{}),io:t?.io??"output",counter:0,seen:new Map,cycles:t?.cycles??"ref",reused:t?.reused??"inline",external:t?.external??void 0}}function kt(t,e,r={path:[],schemaPath:[]}){var n;let i=t._zod.def,s=e.seen.get(t);if(s)return s.count++,r.schemaPath.includes(t)&&(s.cycle=r.path),s.schema;let o={schema:{},count:1,cycle:void 0,path:r.path};e.seen.set(t,o);let a=t._zod.toJSONSchema?.();if(a)o.schema=a;else{let l={...r,schemaPath:[...r.schemaPath,t],path:r.path};if(t._zod.processJSONSchema)t._zod.processJSONSchema(e,o.schema,l);else{let p=o.schema,f=e.processors[i.type];if(!f)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);f(t,e,p,l)}let d=t._zod.parent;d&&(o.ref||(o.ref=d),kt(d,e,l),e.seen.get(d).isParent=!0)}let c=e.metadataRegistry.get(t);return c&&Object.assign(o.schema,c),e.io==="input"&&Wr(t)&&(delete o.schema.examples,delete o.schema.default),e.io==="input"&&o.schema._prefault&&((n=o.schema).default??(n.default=o.schema._prefault)),delete o.schema._prefault,e.seen.get(t).schema}function Im(t,e){let r=t.seen.get(e);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let n=new Map;for(let o of t.seen.entries()){let a=t.metadataRegistry.get(o[0])?.id;if(a){let c=n.get(a);if(c&&c!==o[0])throw new Error(`Duplicate schema id "${a}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(a,o[0])}}let i=o=>{let a=t.target==="draft-2020-12"?"$defs":"definitions";if(t.external){let d=t.external.registry.get(o[0])?.id,p=t.external.uri??(m=>m);if(d)return{ref:p(d)};let f=o[1].defId??o[1].schema.id??`schema${t.counter++}`;return o[1].defId=f,{defId:f,ref:`${p("__shared")}#/${a}/${f}`}}if(o[1]===r)return{ref:"#"};let u=`#/${a}/`,l=o[1].schema.id??`__schema${t.counter++}`;return{defId:l,ref:u+l}},s=o=>{if(o[1].schema.$ref)return;let a=o[1],{ref:c,defId:u}=i(o);a.def={...a.schema},u&&(a.defId=u);let l=a.schema;for(let d in l)delete l[d];l.$ref=c};if(t.cycles==="throw")for(let o of t.seen.entries()){let a=o[1];if(a.cycle)throw new Error(`Cycle detected: #/${a.cycle?.join("/")}/ + `)}f.write("payload.value = newResult;"),f.write("return payload;");let y=f.compile();return(b,S)=>y(p,b,S)},s,o=Fo,a=!im.jitless,u=a&&j_.value,l=e.catchall,d;t._zod.parse=(p,f)=>{d??(d=n.value);let m=p.value;return o(m)?a&&u&&f?.async===!1&&f.jitless!==!0?(s||(s=i(e.shape)),p=s(p,f),l?RO([],m,p,f,d,t):p):r(p,f):(p.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),p)}});function vO(t,e,r,n){for(let s of t)if(s.issues.length===0)return e.value=s.value,e;let i=t.filter(s=>!io(s));return i.length===1?(e.value=i[0].value,i[0]):(e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(s=>s.issues.map(o=>cn(o,n,ir())))}),e)}var Fl=O("$ZodUnion",(t,e)=>{Ce.init(t,e),De(t._zod,"optin",()=>e.options.some(i=>i._zod.optin==="optional")?"optional":void 0),De(t._zod,"optout",()=>e.options.some(i=>i._zod.optout==="optional")?"optional":void 0),De(t._zod,"values",()=>{if(e.options.every(i=>i._zod.values))return new Set(e.options.flatMap(i=>Array.from(i._zod.values)))}),De(t._zod,"pattern",()=>{if(e.options.every(i=>i._zod.pattern)){let i=e.options.map(s=>s._zod.pattern);return new RegExp(`^(${i.map(s=>kl(s.source)).join("|")})$`)}});let r=e.options.length===1,n=e.options[0]._zod.run;t._zod.parse=(i,s)=>{if(r)return n(i,s);let o=!1,a=[];for(let c of e.options){let u=c._zod.run({value:i.value,issues:[]},s);if(u instanceof Promise)a.push(u),o=!0;else{if(u.issues.length===0)return u;a.push(u)}}return o?Promise.all(a).then(c=>vO(c,i,t,s)):vO(a,i,t,s)}});function yO(t,e,r,n){let i=t.filter(s=>s.issues.length===0);return i.length===1?(e.value=i[0].value,e):(i.length===0?e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(s=>s.issues.map(o=>cn(o,n,ir())))}):e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:[],inclusive:!1}),e)}var rS=O("$ZodXor",(t,e)=>{Fl.init(t,e),e.inclusive=!1;let r=e.options.length===1,n=e.options[0]._zod.run;t._zod.parse=(i,s)=>{if(r)return n(i,s);let o=!1,a=[];for(let c of e.options){let u=c._zod.run({value:i.value,issues:[]},s);u instanceof Promise?(a.push(u),o=!0):a.push(u)}return o?Promise.all(a).then(c=>yO(c,i,t,s)):yO(a,i,t,s)}}),nS=O("$ZodDiscriminatedUnion",(t,e)=>{e.inclusive=!1,Fl.init(t,e);let r=t._zod.parse;De(t._zod,"propValues",()=>{let i={};for(let s of e.options){let o=s._zod.propValues;if(!o||Object.keys(o).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(o)){i[a]||(i[a]=new Set);for(let u of c)i[a].add(u)}}return i});let n=sc(()=>{let i=e.options,s=new Map;for(let o of i){let a=o._zod.propValues?.[e.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(o)}"`);for(let c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,o)}}return s});t._zod.parse=(i,s)=>{let o=i.value;if(!Fo(o))return i.issues.push({code:"invalid_type",expected:"object",input:o,inst:t}),i;let a=n.value.get(o?.[e.discriminator]);return a?a._zod.run(i,s):e.unionFallback?r(i,s):(i.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:e.discriminator,input:o,path:[e.discriminator],inst:t}),i)}}),iS=O("$ZodIntersection",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value,s=e.left._zod.run({value:i,issues:[]},n),o=e.right._zod.run({value:i,issues:[]},n);return s instanceof Promise||o instanceof Promise?Promise.all([s,o]).then(([c,u])=>_O(r,c,u)):_O(r,s,o)}});function _b(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(no(t)&&no(e)){let r=Object.keys(e),n=Object.keys(t).filter(s=>r.indexOf(s)!==-1),i={...t,...e};for(let s of n){let o=_b(t[s],e[s]);if(!o.valid)return{valid:!1,mergeErrorPath:[s,...o.mergeErrorPath]};i[s]=o.data}return{valid:!0,data:i}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;na.l&&a.r).map(([a])=>a);if(s.length&&i&&t.issues.push({...i,keys:s}),io(t))return t;let o=_b(e.value,r.value);if(!o.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return t.value=o.data,t}var bm=O("$ZodTuple",(t,e)=>{Ce.init(t,e);let r=e.items;t._zod.parse=(n,i)=>{let s=n.value;if(!Array.isArray(s))return n.issues.push({input:s,inst:t,expected:"tuple",code:"invalid_type"}),n;n.value=[];let o=[],a=[...r].reverse().findIndex(l=>l._zod.optin!=="optional"),c=a===-1?0:r.length-a;if(!e.rest){let l=s.length>r.length,d=s.length=s.length&&u>=c)continue;let d=l._zod.run({value:s[u],issues:[]},i);d instanceof Promise?o.push(d.then(p=>fm(p,n,u))):fm(d,n,u)}if(e.rest){let l=s.slice(r.length);for(let d of l){u++;let p=e.rest._zod.run({value:d,issues:[]},i);p instanceof Promise?o.push(p.then(f=>fm(f,n,u))):fm(p,n,u)}}return o.length?Promise.all(o).then(()=>n):n}});function fm(t,e,r){t.issues.length&&e.issues.push(...Tn(r,t.issues)),e.value[r]=t.value}var sS=O("$ZodRecord",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;if(!no(i))return r.issues.push({expected:"record",code:"invalid_type",input:i,inst:t}),r;let s=[],o=e.keyType._zod.values;if(o){r.value={};let a=new Set;for(let u of o)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){a.add(typeof u=="number"?u.toString():u);let l=e.valueType._zod.run({value:i[u],issues:[]},n);l instanceof Promise?s.push(l.then(d=>{d.issues.length&&r.issues.push(...Tn(u,d.issues)),r.value[u]=d.value})):(l.issues.length&&r.issues.push(...Tn(u,l.issues)),r.value[u]=l.value)}let c;for(let u in i)a.has(u)||(c=c??[],c.push(u));c&&c.length>0&&r.issues.push({code:"unrecognized_keys",input:i,inst:t,keys:c})}else{r.value={};for(let a of Reflect.ownKeys(i)){if(a==="__proto__")continue;let c=e.keyType._zod.run({value:a,issues:[]},n);if(c instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof a=="string"&&dm.test(a)&&c.issues.length){let d=e.keyType._zod.run({value:Number(a),issues:[]},n);if(d instanceof Promise)throw new Error("Async schemas not supported in object keys currently");d.issues.length===0&&(c=d)}if(c.issues.length){e.mode==="loose"?r.value[a]=i[a]:r.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map(d=>cn(d,n,ir())),input:a,path:[a],inst:t});continue}let l=e.valueType._zod.run({value:i[a],issues:[]},n);l instanceof Promise?s.push(l.then(d=>{d.issues.length&&r.issues.push(...Tn(a,d.issues)),r.value[c.value]=d.value})):(l.issues.length&&r.issues.push(...Tn(a,l.issues)),r.value[c.value]=l.value)}}return s.length?Promise.all(s).then(()=>r):r}}),oS=O("$ZodMap",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;if(!(i instanceof Map))return r.issues.push({expected:"map",code:"invalid_type",input:i,inst:t}),r;let s=[];r.value=new Map;for(let[o,a]of i){let c=e.keyType._zod.run({value:o,issues:[]},n),u=e.valueType._zod.run({value:a,issues:[]},n);c instanceof Promise||u instanceof Promise?s.push(Promise.all([c,u]).then(([l,d])=>{bO(l,d,r,o,i,t,n)})):bO(c,u,r,o,i,t,n)}return s.length?Promise.all(s).then(()=>r):r}});function bO(t,e,r,n,i,s,o){t.issues.length&&(Tl.has(typeof n)?r.issues.push(...Tn(n,t.issues)):r.issues.push({code:"invalid_key",origin:"map",input:i,inst:s,issues:t.issues.map(a=>cn(a,o,ir()))})),e.issues.length&&(Tl.has(typeof n)?r.issues.push(...Tn(n,e.issues)):r.issues.push({origin:"map",code:"invalid_element",input:i,inst:s,key:n,issues:e.issues.map(a=>cn(a,o,ir()))})),r.value.set(t.value,e.value)}var aS=O("$ZodSet",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;if(!(i instanceof Set))return r.issues.push({input:i,inst:t,expected:"set",code:"invalid_type"}),r;let s=[];r.value=new Set;for(let o of i){let a=e.valueType._zod.run({value:o,issues:[]},n);a instanceof Promise?s.push(a.then(c=>SO(c,r))):SO(a,r)}return s.length?Promise.all(s).then(()=>r):r}});function SO(t,e){t.issues.length&&e.issues.push(...t.issues),e.value.add(t.value)}var cS=O("$ZodEnum",(t,e)=>{Ce.init(t,e);let r=El(e.entries),n=new Set(r);t._zod.values=n,t._zod.pattern=new RegExp(`^(${r.filter(i=>Tl.has(typeof i)).map(i=>typeof i=="string"?Un(i):i.toString()).join("|")})$`),t._zod.parse=(i,s)=>{let o=i.value;return n.has(o)||i.issues.push({code:"invalid_value",values:r,input:o,inst:t}),i}}),uS=O("$ZodLiteral",(t,e)=>{if(Ce.init(t,e),e.values.length===0)throw new Error("Cannot create literal schema with no valid values");let r=new Set(e.values);t._zod.values=r,t._zod.pattern=new RegExp(`^(${e.values.map(n=>typeof n=="string"?Un(n):n?Un(n.toString()):String(n)).join("|")})$`),t._zod.parse=(n,i)=>{let s=n.value;return r.has(s)||n.issues.push({code:"invalid_value",values:e.values,input:s,inst:t}),n}}),lS=O("$ZodFile",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;return i instanceof File||r.issues.push({expected:"file",code:"invalid_type",input:i,inst:t}),r}}),dS=O("$ZodTransform",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Uo(t.constructor.name);let i=e.transform(r.value,r);if(n.async)return(i instanceof Promise?i:Promise.resolve(i)).then(o=>(r.value=o,r));if(i instanceof Promise)throw new Di;return r.value=i,r}});function xO(t,e){return t.issues.length&&e===void 0?{issues:[],value:void 0}:t}var Sm=O("$ZodOptional",(t,e)=>{Ce.init(t,e),t._zod.optin="optional",t._zod.optout="optional",De(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),De(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${kl(r.source)})?$`):void 0}),t._zod.parse=(r,n)=>{if(e.innerType._zod.optin==="optional"){let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>xO(s,r.value)):xO(i,r.value)}return r.value===void 0?r:e.innerType._zod.run(r,n)}}),pS=O("$ZodExactOptional",(t,e)=>{Sm.init(t,e),De(t._zod,"values",()=>e.innerType._zod.values),De(t._zod,"pattern",()=>e.innerType._zod.pattern),t._zod.parse=(r,n)=>e.innerType._zod.run(r,n)}),fS=O("$ZodNullable",(t,e)=>{Ce.init(t,e),De(t._zod,"optin",()=>e.innerType._zod.optin),De(t._zod,"optout",()=>e.innerType._zod.optout),De(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${kl(r.source)}|null)$`):void 0}),De(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),mS=O("$ZodDefault",(t,e)=>{Ce.init(t,e),t._zod.optin="optional",De(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(n.direction==="backward")return e.innerType._zod.run(r,n);if(r.value===void 0)return r.value=e.defaultValue,r;let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>wO(s,e)):wO(i,e)}});function wO(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var hS=O("$ZodPrefault",(t,e)=>{Ce.init(t,e),t._zod.optin="optional",De(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(n.direction==="backward"||r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),gS=O("$ZodNonOptional",(t,e)=>{Ce.init(t,e),De(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>EO(s,t)):EO(i,t)}});function EO(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}var vS=O("$ZodSuccess",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Uo("ZodSuccess");let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>(r.value=s.issues.length===0,r)):(r.value=i.issues.length===0,r)}}),yS=O("$ZodCatch",(t,e)=>{Ce.init(t,e),De(t._zod,"optin",()=>e.innerType._zod.optin),De(t._zod,"optout",()=>e.innerType._zod.optout),De(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(n.direction==="backward")return e.innerType._zod.run(r,n);let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(o=>cn(o,n,ir()))},input:r.value}),r.issues=[]),r)):(r.value=i.value,i.issues.length&&(r.value=e.catchValue({...r,error:{issues:i.issues.map(s=>cn(s,n,ir()))},input:r.value}),r.issues=[]),r)}}),_S=O("$ZodNaN",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>((typeof r.value!="number"||!Number.isNaN(r.value))&&r.issues.push({input:r.value,inst:t,expected:"nan",code:"invalid_type"}),r)}),bS=O("$ZodPipe",(t,e)=>{Ce.init(t,e),De(t._zod,"values",()=>e.in._zod.values),De(t._zod,"optin",()=>e.in._zod.optin),De(t._zod,"optout",()=>e.out._zod.optout),De(t._zod,"propValues",()=>e.in._zod.propValues),t._zod.parse=(r,n)=>{if(n.direction==="backward"){let s=e.out._zod.run(r,n);return s instanceof Promise?s.then(o=>mm(o,e.in,n)):mm(s,e.in,n)}let i=e.in._zod.run(r,n);return i instanceof Promise?i.then(s=>mm(s,e.out,n)):mm(i,e.out,n)}});function mm(t,e,r){return t.issues.length?(t.aborted=!0,t):e._zod.run({value:t.value,issues:t.issues},r)}var ql=O("$ZodCodec",(t,e)=>{Ce.init(t,e),De(t._zod,"values",()=>e.in._zod.values),De(t._zod,"optin",()=>e.in._zod.optin),De(t._zod,"optout",()=>e.out._zod.optout),De(t._zod,"propValues",()=>e.in._zod.propValues),t._zod.parse=(r,n)=>{if((n.direction||"forward")==="forward"){let s=e.in._zod.run(r,n);return s instanceof Promise?s.then(o=>hm(o,e,n)):hm(s,e,n)}else{let s=e.out._zod.run(r,n);return s instanceof Promise?s.then(o=>hm(o,e,n)):hm(s,e,n)}}});function hm(t,e,r){if(t.issues.length)return t.aborted=!0,t;if((r.direction||"forward")==="forward"){let i=e.transform(t.value,t);return i instanceof Promise?i.then(s=>gm(t,s,e.out,r)):gm(t,i,e.out,r)}else{let i=e.reverseTransform(t.value,t);return i instanceof Promise?i.then(s=>gm(t,s,e.in,r)):gm(t,i,e.in,r)}}function gm(t,e,r,n){return t.issues.length?(t.aborted=!0,t):r._zod.run({value:e,issues:t.issues},n)}var SS=O("$ZodReadonly",(t,e)=>{Ce.init(t,e),De(t._zod,"propValues",()=>e.innerType._zod.propValues),De(t._zod,"values",()=>e.innerType._zod.values),De(t._zod,"optin",()=>e.innerType?._zod?.optin),De(t._zod,"optout",()=>e.innerType?._zod?.optout),t._zod.parse=(r,n)=>{if(n.direction==="backward")return e.innerType._zod.run(r,n);let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(kO):kO(i)}});function kO(t){return t.value=Object.freeze(t.value),t}var xS=O("$ZodTemplateLiteral",(t,e)=>{Ce.init(t,e);let r=[];for(let n of e.parts)if(typeof n=="object"&&n!==null){if(!n._zod.pattern)throw new Error(`Invalid template literal part, no pattern found: ${[...n._zod.traits].shift()}`);let i=n._zod.pattern instanceof RegExp?n._zod.pattern.source:n._zod.pattern;if(!i)throw new Error(`Invalid template literal part: ${n._zod.traits}`);let s=i.startsWith("^")?1:0,o=i.endsWith("$")?i.length-1:i.length;r.push(i.slice(s,o))}else if(n===null||L_.has(typeof n))r.push(Un(`${n}`));else throw new Error(`Invalid template literal part: ${n}`);t._zod.pattern=new RegExp(`^${r.join("")}$`),t._zod.parse=(n,i)=>typeof n.value!="string"?(n.issues.push({input:n.value,inst:t,expected:"string",code:"invalid_type"}),n):(t._zod.pattern.lastIndex=0,t._zod.pattern.test(n.value)||n.issues.push({input:n.value,inst:t,code:"invalid_format",format:e.format??"template_literal",pattern:t._zod.pattern.source}),n)}),wS=O("$ZodFunction",(t,e)=>(Ce.init(t,e),t._def=e,t._zod.def=e,t.implement=r=>{if(typeof r!="function")throw new Error("implement() must be called with a function");return function(...n){let i=t._def.input?Cl(t._def.input,n):n,s=Reflect.apply(r,this,i);return t._def.output?Cl(t._def.output,s):s}},t.implementAsync=r=>{if(typeof r!="function")throw new Error("implementAsync() must be called with a function");return async function(...n){let i=t._def.input?await Al(t._def.input,n):n,s=await Reflect.apply(r,this,i);return t._def.output?await Al(t._def.output,s):s}},t._zod.parse=(r,n)=>typeof r.value!="function"?(r.issues.push({code:"invalid_type",expected:"function",input:r.value,inst:t}),r):(t._def.output&&t._def.output._zod.def.type==="promise"?r.value=t.implementAsync(r.value):r.value=t.implement(r.value),r),t.input=(...r)=>{let n=t.constructor;return Array.isArray(r[0])?new n({type:"function",input:new bm({type:"tuple",items:r[0],rest:r[1]}),output:t._def.output}):new n({type:"function",input:r[0],output:t._def.output})},t.output=r=>{let n=t.constructor;return new n({type:"function",input:t._def.input,output:r})},t)),ES=O("$ZodPromise",(t,e)=>{Ce.init(t,e),t._zod.parse=(r,n)=>Promise.resolve(r.value).then(i=>e.innerType._zod.run({value:i,issues:[]},n))}),kS=O("$ZodLazy",(t,e)=>{Ce.init(t,e),De(t._zod,"innerType",()=>e.getter()),De(t._zod,"pattern",()=>t._zod.innerType?._zod?.pattern),De(t._zod,"propValues",()=>t._zod.innerType?._zod?.propValues),De(t._zod,"optin",()=>t._zod.innerType?._zod?.optin??void 0),De(t._zod,"optout",()=>t._zod.innerType?._zod?.optout??void 0),t._zod.parse=(r,n)=>t._zod.innerType._zod.run(r,n)}),TS=O("$ZodCustom",(t,e)=>{bt.init(t,e),Ce.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,i=e.fn(n);if(i instanceof Promise)return i.then(s=>TO(s,r,n,t));TO(i,r,n,t)}});function TO(t,e,r,n){if(!t){let i={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(i.params=n._zod.def.params),e.issues.push(oc(i))}}var sZ=()=>{let t={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function e(i){return t[i]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},n={nan:"NaN"};return i=>{switch(i.code){case"invalid_type":{let s=n[i.expected]??i.expected,o=ke(i.input),a=n[o]??o;return`Invalid input: expected ${s}, received ${a}`}case"invalid_value":return i.values.length===1?`Invalid input: expected ${Se(i.values[0])}`:`Invalid option: expected one of ${be(i.values,"|")}`;case"too_big":{let s=i.inclusive?"<=":"<",o=e(i.origin);return o?`Too big: expected ${i.origin??"value"} to have ${s}${i.maximum.toString()} ${o.unit??"elements"}`:`Too big: expected ${i.origin??"value"} to be ${s}${i.maximum.toString()}`}case"too_small":{let s=i.inclusive?">=":">",o=e(i.origin);return o?`Too small: expected ${i.origin} to have ${s}${i.minimum.toString()} ${o.unit}`:`Too small: expected ${i.origin} to be ${s}${i.minimum.toString()}`}case"invalid_format":{let s=i;return s.format==="starts_with"?`Invalid string: must start with "${s.prefix}"`:s.format==="ends_with"?`Invalid string: must end with "${s.suffix}"`:s.format==="includes"?`Invalid string: must include "${s.includes}"`:s.format==="regex"?`Invalid string: must match pattern ${s.pattern}`:`Invalid ${r[s.format]??i.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${i.divisor}`;case"unrecognized_keys":return`Unrecognized key${i.keys.length>1?"s":""}: ${be(i.keys,", ")}`;case"invalid_key":return`Invalid key in ${i.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${i.origin}`;default:return"Invalid input"}}};function $S(){return{localeError:sZ()}}var PO;var RS=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...r){let n=r[0];return this._map.set(e,n),n&&typeof n=="object"&&"id"in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let r=this._map.get(e);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(e),this}get(e){let r=e._zod.parent;if(r){let n={...this.get(r)??{}};delete n.id;let i={...n,...this._map.get(e)};return Object.keys(i).length?i:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function OS(){return new RS}(PO=globalThis).__zod_globalRegistry??(PO.__zod_globalRegistry=OS());var Wr=globalThis.__zod_globalRegistry;function CS(t,e){return new t({type:"string",...ee(e)})}function xm(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...ee(e)})}function Hl(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...ee(e)})}function wm(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...ee(e)})}function Em(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...ee(e)})}function km(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...ee(e)})}function Tm(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...ee(e)})}function Zl(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...ee(e)})}function $m(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...ee(e)})}function Im(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...ee(e)})}function Rm(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...ee(e)})}function Om(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...ee(e)})}function Cm(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...ee(e)})}function Pm(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...ee(e)})}function Am(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...ee(e)})}function Nm(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...ee(e)})}function Mm(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...ee(e)})}function PS(t,e){return new t({type:"string",format:"mac",check:"string_format",abort:!1,...ee(e)})}function Dm(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...ee(e)})}function jm(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...ee(e)})}function zm(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...ee(e)})}function Lm(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...ee(e)})}function Um(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...ee(e)})}function Fm(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...ee(e)})}function AS(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...ee(e)})}function NS(t,e){return new t({type:"string",format:"date",check:"string_format",...ee(e)})}function MS(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...ee(e)})}function DS(t,e){return new t({type:"string",format:"duration",check:"string_format",...ee(e)})}function jS(t,e){return new t({type:"number",checks:[],...ee(e)})}function zS(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...ee(e)})}function LS(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"float32",...ee(e)})}function US(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"float64",...ee(e)})}function FS(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"int32",...ee(e)})}function qS(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"uint32",...ee(e)})}function HS(t,e){return new t({type:"boolean",...ee(e)})}function ZS(t,e){return new t({type:"bigint",...ee(e)})}function BS(t,e){return new t({type:"bigint",check:"bigint_format",abort:!1,format:"int64",...ee(e)})}function GS(t,e){return new t({type:"bigint",check:"bigint_format",abort:!1,format:"uint64",...ee(e)})}function WS(t,e){return new t({type:"symbol",...ee(e)})}function VS(t,e){return new t({type:"undefined",...ee(e)})}function KS(t,e){return new t({type:"null",...ee(e)})}function JS(t){return new t({type:"any"})}function XS(t){return new t({type:"unknown"})}function YS(t,e){return new t({type:"never",...ee(e)})}function QS(t,e){return new t({type:"void",...ee(e)})}function ex(t,e){return new t({type:"date",...ee(e)})}function tx(t,e){return new t({type:"nan",...ee(e)})}function ms(t,e){return new vb({check:"less_than",...ee(e),value:t,inclusive:!1})}function $n(t,e){return new vb({check:"less_than",...ee(e),value:t,inclusive:!0})}function hs(t,e){return new yb({check:"greater_than",...ee(e),value:t,inclusive:!1})}function Vr(t,e){return new yb({check:"greater_than",...ee(e),value:t,inclusive:!0})}function rx(t){return hs(0,t)}function nx(t){return ms(0,t)}function ix(t){return $n(0,t)}function sx(t){return Vr(0,t)}function Zo(t,e){return new JR({check:"multiple_of",...ee(e),value:t})}function Bo(t,e){return new QR({check:"max_size",...ee(e),maximum:t})}function gs(t,e){return new eO({check:"min_size",...ee(e),minimum:t})}function cc(t,e){return new tO({check:"size_equals",...ee(e),size:t})}function uc(t,e){return new rO({check:"max_length",...ee(e),maximum:t})}function so(t,e){return new nO({check:"min_length",...ee(e),minimum:t})}function lc(t,e){return new iO({check:"length_equals",...ee(e),length:t})}function Bl(t,e){return new sO({check:"string_format",format:"regex",...ee(e),pattern:t})}function Gl(t){return new oO({check:"string_format",format:"lowercase",...ee(t)})}function Wl(t){return new aO({check:"string_format",format:"uppercase",...ee(t)})}function Vl(t,e){return new cO({check:"string_format",format:"includes",...ee(e),includes:t})}function Kl(t,e){return new uO({check:"string_format",format:"starts_with",...ee(e),prefix:t})}function Jl(t,e){return new lO({check:"string_format",format:"ends_with",...ee(e),suffix:t})}function ox(t,e,r){return new dO({check:"property",property:t,schema:e,...ee(r)})}function Xl(t,e){return new pO({check:"mime_type",mime:t,...ee(e)})}function ji(t){return new fO({check:"overwrite",tx:t})}function Yl(t){return ji(e=>e.normalize(t))}function Ql(){return ji(t=>t.trim())}function ed(){return ji(t=>t.toLowerCase())}function td(){return ji(t=>t.toUpperCase())}function qm(){return ji(t=>D_(t))}function AO(t,e,r){return new t({type:"array",element:e,...ee(r)})}function ax(t,e){return new t({type:"file",...ee(e)})}function cx(t,e,r){let n=ee(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function ux(t,e,r){return new t({type:"custom",check:"custom",fn:e,...ee(r)})}function lx(t){let e=uZ(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(oc(n,r.value,e._zod.def));else{let i=n;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=e),i.continue??(i.continue=!e._zod.def.abort),r.issues.push(oc(i))}},t(r.value,r)));return e}function uZ(t,e){let r=new bt({check:"custom",...ee(e)});return r._zod.check=t,r}function dx(t){let e=new bt({check:"describe"});return e._zod.onattach=[r=>{let n=Wr.get(r)??{};Wr.add(r,{...n,description:t})}],e._zod.check=()=>{},e}function px(t){let e=new bt({check:"meta"});return e._zod.onattach=[r=>{let n=Wr.get(r)??{};Wr.add(r,{...n,...t})}],e._zod.check=()=>{},e}function fx(t,e){let r=ee(e),n=r.truthy??["true","1","yes","on","y","enabled"],i=r.falsy??["false","0","no","off","n","disabled"];r.case!=="sensitive"&&(n=n.map(f=>typeof f=="string"?f.toLowerCase():f),i=i.map(f=>typeof f=="string"?f.toLowerCase():f));let s=new Set(n),o=new Set(i),a=t.Codec??ql,c=t.Boolean??Ul,u=t.String??Ho,l=new u({type:"string",error:r.error}),d=new c({type:"boolean",error:r.error}),p=new a({type:"pipe",in:l,out:d,transform:((f,m)=>{let h=f;return r.case!=="sensitive"&&(h=h.toLowerCase()),s.has(h)?!0:o.has(h)?!1:(m.issues.push({code:"invalid_value",expected:"stringbool",values:[...s,...o],input:m.value,inst:p,continue:!1}),{})}),reverseTransform:((f,m)=>f===!0?n[0]||"true":i[0]||"false"),error:r.error});return p}function dc(t,e,r,n={}){let i=ee(n),s={...ee(n),check:"string_format",type:"string",format:e,fn:typeof r=="function"?r:a=>r.test(a),...i};return r instanceof RegExp&&(s.pattern=r),new t(s)}function Hm(t){let e=t?.target??"draft-2020-12";return e==="draft-4"&&(e="draft-04"),e==="draft-7"&&(e="draft-07"),{processors:t.processors??{},metadataRegistry:t?.metadata??Wr,target:e,unrepresentable:t?.unrepresentable??"throw",override:t?.override??(()=>{}),io:t?.io??"output",counter:0,seen:new Map,cycles:t?.cycles??"ref",reused:t?.reused??"inline",external:t?.external??void 0}}function Tt(t,e,r={path:[],schemaPath:[]}){var n;let i=t._zod.def,s=e.seen.get(t);if(s)return s.count++,r.schemaPath.includes(t)&&(s.cycle=r.path),s.schema;let o={schema:{},count:1,cycle:void 0,path:r.path};e.seen.set(t,o);let a=t._zod.toJSONSchema?.();if(a)o.schema=a;else{let l={...r,schemaPath:[...r.schemaPath,t],path:r.path};if(t._zod.processJSONSchema)t._zod.processJSONSchema(e,o.schema,l);else{let p=o.schema,f=e.processors[i.type];if(!f)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);f(t,e,p,l)}let d=t._zod.parent;d&&(o.ref||(o.ref=d),Tt(d,e,l),e.seen.get(d).isParent=!0)}let c=e.metadataRegistry.get(t);return c&&Object.assign(o.schema,c),e.io==="input"&&Kr(t)&&(delete o.schema.examples,delete o.schema.default),e.io==="input"&&o.schema._prefault&&((n=o.schema).default??(n.default=o.schema._prefault)),delete o.schema._prefault,e.seen.get(t).schema}function Zm(t,e){let r=t.seen.get(e);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let n=new Map;for(let o of t.seen.entries()){let a=t.metadataRegistry.get(o[0])?.id;if(a){let c=n.get(a);if(c&&c!==o[0])throw new Error(`Duplicate schema id "${a}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(a,o[0])}}let i=o=>{let a=t.target==="draft-2020-12"?"$defs":"definitions";if(t.external){let d=t.external.registry.get(o[0])?.id,p=t.external.uri??(m=>m);if(d)return{ref:p(d)};let f=o[1].defId??o[1].schema.id??`schema${t.counter++}`;return o[1].defId=f,{defId:f,ref:`${p("__shared")}#/${a}/${f}`}}if(o[1]===r)return{ref:"#"};let u=`#/${a}/`,l=o[1].schema.id??`__schema${t.counter++}`;return{defId:l,ref:u+l}},s=o=>{if(o[1].schema.$ref)return;let a=o[1],{ref:c,defId:u}=i(o);a.def={...a.schema},u&&(a.defId=u);let l=a.schema;for(let d in l)delete l[d];l.$ref=c};if(t.cycles==="throw")for(let o of t.seen.entries()){let a=o[1];if(a.cycle)throw new Error(`Cycle detected: #/${a.cycle?.join("/")}/ -Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let o of t.seen.entries()){let a=o[1];if(e===o[0]){s(o);continue}if(t.external){let u=t.external.registry.get(o[0])?.id;if(e!==o[0]&&u){s(o);continue}}if(t.metadataRegistry.get(o[0])?.id){s(o);continue}if(a.cycle){s(o);continue}if(a.count>1&&t.reused==="ref"){s(o);continue}}}function Rm(t,e){let r=t.seen.get(e);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let n=o=>{let a=t.seen.get(o);if(a.ref===null)return;let c=a.def??a.schema,u={...c},l=a.ref;if(a.ref=null,l){n(l);let p=t.seen.get(l),f=p.schema;if(f.$ref&&(t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0")?(c.allOf=c.allOf??[],c.allOf.push(f)):Object.assign(c,f),Object.assign(c,u),o._zod.parent===l)for(let h in c)h==="$ref"||h==="allOf"||h in u||delete c[h];if(f.$ref)for(let h in c)h==="$ref"||h==="allOf"||h in p.def&&JSON.stringify(c[h])===JSON.stringify(p.def[h])&&delete c[h]}let d=o._zod.parent;if(d&&d!==l){n(d);let p=t.seen.get(d);if(p?.schema.$ref&&(c.$ref=p.schema.$ref,p.def))for(let f in c)f==="$ref"||f==="allOf"||f in p.def&&JSON.stringify(c[f])===JSON.stringify(p.def[f])&&delete c[f]}t.override({zodSchema:o,jsonSchema:c,path:a.path??[]})};for(let o of[...t.seen.entries()].reverse())n(o[0]);let i={};if(t.target==="draft-2020-12"?i.$schema="https://json-schema.org/draft/2020-12/schema":t.target==="draft-07"?i.$schema="http://json-schema.org/draft-07/schema#":t.target==="draft-04"?i.$schema="http://json-schema.org/draft-04/schema#":t.target,t.external?.uri){let o=t.external.registry.get(e)?.id;if(!o)throw new Error("Schema is missing an `id` property");i.$id=t.external.uri(o)}Object.assign(i,r.def??r.schema);let s=t.external?.defs??{};for(let o of t.seen.entries()){let a=o[1];a.def&&a.defId&&(s[a.defId]=a.def)}t.external||Object.keys(s).length>0&&(t.target==="draft-2020-12"?i.$defs=s:i.definitions=s);try{let o=JSON.parse(JSON.stringify(i));return Object.defineProperty(o,"~standard",{value:{...e["~standard"],jsonSchema:{input:Zl(e,"input",t.processors),output:Zl(e,"output",t.processors)}},enumerable:!1,writable:!1}),o}catch{throw new Error("Error converting schema to JSON.")}}function Wr(t,e){let r=e??{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let n=t._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return Wr(n.element,r);if(n.type==="set")return Wr(n.valueType,r);if(n.type==="lazy")return Wr(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault")return Wr(n.innerType,r);if(n.type==="intersection")return Wr(n.left,r)||Wr(n.right,r);if(n.type==="record"||n.type==="map")return Wr(n.keyType,r)||Wr(n.valueType,r);if(n.type==="pipe")return Wr(n.in,r)||Wr(n.out,r);if(n.type==="object"){for(let i in n.shape)if(Wr(n.shape[i],r))return!0;return!1}if(n.type==="union"){for(let i of n.options)if(Wr(i,r))return!0;return!1}if(n.type==="tuple"){for(let i of n.items)if(Wr(i,r))return!0;return!!(n.rest&&Wr(n.rest,r))}return!1}var u1=(t,e={})=>r=>{let n=$m({...r,processors:e});return kt(t,n),Im(n,t),Rm(n,t)},Zl=(t,e,r={})=>n=>{let{libraryOptions:i,target:s}=n??{},o=$m({...i??{},target:s,io:e,processors:r});return kt(t,o),Im(o,t),Rm(o,t)};var q3={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},l1=(t,e,r,n)=>{let i=r;i.type="string";let{minimum:s,maximum:o,format:a,patterns:c,contentEncoding:u}=t._zod.bag;if(typeof s=="number"&&(i.minLength=s),typeof o=="number"&&(i.maxLength=o),a&&(i.format=q3[a]??a,i.format===""&&delete i.format,a==="time"&&delete i.format),u&&(i.contentEncoding=u),c&&c.size>0){let l=[...c];l.length===1?i.pattern=l[0].source:l.length>1&&(i.allOf=[...l.map(d=>({...e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"?{type:"string"}:{},pattern:d.source}))])}},d1=(t,e,r,n)=>{let i=r,{minimum:s,maximum:o,format:a,multipleOf:c,exclusiveMaximum:u,exclusiveMinimum:l}=t._zod.bag;typeof a=="string"&&a.includes("int")?i.type="integer":i.type="number",typeof l=="number"&&(e.target==="draft-04"||e.target==="openapi-3.0"?(i.minimum=l,i.exclusiveMinimum=!0):i.exclusiveMinimum=l),typeof s=="number"&&(i.minimum=s,typeof l=="number"&&e.target!=="draft-04"&&(l>=s?delete i.minimum:delete i.exclusiveMinimum)),typeof u=="number"&&(e.target==="draft-04"||e.target==="openapi-3.0"?(i.maximum=u,i.exclusiveMaximum=!0):i.exclusiveMaximum=u),typeof o=="number"&&(i.maximum=o,typeof u=="number"&&e.target!=="draft-04"&&(u<=o?delete i.maximum:delete i.exclusiveMaximum)),typeof c=="number"&&(i.multipleOf=c)},p1=(t,e,r,n)=>{r.type="boolean"},f1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema")},m1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema")},h1=(t,e,r,n)=>{e.target==="openapi-3.0"?(r.type="string",r.nullable=!0,r.enum=[null]):r.type="null"},g1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema")},v1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema")},y1=(t,e,r,n)=>{r.not={}},_1=(t,e,r,n)=>{},b1=(t,e,r,n)=>{},S1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema")},x1=(t,e,r,n)=>{let i=t._zod.def,s=pl(i.entries);s.every(o=>typeof o=="number")&&(r.type="number"),s.every(o=>typeof o=="string")&&(r.type="string"),r.enum=s},w1=(t,e,r,n)=>{let i=t._zod.def,s=[];for(let o of i.values)if(o===void 0){if(e.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof o=="bigint"){if(e.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");s.push(Number(o))}else s.push(o);if(s.length!==0)if(s.length===1){let o=s[0];r.type=o===null?"null":typeof o,e.target==="draft-04"||e.target==="openapi-3.0"?r.enum=[o]:r.const=o}else s.every(o=>typeof o=="number")&&(r.type="number"),s.every(o=>typeof o=="string")&&(r.type="string"),s.every(o=>typeof o=="boolean")&&(r.type="boolean"),s.every(o=>o===null)&&(r.type="null"),r.enum=s},E1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema")},k1=(t,e,r,n)=>{let i=r,s=t._zod.pattern;if(!s)throw new Error("Pattern not found in template literal");i.type="string",i.pattern=s.source},T1=(t,e,r,n)=>{let i=r,s={type:"string",format:"binary",contentEncoding:"binary"},{minimum:o,maximum:a,mime:c}=t._zod.bag;o!==void 0&&(s.minLength=o),a!==void 0&&(s.maxLength=a),c?c.length===1?(s.contentMediaType=c[0],Object.assign(i,s)):(Object.assign(i,s),i.anyOf=c.map(u=>({contentMediaType:u}))):Object.assign(i,s)},$1=(t,e,r,n)=>{r.type="boolean"},I1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},R1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Function types cannot be represented in JSON Schema")},O1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},C1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema")},P1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema")},A1=(t,e,r,n)=>{let i=r,s=t._zod.def,{minimum:o,maximum:a}=t._zod.bag;typeof o=="number"&&(i.minItems=o),typeof a=="number"&&(i.maxItems=a),i.type="array",i.items=kt(s.element,e,{...n,path:[...n.path,"items"]})},N1=(t,e,r,n)=>{let i=r,s=t._zod.def;i.type="object",i.properties={};let o=s.shape;for(let u in o)i.properties[u]=kt(o[u],e,{...n,path:[...n.path,"properties",u]});let a=new Set(Object.keys(o)),c=new Set([...a].filter(u=>{let l=s.shape[u]._zod;return e.io==="input"?l.optin===void 0:l.optout===void 0}));c.size>0&&(i.required=Array.from(c)),s.catchall?._zod.def.type==="never"?i.additionalProperties=!1:s.catchall?s.catchall&&(i.additionalProperties=kt(s.catchall,e,{...n,path:[...n.path,"additionalProperties"]})):e.io==="output"&&(i.additionalProperties=!1)},tx=(t,e,r,n)=>{let i=t._zod.def,s=i.inclusive===!1,o=i.options.map((a,c)=>kt(a,e,{...n,path:[...n.path,s?"oneOf":"anyOf",c]}));s?r.oneOf=o:r.anyOf=o},M1=(t,e,r,n)=>{let i=t._zod.def,s=kt(i.left,e,{...n,path:[...n.path,"allOf",0]}),o=kt(i.right,e,{...n,path:[...n.path,"allOf",1]}),a=u=>"allOf"in u&&Object.keys(u).length===1,c=[...a(s)?s.allOf:[s],...a(o)?o.allOf:[o]];r.allOf=c},D1=(t,e,r,n)=>{let i=r,s=t._zod.def;i.type="array";let o=e.target==="draft-2020-12"?"prefixItems":"items",a=e.target==="draft-2020-12"||e.target==="openapi-3.0"?"items":"additionalItems",c=s.items.map((p,f)=>kt(p,e,{...n,path:[...n.path,o,f]})),u=s.rest?kt(s.rest,e,{...n,path:[...n.path,a,...e.target==="openapi-3.0"?[s.items.length]:[]]}):null;e.target==="draft-2020-12"?(i.prefixItems=c,u&&(i.items=u)):e.target==="openapi-3.0"?(i.items={anyOf:c},u&&i.items.anyOf.push(u),i.minItems=c.length,u||(i.maxItems=c.length)):(i.items=c,u&&(i.additionalItems=u));let{minimum:l,maximum:d}=t._zod.bag;typeof l=="number"&&(i.minItems=l),typeof d=="number"&&(i.maxItems=d)},j1=(t,e,r,n)=>{let i=r,s=t._zod.def;i.type="object";let o=s.keyType,c=o._zod.bag?.patterns;if(s.mode==="loose"&&c&&c.size>0){let l=kt(s.valueType,e,{...n,path:[...n.path,"patternProperties","*"]});i.patternProperties={};for(let d of c)i.patternProperties[d.source]=l}else(e.target==="draft-07"||e.target==="draft-2020-12")&&(i.propertyNames=kt(s.keyType,e,{...n,path:[...n.path,"propertyNames"]})),i.additionalProperties=kt(s.valueType,e,{...n,path:[...n.path,"additionalProperties"]});let u=o._zod.values;if(u){let l=[...u].filter(d=>typeof d=="string"||typeof d=="number");l.length>0&&(i.required=l)}},z1=(t,e,r,n)=>{let i=t._zod.def,s=kt(i.innerType,e,n),o=e.seen.get(t);e.target==="openapi-3.0"?(o.ref=i.innerType,r.nullable=!0):r.anyOf=[s,{type:"null"}]},L1=(t,e,r,n)=>{let i=t._zod.def;kt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType},U1=(t,e,r,n)=>{let i=t._zod.def;kt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType,r.default=JSON.parse(JSON.stringify(i.defaultValue))},F1=(t,e,r,n)=>{let i=t._zod.def;kt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType,e.io==="input"&&(r._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},q1=(t,e,r,n)=>{let i=t._zod.def;kt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}r.default=o},H1=(t,e,r,n)=>{let i=t._zod.def,s=e.io==="input"?i.in._zod.def.type==="transform"?i.out:i.in:i.out;kt(s,e,n);let o=e.seen.get(t);o.ref=s},Z1=(t,e,r,n)=>{let i=t._zod.def;kt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType,r.readOnly=!0},B1=(t,e,r,n)=>{let i=t._zod.def;kt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType},rx=(t,e,r,n)=>{let i=t._zod.def;kt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType},G1=(t,e,r,n)=>{let i=t._zod.innerType;kt(i,e,n);let s=e.seen.get(t);s.ref=i};function nc(t){return!!t._zod}function oi(t,e){return nc(t)?Ya(t,e):t.safeParse(e)}function Om(t){if(!t)return;let e;if(nc(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function J1(t){if(nc(t)){let s=t._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=t._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=t.value;if(n!==void 0)return n}var Bl={};_n(Bl,{ZodAny:()=>mO,ZodArray:()=>yO,ZodBase64:()=>Tx,ZodBase64URL:()=>$x,ZodBigInt:()=>Lm,ZodBigIntFormat:()=>Ox,ZodBoolean:()=>zm,ZodCIDRv4:()=>Ex,ZodCIDRv6:()=>kx,ZodCUID:()=>vx,ZodCUID2:()=>yx,ZodCatch:()=>zO,ZodCodec:()=>jx,ZodCustom:()=>Zm,ZodCustomStringFormat:()=>Wl,ZodDate:()=>Px,ZodDefault:()=>PO,ZodDiscriminatedUnion:()=>bO,ZodE164:()=>Ix,ZodEmail:()=>mx,ZodEmoji:()=>hx,ZodEnum:()=>Gl,ZodExactOptional:()=>RO,ZodFile:()=>$O,ZodFunction:()=>WO,ZodGUID:()=>Pm,ZodIPv4:()=>xx,ZodIPv6:()=>wx,ZodIntersection:()=>SO,ZodJWT:()=>Rx,ZodKSUID:()=>Sx,ZodLazy:()=>ZO,ZodLiteral:()=>TO,ZodMAC:()=>lO,ZodMap:()=>EO,ZodNaN:()=>UO,ZodNanoID:()=>gx,ZodNever:()=>gO,ZodNonOptional:()=>Mx,ZodNull:()=>fO,ZodNullable:()=>CO,ZodNumber:()=>jm,ZodNumberFormat:()=>ic,ZodObject:()=>Um,ZodOptional:()=>Nx,ZodPipe:()=>Dx,ZodPrefault:()=>NO,ZodPromise:()=>GO,ZodReadonly:()=>FO,ZodRecord:()=>Hm,ZodSet:()=>kO,ZodString:()=>Mm,ZodStringFormat:()=>bt,ZodSuccess:()=>jO,ZodSymbol:()=>dO,ZodTemplateLiteral:()=>HO,ZodTransform:()=>IO,ZodTuple:()=>xO,ZodType:()=>De,ZodULID:()=>_x,ZodURL:()=>Dm,ZodUUID:()=>ps,ZodUndefined:()=>pO,ZodUnion:()=>Fm,ZodUnknown:()=>hO,ZodVoid:()=>vO,ZodXID:()=>bx,ZodXor:()=>_O,_ZodString:()=>fx,_default:()=>AO,_function:()=>oB,any:()=>qZ,array:()=>Ve,base64:()=>kZ,base64url:()=>TZ,bigint:()=>jZ,boolean:()=>Yt,catch:()=>LO,check:()=>aB,cidrv4:()=>wZ,cidrv6:()=>EZ,codec:()=>nB,cuid:()=>hZ,cuid2:()=>gZ,custom:()=>zx,date:()=>ZZ,describe:()=>cB,discriminatedUnion:()=>qm,e164:()=>$Z,email:()=>sZ,emoji:()=>fZ,enum:()=>Cr,exactOptional:()=>OO,file:()=>QZ,float32:()=>AZ,float64:()=>NZ,function:()=>oB,guid:()=>oZ,hash:()=>PZ,hex:()=>CZ,hostname:()=>OZ,httpUrl:()=>pZ,instanceof:()=>lB,int:()=>px,int32:()=>MZ,int64:()=>zZ,intersection:()=>Kl,ipv4:()=>bZ,ipv6:()=>xZ,json:()=>pB,jwt:()=>IZ,keyof:()=>BZ,ksuid:()=>_Z,lazy:()=>BO,literal:()=>fe,looseObject:()=>Or,looseRecord:()=>KZ,mac:()=>SZ,map:()=>JZ,meta:()=>uB,nan:()=>rB,nanoid:()=>mZ,nativeEnum:()=>YZ,never:()=>Cx,nonoptional:()=>DO,null:()=>Vl,nullable:()=>Am,nullish:()=>eB,number:()=>ct,object:()=>se,optional:()=>Ot,partialRecord:()=>VZ,pipe:()=>Nm,prefault:()=>MO,preprocess:()=>Bm,promise:()=>sB,readonly:()=>qO,record:()=>Tt,refine:()=>VO,set:()=>XZ,strictObject:()=>GZ,string:()=>z,stringFormat:()=>RZ,stringbool:()=>dB,success:()=>tB,superRefine:()=>KO,symbol:()=>UZ,templateLiteral:()=>iB,transform:()=>Ax,tuple:()=>wO,uint32:()=>DZ,uint64:()=>LZ,ulid:()=>vZ,undefined:()=>FZ,union:()=>ht,unknown:()=>St,url:()=>dZ,uuid:()=>aZ,uuidv4:()=>cZ,uuidv6:()=>uZ,uuidv7:()=>lZ,void:()=>HZ,xid:()=>yZ,xor:()=>WZ});var Cm={};_n(Cm,{endsWith:()=>zl,gt:()=>ls,gte:()=>Gr,includes:()=>Dl,length:()=>tc,lowercase:()=>Nl,lt:()=>us,lte:()=>wn,maxLength:()=>ec,maxSize:()=>Mo,mime:()=>Ll,minLength:()=>Ks,minSize:()=>ds,multipleOf:()=>No,negative:()=>ZS,nonnegative:()=>GS,nonpositive:()=>BS,normalize:()=>Ul,overwrite:()=>Pi,positive:()=>HS,property:()=>WS,regex:()=>Al,size:()=>Qa,slugify:()=>Tm,startsWith:()=>jl,toLowerCase:()=>ql,toUpperCase:()=>Hl,trim:()=>Fl,uppercase:()=>Ml});var Do={};_n(Do,{ZodISODate:()=>ox,ZodISODateTime:()=>ix,ZodISODuration:()=>lx,ZodISOTime:()=>cx,date:()=>ax,datetime:()=>sx,duration:()=>dx,time:()=>ux});var ix=O("ZodISODateTime",(t,e)=>{yb.init(t,e),bt.init(t,e)});function sx(t){return bS(ix,t)}var ox=O("ZodISODate",(t,e)=>{_b.init(t,e),bt.init(t,e)});function ax(t){return SS(ox,t)}var cx=O("ZodISOTime",(t,e)=>{bb.init(t,e),bt.init(t,e)});function ux(t){return xS(cx,t)}var lx=O("ZodISODuration",(t,e)=>{Sb.init(t,e),bt.init(t,e)});function dx(t){return wS(lx,t)}var X1=(t,e)=>{Bf.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Wf(t,r)},flatten:{value:r=>Gf(t,r)},addIssue:{value:r=>{t.issues.push(r),t.message=JSON.stringify(t.issues,Ka,2)}},addIssues:{value:r=>{t.issues.push(...r),t.message=JSON.stringify(t.issues,Ka,2)}},isEmpty:{get(){return t.issues.length===0}}})},Lke=O("ZodError",X1),En=O("ZodError",X1,{Parent:Error});var Y1=yl(En),Q1=bl(En),eO=xl(En),tO=wl(En),rO=pR(En),nO=fR(En),iO=mR(En),sO=hR(En),oO=gR(En),aO=vR(En),cO=yR(En),uO=_R(En);var De=O("ZodType",(t,e)=>(Ce.init(t,e),Object.assign(t["~standard"],{jsonSchema:{input:Zl(t,"input"),output:Zl(t,"output")}}),t.toJSONSchema=u1(t,{}),t.def=e,t.type=e.type,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone(G.mergeDefs(e,{checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),{parent:!0}),t.with=t.check,t.clone=(r,n)=>Zr(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>Y1(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>eO(t,r,n),t.parseAsync=async(r,n)=>Q1(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>tO(t,r,n),t.spa=t.safeParseAsync,t.encode=(r,n)=>rO(t,r,n),t.decode=(r,n)=>nO(t,r,n),t.encodeAsync=async(r,n)=>iO(t,r,n),t.decodeAsync=async(r,n)=>sO(t,r,n),t.safeEncode=(r,n)=>oO(t,r,n),t.safeDecode=(r,n)=>aO(t,r,n),t.safeEncodeAsync=async(r,n)=>cO(t,r,n),t.safeDecodeAsync=async(r,n)=>uO(t,r,n),t.refine=(r,n)=>t.check(VO(r,n)),t.superRefine=r=>t.check(KO(r)),t.overwrite=r=>t.check(Pi(r)),t.optional=()=>Ot(t),t.exactOptional=()=>OO(t),t.nullable=()=>Am(t),t.nullish=()=>Ot(Am(t)),t.nonoptional=r=>DO(t,r),t.array=()=>Ve(t),t.or=r=>ht([t,r]),t.and=r=>Kl(t,r),t.transform=r=>Nm(t,Ax(r)),t.default=r=>AO(t,r),t.prefault=r=>MO(t,r),t.catch=r=>LO(t,r),t.pipe=r=>Nm(t,r),t.readonly=()=>qO(t),t.describe=r=>{let n=t.clone();return Br.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Br.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Br.get(t);let n=t.clone();return Br.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t.apply=r=>r(t),t)),fx=O("_ZodString",(t,e)=>{Ao.init(t,e),De.init(t,e),t._zod.processJSONSchema=(n,i,s)=>l1(t,n,i,s);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,t.regex=(...n)=>t.check(Al(...n)),t.includes=(...n)=>t.check(Dl(...n)),t.startsWith=(...n)=>t.check(jl(...n)),t.endsWith=(...n)=>t.check(zl(...n)),t.min=(...n)=>t.check(Ks(...n)),t.max=(...n)=>t.check(ec(...n)),t.length=(...n)=>t.check(tc(...n)),t.nonempty=(...n)=>t.check(Ks(1,...n)),t.lowercase=n=>t.check(Nl(n)),t.uppercase=n=>t.check(Ml(n)),t.trim=()=>t.check(Fl()),t.normalize=(...n)=>t.check(Ul(...n)),t.toLowerCase=()=>t.check(ql()),t.toUpperCase=()=>t.check(Hl()),t.slugify=()=>t.check(Tm())}),Mm=O("ZodString",(t,e)=>{Ao.init(t,e),fx.init(t,e),t.email=r=>t.check(om(mx,r)),t.url=r=>t.check(Pl(Dm,r)),t.jwt=r=>t.check(km(Rx,r)),t.emoji=r=>t.check(dm(hx,r)),t.guid=r=>t.check(Cl(Pm,r)),t.uuid=r=>t.check(am(ps,r)),t.uuidv4=r=>t.check(cm(ps,r)),t.uuidv6=r=>t.check(um(ps,r)),t.uuidv7=r=>t.check(lm(ps,r)),t.nanoid=r=>t.check(pm(gx,r)),t.guid=r=>t.check(Cl(Pm,r)),t.cuid=r=>t.check(fm(vx,r)),t.cuid2=r=>t.check(mm(yx,r)),t.ulid=r=>t.check(hm(_x,r)),t.base64=r=>t.check(xm(Tx,r)),t.base64url=r=>t.check(wm($x,r)),t.xid=r=>t.check(gm(bx,r)),t.ksuid=r=>t.check(vm(Sx,r)),t.ipv4=r=>t.check(ym(xx,r)),t.ipv6=r=>t.check(_m(wx,r)),t.cidrv4=r=>t.check(bm(Ex,r)),t.cidrv6=r=>t.check(Sm(kx,r)),t.e164=r=>t.check(Em(Ix,r)),t.datetime=r=>t.check(sx(r)),t.date=r=>t.check(ax(r)),t.time=r=>t.check(ux(r)),t.duration=r=>t.check(dx(r))});function z(t){return yS(Mm,t)}var bt=O("ZodStringFormat",(t,e)=>{mt.init(t,e),fx.init(t,e)}),mx=O("ZodEmail",(t,e)=>{ub.init(t,e),bt.init(t,e)});function sZ(t){return om(mx,t)}var Pm=O("ZodGUID",(t,e)=>{ab.init(t,e),bt.init(t,e)});function oZ(t){return Cl(Pm,t)}var ps=O("ZodUUID",(t,e)=>{cb.init(t,e),bt.init(t,e)});function aZ(t){return am(ps,t)}function cZ(t){return cm(ps,t)}function uZ(t){return um(ps,t)}function lZ(t){return lm(ps,t)}var Dm=O("ZodURL",(t,e)=>{lb.init(t,e),bt.init(t,e)});function dZ(t){return Pl(Dm,t)}function pZ(t){return Pl(Dm,{protocol:/^https?$/,hostname:jn.domain,...G.normalizeParams(t)})}var hx=O("ZodEmoji",(t,e)=>{db.init(t,e),bt.init(t,e)});function fZ(t){return dm(hx,t)}var gx=O("ZodNanoID",(t,e)=>{pb.init(t,e),bt.init(t,e)});function mZ(t){return pm(gx,t)}var vx=O("ZodCUID",(t,e)=>{fb.init(t,e),bt.init(t,e)});function hZ(t){return fm(vx,t)}var yx=O("ZodCUID2",(t,e)=>{mb.init(t,e),bt.init(t,e)});function gZ(t){return mm(yx,t)}var _x=O("ZodULID",(t,e)=>{hb.init(t,e),bt.init(t,e)});function vZ(t){return hm(_x,t)}var bx=O("ZodXID",(t,e)=>{gb.init(t,e),bt.init(t,e)});function yZ(t){return gm(bx,t)}var Sx=O("ZodKSUID",(t,e)=>{vb.init(t,e),bt.init(t,e)});function _Z(t){return vm(Sx,t)}var xx=O("ZodIPv4",(t,e)=>{xb.init(t,e),bt.init(t,e)});function bZ(t){return ym(xx,t)}var lO=O("ZodMAC",(t,e)=>{Eb.init(t,e),bt.init(t,e)});function SZ(t){return _S(lO,t)}var wx=O("ZodIPv6",(t,e)=>{wb.init(t,e),bt.init(t,e)});function xZ(t){return _m(wx,t)}var Ex=O("ZodCIDRv4",(t,e)=>{kb.init(t,e),bt.init(t,e)});function wZ(t){return bm(Ex,t)}var kx=O("ZodCIDRv6",(t,e)=>{Tb.init(t,e),bt.init(t,e)});function EZ(t){return Sm(kx,t)}var Tx=O("ZodBase64",(t,e)=>{$b.init(t,e),bt.init(t,e)});function kZ(t){return xm(Tx,t)}var $x=O("ZodBase64URL",(t,e)=>{Ib.init(t,e),bt.init(t,e)});function TZ(t){return wm($x,t)}var Ix=O("ZodE164",(t,e)=>{Rb.init(t,e),bt.init(t,e)});function $Z(t){return Em(Ix,t)}var Rx=O("ZodJWT",(t,e)=>{Ob.init(t,e),bt.init(t,e)});function IZ(t){return km(Rx,t)}var Wl=O("ZodCustomStringFormat",(t,e)=>{Cb.init(t,e),bt.init(t,e)});function RZ(t,e,r={}){return rc(Wl,t,e,r)}function OZ(t){return rc(Wl,"hostname",jn.hostname,t)}function CZ(t){return rc(Wl,"hex",jn.hex,t)}function PZ(t,e){let r=e?.enc??"hex",n=`${t}_${r}`,i=jn[n];if(!i)throw new Error(`Unrecognized hash format: ${n}`);return rc(Wl,n,i,e)}var jm=O("ZodNumber",(t,e)=>{rm.init(t,e),De.init(t,e),t._zod.processJSONSchema=(n,i,s)=>d1(t,n,i,s),t.gt=(n,i)=>t.check(ls(n,i)),t.gte=(n,i)=>t.check(Gr(n,i)),t.min=(n,i)=>t.check(Gr(n,i)),t.lt=(n,i)=>t.check(us(n,i)),t.lte=(n,i)=>t.check(wn(n,i)),t.max=(n,i)=>t.check(wn(n,i)),t.int=n=>t.check(px(n)),t.safe=n=>t.check(px(n)),t.positive=n=>t.check(ls(0,n)),t.nonnegative=n=>t.check(Gr(0,n)),t.negative=n=>t.check(us(0,n)),t.nonpositive=n=>t.check(wn(0,n)),t.multipleOf=(n,i)=>t.check(No(n,i)),t.step=(n,i)=>t.check(No(n,i)),t.finite=()=>t;let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function ct(t){return ES(jm,t)}var ic=O("ZodNumberFormat",(t,e)=>{Pb.init(t,e),jm.init(t,e)});function px(t){return kS(ic,t)}function AZ(t){return TS(ic,t)}function NZ(t){return $S(ic,t)}function MZ(t){return IS(ic,t)}function DZ(t){return RS(ic,t)}var zm=O("ZodBoolean",(t,e)=>{Il.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>p1(t,r,n,i)});function Yt(t){return OS(zm,t)}var Lm=O("ZodBigInt",(t,e)=>{nm.init(t,e),De.init(t,e),t._zod.processJSONSchema=(n,i,s)=>f1(t,n,i,s),t.gte=(n,i)=>t.check(Gr(n,i)),t.min=(n,i)=>t.check(Gr(n,i)),t.gt=(n,i)=>t.check(ls(n,i)),t.gte=(n,i)=>t.check(Gr(n,i)),t.min=(n,i)=>t.check(Gr(n,i)),t.lt=(n,i)=>t.check(us(n,i)),t.lte=(n,i)=>t.check(wn(n,i)),t.max=(n,i)=>t.check(wn(n,i)),t.positive=n=>t.check(ls(BigInt(0),n)),t.negative=n=>t.check(us(BigInt(0),n)),t.nonpositive=n=>t.check(wn(BigInt(0),n)),t.nonnegative=n=>t.check(Gr(BigInt(0),n)),t.multipleOf=(n,i)=>t.check(No(n,i));let r=t._zod.bag;t.minValue=r.minimum??null,t.maxValue=r.maximum??null,t.format=r.format??null});function jZ(t){return CS(Lm,t)}var Ox=O("ZodBigIntFormat",(t,e)=>{Ab.init(t,e),Lm.init(t,e)});function zZ(t){return PS(Ox,t)}function LZ(t){return AS(Ox,t)}var dO=O("ZodSymbol",(t,e)=>{Nb.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>m1(t,r,n,i)});function UZ(t){return NS(dO,t)}var pO=O("ZodUndefined",(t,e)=>{Mb.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>g1(t,r,n,i)});function FZ(t){return MS(pO,t)}var fO=O("ZodNull",(t,e)=>{Db.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>h1(t,r,n,i)});function Vl(t){return DS(fO,t)}var mO=O("ZodAny",(t,e)=>{jb.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>_1(t,r,n,i)});function qZ(){return jS(mO)}var hO=O("ZodUnknown",(t,e)=>{zb.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>b1(t,r,n,i)});function St(){return zS(hO)}var gO=O("ZodNever",(t,e)=>{Lb.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>y1(t,r,n,i)});function Cx(t){return LS(gO,t)}var vO=O("ZodVoid",(t,e)=>{Ub.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>v1(t,r,n,i)});function HZ(t){return US(vO,t)}var Px=O("ZodDate",(t,e)=>{Fb.init(t,e),De.init(t,e),t._zod.processJSONSchema=(n,i,s)=>S1(t,n,i,s),t.min=(n,i)=>t.check(Gr(n,i)),t.max=(n,i)=>t.check(wn(n,i));let r=t._zod.bag;t.minDate=r.minimum?new Date(r.minimum):null,t.maxDate=r.maximum?new Date(r.maximum):null});function ZZ(t){return FS(Px,t)}var yO=O("ZodArray",(t,e)=>{qb.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>A1(t,r,n,i),t.element=e.element,t.min=(r,n)=>t.check(Ks(r,n)),t.nonempty=r=>t.check(Ks(1,r)),t.max=(r,n)=>t.check(ec(r,n)),t.length=(r,n)=>t.check(tc(r,n)),t.unwrap=()=>t.element});function Ve(t,e){return c1(yO,t,e)}function BZ(t){let e=t._zod.def.shape;return Cr(Object.keys(e))}var Um=O("ZodObject",(t,e)=>{o1.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>N1(t,r,n,i),G.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Cr(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:St()}),t.loose=()=>t.clone({...t._zod.def,catchall:St()}),t.strict=()=>t.clone({...t._zod.def,catchall:Cx()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>G.extend(t,r),t.safeExtend=r=>G.safeExtend(t,r),t.merge=r=>G.merge(t,r),t.pick=r=>G.pick(t,r),t.omit=r=>G.omit(t,r),t.partial=(...r)=>G.partial(Nx,t,r[0]),t.required=(...r)=>G.required(Mx,t,r[0])});function se(t,e){let r={type:"object",shape:t??{},...G.normalizeParams(e)};return new Um(r)}function GZ(t,e){return new Um({type:"object",shape:t,catchall:Cx(),...G.normalizeParams(e)})}function Or(t,e){return new Um({type:"object",shape:t,catchall:St(),...G.normalizeParams(e)})}var Fm=O("ZodUnion",(t,e)=>{Rl.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>tx(t,r,n,i),t.options=e.options});function ht(t,e){return new Fm({type:"union",options:t,...G.normalizeParams(e)})}var _O=O("ZodXor",(t,e)=>{Fm.init(t,e),Hb.init(t,e),t._zod.processJSONSchema=(r,n,i)=>tx(t,r,n,i),t.options=e.options});function WZ(t,e){return new _O({type:"union",options:t,inclusive:!1,...G.normalizeParams(e)})}var bO=O("ZodDiscriminatedUnion",(t,e)=>{Fm.init(t,e),Zb.init(t,e)});function qm(t,e,r){return new bO({type:"union",options:e,discriminator:t,...G.normalizeParams(r)})}var SO=O("ZodIntersection",(t,e)=>{Bb.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>M1(t,r,n,i)});function Kl(t,e){return new SO({type:"intersection",left:t,right:e})}var xO=O("ZodTuple",(t,e)=>{im.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>D1(t,r,n,i),t.rest=r=>t.clone({...t._zod.def,rest:r})});function wO(t,e,r){let n=e instanceof Ce,i=n?r:e,s=n?e:null;return new xO({type:"tuple",items:t,rest:s,...G.normalizeParams(i)})}var Hm=O("ZodRecord",(t,e)=>{Gb.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>j1(t,r,n,i),t.keyType=e.keyType,t.valueType=e.valueType});function Tt(t,e,r){return new Hm({type:"record",keyType:t,valueType:e,...G.normalizeParams(r)})}function VZ(t,e,r){let n=Zr(t);return n._zod.values=void 0,new Hm({type:"record",keyType:n,valueType:e,...G.normalizeParams(r)})}function KZ(t,e,r){return new Hm({type:"record",keyType:t,valueType:e,mode:"loose",...G.normalizeParams(r)})}var EO=O("ZodMap",(t,e)=>{Wb.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>C1(t,r,n,i),t.keyType=e.keyType,t.valueType=e.valueType,t.min=(...r)=>t.check(ds(...r)),t.nonempty=r=>t.check(ds(1,r)),t.max=(...r)=>t.check(Mo(...r)),t.size=(...r)=>t.check(Qa(...r))});function JZ(t,e,r){return new EO({type:"map",keyType:t,valueType:e,...G.normalizeParams(r)})}var kO=O("ZodSet",(t,e)=>{Vb.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>P1(t,r,n,i),t.min=(...r)=>t.check(ds(...r)),t.nonempty=r=>t.check(ds(1,r)),t.max=(...r)=>t.check(Mo(...r)),t.size=(...r)=>t.check(Qa(...r))});function XZ(t,e){return new kO({type:"set",valueType:t,...G.normalizeParams(e)})}var Gl=O("ZodEnum",(t,e)=>{Kb.init(t,e),De.init(t,e),t._zod.processJSONSchema=(n,i,s)=>x1(t,n,i,s),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,i)=>{let s={};for(let o of n)if(r.has(o))s[o]=e.entries[o];else throw new Error(`Key ${o} not found in enum`);return new Gl({...e,checks:[],...G.normalizeParams(i),entries:s})},t.exclude=(n,i)=>{let s={...e.entries};for(let o of n)if(r.has(o))delete s[o];else throw new Error(`Key ${o} not found in enum`);return new Gl({...e,checks:[],...G.normalizeParams(i),entries:s})}});function Cr(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Gl({type:"enum",entries:r,...G.normalizeParams(e)})}function YZ(t,e){return new Gl({type:"enum",entries:t,...G.normalizeParams(e)})}var TO=O("ZodLiteral",(t,e)=>{Jb.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>w1(t,r,n,i),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function fe(t,e){return new TO({type:"literal",values:Array.isArray(t)?t:[t],...G.normalizeParams(e)})}var $O=O("ZodFile",(t,e)=>{Xb.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>T1(t,r,n,i),t.min=(r,n)=>t.check(ds(r,n)),t.max=(r,n)=>t.check(Mo(r,n)),t.mime=(r,n)=>t.check(Ll(Array.isArray(r)?r:[r],n))});function QZ(t){return VS($O,t)}var IO=O("ZodTransform",(t,e)=>{Yb.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>O1(t,r,n,i),t._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Oo(t.constructor.name);r.addIssue=s=>{if(typeof s=="string")r.issues.push(G.issue(s,r.value,e));else{let o=s;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=t),r.issues.push(G.issue(o))}};let i=e.transform(r.value,r);return i instanceof Promise?i.then(s=>(r.value=s,r)):(r.value=i,r)}});function Ax(t){return new IO({type:"transform",transform:t})}var Nx=O("ZodOptional",(t,e)=>{sm.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>rx(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function Ot(t){return new Nx({type:"optional",innerType:t})}var RO=O("ZodExactOptional",(t,e)=>{Qb.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>rx(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function OO(t){return new RO({type:"optional",innerType:t})}var CO=O("ZodNullable",(t,e)=>{eS.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>z1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function Am(t){return new CO({type:"nullable",innerType:t})}function eB(t){return Ot(Am(t))}var PO=O("ZodDefault",(t,e)=>{tS.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>U1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function AO(t,e){return new PO({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():G.shallowClone(e)}})}var NO=O("ZodPrefault",(t,e)=>{rS.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>F1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function MO(t,e){return new NO({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():G.shallowClone(e)}})}var Mx=O("ZodNonOptional",(t,e)=>{nS.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>L1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function DO(t,e){return new Mx({type:"nonoptional",innerType:t,...G.normalizeParams(e)})}var jO=O("ZodSuccess",(t,e)=>{iS.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>$1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function tB(t){return new jO({type:"success",innerType:t})}var zO=O("ZodCatch",(t,e)=>{sS.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>q1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function LO(t,e){return new zO({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var UO=O("ZodNaN",(t,e)=>{oS.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>E1(t,r,n,i)});function rB(t){return qS(UO,t)}var Dx=O("ZodPipe",(t,e)=>{aS.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>H1(t,r,n,i),t.in=e.in,t.out=e.out});function Nm(t,e){return new Dx({type:"pipe",in:t,out:e})}var jx=O("ZodCodec",(t,e)=>{Dx.init(t,e),Ol.init(t,e)});function nB(t,e,r){return new jx({type:"pipe",in:t,out:e,transform:r.decode,reverseTransform:r.encode})}var FO=O("ZodReadonly",(t,e)=>{cS.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>Z1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function qO(t){return new FO({type:"readonly",innerType:t})}var HO=O("ZodTemplateLiteral",(t,e)=>{uS.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>k1(t,r,n,i)});function iB(t,e){return new HO({type:"template_literal",parts:t,...G.normalizeParams(e)})}var ZO=O("ZodLazy",(t,e)=>{pS.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>G1(t,r,n,i),t.unwrap=()=>t._zod.def.getter()});function BO(t){return new ZO({type:"lazy",getter:t})}var GO=O("ZodPromise",(t,e)=>{dS.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>B1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function sB(t){return new GO({type:"promise",innerType:t})}var WO=O("ZodFunction",(t,e)=>{lS.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>R1(t,r,n,i)});function oB(t){return new WO({type:"function",input:Array.isArray(t?.input)?wO(t?.input):t?.input??Ve(St()),output:t?.output??St()})}var Zm=O("ZodCustom",(t,e)=>{fS.init(t,e),De.init(t,e),t._zod.processJSONSchema=(r,n,i)=>I1(t,r,n,i)});function aB(t){let e=new _t({check:"custom"});return e._zod.check=t,e}function zx(t,e){return KS(Zm,t??(()=>!0),e)}function VO(t,e={}){return JS(Zm,t,e)}function KO(t){return XS(t)}var cB=YS,uB=QS;function lB(t,e={}){let r=new Zm({type:"custom",check:"custom",fn:n=>n instanceof t,abort:!0,...G.normalizeParams(e)});return r._zod.bag.Class=t,r._zod.check=n=>{n.value instanceof t||n.issues.push({code:"invalid_type",expected:t.name,input:n.value,inst:r,path:[...r._zod.def.path??[]]})},r}var dB=(...t)=>ex({Codec:jx,Boolean:zm,String:Mm},...t);function pB(t){let e=BO(()=>ht([z(t),ct(),Yt(),Vl(),Ve(e),Tt(z(),e)]));return e}function Bm(t,e){return Nm(Ax(t),e)}var JO;JO||(JO={});var Wke={...Bl,...Cm,iso:Do};tr(mS());var Ux="2025-11-25";var XO=[Ux,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Js="io.modelcontextprotocol/related-task",Wm="2.0",yr=zx(t=>t!==null&&(typeof t=="object"||typeof t=="function")),YO=ht([z(),ct().int()]),QO=z(),pTe=Or({ttl:ht([ct(),Vl()]).optional(),pollInterval:ct().optional()}),gB=se({ttl:ct().optional()}),vB=se({taskId:z()}),Fx=Or({progressToken:YO.optional(),[Js]:vB.optional()}),kn=se({_meta:Fx.optional()}),Jl=kn.extend({task:gB.optional()}),eC=t=>Jl.safeParse(t).success,_r=se({method:z(),params:kn.loose().optional()}),zn=se({_meta:Fx.optional()}),Ln=se({method:z(),params:zn.loose().optional()}),br=Or({_meta:Fx.optional()}),Vm=ht([z(),ct().int()]),tC=se({jsonrpc:fe(Wm),id:Vm,..._r.shape}).strict(),qx=t=>tC.safeParse(t).success,rC=se({jsonrpc:fe(Wm),...Ln.shape}).strict(),nC=t=>rC.safeParse(t).success,Hx=se({jsonrpc:fe(Wm),id:Vm,result:br}).strict(),Xl=t=>Hx.safeParse(t).success;var Ie;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(Ie||(Ie={}));var Zx=se({jsonrpc:fe(Wm),id:Vm.optional(),error:se({code:ct().int(),message:z(),data:St().optional()})}).strict();var iC=t=>Zx.safeParse(t).success;var sC=ht([tC,rC,Hx,Zx]),fTe=ht([Hx,Zx]),jo=br.strict(),yB=zn.extend({requestId:Vm.optional(),reason:z().optional()}),Km=Ln.extend({method:fe("notifications/cancelled"),params:yB}),_B=se({src:z(),mimeType:z().optional(),sizes:Ve(z()).optional(),theme:Cr(["light","dark"]).optional()}),Yl=se({icons:Ve(_B).optional()}),sc=se({name:z(),title:z().optional()}),oC=sc.extend({...sc.shape,...Yl.shape,version:z(),websiteUrl:z().optional(),description:z().optional()}),bB=Kl(se({applyDefaults:Yt().optional()}),Tt(z(),St())),SB=Bm(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Kl(se({form:bB.optional(),url:yr.optional()}),Tt(z(),St()).optional())),xB=Or({list:yr.optional(),cancel:yr.optional(),requests:Or({sampling:Or({createMessage:yr.optional()}).optional(),elicitation:Or({create:yr.optional()}).optional()}).optional()}),wB=Or({list:yr.optional(),cancel:yr.optional(),requests:Or({tools:Or({call:yr.optional()}).optional()}).optional()}),EB=se({experimental:Tt(z(),yr).optional(),sampling:se({context:yr.optional(),tools:yr.optional()}).optional(),elicitation:SB.optional(),roots:se({listChanged:Yt().optional()}).optional(),tasks:xB.optional()}),kB=kn.extend({protocolVersion:z(),capabilities:EB,clientInfo:oC}),TB=_r.extend({method:fe("initialize"),params:kB});var $B=se({experimental:Tt(z(),yr).optional(),logging:yr.optional(),completions:yr.optional(),prompts:se({listChanged:Yt().optional()}).optional(),resources:se({subscribe:Yt().optional(),listChanged:Yt().optional()}).optional(),tools:se({listChanged:Yt().optional()}).optional(),tasks:wB.optional()}),Bx=br.extend({protocolVersion:z(),capabilities:$B,serverInfo:oC,instructions:z().optional()}),IB=Ln.extend({method:fe("notifications/initialized"),params:zn.optional()});var Jm=_r.extend({method:fe("ping"),params:kn.optional()}),RB=se({progress:ct(),total:Ot(ct()),message:Ot(z())}),OB=se({...zn.shape,...RB.shape,progressToken:YO}),Xm=Ln.extend({method:fe("notifications/progress"),params:OB}),CB=kn.extend({cursor:QO.optional()}),Ql=_r.extend({params:CB.optional()}),ed=br.extend({nextCursor:QO.optional()}),PB=Cr(["working","input_required","completed","failed","cancelled"]),td=se({taskId:z(),status:PB,ttl:ht([ct(),Vl()]),createdAt:z(),lastUpdatedAt:z(),pollInterval:Ot(ct()),statusMessage:Ot(z())}),zo=br.extend({task:td}),AB=zn.merge(td),rd=Ln.extend({method:fe("notifications/tasks/status"),params:AB}),Ym=_r.extend({method:fe("tasks/get"),params:kn.extend({taskId:z()})}),Qm=br.merge(td),eh=_r.extend({method:fe("tasks/result"),params:kn.extend({taskId:z()})}),mTe=br.loose(),th=Ql.extend({method:fe("tasks/list")}),rh=ed.extend({tasks:Ve(td)}),nh=_r.extend({method:fe("tasks/cancel"),params:kn.extend({taskId:z()})}),aC=br.merge(td),cC=se({uri:z(),mimeType:Ot(z()),_meta:Tt(z(),St()).optional()}),uC=cC.extend({text:z()}),Gx=z().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),lC=cC.extend({blob:Gx}),nd=Cr(["user","assistant"]),oc=se({audience:Ve(nd).optional(),priority:ct().min(0).max(1).optional(),lastModified:Do.datetime({offset:!0}).optional()}),dC=se({...sc.shape,...Yl.shape,uri:z(),description:Ot(z()),mimeType:Ot(z()),annotations:oc.optional(),_meta:Ot(Or({}))}),NB=se({...sc.shape,...Yl.shape,uriTemplate:z(),description:Ot(z()),mimeType:Ot(z()),annotations:oc.optional(),_meta:Ot(Or({}))}),MB=Ql.extend({method:fe("resources/list")}),Wx=ed.extend({resources:Ve(dC)}),DB=Ql.extend({method:fe("resources/templates/list")}),Vx=ed.extend({resourceTemplates:Ve(NB)}),Kx=kn.extend({uri:z()}),jB=Kx,zB=_r.extend({method:fe("resources/read"),params:jB}),Jx=br.extend({contents:Ve(ht([uC,lC]))}),Xx=Ln.extend({method:fe("notifications/resources/list_changed"),params:zn.optional()}),LB=Kx,UB=_r.extend({method:fe("resources/subscribe"),params:LB}),FB=Kx,qB=_r.extend({method:fe("resources/unsubscribe"),params:FB}),HB=zn.extend({uri:z()}),ZB=Ln.extend({method:fe("notifications/resources/updated"),params:HB}),BB=se({name:z(),description:Ot(z()),required:Ot(Yt())}),GB=se({...sc.shape,...Yl.shape,description:Ot(z()),arguments:Ot(Ve(BB)),_meta:Ot(Or({}))}),WB=Ql.extend({method:fe("prompts/list")}),Yx=ed.extend({prompts:Ve(GB)}),VB=kn.extend({name:z(),arguments:Tt(z(),z()).optional()}),KB=_r.extend({method:fe("prompts/get"),params:VB}),Qx=se({type:fe("text"),text:z(),annotations:oc.optional(),_meta:Tt(z(),St()).optional()}),ew=se({type:fe("image"),data:Gx,mimeType:z(),annotations:oc.optional(),_meta:Tt(z(),St()).optional()}),tw=se({type:fe("audio"),data:Gx,mimeType:z(),annotations:oc.optional(),_meta:Tt(z(),St()).optional()}),JB=se({type:fe("tool_use"),name:z(),id:z(),input:Tt(z(),St()),_meta:Tt(z(),St()).optional()}),XB=se({type:fe("resource"),resource:ht([uC,lC]),annotations:oc.optional(),_meta:Tt(z(),St()).optional()}),YB=dC.extend({type:fe("resource_link")}),rw=ht([Qx,ew,tw,YB,XB]),QB=se({role:nd,content:rw}),nw=br.extend({description:z().optional(),messages:Ve(QB)}),iw=Ln.extend({method:fe("notifications/prompts/list_changed"),params:zn.optional()}),eG=se({title:z().optional(),readOnlyHint:Yt().optional(),destructiveHint:Yt().optional(),idempotentHint:Yt().optional(),openWorldHint:Yt().optional()}),tG=se({taskSupport:Cr(["required","optional","forbidden"]).optional()}),pC=se({...sc.shape,...Yl.shape,description:z().optional(),inputSchema:se({type:fe("object"),properties:Tt(z(),yr).optional(),required:Ve(z()).optional()}).catchall(St()),outputSchema:se({type:fe("object"),properties:Tt(z(),yr).optional(),required:Ve(z()).optional()}).catchall(St()).optional(),annotations:eG.optional(),execution:tG.optional(),_meta:Tt(z(),St()).optional()}),rG=Ql.extend({method:fe("tools/list")}),sw=ed.extend({tools:Ve(pC)}),ac=br.extend({content:Ve(rw).default([]),structuredContent:Tt(z(),St()).optional(),isError:Yt().optional()}),hTe=ac.or(br.extend({toolResult:St()})),nG=Jl.extend({name:z(),arguments:Tt(z(),St()).optional()}),iG=_r.extend({method:fe("tools/call"),params:nG}),ow=Ln.extend({method:fe("notifications/tools/list_changed"),params:zn.optional()}),fC=se({autoRefresh:Yt().default(!0),debounceMs:ct().int().nonnegative().default(300)}),mC=Cr(["debug","info","notice","warning","error","critical","alert","emergency"]),sG=kn.extend({level:mC}),oG=_r.extend({method:fe("logging/setLevel"),params:sG}),aG=zn.extend({level:mC,logger:z().optional(),data:St()}),cG=Ln.extend({method:fe("notifications/message"),params:aG}),uG=se({name:z().optional()}),lG=se({hints:Ve(uG).optional(),costPriority:ct().min(0).max(1).optional(),speedPriority:ct().min(0).max(1).optional(),intelligencePriority:ct().min(0).max(1).optional()}),dG=se({mode:Cr(["auto","required","none"]).optional()}),pG=se({type:fe("tool_result"),toolUseId:z().describe("The unique identifier for the corresponding tool call."),content:Ve(rw).default([]),structuredContent:se({}).loose().optional(),isError:Yt().optional(),_meta:Tt(z(),St()).optional()}),fG=qm("type",[Qx,ew,tw]),Gm=qm("type",[Qx,ew,tw,JB,pG]),mG=se({role:nd,content:ht([Gm,Ve(Gm)]),_meta:Tt(z(),St()).optional()}),hG=Jl.extend({messages:Ve(mG),modelPreferences:lG.optional(),systemPrompt:z().optional(),includeContext:Cr(["none","thisServer","allServers"]).optional(),temperature:ct().optional(),maxTokens:ct().int(),stopSequences:Ve(z()).optional(),metadata:yr.optional(),tools:Ve(pC).optional(),toolChoice:dG.optional()}),aw=_r.extend({method:fe("sampling/createMessage"),params:hG}),cw=br.extend({model:z(),stopReason:Ot(Cr(["endTurn","stopSequence","maxTokens"]).or(z())),role:nd,content:fG}),gG=br.extend({model:z(),stopReason:Ot(Cr(["endTurn","stopSequence","maxTokens","toolUse"]).or(z())),role:nd,content:ht([Gm,Ve(Gm)])}),vG=se({type:fe("boolean"),title:z().optional(),description:z().optional(),default:Yt().optional()}),yG=se({type:fe("string"),title:z().optional(),description:z().optional(),minLength:ct().optional(),maxLength:ct().optional(),format:Cr(["email","uri","date","date-time"]).optional(),default:z().optional()}),_G=se({type:Cr(["number","integer"]),title:z().optional(),description:z().optional(),minimum:ct().optional(),maximum:ct().optional(),default:ct().optional()}),bG=se({type:fe("string"),title:z().optional(),description:z().optional(),enum:Ve(z()),default:z().optional()}),SG=se({type:fe("string"),title:z().optional(),description:z().optional(),oneOf:Ve(se({const:z(),title:z()})),default:z().optional()}),xG=se({type:fe("string"),title:z().optional(),description:z().optional(),enum:Ve(z()),enumNames:Ve(z()).optional(),default:z().optional()}),wG=ht([bG,SG]),EG=se({type:fe("array"),title:z().optional(),description:z().optional(),minItems:ct().optional(),maxItems:ct().optional(),items:se({type:fe("string"),enum:Ve(z())}),default:Ve(z()).optional()}),kG=se({type:fe("array"),title:z().optional(),description:z().optional(),minItems:ct().optional(),maxItems:ct().optional(),items:se({anyOf:Ve(se({const:z(),title:z()}))}),default:Ve(z()).optional()}),TG=ht([EG,kG]),$G=ht([xG,wG,TG]),IG=ht([$G,vG,yG,_G]),RG=Jl.extend({mode:fe("form").optional(),message:z(),requestedSchema:se({type:fe("object"),properties:Tt(z(),IG),required:Ve(z()).optional()})}),OG=Jl.extend({mode:fe("url"),message:z(),elicitationId:z(),url:z().url()}),CG=ht([RG,OG]),uw=_r.extend({method:fe("elicitation/create"),params:CG}),PG=zn.extend({elicitationId:z()}),AG=Ln.extend({method:fe("notifications/elicitation/complete"),params:PG}),lw=br.extend({action:Cr(["accept","decline","cancel"]),content:Bm(t=>t===null?void 0:t,Tt(z(),ht([z(),ct(),Yt(),Ve(z())])).optional())}),NG=se({type:fe("ref/resource"),uri:z()});var MG=se({type:fe("ref/prompt"),name:z()}),DG=kn.extend({ref:ht([MG,NG]),argument:se({name:z(),value:z()}),context:se({arguments:Tt(z(),z()).optional()}).optional()}),jG=_r.extend({method:fe("completion/complete"),params:DG});var dw=br.extend({completion:Or({values:Ve(z()).max(100),total:Ot(ct().int()),hasMore:Ot(Yt())})}),zG=se({uri:z().startsWith("file://"),name:z().optional(),_meta:Tt(z(),St()).optional()}),LG=_r.extend({method:fe("roots/list"),params:kn.optional()}),UG=br.extend({roots:Ve(zG)}),FG=Ln.extend({method:fe("notifications/roots/list_changed"),params:zn.optional()}),gTe=ht([Jm,TB,jG,oG,KB,WB,MB,DB,zB,UB,qB,iG,rG,Ym,eh,th,nh]),vTe=ht([Km,Xm,IB,FG,rd]),yTe=ht([jo,cw,gG,lw,UG,Qm,rh,zo]),_Te=ht([Jm,aw,uw,LG,Ym,eh,th,nh]),bTe=ht([Km,Xm,cG,ZB,Xx,ow,iw,rd,AG]),STe=ht([jo,Bx,dw,nw,Yx,Wx,Vx,Jx,ac,sw,Qm,rh,zo]),ve=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===Ie.UrlElicitationRequired&&n){let i=n;if(i.elicitations)return new Lx(i.elicitations,r)}return new t(e,r,n)}},Lx=class extends ve{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(Ie.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function Xs(t){return t==="completed"||t==="failed"||t==="cancelled"}var t$e=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function pw(t){let r=Om(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=J1(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function fw(t,e){let r=oi(t,e);if(!r.success)throw r.error;return r.data}var WG=6e4,ih=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(Km,r=>{this._oncancel(r)}),this.setNotificationHandler(Xm,r=>{this._onprogress(r)}),this.setRequestHandler(Jm,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Ym,async(r,n)=>{let i=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!i)throw new ve(Ie.InvalidParams,"Failed to retrieve task: Task not found");return{...i}}),this.setRequestHandler(eh,async(r,n)=>{let i=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,p=new ve(d.error.code,d.error.message,d.error.data);l(p)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let o=await this._taskStore.getTask(s,n.sessionId);if(!o)throw new ve(Ie.InvalidParams,`Task not found: ${s}`);if(!Xs(o.status))return await this._waitForTaskUpdate(s,n.signal),await i();if(Xs(o.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[Js]:{taskId:s}}}}return await i()};return await i()}),this.setRequestHandler(th,async(r,n)=>{try{let{tasks:i,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:i,nextCursor:s,_meta:{}}}catch(i){throw new ve(Ie.InvalidParams,`Failed to list tasks: ${i instanceof Error?i.message:String(i)}`)}}),this.setRequestHandler(nh,async(r,n)=>{try{let i=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!i)throw new ve(Ie.InvalidParams,`Task not found: ${r.params.taskId}`);if(Xs(i.status))throw new ve(Ie.InvalidParams,`Cannot cancel task in terminal status: ${i.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new ve(Ie.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(i){throw i instanceof ve?i:new ve(Ie.InvalidRequest,`Failed to cancel task: ${i instanceof Error?i.message:String(i)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,i,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(i,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:i})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),ve.fromError(Ie.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let i=this._transport?.onmessage;this._transport.onmessage=(s,o)=>{i?.(s,o),Xl(s)||iC(s)?this._onresponse(s):qx(s)?this._onrequest(s,o):nC(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();let r=ve.fromError(Ie.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,i=this._transport,s=e.params?._meta?.[Js]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:Ie.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},i?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):i?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let o=new AbortController;this._requestHandlerAbortControllers.set(e.id,o);let a=eC(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,i?.sessionId):void 0,u={signal:o.signal,sessionId:i?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,p)=>{let f={...p,relatedRequestId:e.id};s&&!f.relatedTask&&(f.relatedTask={taskId:s});let m=f.relatedTask?.taskId??s;return m&&c&&await c.updateTaskStatus(m,"input_required"),await this.request(l,d,f)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(o.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},i?.sessionId):await i?.send(d)},async l=>{if(o.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:Ie.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},i?.sessionId):await i?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,i=Number(r),s=this._progressHandlers.get(i);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let o=this._responseHandlers.get(i),a=this._timeoutInfo.get(i);if(a&&o&&a.resetTimeoutOnProgress)try{this._resetTimeout(i)}catch(c){this._responseHandlers.delete(i),this._progressHandlers.delete(i),this._cleanupTimeout(i),o(c);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),Xl(e))n(e);else{let o=new ve(e.error.code,e.error.message,e.error.data);n(o)}return}let i=this._responseHandlers.get(r);if(i===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let s=!1;if(Xl(e)&&e.result&&typeof e.result=="object"){let o=e.result;if(o.task&&typeof o.task=="object"){let a=o.task;typeof a.taskId=="string"&&(s=!0,this._taskProgressTokens.set(a.taskId,r))}}if(s||this._progressHandlers.delete(r),Xl(e))i(e);else{let o=ve.fromError(e.error.code,e.error.message,e.error.data);i(o)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:i}=n??{};if(!i){try{yield{type:"result",result:await this.request(e,r,n)}}catch(o){yield{type:"error",error:o instanceof ve?o:new ve(Ie.InternalError,String(o))}}return}let s;try{let o=await this.request(e,zo,n);if(o.task)s=o.task.taskId,yield{type:"taskCreated",task:o.task};else throw new ve(Ie.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},Xs(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new ve(Ie.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new ve(Ie.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(o){yield{type:"error",error:o instanceof ve?o:new ve(Ie.InternalError,String(o))}}}request(e,r,n){let{relatedRequestId:i,resumptionToken:s,onresumptiontoken:o,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=S=>{l(S)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(S){d(S);return}n?.signal?.throwIfAborted();let p=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:p};n?.onprogress&&(this._progressHandlers.set(p,n.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:p}}),a&&(f.params={...f.params,task:a}),c&&(f.params={...f.params,_meta:{...f.params?._meta||{},[Js]:c}});let m=S=>{this._responseHandlers.delete(p),this._progressHandlers.delete(p),this._cleanupTimeout(p),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:p,reason:String(S)}},{relatedRequestId:i,resumptionToken:s,onresumptiontoken:o}).catch(y=>this._onerror(new Error(`Failed to send cancellation: ${y}`)));let b=S instanceof ve?S:new ve(Ie.RequestTimeout,String(S));l(b)};this._responseHandlers.set(p,S=>{if(!n?.signal?.aborted){if(S instanceof Error)return l(S);try{let b=oi(r,S.result);b.success?u(b.data):l(b.error)}catch(b){l(b)}}}),n?.signal?.addEventListener("abort",()=>{m(n?.signal?.reason)});let h=n?.timeout??WG,g=()=>m(ve.fromError(Ie.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(p,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let v=c?.taskId;if(v){let S=b=>{let y=this._responseHandlers.get(p);y?y(b):this._onerror(new Error(`Response handler missing for side-channeled request ${p}`))};this._requestResolvers.set(p,S),this._enqueueTaskMessage(v,{type:"request",message:f,timestamp:Date.now()}).catch(b=>{this._cleanupTimeout(p),l(b)})}else this._transport.send(f,{relatedRequestId:i,resumptionToken:s,onresumptiontoken:o}).catch(S=>{this._cleanupTimeout(p),l(S)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},Qm,r)}async getTaskResult(e,r,n){return this.request({method:"tasks/result",params:e},r,n)}async listTasks(e,r){return this.request({method:"tasks/list",params:e},rh,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},aC,r)}async notification(e,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(e.method);let n=r?.relatedTask?.taskId;if(n){let a={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[Js]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:a,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!r?.relatedRequestId&&!r?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let a={...e,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[Js]:r.relatedTask}}}),this._transport?.send(a,r).catch(c=>this._onerror(c))});return}let o={...e,jsonrpc:"2.0"};r?.relatedTask&&(o={...o,params:{...o.params,_meta:{...o.params?._meta||{},[Js]:r.relatedTask}}}),await this._transport.send(o,r)}setRequestHandler(e,r){let n=pw(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(i,s)=>{let o=fw(e,i);return Promise.resolve(r(o,s))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw new Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,r){let n=pw(e);this._notificationHandlers.set(n,i=>{let s=fw(e,i);return Promise.resolve(r(s))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let r=this._taskProgressTokens.get(e);r!==void 0&&(this._progressHandlers.delete(r),this._taskProgressTokens.delete(e))}async _enqueueTaskMessage(e,r,n){if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let i=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,r,n,i)}async _clearTaskQueue(e,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(e,r);for(let i of n)if(i.type==="request"&&qx(i.message)){let s=i.message.id,o=this._requestResolvers.get(s);o?(o(new ve(Ie.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let i=await this._taskStore?.getTask(e);i?.pollInterval&&(n=i.pollInterval)}catch{}return new Promise((i,s)=>{if(r.aborted){s(new ve(Ie.InvalidRequest,"Request cancelled"));return}let o=setTimeout(i,n);r.addEventListener("abort",()=>{clearTimeout(o),s(new ve(Ie.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async i=>{if(!e)throw new Error("No request provided");return await n.createTask(i,e.id,{method:e.method,params:e.params},r)},getTask:async i=>{let s=await n.getTask(i,r);if(!s)throw new ve(Ie.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(i,s,o)=>{await n.storeTaskResult(i,s,o,r);let a=await n.getTask(i,r);if(a){let c=rd.parse({method:"notifications/tasks/status",params:a});await this.notification(c),Xs(a.status)&&this._cleanupTaskProgressHandler(i)}},getTaskResult:i=>n.getTaskResult(i,r),updateTaskStatus:async(i,s,o)=>{let a=await n.getTask(i,r);if(!a)throw new ve(Ie.InvalidParams,`Task "${i}" not found - it may have been cleaned up`);if(Xs(a.status))throw new ve(Ie.InvalidParams,`Cannot update task "${i}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(i,s,o,r);let c=await n.getTask(i,r);if(c){let u=rd.parse({method:"notifications/tasks/status",params:c});await this.notification(u),Xs(c.status)&&this._cleanupTaskProgressHandler(i)}},listTasks:i=>n.listTasks(i,r)}}};function hC(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function gC(t,e){let r={...t};for(let n in e){let i=n,s=e[i];if(s===void 0)continue;let o=r[i];hC(o)&&hC(s)?r[i]={...o,...s}:r[i]=s}return r}var rN=Pe(Y0(),1),nN=Pe(tN(),1);function jX(){let t=new rN.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,nN.default)(t),t}var Fh=class{constructor(e){this._ajv=e??jX()}getValidator(e){let r="$id"in e&&typeof e.$id=="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var qh=class{constructor(e){this._client=e}async*callToolStream(e,r=ac,n){let i=this._client,s={...n,task:n?.task??(i.isToolTask(e.name)?{}:void 0)},o=i.requestStream({method:"tools/call",params:e},r,s),a=i.getToolOutputValidator(e.name);for await(let c of o){if(c.type==="result"&&a){let u=c.result;if(!u.structuredContent&&!u.isError){yield{type:"error",error:new ve(Ie.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`)};return}if(u.structuredContent)try{let l=a(u.structuredContent);if(!l.valid){yield{type:"error",error:new ve(Ie.InvalidParams,`Structured content does not match the tool's output schema: ${l.errorMessage}`)};return}}catch(l){if(l instanceof ve){yield{type:"error",error:l};return}yield{type:"error",error:new ve(Ie.InvalidParams,`Failed to validate structured content: ${l instanceof Error?l.message:String(l)}`)};return}}yield c}}async getTask(e,r){return this._client.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._client.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._client.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._client.cancelTask({taskId:e},r)}requestStream(e,r,n){return this._client.requestStream(e,r,n)}};function iN(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"tools/call":if(!t.tools?.call)throw new Error(`${r} does not support task creation for tools/call (required for ${e})`);break;default:break}}function sN(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"sampling/createMessage":if(!t.sampling?.createMessage)throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${e})`);break;case"elicitation/create":if(!t.elicitation?.create)throw new Error(`${r} does not support task creation for elicitation/create (required for ${e})`);break;default:break}}function Hh(t,e){if(!(!t||e===null||typeof e!="object")){if(t.type==="object"&&t.properties&&typeof t.properties=="object"){let r=e,n=t.properties;for(let i of Object.keys(n)){let s=n[i];r[i]===void 0&&Object.prototype.hasOwnProperty.call(s,"default")&&(r[i]=s.default),r[i]!==void 0&&Hh(s,r[i])}}if(Array.isArray(t.anyOf))for(let r of t.anyOf)typeof r!="boolean"&&Hh(r,e);if(Array.isArray(t.oneOf))for(let r of t.oneOf)typeof r!="boolean"&&Hh(r,e)}}function zX(t){if(!t)return{supportsFormMode:!1,supportsUrlMode:!1};let e=t.form!==void 0,r=t.url!==void 0;return{supportsFormMode:e||!e&&!r,supportsUrlMode:r}}var Ec=class extends ih{constructor(e,r){super(r),this._clientInfo=e,this._cachedToolOutputValidators=new Map,this._cachedKnownTaskTools=new Set,this._cachedRequiredTaskTools=new Set,this._listChangedDebounceTimers=new Map,this._capabilities=r?.capabilities??{},this._jsonSchemaValidator=r?.jsonSchemaValidator??new Fh,r?.listChanged&&(this._pendingListChangedConfig=r.listChanged)}_setupListChangedHandlers(e){e.tools&&this._serverCapabilities?.tools?.listChanged&&this._setupListChangedHandler("tools",ow,e.tools,async()=>(await this.listTools()).tools),e.prompts&&this._serverCapabilities?.prompts?.listChanged&&this._setupListChangedHandler("prompts",iw,e.prompts,async()=>(await this.listPrompts()).prompts),e.resources&&this._serverCapabilities?.resources?.listChanged&&this._setupListChangedHandler("resources",Xx,e.resources,async()=>(await this.listResources()).resources)}get experimental(){return this._experimental||(this._experimental={tasks:new qh(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=gC(this._capabilities,e)}setRequestHandler(e,r){let i=Om(e)?.method;if(!i)throw new Error("Schema is missing a method literal");let s;if(nc(i)){let a=i;s=a._zod?.def?.value??a.value}else{let a=i;s=a._def?.value??a.value}if(typeof s!="string")throw new Error("Schema method literal must be a string");let o=s;if(o==="elicitation/create"){let a=async(c,u)=>{let l=oi(uw,c);if(!l.success){let S=l.error instanceof Error?l.error.message:String(l.error);throw new ve(Ie.InvalidParams,`Invalid elicitation request: ${S}`)}let{params:d}=l.data;d.mode=d.mode??"form";let{supportsFormMode:p,supportsUrlMode:f}=zX(this._capabilities.elicitation);if(d.mode==="form"&&!p)throw new ve(Ie.InvalidParams,"Client does not support form-mode elicitation requests");if(d.mode==="url"&&!f)throw new ve(Ie.InvalidParams,"Client does not support URL-mode elicitation requests");let m=await Promise.resolve(r(c,u));if(d.task){let S=oi(zo,m);if(!S.success){let b=S.error instanceof Error?S.error.message:String(S.error);throw new ve(Ie.InvalidParams,`Invalid task creation result: ${b}`)}return S.data}let h=oi(lw,m);if(!h.success){let S=h.error instanceof Error?h.error.message:String(h.error);throw new ve(Ie.InvalidParams,`Invalid elicitation result: ${S}`)}let g=h.data,v=d.mode==="form"?d.requestedSchema:void 0;if(d.mode==="form"&&g.action==="accept"&&g.content&&v&&this._capabilities.elicitation?.form?.applyDefaults)try{Hh(v,g.content)}catch{}return g};return super.setRequestHandler(e,a)}if(o==="sampling/createMessage"){let a=async(c,u)=>{let l=oi(aw,c);if(!l.success){let m=l.error instanceof Error?l.error.message:String(l.error);throw new ve(Ie.InvalidParams,`Invalid sampling request: ${m}`)}let{params:d}=l.data,p=await Promise.resolve(r(c,u));if(d.task){let m=oi(zo,p);if(!m.success){let h=m.error instanceof Error?m.error.message:String(m.error);throw new ve(Ie.InvalidParams,`Invalid task creation result: ${h}`)}return m.data}let f=oi(cw,p);if(!f.success){let m=f.error instanceof Error?f.error.message:String(f.error);throw new ve(Ie.InvalidParams,`Invalid sampling result: ${m}`)}return f.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapability(e,r){if(!this._serverCapabilities?.[e])throw new Error(`Server does not support ${e} (required for ${r})`)}async connect(e,r){if(await super.connect(e),e.sessionId===void 0)try{let n=await this.request({method:"initialize",params:{protocolVersion:Ux,capabilities:this._capabilities,clientInfo:this._clientInfo}},Bx,r);if(n===void 0)throw new Error(`Server sent invalid initialize result: ${n}`);if(!XO.includes(n.protocolVersion))throw new Error(`Server's protocol version is not supported: ${n.protocolVersion}`);this._serverCapabilities=n.capabilities,this._serverVersion=n.serverInfo,e.setProtocolVersion&&e.setProtocolVersion(n.protocolVersion),this._instructions=n.instructions,await this.notification({method:"notifications/initialized"}),this._pendingListChangedConfig&&(this._setupListChangedHandlers(this._pendingListChangedConfig),this._pendingListChangedConfig=void 0)}catch(n){throw this.close(),n}}getServerCapabilities(){return this._serverCapabilities}getServerVersion(){return this._serverVersion}getInstructions(){return this._instructions}assertCapabilityForMethod(e){switch(e){case"logging/setLevel":if(!this._serverCapabilities?.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._serverCapabilities?.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":case"resources/subscribe":case"resources/unsubscribe":if(!this._serverCapabilities?.resources)throw new Error(`Server does not support resources (required for ${e})`);if(e==="resources/subscribe"&&!this._serverCapabilities.resources.subscribe)throw new Error(`Server does not support resource subscriptions (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._serverCapabilities?.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"completion/complete":if(!this._serverCapabilities?.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"initialize":break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/roots/list_changed":if(!this._capabilities.roots?.listChanged)throw new Error(`Client does not support roots list changed notifications (required for ${e})`);break;case"notifications/initialized":break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"sampling/createMessage":if(!this._capabilities.sampling)throw new Error(`Client does not support sampling capability (required for ${e})`);break;case"elicitation/create":if(!this._capabilities.elicitation)throw new Error(`Client does not support elicitation capability (required for ${e})`);break;case"roots/list":if(!this._capabilities.roots)throw new Error(`Client does not support roots capability (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Client does not support tasks capability (required for ${e})`);break;case"ping":break}}assertTaskCapability(e){iN(this._serverCapabilities?.tasks?.requests,e,"Server")}assertTaskHandlerCapability(e){this._capabilities&&sN(this._capabilities.tasks?.requests,e,"Client")}async ping(e){return this.request({method:"ping"},jo,e)}async complete(e,r){return this.request({method:"completion/complete",params:e},dw,r)}async setLoggingLevel(e,r){return this.request({method:"logging/setLevel",params:{level:e}},jo,r)}async getPrompt(e,r){return this.request({method:"prompts/get",params:e},nw,r)}async listPrompts(e,r){return this.request({method:"prompts/list",params:e},Yx,r)}async listResources(e,r){return this.request({method:"resources/list",params:e},Wx,r)}async listResourceTemplates(e,r){return this.request({method:"resources/templates/list",params:e},Vx,r)}async readResource(e,r){return this.request({method:"resources/read",params:e},Jx,r)}async subscribeResource(e,r){return this.request({method:"resources/subscribe",params:e},jo,r)}async unsubscribeResource(e,r){return this.request({method:"resources/unsubscribe",params:e},jo,r)}async callTool(e,r=ac,n){if(this.isToolTaskRequired(e.name))throw new ve(Ie.InvalidRequest,`Tool "${e.name}" requires task-based execution. Use client.experimental.tasks.callToolStream() instead.`);let i=await this.request({method:"tools/call",params:e},r,n),s=this.getToolOutputValidator(e.name);if(s){if(!i.structuredContent&&!i.isError)throw new ve(Ie.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`);if(i.structuredContent)try{let o=s(i.structuredContent);if(!o.valid)throw new ve(Ie.InvalidParams,`Structured content does not match the tool's output schema: ${o.errorMessage}`)}catch(o){throw o instanceof ve?o:new ve(Ie.InvalidParams,`Failed to validate structured content: ${o instanceof Error?o.message:String(o)}`)}}return i}isToolTask(e){return this._serverCapabilities?.tasks?.requests?.tools?.call?this._cachedKnownTaskTools.has(e):!1}isToolTaskRequired(e){return this._cachedRequiredTaskTools.has(e)}cacheToolMetadata(e){this._cachedToolOutputValidators.clear(),this._cachedKnownTaskTools.clear(),this._cachedRequiredTaskTools.clear();for(let r of e){if(r.outputSchema){let i=this._jsonSchemaValidator.getValidator(r.outputSchema);this._cachedToolOutputValidators.set(r.name,i)}let n=r.execution?.taskSupport;(n==="required"||n==="optional")&&this._cachedKnownTaskTools.add(r.name),n==="required"&&this._cachedRequiredTaskTools.add(r.name)}}getToolOutputValidator(e){return this._cachedToolOutputValidators.get(e)}async listTools(e,r){let n=await this.request({method:"tools/list",params:e},sw,r);return this.cacheToolMetadata(n.tools),n}_setupListChangedHandler(e,r,n,i){let s=fC.safeParse(n);if(!s.success)throw new Error(`Invalid ${e} listChanged options: ${s.error.message}`);if(typeof n.onChanged!="function")throw new Error(`Invalid ${e} listChanged options: onChanged must be a function`);let{autoRefresh:o,debounceMs:a}=s.data,{onChanged:c}=n,u=async()=>{if(!o){c(null,null);return}try{let d=await i();c(null,d)}catch(d){let p=d instanceof Error?d:new Error(String(d));c(p,null)}},l=()=>{if(a){let d=this._listChangedDebounceTimers.get(e);d&&clearTimeout(d);let p=setTimeout(u,a);this._listChangedDebounceTimers.set(e,p)}else u()};this.setNotificationHandler(r,l)}async sendRootsListChanged(){return this.notification({method:"notifications/roots/list_changed"})}};var KN=Pe(WN(),1),Nd=Pe(require("node:process"),1),JN=require("node:stream");var Bh=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(` -`);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),dY(r)}clear(){this._buffer=void 0}};function dY(t){return sC.parse(JSON.parse(t))}function VN(t){return JSON.stringify(t)+` -`}var pY=Nd.default.platform==="win32"?["APPDATA","HOMEDRIVE","HOMEPATH","LOCALAPPDATA","PATH","PROCESSOR_ARCHITECTURE","SYSTEMDRIVE","SYSTEMROOT","TEMP","USERNAME","USERPROFILE","PROGRAMFILES"]:["HOME","LOGNAME","PATH","SHELL","TERM","USER"];function fY(){let t={};for(let e of pY){let r=Nd.default.env[e];r!==void 0&&(r.startsWith("()")||(t[e]=r))}return t}var $c=class{constructor(e){this._readBuffer=new Bh,this._stderrStream=null,this._serverParams=e,(e.stderr==="pipe"||e.stderr==="overlapped")&&(this._stderrStream=new JN.PassThrough)}async start(){if(this._process)throw new Error("StdioClientTransport already started! If using Client class, note that connect() calls start() automatically.");return new Promise((e,r)=>{this._process=(0,KN.default)(this._serverParams.command,this._serverParams.args??[],{env:{...fY(),...this._serverParams.env},stdio:["pipe","pipe",this._serverParams.stderr??"inherit"],shell:!1,windowsHide:Nd.default.platform==="win32"&&mY(),cwd:this._serverParams.cwd}),this._process.on("error",n=>{r(n),this.onerror?.(n)}),this._process.on("spawn",()=>{e()}),this._process.on("close",n=>{this._process=void 0,this.onclose?.()}),this._process.stdin?.on("error",n=>{this.onerror?.(n)}),this._process.stdout?.on("data",n=>{this._readBuffer.append(n),this.processReadBuffer()}),this._process.stdout?.on("error",n=>{this.onerror?.(n)}),this._stderrStream&&this._process.stderr&&this._process.stderr.pipe(this._stderrStream)})}get stderr(){return this._stderrStream?this._stderrStream:this._process?.stderr??null}get pid(){return this._process?.pid??null}processReadBuffer(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){if(this._process){let e=this._process;this._process=void 0;let r=new Promise(n=>{e.once("close",()=>{n()})});try{e.stdin?.end()}catch{}if(await Promise.race([r,new Promise(n=>setTimeout(n,2e3).unref())]),e.exitCode===null){try{e.kill("SIGTERM")}catch{}await Promise.race([r,new Promise(n=>setTimeout(n,2e3).unref())])}if(e.exitCode===null)try{e.kill("SIGKILL")}catch{}}this._readBuffer.clear()}send(e){return new Promise(r=>{if(!this._process?.stdin)throw new Error("Not connected");let n=VN(e);this._process.stdin.write(n)?r():this._process.stdin.once("drain",r)})}};function mY(){return"type"in Nd.default}Dr();Tn();rr();var Ic=require("fs"),wE=require("path"),dM=require("os");re();var MY=(0,wE.join)((0,dM.homedir)(),".claude-mem"),xE=(0,wE.join)(MY,".env"),DY=["ANTHROPIC_API_KEY","CLAUDECODE"];function jY(t){let e={};for(let r of t.split(` -`)){let n=r.trim();if(!n||n.startsWith("#"))continue;let i=n.indexOf("=");if(i===-1)continue;let s=n.slice(0,i).trim(),o=n.slice(i+1).trim();(o.startsWith('"')&&o.endsWith('"')||o.startsWith("'")&&o.endsWith("'"))&&(o=o.slice(1,-1)),s&&(e[s]=o)}return e}function EE(){if(!(0,Ic.existsSync)(xE))return{};try{let t=(0,Ic.readFileSync)(xE,"utf-8"),e=jY(t),r={};return e.ANTHROPIC_API_KEY&&(r.ANTHROPIC_API_KEY=e.ANTHROPIC_API_KEY),e.GEMINI_API_KEY&&(r.GEMINI_API_KEY=e.GEMINI_API_KEY),e.OPENROUTER_API_KEY&&(r.OPENROUTER_API_KEY=e.OPENROUTER_API_KEY),r}catch(t){return _.warn("ENV","Failed to load .env file",{path:xE},t),{}}}function pM(t=!0){let e={};for(let[r,n]of Object.entries(process.env))n!==void 0&&!DY.includes(r)&&(e[r]=n);if(e.CLAUDE_CODE_ENTRYPOINT="sdk-ts",t){let r=EE();r.ANTHROPIC_API_KEY&&(e.ANTHROPIC_API_KEY=r.ANTHROPIC_API_KEY),r.GEMINI_API_KEY&&(e.GEMINI_API_KEY=r.GEMINI_API_KEY),r.OPENROUTER_API_KEY&&(e.OPENROUTER_API_KEY=r.OPENROUTER_API_KEY),!e.ANTHROPIC_API_KEY&&process.env.CLAUDE_CODE_OAUTH_TOKEN&&(e.CLAUDE_CODE_OAUTH_TOKEN=process.env.CLAUDE_CODE_OAUTH_TOKEN)}return e}function Rc(t){return EE()[t]}function zY(){return!!EE().ANTHROPIC_API_KEY}function Xh(){return zY()?"API key (from ~/.claude-mem/.env)":process.env.CLAUDE_CODE_OAUTH_TOKEN?"Claude Code OAuth token (from parent process)":"Claude Code CLI (subscription billing)"}re();var AE=require("child_process"),NE=Pe(require("path"),1),ME=Pe(require("os"),1),Jo=Pe(require("fs"),1);re();rr();zt();var kE=["CLAUDECODE_","CLAUDE_CODE_"],TE=new Set(["CLAUDECODE","CLAUDE_CODE_SESSION","CLAUDE_CODE_ENTRYPOINT","MCP_SESSION_ID"]),LY=new Set(["CLAUDE_CODE_OAUTH_TOKEN","CLAUDE_CODE_GIT_BASH_PATH"]);function Ui(t=process.env){let e={};for(let[r,n]of Object.entries(t))if(n!==void 0){if(LY.has(r)){e[r]=n;continue}TE.has(r)||kE.some(i=>r.startsWith(i))||(e[r]=n)}return e}var Ko=require("fs"),EM=require("os"),CE=Pe(require("path"),1);re();var xs=require("fs"),fM=require("os"),Ld=Pe(require("path"),1);re();var UY=5e3,FY=1e3,qY=Ld.default.join((0,fM.homedir)(),".claude-mem"),HY=Ld.default.join(qY,"supervisor.json");function $n(t){if(!Number.isInteger(t)||t<0||t===0)return!1;try{return process.kill(t,0),!0}catch(e){return e.code==="EPERM"}}var IE=class{registryPath;entries=new Map;runtimeProcesses=new Map;initialized=!1;constructor(e=HY){this.registryPath=e}initialize(){if(this.initialized)return;if(this.initialized=!0,(0,xs.mkdirSync)(Ld.default.dirname(this.registryPath),{recursive:!0}),!(0,xs.existsSync)(this.registryPath)){this.persist();return}try{let n=JSON.parse((0,xs.readFileSync)(this.registryPath,"utf-8")).processes??{};for(let[i,s]of Object.entries(n))this.entries.set(i,s)}catch(r){_.warn("SYSTEM","Failed to parse supervisor registry, rebuilding",{path:this.registryPath},r),this.entries.clear()}let e=this.pruneDeadEntries();e>0&&_.info("SYSTEM","Removed dead processes from supervisor registry",{removed:e}),this.persist()}register(e,r,n){this.initialize(),this.entries.set(e,r),n&&this.runtimeProcesses.set(e,n),this.persist()}unregister(e){this.initialize(),this.entries.delete(e),this.runtimeProcesses.delete(e),this.persist()}clear(){this.entries.clear(),this.runtimeProcesses.clear(),this.persist()}getAll(){return this.initialize(),Array.from(this.entries.entries()).map(([e,r])=>({id:e,...r})).sort((e,r)=>{let n=Date.parse(e.startedAt),i=Date.parse(r.startedAt);return(Number.isNaN(n)?0:n)-(Number.isNaN(i)?0:i)})}getBySession(e){let r=String(e);return this.getAll().filter(n=>n.sessionId!==void 0&&String(n.sessionId)===r)}getRuntimeProcess(e){return this.runtimeProcesses.get(e)}getByPid(e){return this.getAll().filter(r=>r.pid===e)}pruneDeadEntries(){this.initialize();let e=0;for(let[r,n]of this.entries)$n(n.pid)||(this.entries.delete(r),this.runtimeProcesses.delete(r),e+=1);return e>0&&this.persist(),e}async reapSession(e){this.initialize();let r=this.getBySession(e);if(r.length===0)return 0;let n=typeof e=="number"?e:Number(e)||void 0;_.info("SYSTEM",`Reaping ${r.length} process(es) for session ${e}`,{sessionId:n,pids:r.map(a=>a.pid)});let i=r.filter(a=>$n(a.pid));for(let a of i)try{process.kill(a.pid,"SIGTERM")}catch(c){c.code!=="ESRCH"&&_.debug("SYSTEM",`Failed to SIGTERM session process PID ${a.pid}`,{pid:a.pid},c)}let s=Date.now()+UY;for(;Date.now()$n(c.pid)).length!==0;)await new Promise(c=>setTimeout(c,100));let o=i.filter(a=>$n(a.pid));for(let a of o){_.warn("SYSTEM",`Session process PID ${a.pid} did not exit after SIGTERM, sending SIGKILL`,{pid:a.pid,sessionId:n});try{process.kill(a.pid,"SIGKILL")}catch(c){c.code!=="ESRCH"&&_.debug("SYSTEM",`Failed to SIGKILL session process PID ${a.pid}`,{pid:a.pid},c)}}if(o.length>0){let a=Date.now()+FY;for(;Date.now()$n(u.pid)).length!==0;)await new Promise(u=>setTimeout(u,100))}for(let a of r)this.entries.delete(a.id),this.runtimeProcesses.delete(a.id);return this.persist(),_.info("SYSTEM",`Reaped ${r.length} process(es) for session ${e}`,{sessionId:n,reaped:r.length}),r.length}persist(){let e={processes:Object.fromEntries(this.entries.entries())};(0,xs.mkdirSync)(Ld.default.dirname(this.registryPath),{recursive:!0}),(0,xs.writeFileSync)(this.registryPath,JSON.stringify(e,null,2))}},$E=null;function Yh(){return $E||($E=new IE),$E}var gM=require("child_process"),vM=require("fs"),yM=require("os"),RE=Pe(require("path"),1),_M=require("util");re();Tn();var ZY=(0,_M.promisify)(gM.execFile),BY=RE.default.join((0,yM.homedir)(),".claude-mem"),GY=RE.default.join(BY,"worker.pid");async function bM(t){let e=t.currentPid??process.pid,r=t.pidFilePath??GY,n=t.registry.getAll(),i=[...n].filter(o=>o.pid!==e).sort((o,a)=>Date.parse(a.startedAt)-Date.parse(o.startedAt));for(let o of i){if(!$n(o.pid)){t.registry.unregister(o.id);continue}try{await hM(o.pid,"SIGTERM")}catch(a){_.debug("SYSTEM","Failed to send SIGTERM to child process",{pid:o.pid,type:o.type},a)}}await mM(i,5e3);let s=i.filter(o=>$n(o.pid));for(let o of s)try{await hM(o.pid,"SIGKILL")}catch(a){_.debug("SYSTEM","Failed to force kill child process",{pid:o.pid,type:o.type},a)}await mM(s,1e3);for(let o of i)t.registry.unregister(o.id);for(let o of n.filter(a=>a.pid===e))t.registry.unregister(o.id);try{(0,vM.rmSync)(r,{force:!0})}catch(o){_.debug("SYSTEM","Failed to remove PID file during shutdown",{pidFilePath:r},o)}t.registry.pruneDeadEntries()}async function mM(t,e){let r=Date.now()+e;for(;Date.now()$n(i.pid)).length===0)return;await new Promise(i=>setTimeout(i,100))}}async function hM(t,e){if(e==="SIGTERM"){try{process.kill(t,e)}catch(r){if(r.code==="ESRCH")return;throw r}return}if(process.platform==="win32"){let r=await WY();if(r){await new Promise((i,s)=>{r(t,e,o=>{if(!o){i();return}if(o.code==="ESRCH"){i();return}s(o)})});return}let n=["/PID",String(t),"/T"];e==="SIGKILL"&&n.push("/F"),await ZY("taskkill",n,{timeout:Er.POWERSHELL_COMMAND,windowsHide:!0});return}try{process.kill(t,e)}catch(r){if(r.code==="ESRCH")return;throw r}}async function WY(){let t="tree-kill";try{let e=await import(t);return e.default??e}catch{return null}}re();var SM=3e4,Oc=null;function VY(){let e=Yh().pruneDeadEntries();e>0&&_.info("SYSTEM",`Health check: pruned ${e} dead process(es) from registry`)}function xM(){Oc===null&&(Oc=setInterval(VY,SM),Oc.unref(),_.debug("SYSTEM","Health checker started",{intervalMs:SM}))}function wM(){Oc!==null&&(clearInterval(Oc),Oc=null,_.debug("SYSTEM","Health checker stopped"))}var KY=CE.default.join((0,EM.homedir)(),".claude-mem"),JY=CE.default.join(KY,"worker.pid"),OE=class{registry;started=!1;stopPromise=null;signalHandlersRegistered=!1;shutdownInitiated=!1;shutdownHandler=null;constructor(e){this.registry=e}async start(){if(this.started)return;if(this.registry.initialize(),PE({logAlive:!1})==="alive")throw new Error("Worker already running");this.started=!0,xM()}configureSignalHandlers(e){if(this.shutdownHandler=e,this.signalHandlersRegistered)return;this.signalHandlersRegistered=!0;let r=async n=>{if(this.shutdownInitiated){_.warn("SYSTEM",`Received ${n} but shutdown already in progress`);return}this.shutdownInitiated=!0,_.info("SYSTEM",`Received ${n}, shutting down...`);try{this.shutdownHandler?await this.shutdownHandler():await this.stop()}catch(i){_.error("SYSTEM","Error during shutdown",{},i);try{await this.stop()}catch(s){_.debug("SYSTEM","Supervisor shutdown fallback failed",{},s)}}process.exit(0)};process.on("SIGTERM",()=>{r("SIGTERM")}),process.on("SIGINT",()=>{r("SIGINT")}),process.platform!=="win32"&&(process.argv.includes("--daemon")?process.on("SIGHUP",()=>{_.debug("SYSTEM","Ignoring SIGHUP in daemon mode")}):process.on("SIGHUP",()=>{r("SIGHUP")}))}async stop(){if(this.stopPromise){await this.stopPromise;return}wM(),this.stopPromise=bM({registry:this.registry,currentPid:process.pid}).finally(()=>{this.started=!1,this.stopPromise=null}),await this.stopPromise}assertCanSpawn(e){if(this.stopPromise!==null)throw new Error(`Supervisor is shutting down, refusing to spawn ${e}`)}registerProcess(e,r,n){this.registry.register(e,r,n)}unregisterProcess(e){this.registry.unregister(e)}getRegistry(){return this.registry}},Qh=new OE(Yh());async function kM(){await Qh.start()}async function TM(){await Qh.stop()}function vt(){return Qh}function $M(t){Qh.configureSignalHandlers(t)}function PE(t={}){let e=t.pidFilePath??JY;if(!(0,Ko.existsSync)(e))return"missing";let r=null;try{r=JSON.parse((0,Ko.readFileSync)(e,"utf-8"))}catch(n){return _.warn("SYSTEM","Failed to parse worker PID file, removing it",{path:e},n),(0,Ko.rmSync)(e,{force:!0}),"invalid"}return $n(r.pid)?((t.logAlive??!0)&&_.info("SYSTEM","Worker already running (PID alive)",{existingPid:r.pid,existingPort:r.port,startedAt:r.startedAt}),"alive"):(_.info("SYSTEM","Removing stale PID file (worker process is dead)",{pid:r.pid,port:r.port,startedAt:r.startedAt}),(0,Ko.rmSync)(e,{force:!0}),"stale")}var XY="claude-mem-chroma",YY="1.0.0",IM=3e4,RM=1e4,QY=NE.default.join(ME.default.homedir(),".claude-mem","chroma"),eg="chroma-mcp",ws=class t{static instance=null;client=null;transport=null;connected=!1;lastConnectionFailureTimestamp=0;connecting=null;constructor(){}static getInstance(){return t.instance||(t.instance=new t),t.instance}async ensureConnected(){if(this.connected&&this.client)return;let e=Date.now()-this.lastConnectionFailureTimestamp;if(this.lastConnectionFailureTimestamp>0&&e{a=setTimeout(()=>d(new Error(`MCP connection to chroma-mcp timed out after ${IM}ms`)),IM)});try{await Promise.race([o,c])}catch(l){clearTimeout(a),_.warn("CHROMA_MCP","Connection failed, killing subprocess to prevent zombie",{error:l instanceof Error?l.message:String(l)});try{await this.transport.close()}catch{}try{await this.client.close()}catch{}throw this.client=null,this.transport=null,this.connected=!1,l}clearTimeout(a),this.connected=!0,this.registerManagedProcess(),_.info("CHROMA_MCP","Connected to chroma-mcp successfully");let u=this.transport;this.transport.onclose=()=>{if(this.transport!==u){_.debug("CHROMA_MCP","Ignoring stale onclose from previous transport");return}_.warn("CHROMA_MCP","chroma-mcp subprocess closed unexpectedly, applying reconnect backoff"),this.connected=!1,vt().unregisterProcess(eg),this.client=null,this.transport=null,this.lastConnectionFailureTimestamp=Date.now()}}buildCommandArgs(){let e=Se.loadFromFile(jt),r=e.CLAUDE_MEM_CHROMA_MODE||"local",n=process.env.CLAUDE_MEM_PYTHON_VERSION||e.CLAUDE_MEM_PYTHON_VERSION||"3.13";if(r==="remote"){let i=e.CLAUDE_MEM_CHROMA_HOST||"127.0.0.1",s=e.CLAUDE_MEM_CHROMA_PORT||"8000",o=e.CLAUDE_MEM_CHROMA_SSL==="true",a=e.CLAUDE_MEM_CHROMA_TENANT||"default_tenant",c=e.CLAUDE_MEM_CHROMA_DATABASE||"default_database",u=e.CLAUDE_MEM_CHROMA_API_KEY||"",l=["--python",n,"chroma-mcp","--client-type","http","--host",i,"--port",s];return l.push("--ssl",o?"true":"false"),a!=="default_tenant"&&l.push("--tenant",a),c!=="default_database"&&l.push("--database",c),u&&l.push("--api-key",u),l}return["--python",n,"chroma-mcp","--client-type","persistent","--data-dir",QY.replace(/\\/g,"/")]}async callTool(e,r){await this.ensureConnected(),_.debug("CHROMA_MCP",`Calling tool: ${e}`,{arguments:JSON.stringify(r).slice(0,200)});let n;try{n=await this.client.callTool({name:e,arguments:r})}catch(o){this.connected=!1,this.client=null,this.transport=null,_.warn("CHROMA_MCP",`Transport error during "${e}", reconnecting and retrying once`,{error:o instanceof Error?o.message:String(o)});try{await this.ensureConnected(),n=await this.client.callTool({name:e,arguments:r})}catch(a){throw this.connected=!1,new Error(`chroma-mcp transport error during "${e}" (retry failed): ${a instanceof Error?a.message:String(a)}`)}}if(n.isError){let o=n.content?.find(a=>a.type==="text")?.text||"Unknown chroma-mcp error";throw new Error(`chroma-mcp tool "${e}" returned error: ${o}`)}let i=n.content;if(!i||i.length===0)return null;let s=i.find(o=>o.type==="text"&&o.text);if(!s||!s.text)return null;try{return JSON.parse(s.text)}catch{return null}}async isHealthy(){try{return await this.callTool("chroma_list_collections",{limit:1}),!0}catch{return!1}}async stop(){if(!this.client){_.debug("CHROMA_MCP","No active MCP connection to stop");return}_.info("CHROMA_MCP","Stopping chroma-mcp MCP connection");try{await this.client.close()}catch(e){_.debug("CHROMA_MCP","Error during client close (subprocess may already be dead)",{},e)}vt().unregisterProcess(eg),this.client=null,this.transport=null,this.connected=!1,this.connecting=null,_.info("CHROMA_MCP","chroma-mcp MCP connection stopped")}static async reset(){t.instance&&await t.instance.stop(),t.instance=null}getCombinedCertPath(){let e=NE.default.join(ME.default.homedir(),".claude-mem","combined_certs.pem");if(Jo.default.existsSync(e)){let r=Jo.default.statSync(e);if(Date.now()-r.mtimeMs<1440*60*1e3)return e}if(process.platform==="darwin")try{let r;try{r=(0,AE.execSync)('uvx --with certifi python -c "import certifi; print(certifi.where())"',{encoding:"utf8",stdio:["pipe","pipe","pipe"],timeout:1e4}).trim()}catch{return}if(!r||!Jo.default.existsSync(r))return;let n="";try{n=(0,AE.execSync)('security find-certificate -a -c "Zscaler" -p /Library/Keychains/System.keychain',{encoding:"utf8",stdio:["pipe","pipe","pipe"],timeout:5e3})}catch{return}if(!n||!n.includes("-----BEGIN CERTIFICATE-----")||!n.includes("-----END CERTIFICATE-----"))return;let i=Jo.default.readFileSync(r,"utf8"),s=e+".tmp";return Jo.default.writeFileSync(s,i+` -`+n),Jo.default.renameSync(s,e),_.info("CHROMA_MCP","Created combined SSL certificate bundle for Zscaler",{path:e}),e}catch(r){_.debug("CHROMA_MCP","Could not create combined cert bundle",{},r);return}}getSpawnEnv(){let e={};for(let[n,i]of Object.entries(Ui(process.env)))i!==void 0&&(e[n]=i);let r=this.getCombinedCertPath();return r?(_.info("CHROMA_MCP","Using combined SSL certificates for enterprise compatibility",{certPath:r}),{...e,SSL_CERT_FILE:r,REQUESTS_CA_BUNDLE:r,CURL_CA_BUNDLE:r,NODE_EXTRA_CA_CERTS:r}):e}registerManagedProcess(){let e=this.transport._process;e?.pid&&(vt().registerProcess(eg,{pid:e.pid,type:"chroma",startedAt:new Date().toISOString()},e),e.once("exit",()=>{vt().unregisterProcess(eg)}))}};ng();re();var Cc=class t{project;collectionName;collectionCreated=!1;BATCH_SIZE=100;constructor(e){this.project=e;let r=e.replace(/[^a-zA-Z0-9._-]/g,"_").replace(/[^a-zA-Z0-9]+$/,"");this.collectionName=`cm__${r||"unknown"}`}async ensureCollectionExists(){if(this.collectionCreated)return;let e=ws.getInstance();try{await e.callTool("chroma_create_collection",{collection_name:this.collectionName})}catch(r){if(!(r instanceof Error?r.message:String(r)).includes("already exists"))throw r}this.collectionCreated=!0,_.debug("CHROMA_SYNC","Collection ready",{collection:this.collectionName})}formatObservationDocs(e){let r=[],n=e.facts?JSON.parse(e.facts):[],i=e.concepts?JSON.parse(e.concepts):[],s=e.files_read?JSON.parse(e.files_read):[],o=e.files_modified?JSON.parse(e.files_modified):[],a={sqlite_id:e.id,doc_type:"observation",memory_session_id:e.memory_session_id,project:e.project,created_at_epoch:e.created_at_epoch,type:e.type||"discovery",title:e.title||"Untitled"};return e.subtitle&&(a.subtitle=e.subtitle),i.length>0&&(a.concepts=i.join(",")),s.length>0&&(a.files_read=s.join(",")),o.length>0&&(a.files_modified=o.join(",")),e.narrative&&r.push({id:`obs_${e.id}_narrative`,document:e.narrative,metadata:{...a,field_type:"narrative"}}),e.text&&r.push({id:`obs_${e.id}_text`,document:e.text,metadata:{...a,field_type:"text"}}),n.forEach((c,u)=>{r.push({id:`obs_${e.id}_fact_${u}`,document:c,metadata:{...a,field_type:"fact",fact_index:u}})}),r}formatSummaryDocs(e){let r=[],n={sqlite_id:e.id,doc_type:"session_summary",memory_session_id:e.memory_session_id,project:e.project,created_at_epoch:e.created_at_epoch,prompt_number:e.prompt_number||0};return e.request&&r.push({id:`summary_${e.id}_request`,document:e.request,metadata:{...n,field_type:"request"}}),e.investigated&&r.push({id:`summary_${e.id}_investigated`,document:e.investigated,metadata:{...n,field_type:"investigated"}}),e.learned&&r.push({id:`summary_${e.id}_learned`,document:e.learned,metadata:{...n,field_type:"learned"}}),e.completed&&r.push({id:`summary_${e.id}_completed`,document:e.completed,metadata:{...n,field_type:"completed"}}),e.next_steps&&r.push({id:`summary_${e.id}_next_steps`,document:e.next_steps,metadata:{...n,field_type:"next_steps"}}),e.notes&&r.push({id:`summary_${e.id}_notes`,document:e.notes,metadata:{...n,field_type:"notes"}}),r}async addDocuments(e){if(e.length===0)return;await this.ensureCollectionExists();let r=ws.getInstance();for(let n=0;nObject.fromEntries(Object.entries(o.metadata).filter(([a,c])=>c!=null&&c!=="")));try{await r.callTool("chroma_add_documents",{collection_name:this.collectionName,ids:i.map(o=>o.id),documents:i.map(o=>o.document),metadatas:s})}catch(o){if((o instanceof Error?o.message:String(o)).includes("already exist"))try{await r.callTool("chroma_delete_documents",{collection_name:this.collectionName,ids:i.map(c=>c.id)}),await r.callTool("chroma_add_documents",{collection_name:this.collectionName,ids:i.map(c=>c.id),documents:i.map(c=>c.document),metadatas:s}),_.info("CHROMA_SYNC","Batch reconciled via delete+add after duplicate conflict",{collection:this.collectionName,batchStart:n,batchSize:i.length})}catch(c){_.error("CHROMA_SYNC","Batch reconcile (delete+add) failed",{collection:this.collectionName,batchStart:n,batchSize:i.length},c)}else _.error("CHROMA_SYNC","Batch add failed, continuing with remaining batches",{collection:this.collectionName,batchStart:n,batchSize:i.length},o)}}_.debug("CHROMA_SYNC","Documents added",{collection:this.collectionName,count:e.length})}async syncObservation(e,r,n,i,s,o,a=0){let c={id:e,memory_session_id:r,project:n,text:null,type:i.type,title:i.title,subtitle:i.subtitle,facts:JSON.stringify(i.facts),narrative:i.narrative,concepts:JSON.stringify(i.concepts),files_read:JSON.stringify(i.files_read),files_modified:JSON.stringify(i.files_modified),prompt_number:s,discovery_tokens:a,created_at:new Date(o*1e3).toISOString(),created_at_epoch:o},u=this.formatObservationDocs(c);_.info("CHROMA_SYNC","Syncing observation",{observationId:e,documentCount:u.length,project:n}),await this.addDocuments(u)}async syncSummary(e,r,n,i,s,o,a=0){let c={id:e,memory_session_id:r,project:n,request:i.request,investigated:i.investigated,learned:i.learned,completed:i.completed,next_steps:i.next_steps,notes:i.notes,prompt_number:s,discovery_tokens:a,created_at:new Date(o*1e3).toISOString(),created_at_epoch:o},u=this.formatSummaryDocs(c);_.info("CHROMA_SYNC","Syncing summary",{summaryId:e,documentCount:u.length,project:n}),await this.addDocuments(u)}formatUserPromptDoc(e){return{id:`prompt_${e.id}`,document:e.prompt_text,metadata:{sqlite_id:e.id,doc_type:"user_prompt",memory_session_id:e.memory_session_id,project:e.project,created_at_epoch:e.created_at_epoch,prompt_number:e.prompt_number}}}async syncUserPrompt(e,r,n,i,s,o){let a={id:e,content_session_id:"",prompt_number:s,prompt_text:i,created_at:new Date(o*1e3).toISOString(),created_at_epoch:o,memory_session_id:r,project:n},c=this.formatUserPromptDoc(a);_.info("CHROMA_SYNC","Syncing user prompt",{promptId:e,project:n}),await this.addDocuments([c])}async getExistingChromaIds(e){let r=e??this.project;await this.ensureCollectionExists();let n=ws.getInstance(),i=new Set,s=new Set,o=new Set,a=0,c=1e3;for(_.info("CHROMA_SYNC","Fetching existing Chroma document IDs...",{project:r});;){let l=(await n.callTool("chroma_get_documents",{collection_name:this.collectionName,limit:c,offset:a,where:{project:r},include:["metadatas"]}))?.metadatas||[];if(l.length===0)break;for(let d of l)if(d&&d.sqlite_id){let p=d.sqlite_id;d.doc_type==="observation"?i.add(p):d.doc_type==="session_summary"?s.add(p):d.doc_type==="user_prompt"&&o.add(p)}a+=c,_.debug("CHROMA_SYNC","Fetched batch of existing IDs",{project:r,offset:a,batchSize:l.length})}return _.info("CHROMA_SYNC","Existing IDs fetched",{project:r,observations:i.size,summaries:s.size,prompts:o.size}),{observations:i,summaries:s,prompts:o}}async ensureBackfilled(e){let r=e??this.project;_.info("CHROMA_SYNC","Starting smart backfill",{project:r}),await this.ensureCollectionExists();let n=await this.getExistingChromaIds(r),i=new Es;try{let s=Array.from(n.observations).filter(y=>Number.isInteger(y)&&y>0),o=s.length>0?`AND id NOT IN (${s.join(",")})`:"",a=i.db.prepare(` +Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let o of t.seen.entries()){let a=o[1];if(e===o[0]){s(o);continue}if(t.external){let u=t.external.registry.get(o[0])?.id;if(e!==o[0]&&u){s(o);continue}}if(t.metadataRegistry.get(o[0])?.id){s(o);continue}if(a.cycle){s(o);continue}if(a.count>1&&t.reused==="ref"){s(o);continue}}}function Bm(t,e){let r=t.seen.get(e);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let n=o=>{let a=t.seen.get(o);if(a.ref===null)return;let c=a.def??a.schema,u={...c},l=a.ref;if(a.ref=null,l){n(l);let p=t.seen.get(l),f=p.schema;if(f.$ref&&(t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0")?(c.allOf=c.allOf??[],c.allOf.push(f)):Object.assign(c,f),Object.assign(c,u),o._zod.parent===l)for(let h in c)h==="$ref"||h==="allOf"||h in u||delete c[h];if(f.$ref&&p.def)for(let h in c)h==="$ref"||h==="allOf"||h in p.def&&JSON.stringify(c[h])===JSON.stringify(p.def[h])&&delete c[h]}let d=o._zod.parent;if(d&&d!==l){n(d);let p=t.seen.get(d);if(p?.schema.$ref&&(c.$ref=p.schema.$ref,p.def))for(let f in c)f==="$ref"||f==="allOf"||f in p.def&&JSON.stringify(c[f])===JSON.stringify(p.def[f])&&delete c[f]}t.override({zodSchema:o,jsonSchema:c,path:a.path??[]})};for(let o of[...t.seen.entries()].reverse())n(o[0]);let i={};if(t.target==="draft-2020-12"?i.$schema="https://json-schema.org/draft/2020-12/schema":t.target==="draft-07"?i.$schema="http://json-schema.org/draft-07/schema#":t.target==="draft-04"?i.$schema="http://json-schema.org/draft-04/schema#":t.target,t.external?.uri){let o=t.external.registry.get(e)?.id;if(!o)throw new Error("Schema is missing an `id` property");i.$id=t.external.uri(o)}Object.assign(i,r.def??r.schema);let s=t.external?.defs??{};for(let o of t.seen.entries()){let a=o[1];a.def&&a.defId&&(s[a.defId]=a.def)}t.external||Object.keys(s).length>0&&(t.target==="draft-2020-12"?i.$defs=s:i.definitions=s);try{let o=JSON.parse(JSON.stringify(i));return Object.defineProperty(o,"~standard",{value:{...e["~standard"],jsonSchema:{input:rd(e,"input",t.processors),output:rd(e,"output",t.processors)}},enumerable:!1,writable:!1}),o}catch{throw new Error("Error converting schema to JSON.")}}function Kr(t,e){let r=e??{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let n=t._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return Kr(n.element,r);if(n.type==="set")return Kr(n.valueType,r);if(n.type==="lazy")return Kr(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault")return Kr(n.innerType,r);if(n.type==="intersection")return Kr(n.left,r)||Kr(n.right,r);if(n.type==="record"||n.type==="map")return Kr(n.keyType,r)||Kr(n.valueType,r);if(n.type==="pipe")return Kr(n.in,r)||Kr(n.out,r);if(n.type==="object"){for(let i in n.shape)if(Kr(n.shape[i],r))return!0;return!1}if(n.type==="union"){for(let i of n.options)if(Kr(i,r))return!0;return!1}if(n.type==="tuple"){for(let i of n.items)if(Kr(i,r))return!0;return!!(n.rest&&Kr(n.rest,r))}return!1}var NO=(t,e={})=>r=>{let n=Hm({...r,processors:e});return Tt(t,n),Zm(n,t),Bm(n,t)},rd=(t,e,r={})=>n=>{let{libraryOptions:i,target:s}=n??{},o=Hm({...i??{},target:s,io:e,processors:r});return Tt(t,o),Zm(o,t),Bm(o,t)};var lZ={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},MO=(t,e,r,n)=>{let i=r;i.type="string";let{minimum:s,maximum:o,format:a,patterns:c,contentEncoding:u}=t._zod.bag;if(typeof s=="number"&&(i.minLength=s),typeof o=="number"&&(i.maxLength=o),a&&(i.format=lZ[a]??a,i.format===""&&delete i.format,a==="time"&&delete i.format),u&&(i.contentEncoding=u),c&&c.size>0){let l=[...c];l.length===1?i.pattern=l[0].source:l.length>1&&(i.allOf=[...l.map(d=>({...e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"?{type:"string"}:{},pattern:d.source}))])}},DO=(t,e,r,n)=>{let i=r,{minimum:s,maximum:o,format:a,multipleOf:c,exclusiveMaximum:u,exclusiveMinimum:l}=t._zod.bag;typeof a=="string"&&a.includes("int")?i.type="integer":i.type="number",typeof l=="number"&&(e.target==="draft-04"||e.target==="openapi-3.0"?(i.minimum=l,i.exclusiveMinimum=!0):i.exclusiveMinimum=l),typeof s=="number"&&(i.minimum=s,typeof l=="number"&&e.target!=="draft-04"&&(l>=s?delete i.minimum:delete i.exclusiveMinimum)),typeof u=="number"&&(e.target==="draft-04"||e.target==="openapi-3.0"?(i.maximum=u,i.exclusiveMaximum=!0):i.exclusiveMaximum=u),typeof o=="number"&&(i.maximum=o,typeof u=="number"&&e.target!=="draft-04"&&(u<=o?delete i.maximum:delete i.exclusiveMaximum)),typeof c=="number"&&(i.multipleOf=c)},jO=(t,e,r,n)=>{r.type="boolean"},zO=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema")},LO=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema")},UO=(t,e,r,n)=>{e.target==="openapi-3.0"?(r.type="string",r.nullable=!0,r.enum=[null]):r.type="null"},FO=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema")},qO=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema")},HO=(t,e,r,n)=>{r.not={}},ZO=(t,e,r,n)=>{},BO=(t,e,r,n)=>{},GO=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema")},WO=(t,e,r,n)=>{let i=t._zod.def,s=El(i.entries);s.every(o=>typeof o=="number")&&(r.type="number"),s.every(o=>typeof o=="string")&&(r.type="string"),r.enum=s},VO=(t,e,r,n)=>{let i=t._zod.def,s=[];for(let o of i.values)if(o===void 0){if(e.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof o=="bigint"){if(e.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");s.push(Number(o))}else s.push(o);if(s.length!==0)if(s.length===1){let o=s[0];r.type=o===null?"null":typeof o,e.target==="draft-04"||e.target==="openapi-3.0"?r.enum=[o]:r.const=o}else s.every(o=>typeof o=="number")&&(r.type="number"),s.every(o=>typeof o=="string")&&(r.type="string"),s.every(o=>typeof o=="boolean")&&(r.type="boolean"),s.every(o=>o===null)&&(r.type="null"),r.enum=s},KO=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema")},JO=(t,e,r,n)=>{let i=r,s=t._zod.pattern;if(!s)throw new Error("Pattern not found in template literal");i.type="string",i.pattern=s.source},XO=(t,e,r,n)=>{let i=r,s={type:"string",format:"binary",contentEncoding:"binary"},{minimum:o,maximum:a,mime:c}=t._zod.bag;o!==void 0&&(s.minLength=o),a!==void 0&&(s.maxLength=a),c?c.length===1?(s.contentMediaType=c[0],Object.assign(i,s)):(Object.assign(i,s),i.anyOf=c.map(u=>({contentMediaType:u}))):Object.assign(i,s)},YO=(t,e,r,n)=>{r.type="boolean"},QO=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},e1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Function types cannot be represented in JSON Schema")},t1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},r1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema")},n1=(t,e,r,n)=>{if(e.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema")},i1=(t,e,r,n)=>{let i=r,s=t._zod.def,{minimum:o,maximum:a}=t._zod.bag;typeof o=="number"&&(i.minItems=o),typeof a=="number"&&(i.maxItems=a),i.type="array",i.items=Tt(s.element,e,{...n,path:[...n.path,"items"]})},s1=(t,e,r,n)=>{let i=r,s=t._zod.def;i.type="object",i.properties={};let o=s.shape;for(let u in o)i.properties[u]=Tt(o[u],e,{...n,path:[...n.path,"properties",u]});let a=new Set(Object.keys(o)),c=new Set([...a].filter(u=>{let l=s.shape[u]._zod;return e.io==="input"?l.optin===void 0:l.optout===void 0}));c.size>0&&(i.required=Array.from(c)),s.catchall?._zod.def.type==="never"?i.additionalProperties=!1:s.catchall?s.catchall&&(i.additionalProperties=Tt(s.catchall,e,{...n,path:[...n.path,"additionalProperties"]})):e.io==="output"&&(i.additionalProperties=!1)},mx=(t,e,r,n)=>{let i=t._zod.def,s=i.inclusive===!1,o=i.options.map((a,c)=>Tt(a,e,{...n,path:[...n.path,s?"oneOf":"anyOf",c]}));s?r.oneOf=o:r.anyOf=o},o1=(t,e,r,n)=>{let i=t._zod.def,s=Tt(i.left,e,{...n,path:[...n.path,"allOf",0]}),o=Tt(i.right,e,{...n,path:[...n.path,"allOf",1]}),a=u=>"allOf"in u&&Object.keys(u).length===1,c=[...a(s)?s.allOf:[s],...a(o)?o.allOf:[o]];r.allOf=c},a1=(t,e,r,n)=>{let i=r,s=t._zod.def;i.type="array";let o=e.target==="draft-2020-12"?"prefixItems":"items",a=e.target==="draft-2020-12"||e.target==="openapi-3.0"?"items":"additionalItems",c=s.items.map((p,f)=>Tt(p,e,{...n,path:[...n.path,o,f]})),u=s.rest?Tt(s.rest,e,{...n,path:[...n.path,a,...e.target==="openapi-3.0"?[s.items.length]:[]]}):null;e.target==="draft-2020-12"?(i.prefixItems=c,u&&(i.items=u)):e.target==="openapi-3.0"?(i.items={anyOf:c},u&&i.items.anyOf.push(u),i.minItems=c.length,u||(i.maxItems=c.length)):(i.items=c,u&&(i.additionalItems=u));let{minimum:l,maximum:d}=t._zod.bag;typeof l=="number"&&(i.minItems=l),typeof d=="number"&&(i.maxItems=d)},c1=(t,e,r,n)=>{let i=r,s=t._zod.def;i.type="object";let o=s.keyType,c=o._zod.bag?.patterns;if(s.mode==="loose"&&c&&c.size>0){let l=Tt(s.valueType,e,{...n,path:[...n.path,"patternProperties","*"]});i.patternProperties={};for(let d of c)i.patternProperties[d.source]=l}else(e.target==="draft-07"||e.target==="draft-2020-12")&&(i.propertyNames=Tt(s.keyType,e,{...n,path:[...n.path,"propertyNames"]})),i.additionalProperties=Tt(s.valueType,e,{...n,path:[...n.path,"additionalProperties"]});let u=o._zod.values;if(u){let l=[...u].filter(d=>typeof d=="string"||typeof d=="number");l.length>0&&(i.required=l)}},u1=(t,e,r,n)=>{let i=t._zod.def,s=Tt(i.innerType,e,n),o=e.seen.get(t);e.target==="openapi-3.0"?(o.ref=i.innerType,r.nullable=!0):r.anyOf=[s,{type:"null"}]},l1=(t,e,r,n)=>{let i=t._zod.def;Tt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType},d1=(t,e,r,n)=>{let i=t._zod.def;Tt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType,r.default=JSON.parse(JSON.stringify(i.defaultValue))},p1=(t,e,r,n)=>{let i=t._zod.def;Tt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType,e.io==="input"&&(r._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},f1=(t,e,r,n)=>{let i=t._zod.def;Tt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}r.default=o},m1=(t,e,r,n)=>{let i=t._zod.def,s=e.io==="input"?i.in._zod.def.type==="transform"?i.out:i.in:i.out;Tt(s,e,n);let o=e.seen.get(t);o.ref=s},h1=(t,e,r,n)=>{let i=t._zod.def;Tt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType,r.readOnly=!0},g1=(t,e,r,n)=>{let i=t._zod.def;Tt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType},hx=(t,e,r,n)=>{let i=t._zod.def;Tt(i.innerType,e,n);let s=e.seen.get(t);s.ref=i.innerType},v1=(t,e,r,n)=>{let i=t._zod.innerType;Tt(i,e,n);let s=e.seen.get(t);s.ref=i};function pc(t){return!!t._zod}function li(t,e){return pc(t)?ac(t,e):t.safeParse(e)}function Gm(t){if(!t)return;let e;if(pc(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function S1(t){if(pc(t)){let s=t._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=t._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=t.value;if(n!==void 0)return n}var nd={};wn(nd,{ZodAny:()=>L1,ZodArray:()=>H1,ZodBase64:()=>Lx,ZodBase64URL:()=>Ux,ZodBigInt:()=>th,ZodBigIntFormat:()=>Hx,ZodBoolean:()=>eh,ZodCIDRv4:()=>jx,ZodCIDRv6:()=>zx,ZodCUID:()=>Ox,ZodCUID2:()=>Cx,ZodCatch:()=>uC,ZodCodec:()=>Jx,ZodCustom:()=>oh,ZodCustomStringFormat:()=>sd,ZodDate:()=>Bx,ZodDefault:()=>nC,ZodDiscriminatedUnion:()=>B1,ZodE164:()=>Fx,ZodEmail:()=>$x,ZodEmoji:()=>Ix,ZodEnum:()=>id,ZodExactOptional:()=>eC,ZodFile:()=>Y1,ZodFunction:()=>yC,ZodGUID:()=>Vm,ZodIPv4:()=>Mx,ZodIPv6:()=>Dx,ZodIntersection:()=>G1,ZodJWT:()=>qx,ZodKSUID:()=>Nx,ZodLazy:()=>hC,ZodLiteral:()=>X1,ZodMAC:()=>M1,ZodMap:()=>K1,ZodNaN:()=>dC,ZodNanoID:()=>Rx,ZodNever:()=>F1,ZodNonOptional:()=>Vx,ZodNull:()=>z1,ZodNullable:()=>rC,ZodNumber:()=>Qm,ZodNumberFormat:()=>fc,ZodObject:()=>rh,ZodOptional:()=>Wx,ZodPipe:()=>Kx,ZodPrefault:()=>sC,ZodPromise:()=>vC,ZodReadonly:()=>pC,ZodRecord:()=>sh,ZodSet:()=>J1,ZodString:()=>Xm,ZodStringFormat:()=>St,ZodSuccess:()=>cC,ZodSymbol:()=>D1,ZodTemplateLiteral:()=>mC,ZodTransform:()=>Q1,ZodTuple:()=>W1,ZodType:()=>je,ZodULID:()=>Px,ZodURL:()=>Ym,ZodUUID:()=>vs,ZodUndefined:()=>j1,ZodUnion:()=>nh,ZodUnknown:()=>U1,ZodVoid:()=>q1,ZodXID:()=>Ax,ZodXor:()=>Z1,_ZodString:()=>Tx,_default:()=>iC,_function:()=>IB,any:()=>lB,array:()=>Ve,base64:()=>WZ,base64url:()=>VZ,bigint:()=>sB,boolean:()=>er,catch:()=>lC,check:()=>RB,cidrv4:()=>BZ,cidrv6:()=>GZ,codec:()=>kB,cuid:()=>jZ,cuid2:()=>zZ,custom:()=>Xx,date:()=>pB,describe:()=>OB,discriminatedUnion:()=>ih,e164:()=>KZ,email:()=>$Z,emoji:()=>MZ,enum:()=>Ar,exactOptional:()=>tC,file:()=>SB,float32:()=>tB,float64:()=>rB,function:()=>IB,guid:()=>IZ,hash:()=>eB,hex:()=>QZ,hostname:()=>YZ,httpUrl:()=>NZ,instanceof:()=>PB,int:()=>kx,int32:()=>nB,int64:()=>oB,intersection:()=>ad,ipv4:()=>qZ,ipv6:()=>ZZ,json:()=>NB,jwt:()=>JZ,keyof:()=>fB,ksuid:()=>FZ,lazy:()=>gC,literal:()=>fe,looseObject:()=>Pr,looseRecord:()=>vB,mac:()=>HZ,map:()=>yB,meta:()=>CB,nan:()=>EB,nanoid:()=>DZ,nativeEnum:()=>bB,never:()=>Zx,nonoptional:()=>aC,null:()=>od,nullable:()=>Km,nullish:()=>xB,number:()=>ut,object:()=>se,optional:()=>At,partialRecord:()=>gB,pipe:()=>Jm,prefault:()=>oC,preprocess:()=>ah,promise:()=>$B,readonly:()=>fC,record:()=>$t,refine:()=>_C,set:()=>_B,strictObject:()=>mB,string:()=>z,stringFormat:()=>XZ,stringbool:()=>AB,success:()=>wB,superRefine:()=>bC,symbol:()=>cB,templateLiteral:()=>TB,transform:()=>Gx,tuple:()=>V1,uint32:()=>iB,uint64:()=>aB,ulid:()=>LZ,undefined:()=>uB,union:()=>ht,unknown:()=>xt,url:()=>AZ,uuid:()=>RZ,uuidv4:()=>OZ,uuidv6:()=>CZ,uuidv7:()=>PZ,void:()=>dB,xid:()=>UZ,xor:()=>hB});var Wm={};wn(Wm,{endsWith:()=>Jl,gt:()=>hs,gte:()=>Vr,includes:()=>Vl,length:()=>lc,lowercase:()=>Gl,lt:()=>ms,lte:()=>$n,maxLength:()=>uc,maxSize:()=>Bo,mime:()=>Xl,minLength:()=>so,minSize:()=>gs,multipleOf:()=>Zo,negative:()=>nx,nonnegative:()=>sx,nonpositive:()=>ix,normalize:()=>Yl,overwrite:()=>ji,positive:()=>rx,property:()=>ox,regex:()=>Bl,size:()=>cc,slugify:()=>qm,startsWith:()=>Kl,toLowerCase:()=>ed,toUpperCase:()=>td,trim:()=>Ql,uppercase:()=>Wl});var Go={};wn(Go,{ZodISODate:()=>_x,ZodISODateTime:()=>vx,ZodISODuration:()=>wx,ZodISOTime:()=>Sx,date:()=>bx,datetime:()=>yx,duration:()=>Ex,time:()=>xx});var vx=O("ZodISODateTime",(t,e)=>{Cb.init(t,e),St.init(t,e)});function yx(t){return AS(vx,t)}var _x=O("ZodISODate",(t,e)=>{Pb.init(t,e),St.init(t,e)});function bx(t){return NS(_x,t)}var Sx=O("ZodISOTime",(t,e)=>{Ab.init(t,e),St.init(t,e)});function xx(t){return MS(Sx,t)}var wx=O("ZodISODuration",(t,e)=>{Nb.init(t,e),St.init(t,e)});function Ex(t){return DS(wx,t)}var x1=(t,e)=>{am.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>um(t,r)},flatten:{value:r=>cm(t,r)},addIssue:{value:r=>{t.issues.push(r),t.message=JSON.stringify(t.issues,ic,2)}},addIssues:{value:r=>{t.issues.push(...r),t.message=JSON.stringify(t.issues,ic,2)}},isEmpty:{get(){return t.issues.length===0}}})},STe=O("ZodError",x1),In=O("ZodError",x1,{Parent:Error});var w1=Ol(In),E1=Pl(In),k1=Nl(In),T1=Ml(In),$1=jR(In),I1=zR(In),R1=LR(In),O1=UR(In),C1=FR(In),P1=qR(In),A1=HR(In),N1=ZR(In);var je=O("ZodType",(t,e)=>(Ce.init(t,e),Object.assign(t["~standard"],{jsonSchema:{input:rd(t,"input"),output:rd(t,"output")}}),t.toJSONSchema=NO(t,{}),t.def=e,t.type=e.type,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone(G.mergeDefs(e,{checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),{parent:!0}),t.with=t.check,t.clone=(r,n)=>Gr(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>w1(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>k1(t,r,n),t.parseAsync=async(r,n)=>E1(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>T1(t,r,n),t.spa=t.safeParseAsync,t.encode=(r,n)=>$1(t,r,n),t.decode=(r,n)=>I1(t,r,n),t.encodeAsync=async(r,n)=>R1(t,r,n),t.decodeAsync=async(r,n)=>O1(t,r,n),t.safeEncode=(r,n)=>C1(t,r,n),t.safeDecode=(r,n)=>P1(t,r,n),t.safeEncodeAsync=async(r,n)=>A1(t,r,n),t.safeDecodeAsync=async(r,n)=>N1(t,r,n),t.refine=(r,n)=>t.check(_C(r,n)),t.superRefine=r=>t.check(bC(r)),t.overwrite=r=>t.check(ji(r)),t.optional=()=>At(t),t.exactOptional=()=>tC(t),t.nullable=()=>Km(t),t.nullish=()=>At(Km(t)),t.nonoptional=r=>aC(t,r),t.array=()=>Ve(t),t.or=r=>ht([t,r]),t.and=r=>ad(t,r),t.transform=r=>Jm(t,Gx(r)),t.default=r=>iC(t,r),t.prefault=r=>oC(t,r),t.catch=r=>lC(t,r),t.pipe=r=>Jm(t,r),t.readonly=()=>fC(t),t.describe=r=>{let n=t.clone();return Wr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Wr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Wr.get(t);let n=t.clone();return Wr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t.apply=r=>r(t),t)),Tx=O("_ZodString",(t,e)=>{Ho.init(t,e),je.init(t,e),t._zod.processJSONSchema=(n,i,s)=>MO(t,n,i,s);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,t.regex=(...n)=>t.check(Bl(...n)),t.includes=(...n)=>t.check(Vl(...n)),t.startsWith=(...n)=>t.check(Kl(...n)),t.endsWith=(...n)=>t.check(Jl(...n)),t.min=(...n)=>t.check(so(...n)),t.max=(...n)=>t.check(uc(...n)),t.length=(...n)=>t.check(lc(...n)),t.nonempty=(...n)=>t.check(so(1,...n)),t.lowercase=n=>t.check(Gl(n)),t.uppercase=n=>t.check(Wl(n)),t.trim=()=>t.check(Ql()),t.normalize=(...n)=>t.check(Yl(...n)),t.toLowerCase=()=>t.check(ed()),t.toUpperCase=()=>t.check(td()),t.slugify=()=>t.check(qm())}),Xm=O("ZodString",(t,e)=>{Ho.init(t,e),Tx.init(t,e),t.email=r=>t.check(xm($x,r)),t.url=r=>t.check(Zl(Ym,r)),t.jwt=r=>t.check(Fm(qx,r)),t.emoji=r=>t.check($m(Ix,r)),t.guid=r=>t.check(Hl(Vm,r)),t.uuid=r=>t.check(wm(vs,r)),t.uuidv4=r=>t.check(Em(vs,r)),t.uuidv6=r=>t.check(km(vs,r)),t.uuidv7=r=>t.check(Tm(vs,r)),t.nanoid=r=>t.check(Im(Rx,r)),t.guid=r=>t.check(Hl(Vm,r)),t.cuid=r=>t.check(Rm(Ox,r)),t.cuid2=r=>t.check(Om(Cx,r)),t.ulid=r=>t.check(Cm(Px,r)),t.base64=r=>t.check(zm(Lx,r)),t.base64url=r=>t.check(Lm(Ux,r)),t.xid=r=>t.check(Pm(Ax,r)),t.ksuid=r=>t.check(Am(Nx,r)),t.ipv4=r=>t.check(Nm(Mx,r)),t.ipv6=r=>t.check(Mm(Dx,r)),t.cidrv4=r=>t.check(Dm(jx,r)),t.cidrv6=r=>t.check(jm(zx,r)),t.e164=r=>t.check(Um(Fx,r)),t.datetime=r=>t.check(yx(r)),t.date=r=>t.check(bx(r)),t.time=r=>t.check(xx(r)),t.duration=r=>t.check(Ex(r))});function z(t){return CS(Xm,t)}var St=O("ZodStringFormat",(t,e)=>{mt.init(t,e),Tx.init(t,e)}),$x=O("ZodEmail",(t,e)=>{xb.init(t,e),St.init(t,e)});function $Z(t){return xm($x,t)}var Vm=O("ZodGUID",(t,e)=>{bb.init(t,e),St.init(t,e)});function IZ(t){return Hl(Vm,t)}var vs=O("ZodUUID",(t,e)=>{Sb.init(t,e),St.init(t,e)});function RZ(t){return wm(vs,t)}function OZ(t){return Em(vs,t)}function CZ(t){return km(vs,t)}function PZ(t){return Tm(vs,t)}var Ym=O("ZodURL",(t,e)=>{wb.init(t,e),St.init(t,e)});function AZ(t){return Zl(Ym,t)}function NZ(t){return Zl(Ym,{protocol:/^https?$/,hostname:Fn.domain,...G.normalizeParams(t)})}var Ix=O("ZodEmoji",(t,e)=>{Eb.init(t,e),St.init(t,e)});function MZ(t){return $m(Ix,t)}var Rx=O("ZodNanoID",(t,e)=>{kb.init(t,e),St.init(t,e)});function DZ(t){return Im(Rx,t)}var Ox=O("ZodCUID",(t,e)=>{Tb.init(t,e),St.init(t,e)});function jZ(t){return Rm(Ox,t)}var Cx=O("ZodCUID2",(t,e)=>{$b.init(t,e),St.init(t,e)});function zZ(t){return Om(Cx,t)}var Px=O("ZodULID",(t,e)=>{Ib.init(t,e),St.init(t,e)});function LZ(t){return Cm(Px,t)}var Ax=O("ZodXID",(t,e)=>{Rb.init(t,e),St.init(t,e)});function UZ(t){return Pm(Ax,t)}var Nx=O("ZodKSUID",(t,e)=>{Ob.init(t,e),St.init(t,e)});function FZ(t){return Am(Nx,t)}var Mx=O("ZodIPv4",(t,e)=>{Mb.init(t,e),St.init(t,e)});function qZ(t){return Nm(Mx,t)}var M1=O("ZodMAC",(t,e)=>{jb.init(t,e),St.init(t,e)});function HZ(t){return PS(M1,t)}var Dx=O("ZodIPv6",(t,e)=>{Db.init(t,e),St.init(t,e)});function ZZ(t){return Mm(Dx,t)}var jx=O("ZodCIDRv4",(t,e)=>{zb.init(t,e),St.init(t,e)});function BZ(t){return Dm(jx,t)}var zx=O("ZodCIDRv6",(t,e)=>{Lb.init(t,e),St.init(t,e)});function GZ(t){return jm(zx,t)}var Lx=O("ZodBase64",(t,e)=>{Ub.init(t,e),St.init(t,e)});function WZ(t){return zm(Lx,t)}var Ux=O("ZodBase64URL",(t,e)=>{Fb.init(t,e),St.init(t,e)});function VZ(t){return Lm(Ux,t)}var Fx=O("ZodE164",(t,e)=>{qb.init(t,e),St.init(t,e)});function KZ(t){return Um(Fx,t)}var qx=O("ZodJWT",(t,e)=>{Hb.init(t,e),St.init(t,e)});function JZ(t){return Fm(qx,t)}var sd=O("ZodCustomStringFormat",(t,e)=>{Zb.init(t,e),St.init(t,e)});function XZ(t,e,r={}){return dc(sd,t,e,r)}function YZ(t){return dc(sd,"hostname",Fn.hostname,t)}function QZ(t){return dc(sd,"hex",Fn.hex,t)}function eB(t,e){let r=e?.enc??"hex",n=`${t}_${r}`,i=Fn[n];if(!i)throw new Error(`Unrecognized hash format: ${n}`);return dc(sd,n,i,e)}var Qm=O("ZodNumber",(t,e)=>{ym.init(t,e),je.init(t,e),t._zod.processJSONSchema=(n,i,s)=>DO(t,n,i,s),t.gt=(n,i)=>t.check(hs(n,i)),t.gte=(n,i)=>t.check(Vr(n,i)),t.min=(n,i)=>t.check(Vr(n,i)),t.lt=(n,i)=>t.check(ms(n,i)),t.lte=(n,i)=>t.check($n(n,i)),t.max=(n,i)=>t.check($n(n,i)),t.int=n=>t.check(kx(n)),t.safe=n=>t.check(kx(n)),t.positive=n=>t.check(hs(0,n)),t.nonnegative=n=>t.check(Vr(0,n)),t.negative=n=>t.check(ms(0,n)),t.nonpositive=n=>t.check($n(0,n)),t.multipleOf=(n,i)=>t.check(Zo(n,i)),t.step=(n,i)=>t.check(Zo(n,i)),t.finite=()=>t;let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function ut(t){return jS(Qm,t)}var fc=O("ZodNumberFormat",(t,e)=>{Bb.init(t,e),Qm.init(t,e)});function kx(t){return zS(fc,t)}function tB(t){return LS(fc,t)}function rB(t){return US(fc,t)}function nB(t){return FS(fc,t)}function iB(t){return qS(fc,t)}var eh=O("ZodBoolean",(t,e)=>{Ul.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>jO(t,r,n,i)});function er(t){return HS(eh,t)}var th=O("ZodBigInt",(t,e)=>{_m.init(t,e),je.init(t,e),t._zod.processJSONSchema=(n,i,s)=>zO(t,n,i,s),t.gte=(n,i)=>t.check(Vr(n,i)),t.min=(n,i)=>t.check(Vr(n,i)),t.gt=(n,i)=>t.check(hs(n,i)),t.gte=(n,i)=>t.check(Vr(n,i)),t.min=(n,i)=>t.check(Vr(n,i)),t.lt=(n,i)=>t.check(ms(n,i)),t.lte=(n,i)=>t.check($n(n,i)),t.max=(n,i)=>t.check($n(n,i)),t.positive=n=>t.check(hs(BigInt(0),n)),t.negative=n=>t.check(ms(BigInt(0),n)),t.nonpositive=n=>t.check($n(BigInt(0),n)),t.nonnegative=n=>t.check(Vr(BigInt(0),n)),t.multipleOf=(n,i)=>t.check(Zo(n,i));let r=t._zod.bag;t.minValue=r.minimum??null,t.maxValue=r.maximum??null,t.format=r.format??null});function sB(t){return ZS(th,t)}var Hx=O("ZodBigIntFormat",(t,e)=>{Gb.init(t,e),th.init(t,e)});function oB(t){return BS(Hx,t)}function aB(t){return GS(Hx,t)}var D1=O("ZodSymbol",(t,e)=>{Wb.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>LO(t,r,n,i)});function cB(t){return WS(D1,t)}var j1=O("ZodUndefined",(t,e)=>{Vb.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>FO(t,r,n,i)});function uB(t){return VS(j1,t)}var z1=O("ZodNull",(t,e)=>{Kb.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>UO(t,r,n,i)});function od(t){return KS(z1,t)}var L1=O("ZodAny",(t,e)=>{Jb.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>ZO(t,r,n,i)});function lB(){return JS(L1)}var U1=O("ZodUnknown",(t,e)=>{Xb.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>BO(t,r,n,i)});function xt(){return XS(U1)}var F1=O("ZodNever",(t,e)=>{Yb.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>HO(t,r,n,i)});function Zx(t){return YS(F1,t)}var q1=O("ZodVoid",(t,e)=>{Qb.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>qO(t,r,n,i)});function dB(t){return QS(q1,t)}var Bx=O("ZodDate",(t,e)=>{eS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(n,i,s)=>GO(t,n,i,s),t.min=(n,i)=>t.check(Vr(n,i)),t.max=(n,i)=>t.check($n(n,i));let r=t._zod.bag;t.minDate=r.minimum?new Date(r.minimum):null,t.maxDate=r.maximum?new Date(r.maximum):null});function pB(t){return ex(Bx,t)}var H1=O("ZodArray",(t,e)=>{tS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>i1(t,r,n,i),t.element=e.element,t.min=(r,n)=>t.check(so(r,n)),t.nonempty=r=>t.check(so(1,r)),t.max=(r,n)=>t.check(uc(r,n)),t.length=(r,n)=>t.check(lc(r,n)),t.unwrap=()=>t.element});function Ve(t,e){return AO(H1,t,e)}function fB(t){let e=t._zod.def.shape;return Ar(Object.keys(e))}var rh=O("ZodObject",(t,e)=>{CO.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>s1(t,r,n,i),G.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Ar(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:xt()}),t.loose=()=>t.clone({...t._zod.def,catchall:xt()}),t.strict=()=>t.clone({...t._zod.def,catchall:Zx()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>G.extend(t,r),t.safeExtend=r=>G.safeExtend(t,r),t.merge=r=>G.merge(t,r),t.pick=r=>G.pick(t,r),t.omit=r=>G.omit(t,r),t.partial=(...r)=>G.partial(Wx,t,r[0]),t.required=(...r)=>G.required(Vx,t,r[0])});function se(t,e){let r={type:"object",shape:t??{},...G.normalizeParams(e)};return new rh(r)}function mB(t,e){return new rh({type:"object",shape:t,catchall:Zx(),...G.normalizeParams(e)})}function Pr(t,e){return new rh({type:"object",shape:t,catchall:xt(),...G.normalizeParams(e)})}var nh=O("ZodUnion",(t,e)=>{Fl.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>mx(t,r,n,i),t.options=e.options});function ht(t,e){return new nh({type:"union",options:t,...G.normalizeParams(e)})}var Z1=O("ZodXor",(t,e)=>{nh.init(t,e),rS.init(t,e),t._zod.processJSONSchema=(r,n,i)=>mx(t,r,n,i),t.options=e.options});function hB(t,e){return new Z1({type:"union",options:t,inclusive:!1,...G.normalizeParams(e)})}var B1=O("ZodDiscriminatedUnion",(t,e)=>{nh.init(t,e),nS.init(t,e)});function ih(t,e,r){return new B1({type:"union",options:e,discriminator:t,...G.normalizeParams(r)})}var G1=O("ZodIntersection",(t,e)=>{iS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>o1(t,r,n,i)});function ad(t,e){return new G1({type:"intersection",left:t,right:e})}var W1=O("ZodTuple",(t,e)=>{bm.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>a1(t,r,n,i),t.rest=r=>t.clone({...t._zod.def,rest:r})});function V1(t,e,r){let n=e instanceof Ce,i=n?r:e,s=n?e:null;return new W1({type:"tuple",items:t,rest:s,...G.normalizeParams(i)})}var sh=O("ZodRecord",(t,e)=>{sS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>c1(t,r,n,i),t.keyType=e.keyType,t.valueType=e.valueType});function $t(t,e,r){return new sh({type:"record",keyType:t,valueType:e,...G.normalizeParams(r)})}function gB(t,e,r){let n=Gr(t);return n._zod.values=void 0,new sh({type:"record",keyType:n,valueType:e,...G.normalizeParams(r)})}function vB(t,e,r){return new sh({type:"record",keyType:t,valueType:e,mode:"loose",...G.normalizeParams(r)})}var K1=O("ZodMap",(t,e)=>{oS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>r1(t,r,n,i),t.keyType=e.keyType,t.valueType=e.valueType,t.min=(...r)=>t.check(gs(...r)),t.nonempty=r=>t.check(gs(1,r)),t.max=(...r)=>t.check(Bo(...r)),t.size=(...r)=>t.check(cc(...r))});function yB(t,e,r){return new K1({type:"map",keyType:t,valueType:e,...G.normalizeParams(r)})}var J1=O("ZodSet",(t,e)=>{aS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>n1(t,r,n,i),t.min=(...r)=>t.check(gs(...r)),t.nonempty=r=>t.check(gs(1,r)),t.max=(...r)=>t.check(Bo(...r)),t.size=(...r)=>t.check(cc(...r))});function _B(t,e){return new J1({type:"set",valueType:t,...G.normalizeParams(e)})}var id=O("ZodEnum",(t,e)=>{cS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(n,i,s)=>WO(t,n,i,s),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,i)=>{let s={};for(let o of n)if(r.has(o))s[o]=e.entries[o];else throw new Error(`Key ${o} not found in enum`);return new id({...e,checks:[],...G.normalizeParams(i),entries:s})},t.exclude=(n,i)=>{let s={...e.entries};for(let o of n)if(r.has(o))delete s[o];else throw new Error(`Key ${o} not found in enum`);return new id({...e,checks:[],...G.normalizeParams(i),entries:s})}});function Ar(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new id({type:"enum",entries:r,...G.normalizeParams(e)})}function bB(t,e){return new id({type:"enum",entries:t,...G.normalizeParams(e)})}var X1=O("ZodLiteral",(t,e)=>{uS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>VO(t,r,n,i),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function fe(t,e){return new X1({type:"literal",values:Array.isArray(t)?t:[t],...G.normalizeParams(e)})}var Y1=O("ZodFile",(t,e)=>{lS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>XO(t,r,n,i),t.min=(r,n)=>t.check(gs(r,n)),t.max=(r,n)=>t.check(Bo(r,n)),t.mime=(r,n)=>t.check(Xl(Array.isArray(r)?r:[r],n))});function SB(t){return ax(Y1,t)}var Q1=O("ZodTransform",(t,e)=>{dS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>t1(t,r,n,i),t._zod.parse=(r,n)=>{if(n.direction==="backward")throw new Uo(t.constructor.name);r.addIssue=s=>{if(typeof s=="string")r.issues.push(G.issue(s,r.value,e));else{let o=s;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=t),r.issues.push(G.issue(o))}};let i=e.transform(r.value,r);return i instanceof Promise?i.then(s=>(r.value=s,r)):(r.value=i,r)}});function Gx(t){return new Q1({type:"transform",transform:t})}var Wx=O("ZodOptional",(t,e)=>{Sm.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>hx(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function At(t){return new Wx({type:"optional",innerType:t})}var eC=O("ZodExactOptional",(t,e)=>{pS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>hx(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function tC(t){return new eC({type:"optional",innerType:t})}var rC=O("ZodNullable",(t,e)=>{fS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>u1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function Km(t){return new rC({type:"nullable",innerType:t})}function xB(t){return At(Km(t))}var nC=O("ZodDefault",(t,e)=>{mS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>d1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function iC(t,e){return new nC({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():G.shallowClone(e)}})}var sC=O("ZodPrefault",(t,e)=>{hS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>p1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function oC(t,e){return new sC({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():G.shallowClone(e)}})}var Vx=O("ZodNonOptional",(t,e)=>{gS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>l1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function aC(t,e){return new Vx({type:"nonoptional",innerType:t,...G.normalizeParams(e)})}var cC=O("ZodSuccess",(t,e)=>{vS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>YO(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function wB(t){return new cC({type:"success",innerType:t})}var uC=O("ZodCatch",(t,e)=>{yS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>f1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function lC(t,e){return new uC({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var dC=O("ZodNaN",(t,e)=>{_S.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>KO(t,r,n,i)});function EB(t){return tx(dC,t)}var Kx=O("ZodPipe",(t,e)=>{bS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>m1(t,r,n,i),t.in=e.in,t.out=e.out});function Jm(t,e){return new Kx({type:"pipe",in:t,out:e})}var Jx=O("ZodCodec",(t,e)=>{Kx.init(t,e),ql.init(t,e)});function kB(t,e,r){return new Jx({type:"pipe",in:t,out:e,transform:r.decode,reverseTransform:r.encode})}var pC=O("ZodReadonly",(t,e)=>{SS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>h1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function fC(t){return new pC({type:"readonly",innerType:t})}var mC=O("ZodTemplateLiteral",(t,e)=>{xS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>JO(t,r,n,i)});function TB(t,e){return new mC({type:"template_literal",parts:t,...G.normalizeParams(e)})}var hC=O("ZodLazy",(t,e)=>{kS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>v1(t,r,n,i),t.unwrap=()=>t._zod.def.getter()});function gC(t){return new hC({type:"lazy",getter:t})}var vC=O("ZodPromise",(t,e)=>{ES.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>g1(t,r,n,i),t.unwrap=()=>t._zod.def.innerType});function $B(t){return new vC({type:"promise",innerType:t})}var yC=O("ZodFunction",(t,e)=>{wS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>e1(t,r,n,i)});function IB(t){return new yC({type:"function",input:Array.isArray(t?.input)?V1(t?.input):t?.input??Ve(xt()),output:t?.output??xt()})}var oh=O("ZodCustom",(t,e)=>{TS.init(t,e),je.init(t,e),t._zod.processJSONSchema=(r,n,i)=>QO(t,r,n,i)});function RB(t){let e=new bt({check:"custom"});return e._zod.check=t,e}function Xx(t,e){return cx(oh,t??(()=>!0),e)}function _C(t,e={}){return ux(oh,t,e)}function bC(t){return lx(t)}var OB=dx,CB=px;function PB(t,e={}){let r=new oh({type:"custom",check:"custom",fn:n=>n instanceof t,abort:!0,...G.normalizeParams(e)});return r._zod.bag.Class=t,r._zod.check=n=>{n.value instanceof t||n.issues.push({code:"invalid_type",expected:t.name,input:n.value,inst:r,path:[...r._zod.def.path??[]]})},r}var AB=(...t)=>fx({Codec:Jx,Boolean:eh,String:Xm},...t);function NB(t){let e=gC(()=>ht([z(t),ut(),er(),od(),Ve(e),$t(z(),e)]));return e}function ah(t,e){return Jm(Gx(t),e)}var SC;SC||(SC={});var RTe={...nd,...Wm,iso:Go};ir($S());var Qx="2025-11-25";var xC=[Qx,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],oo="io.modelcontextprotocol/related-task",uh="2.0",Sr=Xx(t=>t!==null&&(typeof t=="object"||typeof t=="function")),wC=ht([z(),ut().int()]),EC=z(),VTe=Pr({ttl:ht([ut(),od()]).optional(),pollInterval:ut().optional()}),zB=se({ttl:ut().optional()}),LB=se({taskId:z()}),ew=Pr({progressToken:wC.optional(),[oo]:LB.optional()}),Rn=se({_meta:ew.optional()}),cd=Rn.extend({task:zB.optional()}),kC=t=>cd.safeParse(t).success,xr=se({method:z(),params:Rn.loose().optional()}),qn=se({_meta:ew.optional()}),Hn=se({method:z(),params:qn.loose().optional()}),wr=Pr({_meta:ew.optional()}),lh=ht([z(),ut().int()]),TC=se({jsonrpc:fe(uh),id:lh,...xr.shape}).strict(),tw=t=>TC.safeParse(t).success,$C=se({jsonrpc:fe(uh),...Hn.shape}).strict(),IC=t=>$C.safeParse(t).success,rw=se({jsonrpc:fe(uh),id:lh,result:wr}).strict(),ud=t=>rw.safeParse(t).success;var Ie;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(Ie||(Ie={}));var nw=se({jsonrpc:fe(uh),id:lh.optional(),error:se({code:ut().int(),message:z(),data:xt().optional()})}).strict();var RC=t=>nw.safeParse(t).success;var OC=ht([TC,$C,rw,nw]),KTe=ht([rw,nw]),Wo=wr.strict(),UB=qn.extend({requestId:lh.optional(),reason:z().optional()}),dh=Hn.extend({method:fe("notifications/cancelled"),params:UB}),FB=se({src:z(),mimeType:z().optional(),sizes:Ve(z()).optional(),theme:Ar(["light","dark"]).optional()}),ld=se({icons:Ve(FB).optional()}),mc=se({name:z(),title:z().optional()}),CC=mc.extend({...mc.shape,...ld.shape,version:z(),websiteUrl:z().optional(),description:z().optional()}),qB=ad(se({applyDefaults:er().optional()}),$t(z(),xt())),HB=ah(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,ad(se({form:qB.optional(),url:Sr.optional()}),$t(z(),xt()).optional())),ZB=Pr({list:Sr.optional(),cancel:Sr.optional(),requests:Pr({sampling:Pr({createMessage:Sr.optional()}).optional(),elicitation:Pr({create:Sr.optional()}).optional()}).optional()}),BB=Pr({list:Sr.optional(),cancel:Sr.optional(),requests:Pr({tools:Pr({call:Sr.optional()}).optional()}).optional()}),GB=se({experimental:$t(z(),Sr).optional(),sampling:se({context:Sr.optional(),tools:Sr.optional()}).optional(),elicitation:HB.optional(),roots:se({listChanged:er().optional()}).optional(),tasks:ZB.optional()}),WB=Rn.extend({protocolVersion:z(),capabilities:GB,clientInfo:CC}),VB=xr.extend({method:fe("initialize"),params:WB});var KB=se({experimental:$t(z(),Sr).optional(),logging:Sr.optional(),completions:Sr.optional(),prompts:se({listChanged:er().optional()}).optional(),resources:se({subscribe:er().optional(),listChanged:er().optional()}).optional(),tools:se({listChanged:er().optional()}).optional(),tasks:BB.optional()}),iw=wr.extend({protocolVersion:z(),capabilities:KB,serverInfo:CC,instructions:z().optional()}),JB=Hn.extend({method:fe("notifications/initialized"),params:qn.optional()});var ph=xr.extend({method:fe("ping"),params:Rn.optional()}),XB=se({progress:ut(),total:At(ut()),message:At(z())}),YB=se({...qn.shape,...XB.shape,progressToken:wC}),fh=Hn.extend({method:fe("notifications/progress"),params:YB}),QB=Rn.extend({cursor:EC.optional()}),dd=xr.extend({params:QB.optional()}),pd=wr.extend({nextCursor:EC.optional()}),eG=Ar(["working","input_required","completed","failed","cancelled"]),fd=se({taskId:z(),status:eG,ttl:ht([ut(),od()]),createdAt:z(),lastUpdatedAt:z(),pollInterval:At(ut()),statusMessage:At(z())}),Vo=wr.extend({task:fd}),tG=qn.merge(fd),md=Hn.extend({method:fe("notifications/tasks/status"),params:tG}),mh=xr.extend({method:fe("tasks/get"),params:Rn.extend({taskId:z()})}),hh=wr.merge(fd),gh=xr.extend({method:fe("tasks/result"),params:Rn.extend({taskId:z()})}),JTe=wr.loose(),vh=dd.extend({method:fe("tasks/list")}),yh=pd.extend({tasks:Ve(fd)}),_h=xr.extend({method:fe("tasks/cancel"),params:Rn.extend({taskId:z()})}),PC=wr.merge(fd),AC=se({uri:z(),mimeType:At(z()),_meta:$t(z(),xt()).optional()}),NC=AC.extend({text:z()}),sw=z().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),MC=AC.extend({blob:sw}),hd=Ar(["user","assistant"]),hc=se({audience:Ve(hd).optional(),priority:ut().min(0).max(1).optional(),lastModified:Go.datetime({offset:!0}).optional()}),DC=se({...mc.shape,...ld.shape,uri:z(),description:At(z()),mimeType:At(z()),annotations:hc.optional(),_meta:At(Pr({}))}),rG=se({...mc.shape,...ld.shape,uriTemplate:z(),description:At(z()),mimeType:At(z()),annotations:hc.optional(),_meta:At(Pr({}))}),nG=dd.extend({method:fe("resources/list")}),ow=pd.extend({resources:Ve(DC)}),iG=dd.extend({method:fe("resources/templates/list")}),aw=pd.extend({resourceTemplates:Ve(rG)}),cw=Rn.extend({uri:z()}),sG=cw,oG=xr.extend({method:fe("resources/read"),params:sG}),uw=wr.extend({contents:Ve(ht([NC,MC]))}),lw=Hn.extend({method:fe("notifications/resources/list_changed"),params:qn.optional()}),aG=cw,cG=xr.extend({method:fe("resources/subscribe"),params:aG}),uG=cw,lG=xr.extend({method:fe("resources/unsubscribe"),params:uG}),dG=qn.extend({uri:z()}),pG=Hn.extend({method:fe("notifications/resources/updated"),params:dG}),fG=se({name:z(),description:At(z()),required:At(er())}),mG=se({...mc.shape,...ld.shape,description:At(z()),arguments:At(Ve(fG)),_meta:At(Pr({}))}),hG=dd.extend({method:fe("prompts/list")}),dw=pd.extend({prompts:Ve(mG)}),gG=Rn.extend({name:z(),arguments:$t(z(),z()).optional()}),vG=xr.extend({method:fe("prompts/get"),params:gG}),pw=se({type:fe("text"),text:z(),annotations:hc.optional(),_meta:$t(z(),xt()).optional()}),fw=se({type:fe("image"),data:sw,mimeType:z(),annotations:hc.optional(),_meta:$t(z(),xt()).optional()}),mw=se({type:fe("audio"),data:sw,mimeType:z(),annotations:hc.optional(),_meta:$t(z(),xt()).optional()}),yG=se({type:fe("tool_use"),name:z(),id:z(),input:$t(z(),xt()),_meta:$t(z(),xt()).optional()}),_G=se({type:fe("resource"),resource:ht([NC,MC]),annotations:hc.optional(),_meta:$t(z(),xt()).optional()}),bG=DC.extend({type:fe("resource_link")}),hw=ht([pw,fw,mw,bG,_G]),SG=se({role:hd,content:hw}),gw=wr.extend({description:z().optional(),messages:Ve(SG)}),vw=Hn.extend({method:fe("notifications/prompts/list_changed"),params:qn.optional()}),xG=se({title:z().optional(),readOnlyHint:er().optional(),destructiveHint:er().optional(),idempotentHint:er().optional(),openWorldHint:er().optional()}),wG=se({taskSupport:Ar(["required","optional","forbidden"]).optional()}),jC=se({...mc.shape,...ld.shape,description:z().optional(),inputSchema:se({type:fe("object"),properties:$t(z(),Sr).optional(),required:Ve(z()).optional()}).catchall(xt()),outputSchema:se({type:fe("object"),properties:$t(z(),Sr).optional(),required:Ve(z()).optional()}).catchall(xt()).optional(),annotations:xG.optional(),execution:wG.optional(),_meta:$t(z(),xt()).optional()}),EG=dd.extend({method:fe("tools/list")}),yw=pd.extend({tools:Ve(jC)}),gc=wr.extend({content:Ve(hw).default([]),structuredContent:$t(z(),xt()).optional(),isError:er().optional()}),XTe=gc.or(wr.extend({toolResult:xt()})),kG=cd.extend({name:z(),arguments:$t(z(),xt()).optional()}),TG=xr.extend({method:fe("tools/call"),params:kG}),_w=Hn.extend({method:fe("notifications/tools/list_changed"),params:qn.optional()}),zC=se({autoRefresh:er().default(!0),debounceMs:ut().int().nonnegative().default(300)}),LC=Ar(["debug","info","notice","warning","error","critical","alert","emergency"]),$G=Rn.extend({level:LC}),IG=xr.extend({method:fe("logging/setLevel"),params:$G}),RG=qn.extend({level:LC,logger:z().optional(),data:xt()}),OG=Hn.extend({method:fe("notifications/message"),params:RG}),CG=se({name:z().optional()}),PG=se({hints:Ve(CG).optional(),costPriority:ut().min(0).max(1).optional(),speedPriority:ut().min(0).max(1).optional(),intelligencePriority:ut().min(0).max(1).optional()}),AG=se({mode:Ar(["auto","required","none"]).optional()}),NG=se({type:fe("tool_result"),toolUseId:z().describe("The unique identifier for the corresponding tool call."),content:Ve(hw).default([]),structuredContent:se({}).loose().optional(),isError:er().optional(),_meta:$t(z(),xt()).optional()}),MG=ih("type",[pw,fw,mw]),ch=ih("type",[pw,fw,mw,yG,NG]),DG=se({role:hd,content:ht([ch,Ve(ch)]),_meta:$t(z(),xt()).optional()}),jG=cd.extend({messages:Ve(DG),modelPreferences:PG.optional(),systemPrompt:z().optional(),includeContext:Ar(["none","thisServer","allServers"]).optional(),temperature:ut().optional(),maxTokens:ut().int(),stopSequences:Ve(z()).optional(),metadata:Sr.optional(),tools:Ve(jC).optional(),toolChoice:AG.optional()}),bw=xr.extend({method:fe("sampling/createMessage"),params:jG}),Sw=wr.extend({model:z(),stopReason:At(Ar(["endTurn","stopSequence","maxTokens"]).or(z())),role:hd,content:MG}),xw=wr.extend({model:z(),stopReason:At(Ar(["endTurn","stopSequence","maxTokens","toolUse"]).or(z())),role:hd,content:ht([ch,Ve(ch)])}),zG=se({type:fe("boolean"),title:z().optional(),description:z().optional(),default:er().optional()}),LG=se({type:fe("string"),title:z().optional(),description:z().optional(),minLength:ut().optional(),maxLength:ut().optional(),format:Ar(["email","uri","date","date-time"]).optional(),default:z().optional()}),UG=se({type:Ar(["number","integer"]),title:z().optional(),description:z().optional(),minimum:ut().optional(),maximum:ut().optional(),default:ut().optional()}),FG=se({type:fe("string"),title:z().optional(),description:z().optional(),enum:Ve(z()),default:z().optional()}),qG=se({type:fe("string"),title:z().optional(),description:z().optional(),oneOf:Ve(se({const:z(),title:z()})),default:z().optional()}),HG=se({type:fe("string"),title:z().optional(),description:z().optional(),enum:Ve(z()),enumNames:Ve(z()).optional(),default:z().optional()}),ZG=ht([FG,qG]),BG=se({type:fe("array"),title:z().optional(),description:z().optional(),minItems:ut().optional(),maxItems:ut().optional(),items:se({type:fe("string"),enum:Ve(z())}),default:Ve(z()).optional()}),GG=se({type:fe("array"),title:z().optional(),description:z().optional(),minItems:ut().optional(),maxItems:ut().optional(),items:se({anyOf:Ve(se({const:z(),title:z()}))}),default:Ve(z()).optional()}),WG=ht([BG,GG]),VG=ht([HG,ZG,WG]),KG=ht([VG,zG,LG,UG]),JG=cd.extend({mode:fe("form").optional(),message:z(),requestedSchema:se({type:fe("object"),properties:$t(z(),KG),required:Ve(z()).optional()})}),XG=cd.extend({mode:fe("url"),message:z(),elicitationId:z(),url:z().url()}),YG=ht([JG,XG]),ww=xr.extend({method:fe("elicitation/create"),params:YG}),QG=qn.extend({elicitationId:z()}),eW=Hn.extend({method:fe("notifications/elicitation/complete"),params:QG}),Ew=wr.extend({action:Ar(["accept","decline","cancel"]),content:ah(t=>t===null?void 0:t,$t(z(),ht([z(),ut(),er(),Ve(z())])).optional())}),tW=se({type:fe("ref/resource"),uri:z()});var rW=se({type:fe("ref/prompt"),name:z()}),nW=Rn.extend({ref:ht([rW,tW]),argument:se({name:z(),value:z()}),context:se({arguments:$t(z(),z()).optional()}).optional()}),iW=xr.extend({method:fe("completion/complete"),params:nW});var kw=wr.extend({completion:Pr({values:Ve(z()).max(100),total:At(ut().int()),hasMore:At(er())})}),sW=se({uri:z().startsWith("file://"),name:z().optional(),_meta:$t(z(),xt()).optional()}),oW=xr.extend({method:fe("roots/list"),params:Rn.optional()}),aW=wr.extend({roots:Ve(sW)}),cW=Hn.extend({method:fe("notifications/roots/list_changed"),params:qn.optional()}),YTe=ht([ph,VB,iW,IG,vG,hG,nG,iG,oG,cG,lG,TG,EG,mh,gh,vh,_h]),QTe=ht([dh,fh,JB,cW,md]),e$e=ht([Wo,Sw,xw,Ew,aW,hh,yh,Vo]),t$e=ht([ph,bw,ww,oW,mh,gh,vh,_h]),r$e=ht([dh,fh,OG,pG,lw,_w,vw,md,eW]),n$e=ht([Wo,iw,kw,gw,dw,ow,aw,uw,gc,yw,hh,yh,Vo]),ye=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===Ie.UrlElicitationRequired&&n){let i=n;if(i.elicitations)return new Yx(i.elicitations,r)}return new t(e,r,n)}},Yx=class extends ye{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(Ie.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function ao(t){return t==="completed"||t==="failed"||t==="cancelled"}var j$e=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Tw(t){let r=Gm(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=S1(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function $w(t,e){let r=li(t,e);if(!r.success)throw r.error;return r.data}var mW=6e4,bh=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(dh,r=>{this._oncancel(r)}),this.setNotificationHandler(fh,r=>{this._onprogress(r)}),this.setRequestHandler(ph,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(mh,async(r,n)=>{let i=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!i)throw new ye(Ie.InvalidParams,"Failed to retrieve task: Task not found");return{...i}}),this.setRequestHandler(gh,async(r,n)=>{let i=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,p=new ye(d.error.code,d.error.message,d.error.data);l(p)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let o=await this._taskStore.getTask(s,n.sessionId);if(!o)throw new ye(Ie.InvalidParams,`Task not found: ${s}`);if(!ao(o.status))return await this._waitForTaskUpdate(s,n.signal),await i();if(ao(o.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[oo]:{taskId:s}}}}return await i()};return await i()}),this.setRequestHandler(vh,async(r,n)=>{try{let{tasks:i,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:i,nextCursor:s,_meta:{}}}catch(i){throw new ye(Ie.InvalidParams,`Failed to list tasks: ${i instanceof Error?i.message:String(i)}`)}}),this.setRequestHandler(_h,async(r,n)=>{try{let i=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!i)throw new ye(Ie.InvalidParams,`Task not found: ${r.params.taskId}`);if(ao(i.status))throw new ye(Ie.InvalidParams,`Cannot cancel task in terminal status: ${i.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new ye(Ie.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(i){throw i instanceof ye?i:new ye(Ie.InvalidRequest,`Failed to cancel task: ${i instanceof Error?i.message:String(i)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,i,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(i,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:i})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),ye.fromError(Ie.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let i=this._transport?.onmessage;this._transport.onmessage=(s,o)=>{i?.(s,o),ud(s)||RC(s)?this._onresponse(s):tw(s)?this._onrequest(s,o):IC(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=ye.fromError(Ie.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,i=this._transport,s=e.params?._meta?.[oo]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:Ie.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},i?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):i?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let o=new AbortController;this._requestHandlerAbortControllers.set(e.id,o);let a=kC(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,i?.sessionId):void 0,u={signal:o.signal,sessionId:i?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(o.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,p)=>{if(o.signal.aborted)throw new ye(Ie.ConnectionClosed,"Request was cancelled");let f={...p,relatedRequestId:e.id};s&&!f.relatedTask&&(f.relatedTask={taskId:s});let m=f.relatedTask?.taskId??s;return m&&c&&await c.updateTaskStatus(m,"input_required"),await this.request(l,d,f)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(o.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},i?.sessionId):await i?.send(d)},async l=>{if(o.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:Ie.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},i?.sessionId):await i?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,i=Number(r),s=this._progressHandlers.get(i);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let o=this._responseHandlers.get(i),a=this._timeoutInfo.get(i);if(a&&o&&a.resetTimeoutOnProgress)try{this._resetTimeout(i)}catch(c){this._responseHandlers.delete(i),this._progressHandlers.delete(i),this._cleanupTimeout(i),o(c);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),ud(e))n(e);else{let o=new ye(e.error.code,e.error.message,e.error.data);n(o)}return}let i=this._responseHandlers.get(r);if(i===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let s=!1;if(ud(e)&&e.result&&typeof e.result=="object"){let o=e.result;if(o.task&&typeof o.task=="object"){let a=o.task;typeof a.taskId=="string"&&(s=!0,this._taskProgressTokens.set(a.taskId,r))}}if(s||this._progressHandlers.delete(r),ud(e))i(e);else{let o=ye.fromError(e.error.code,e.error.message,e.error.data);i(o)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:i}=n??{};if(!i){try{yield{type:"result",result:await this.request(e,r,n)}}catch(o){yield{type:"error",error:o instanceof ye?o:new ye(Ie.InternalError,String(o))}}return}let s;try{let o=await this.request(e,Vo,n);if(o.task)s=o.task.taskId,yield{type:"taskCreated",task:o.task};else throw new ye(Ie.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},ao(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new ye(Ie.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new ye(Ie.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(o){yield{type:"error",error:o instanceof ye?o:new ye(Ie.InternalError,String(o))}}}request(e,r,n){let{relatedRequestId:i,resumptionToken:s,onresumptiontoken:o,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=y=>{l(y)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(y){d(y);return}n?.signal?.throwIfAborted();let p=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:p};n?.onprogress&&(this._progressHandlers.set(p,n.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:p}}),a&&(f.params={...f.params,task:a}),c&&(f.params={...f.params,_meta:{...f.params?._meta||{},[oo]:c}});let m=y=>{this._responseHandlers.delete(p),this._progressHandlers.delete(p),this._cleanupTimeout(p),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:p,reason:String(y)}},{relatedRequestId:i,resumptionToken:s,onresumptiontoken:o}).catch(S=>this._onerror(new Error(`Failed to send cancellation: ${S}`)));let b=y instanceof ye?y:new ye(Ie.RequestTimeout,String(y));l(b)};this._responseHandlers.set(p,y=>{if(!n?.signal?.aborted){if(y instanceof Error)return l(y);try{let b=li(r,y.result);b.success?u(b.data):l(b.error)}catch(b){l(b)}}}),n?.signal?.addEventListener("abort",()=>{m(n?.signal?.reason)});let h=n?.timeout??mW,g=()=>m(ye.fromError(Ie.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(p,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let v=c?.taskId;if(v){let y=b=>{let S=this._responseHandlers.get(p);S?S(b):this._onerror(new Error(`Response handler missing for side-channeled request ${p}`))};this._requestResolvers.set(p,y),this._enqueueTaskMessage(v,{type:"request",message:f,timestamp:Date.now()}).catch(b=>{this._cleanupTimeout(p),l(b)})}else this._transport.send(f,{relatedRequestId:i,resumptionToken:s,onresumptiontoken:o}).catch(y=>{this._cleanupTimeout(p),l(y)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},hh,r)}async getTaskResult(e,r,n){return this.request({method:"tasks/result",params:e},r,n)}async listTasks(e,r){return this.request({method:"tasks/list",params:e},yh,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},PC,r)}async notification(e,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(e.method);let n=r?.relatedTask?.taskId;if(n){let a={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[oo]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:a,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!r?.relatedRequestId&&!r?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let a={...e,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[oo]:r.relatedTask}}}),this._transport?.send(a,r).catch(c=>this._onerror(c))});return}let o={...e,jsonrpc:"2.0"};r?.relatedTask&&(o={...o,params:{...o.params,_meta:{...o.params?._meta||{},[oo]:r.relatedTask}}}),await this._transport.send(o,r)}setRequestHandler(e,r){let n=Tw(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(i,s)=>{let o=$w(e,i);return Promise.resolve(r(o,s))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw new Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,r){let n=Tw(e);this._notificationHandlers.set(n,i=>{let s=$w(e,i);return Promise.resolve(r(s))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let r=this._taskProgressTokens.get(e);r!==void 0&&(this._progressHandlers.delete(r),this._taskProgressTokens.delete(e))}async _enqueueTaskMessage(e,r,n){if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let i=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,r,n,i)}async _clearTaskQueue(e,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(e,r);for(let i of n)if(i.type==="request"&&tw(i.message)){let s=i.message.id,o=this._requestResolvers.get(s);o?(o(new ye(Ie.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let i=await this._taskStore?.getTask(e);i?.pollInterval&&(n=i.pollInterval)}catch{}return new Promise((i,s)=>{if(r.aborted){s(new ye(Ie.InvalidRequest,"Request cancelled"));return}let o=setTimeout(i,n);r.addEventListener("abort",()=>{clearTimeout(o),s(new ye(Ie.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async i=>{if(!e)throw new Error("No request provided");return await n.createTask(i,e.id,{method:e.method,params:e.params},r)},getTask:async i=>{let s=await n.getTask(i,r);if(!s)throw new ye(Ie.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(i,s,o)=>{await n.storeTaskResult(i,s,o,r);let a=await n.getTask(i,r);if(a){let c=md.parse({method:"notifications/tasks/status",params:a});await this.notification(c),ao(a.status)&&this._cleanupTaskProgressHandler(i)}},getTaskResult:i=>n.getTaskResult(i,r),updateTaskStatus:async(i,s,o)=>{let a=await n.getTask(i,r);if(!a)throw new ye(Ie.InvalidParams,`Task "${i}" not found - it may have been cleaned up`);if(ao(a.status))throw new ye(Ie.InvalidParams,`Cannot update task "${i}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(i,s,o,r);let c=await n.getTask(i,r);if(c){let u=md.parse({method:"notifications/tasks/status",params:c});await this.notification(u),ao(c.status)&&this._cleanupTaskProgressHandler(i)}},listTasks:i=>n.listTasks(i,r)}}};function UC(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function FC(t,e){let r={...t};for(let n in e){let i=n,s=e[i];if(s===void 0)continue;let o=r[i];UC(o)&&UC(s)?r[i]={...o,...s}:r[i]=s}return r}var $N=Pe(pE(),1),IN=Pe(TN(),1);function sY(){let t=new $N.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,IN.default)(t),t}var rg=class{constructor(e){this._ajv=e??sY()}getValidator(e){let r="$id"in e&&typeof e.$id=="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var ng=class{constructor(e){this._client=e}async*callToolStream(e,r=gc,n){let i=this._client,s={...n,task:n?.task??(i.isToolTask(e.name)?{}:void 0)},o=i.requestStream({method:"tools/call",params:e},r,s),a=i.getToolOutputValidator(e.name);for await(let c of o){if(c.type==="result"&&a){let u=c.result;if(!u.structuredContent&&!u.isError){yield{type:"error",error:new ye(Ie.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`)};return}if(u.structuredContent)try{let l=a(u.structuredContent);if(!l.valid){yield{type:"error",error:new ye(Ie.InvalidParams,`Structured content does not match the tool's output schema: ${l.errorMessage}`)};return}}catch(l){if(l instanceof ye){yield{type:"error",error:l};return}yield{type:"error",error:new ye(Ie.InvalidParams,`Failed to validate structured content: ${l instanceof Error?l.message:String(l)}`)};return}}yield c}}async getTask(e,r){return this._client.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._client.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._client.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._client.cancelTask({taskId:e},r)}requestStream(e,r,n){return this._client.requestStream(e,r,n)}};function RN(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"tools/call":if(!t.tools?.call)throw new Error(`${r} does not support task creation for tools/call (required for ${e})`);break;default:break}}function ON(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"sampling/createMessage":if(!t.sampling?.createMessage)throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${e})`);break;case"elicitation/create":if(!t.elicitation?.create)throw new Error(`${r} does not support task creation for elicitation/create (required for ${e})`);break;default:break}}function ig(t,e){if(!(!t||e===null||typeof e!="object")){if(t.type==="object"&&t.properties&&typeof t.properties=="object"){let r=e,n=t.properties;for(let i of Object.keys(n)){let s=n[i];r[i]===void 0&&Object.prototype.hasOwnProperty.call(s,"default")&&(r[i]=s.default),r[i]!==void 0&&ig(s,r[i])}}if(Array.isArray(t.anyOf))for(let r of t.anyOf)typeof r!="boolean"&&ig(r,e);if(Array.isArray(t.oneOf))for(let r of t.oneOf)typeof r!="boolean"&&ig(r,e)}}function oY(t){if(!t)return{supportsFormMode:!1,supportsUrlMode:!1};let e=t.form!==void 0,r=t.url!==void 0;return{supportsFormMode:e||!e&&!r,supportsUrlMode:r}}var Nc=class extends bh{constructor(e,r){super(r),this._clientInfo=e,this._cachedToolOutputValidators=new Map,this._cachedKnownTaskTools=new Set,this._cachedRequiredTaskTools=new Set,this._listChangedDebounceTimers=new Map,this._capabilities=r?.capabilities??{},this._jsonSchemaValidator=r?.jsonSchemaValidator??new rg,r?.listChanged&&(this._pendingListChangedConfig=r.listChanged)}_setupListChangedHandlers(e){e.tools&&this._serverCapabilities?.tools?.listChanged&&this._setupListChangedHandler("tools",_w,e.tools,async()=>(await this.listTools()).tools),e.prompts&&this._serverCapabilities?.prompts?.listChanged&&this._setupListChangedHandler("prompts",vw,e.prompts,async()=>(await this.listPrompts()).prompts),e.resources&&this._serverCapabilities?.resources?.listChanged&&this._setupListChangedHandler("resources",lw,e.resources,async()=>(await this.listResources()).resources)}get experimental(){return this._experimental||(this._experimental={tasks:new ng(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=FC(this._capabilities,e)}setRequestHandler(e,r){let i=Gm(e)?.method;if(!i)throw new Error("Schema is missing a method literal");let s;if(pc(i)){let a=i;s=a._zod?.def?.value??a.value}else{let a=i;s=a._def?.value??a.value}if(typeof s!="string")throw new Error("Schema method literal must be a string");let o=s;if(o==="elicitation/create"){let a=async(c,u)=>{let l=li(ww,c);if(!l.success){let y=l.error instanceof Error?l.error.message:String(l.error);throw new ye(Ie.InvalidParams,`Invalid elicitation request: ${y}`)}let{params:d}=l.data;d.mode=d.mode??"form";let{supportsFormMode:p,supportsUrlMode:f}=oY(this._capabilities.elicitation);if(d.mode==="form"&&!p)throw new ye(Ie.InvalidParams,"Client does not support form-mode elicitation requests");if(d.mode==="url"&&!f)throw new ye(Ie.InvalidParams,"Client does not support URL-mode elicitation requests");let m=await Promise.resolve(r(c,u));if(d.task){let y=li(Vo,m);if(!y.success){let b=y.error instanceof Error?y.error.message:String(y.error);throw new ye(Ie.InvalidParams,`Invalid task creation result: ${b}`)}return y.data}let h=li(Ew,m);if(!h.success){let y=h.error instanceof Error?h.error.message:String(h.error);throw new ye(Ie.InvalidParams,`Invalid elicitation result: ${y}`)}let g=h.data,v=d.mode==="form"?d.requestedSchema:void 0;if(d.mode==="form"&&g.action==="accept"&&g.content&&v&&this._capabilities.elicitation?.form?.applyDefaults)try{ig(v,g.content)}catch{}return g};return super.setRequestHandler(e,a)}if(o==="sampling/createMessage"){let a=async(c,u)=>{let l=li(bw,c);if(!l.success){let g=l.error instanceof Error?l.error.message:String(l.error);throw new ye(Ie.InvalidParams,`Invalid sampling request: ${g}`)}let{params:d}=l.data,p=await Promise.resolve(r(c,u));if(d.task){let g=li(Vo,p);if(!g.success){let v=g.error instanceof Error?g.error.message:String(g.error);throw new ye(Ie.InvalidParams,`Invalid task creation result: ${v}`)}return g.data}let m=d.tools||d.toolChoice?xw:Sw,h=li(m,p);if(!h.success){let g=h.error instanceof Error?h.error.message:String(h.error);throw new ye(Ie.InvalidParams,`Invalid sampling result: ${g}`)}return h.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapability(e,r){if(!this._serverCapabilities?.[e])throw new Error(`Server does not support ${e} (required for ${r})`)}async connect(e,r){if(await super.connect(e),e.sessionId===void 0)try{let n=await this.request({method:"initialize",params:{protocolVersion:Qx,capabilities:this._capabilities,clientInfo:this._clientInfo}},iw,r);if(n===void 0)throw new Error(`Server sent invalid initialize result: ${n}`);if(!xC.includes(n.protocolVersion))throw new Error(`Server's protocol version is not supported: ${n.protocolVersion}`);this._serverCapabilities=n.capabilities,this._serverVersion=n.serverInfo,e.setProtocolVersion&&e.setProtocolVersion(n.protocolVersion),this._instructions=n.instructions,await this.notification({method:"notifications/initialized"}),this._pendingListChangedConfig&&(this._setupListChangedHandlers(this._pendingListChangedConfig),this._pendingListChangedConfig=void 0)}catch(n){throw this.close(),n}}getServerCapabilities(){return this._serverCapabilities}getServerVersion(){return this._serverVersion}getInstructions(){return this._instructions}assertCapabilityForMethod(e){switch(e){case"logging/setLevel":if(!this._serverCapabilities?.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._serverCapabilities?.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":case"resources/subscribe":case"resources/unsubscribe":if(!this._serverCapabilities?.resources)throw new Error(`Server does not support resources (required for ${e})`);if(e==="resources/subscribe"&&!this._serverCapabilities.resources.subscribe)throw new Error(`Server does not support resource subscriptions (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._serverCapabilities?.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"completion/complete":if(!this._serverCapabilities?.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"initialize":break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/roots/list_changed":if(!this._capabilities.roots?.listChanged)throw new Error(`Client does not support roots list changed notifications (required for ${e})`);break;case"notifications/initialized":break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"sampling/createMessage":if(!this._capabilities.sampling)throw new Error(`Client does not support sampling capability (required for ${e})`);break;case"elicitation/create":if(!this._capabilities.elicitation)throw new Error(`Client does not support elicitation capability (required for ${e})`);break;case"roots/list":if(!this._capabilities.roots)throw new Error(`Client does not support roots capability (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Client does not support tasks capability (required for ${e})`);break;case"ping":break}}assertTaskCapability(e){RN(this._serverCapabilities?.tasks?.requests,e,"Server")}assertTaskHandlerCapability(e){this._capabilities&&ON(this._capabilities.tasks?.requests,e,"Client")}async ping(e){return this.request({method:"ping"},Wo,e)}async complete(e,r){return this.request({method:"completion/complete",params:e},kw,r)}async setLoggingLevel(e,r){return this.request({method:"logging/setLevel",params:{level:e}},Wo,r)}async getPrompt(e,r){return this.request({method:"prompts/get",params:e},gw,r)}async listPrompts(e,r){return this.request({method:"prompts/list",params:e},dw,r)}async listResources(e,r){return this.request({method:"resources/list",params:e},ow,r)}async listResourceTemplates(e,r){return this.request({method:"resources/templates/list",params:e},aw,r)}async readResource(e,r){return this.request({method:"resources/read",params:e},uw,r)}async subscribeResource(e,r){return this.request({method:"resources/subscribe",params:e},Wo,r)}async unsubscribeResource(e,r){return this.request({method:"resources/unsubscribe",params:e},Wo,r)}async callTool(e,r=gc,n){if(this.isToolTaskRequired(e.name))throw new ye(Ie.InvalidRequest,`Tool "${e.name}" requires task-based execution. Use client.experimental.tasks.callToolStream() instead.`);let i=await this.request({method:"tools/call",params:e},r,n),s=this.getToolOutputValidator(e.name);if(s){if(!i.structuredContent&&!i.isError)throw new ye(Ie.InvalidRequest,`Tool ${e.name} has an output schema but did not return structured content`);if(i.structuredContent)try{let o=s(i.structuredContent);if(!o.valid)throw new ye(Ie.InvalidParams,`Structured content does not match the tool's output schema: ${o.errorMessage}`)}catch(o){throw o instanceof ye?o:new ye(Ie.InvalidParams,`Failed to validate structured content: ${o instanceof Error?o.message:String(o)}`)}}return i}isToolTask(e){return this._serverCapabilities?.tasks?.requests?.tools?.call?this._cachedKnownTaskTools.has(e):!1}isToolTaskRequired(e){return this._cachedRequiredTaskTools.has(e)}cacheToolMetadata(e){this._cachedToolOutputValidators.clear(),this._cachedKnownTaskTools.clear(),this._cachedRequiredTaskTools.clear();for(let r of e){if(r.outputSchema){let i=this._jsonSchemaValidator.getValidator(r.outputSchema);this._cachedToolOutputValidators.set(r.name,i)}let n=r.execution?.taskSupport;(n==="required"||n==="optional")&&this._cachedKnownTaskTools.add(r.name),n==="required"&&this._cachedRequiredTaskTools.add(r.name)}}getToolOutputValidator(e){return this._cachedToolOutputValidators.get(e)}async listTools(e,r){let n=await this.request({method:"tools/list",params:e},yw,r);return this.cacheToolMetadata(n.tools),n}_setupListChangedHandler(e,r,n,i){let s=zC.safeParse(n);if(!s.success)throw new Error(`Invalid ${e} listChanged options: ${s.error.message}`);if(typeof n.onChanged!="function")throw new Error(`Invalid ${e} listChanged options: onChanged must be a function`);let{autoRefresh:o,debounceMs:a}=s.data,{onChanged:c}=n,u=async()=>{if(!o){c(null,null);return}try{let d=await i();c(null,d)}catch(d){let p=d instanceof Error?d:new Error(String(d));c(p,null)}},l=()=>{if(a){let d=this._listChangedDebounceTimers.get(e);d&&clearTimeout(d);let p=setTimeout(u,a);this._listChangedDebounceTimers.set(e,p)}else u()};this.setNotificationHandler(r,l)}async sendRootsListChanged(){return this.notification({method:"notifications/roots/list_changed"})}};var bM=Pe(yM(),1),Gd=Pe(require("node:process"),1),SM=require("node:stream");var og=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(` +`);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),AY(r)}clear(){this._buffer=void 0}};function AY(t){return OC.parse(JSON.parse(t))}function _M(t){return JSON.stringify(t)+` +`}var NY=Gd.default.platform==="win32"?["APPDATA","HOMEDRIVE","HOMEPATH","LOCALAPPDATA","PATH","PROCESSOR_ARCHITECTURE","SYSTEMDRIVE","SYSTEMROOT","TEMP","USERNAME","USERPROFILE","PROGRAMFILES"]:["HOME","LOGNAME","PATH","SHELL","TERM","USER"];function MY(){let t={};for(let e of NY){let r=Gd.default.env[e];r!==void 0&&(r.startsWith("()")||(t[e]=r))}return t}var jc=class{constructor(e){this._readBuffer=new og,this._stderrStream=null,this._serverParams=e,(e.stderr==="pipe"||e.stderr==="overlapped")&&(this._stderrStream=new SM.PassThrough)}async start(){if(this._process)throw new Error("StdioClientTransport already started! If using Client class, note that connect() calls start() automatically.");return new Promise((e,r)=>{this._process=(0,bM.default)(this._serverParams.command,this._serverParams.args??[],{env:{...MY(),...this._serverParams.env},stdio:["pipe","pipe",this._serverParams.stderr??"inherit"],shell:!1,windowsHide:Gd.default.platform==="win32"&&DY(),cwd:this._serverParams.cwd}),this._process.on("error",n=>{r(n),this.onerror?.(n)}),this._process.on("spawn",()=>{e()}),this._process.on("close",n=>{this._process=void 0,this.onclose?.()}),this._process.stdin?.on("error",n=>{this.onerror?.(n)}),this._process.stdout?.on("data",n=>{this._readBuffer.append(n),this.processReadBuffer()}),this._process.stdout?.on("error",n=>{this.onerror?.(n)}),this._stderrStream&&this._process.stderr&&this._process.stderr.pipe(this._stderrStream)})}get stderr(){return this._stderrStream?this._stderrStream:this._process?.stderr??null}get pid(){return this._process?.pid??null}processReadBuffer(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){if(this._process){let e=this._process;this._process=void 0;let r=new Promise(n=>{e.once("close",()=>{n()})});try{e.stdin?.end()}catch{}if(await Promise.race([r,new Promise(n=>setTimeout(n,2e3).unref())]),e.exitCode===null){try{e.kill("SIGTERM")}catch{}await Promise.race([r,new Promise(n=>setTimeout(n,2e3).unref())])}if(e.exitCode===null)try{e.kill("SIGKILL")}catch{}}this._readBuffer.clear()}send(e){return new Promise(r=>{if(!this._process?.stdin)throw new Error("Not connected");let n=_M(e);this._process.stdin.write(n)?r():this._process.stdin.once("drain",r)})}};function DY(){return"type"in Gd.default}Ir();On();tr();var zc=require("fs"),zE=require("path"),MM=require("os");re();var nQ=(0,zE.join)((0,MM.homedir)(),".claude-mem"),jE=(0,zE.join)(nQ,".env"),iQ=["ANTHROPIC_API_KEY","CLAUDECODE"];function sQ(t){let e={};for(let r of t.split(` +`)){let n=r.trim();if(!n||n.startsWith("#"))continue;let i=n.indexOf("=");if(i===-1)continue;let s=n.slice(0,i).trim(),o=n.slice(i+1).trim();(o.startsWith('"')&&o.endsWith('"')||o.startsWith("'")&&o.endsWith("'"))&&(o=o.slice(1,-1)),s&&(e[s]=o)}return e}function LE(){if(!(0,zc.existsSync)(jE))return{};try{let t=(0,zc.readFileSync)(jE,"utf-8"),e=sQ(t),r={};return e.ANTHROPIC_API_KEY&&(r.ANTHROPIC_API_KEY=e.ANTHROPIC_API_KEY),e.GEMINI_API_KEY&&(r.GEMINI_API_KEY=e.GEMINI_API_KEY),e.OPENROUTER_API_KEY&&(r.OPENROUTER_API_KEY=e.OPENROUTER_API_KEY),r}catch(t){return _.warn("ENV","Failed to load .env file",{path:jE},t),{}}}function DM(t=!0){let e={};for(let[r,n]of Object.entries(process.env))n!==void 0&&!iQ.includes(r)&&(e[r]=n);if(e.CLAUDE_CODE_ENTRYPOINT="sdk-ts",t){let r=LE();r.ANTHROPIC_API_KEY&&(e.ANTHROPIC_API_KEY=r.ANTHROPIC_API_KEY),r.GEMINI_API_KEY&&(e.GEMINI_API_KEY=r.GEMINI_API_KEY),r.OPENROUTER_API_KEY&&(e.OPENROUTER_API_KEY=r.OPENROUTER_API_KEY),!e.ANTHROPIC_API_KEY&&process.env.CLAUDE_CODE_OAUTH_TOKEN&&(e.CLAUDE_CODE_OAUTH_TOKEN=process.env.CLAUDE_CODE_OAUTH_TOKEN)}return e}function Lc(t){return LE()[t]}function oQ(){return!!LE().ANTHROPIC_API_KEY}function dg(){return oQ()?"API key (from ~/.claude-mem/.env)":process.env.CLAUDE_CODE_OAUTH_TOKEN?"Claude Code OAuth token (from parent process)":"Claude Code CLI (subscription billing)"}re();var VE=require("child_process"),KE=Pe(require("path"),1),JE=Pe(require("os"),1),oa=Pe(require("fs"),1);re();tr();It();var UE=["CLAUDECODE_","CLAUDE_CODE_"],FE=new Set(["CLAUDECODE","CLAUDE_CODE_SESSION","CLAUDE_CODE_ENTRYPOINT","MCP_SESSION_ID"]),aQ=new Set(["CLAUDE_CODE_OAUTH_TOKEN","CLAUDE_CODE_GIT_BASH_PATH"]);function Bi(t=process.env){let e={};for(let[r,n]of Object.entries(t))if(n!==void 0){if(aQ.has(r)){e[r]=n;continue}FE.has(r)||UE.some(i=>r.startsWith(i))||(e[r]=n)}return e}var sa=require("fs"),VM=require("os"),GE=Pe(require("path"),1);re();var Ts=require("fs"),jM=require("os"),Yd=Pe(require("path"),1);re();var cQ=5e3,uQ=1e3,lQ=Yd.default.join((0,jM.homedir)(),".claude-mem"),dQ=Yd.default.join(lQ,"supervisor.json");function Cn(t){if(!Number.isInteger(t)||t<0||t===0)return!1;try{return process.kill(t,0),!0}catch(e){return e.code==="EPERM"}}var HE=class{registryPath;entries=new Map;runtimeProcesses=new Map;initialized=!1;constructor(e=dQ){this.registryPath=e}initialize(){if(this.initialized)return;if(this.initialized=!0,(0,Ts.mkdirSync)(Yd.default.dirname(this.registryPath),{recursive:!0}),!(0,Ts.existsSync)(this.registryPath)){this.persist();return}try{let n=JSON.parse((0,Ts.readFileSync)(this.registryPath,"utf-8")).processes??{};for(let[i,s]of Object.entries(n))this.entries.set(i,s)}catch(r){_.warn("SYSTEM","Failed to parse supervisor registry, rebuilding",{path:this.registryPath},r),this.entries.clear()}let e=this.pruneDeadEntries();e>0&&_.info("SYSTEM","Removed dead processes from supervisor registry",{removed:e}),this.persist()}register(e,r,n){this.initialize(),this.entries.set(e,r),n&&this.runtimeProcesses.set(e,n),this.persist()}unregister(e){this.initialize(),this.entries.delete(e),this.runtimeProcesses.delete(e),this.persist()}clear(){this.entries.clear(),this.runtimeProcesses.clear(),this.persist()}getAll(){return this.initialize(),Array.from(this.entries.entries()).map(([e,r])=>({id:e,...r})).sort((e,r)=>{let n=Date.parse(e.startedAt),i=Date.parse(r.startedAt);return(Number.isNaN(n)?0:n)-(Number.isNaN(i)?0:i)})}getBySession(e){let r=String(e);return this.getAll().filter(n=>n.sessionId!==void 0&&String(n.sessionId)===r)}getRuntimeProcess(e){return this.runtimeProcesses.get(e)}getByPid(e){return this.getAll().filter(r=>r.pid===e)}pruneDeadEntries(){this.initialize();let e=0;for(let[r,n]of this.entries)Cn(n.pid)||(this.entries.delete(r),this.runtimeProcesses.delete(r),e+=1);return e>0&&this.persist(),e}async reapSession(e){this.initialize();let r=this.getBySession(e);if(r.length===0)return 0;let n=typeof e=="number"?e:Number(e)||void 0;_.info("SYSTEM",`Reaping ${r.length} process(es) for session ${e}`,{sessionId:n,pids:r.map(a=>a.pid)});let i=r.filter(a=>Cn(a.pid));for(let a of i)try{process.kill(a.pid,"SIGTERM")}catch(c){c.code!=="ESRCH"&&_.debug("SYSTEM",`Failed to SIGTERM session process PID ${a.pid}`,{pid:a.pid},c)}let s=Date.now()+cQ;for(;Date.now()Cn(c.pid)).length!==0;)await new Promise(c=>setTimeout(c,100));let o=i.filter(a=>Cn(a.pid));for(let a of o){_.warn("SYSTEM",`Session process PID ${a.pid} did not exit after SIGTERM, sending SIGKILL`,{pid:a.pid,sessionId:n});try{process.kill(a.pid,"SIGKILL")}catch(c){c.code!=="ESRCH"&&_.debug("SYSTEM",`Failed to SIGKILL session process PID ${a.pid}`,{pid:a.pid},c)}}if(o.length>0){let a=Date.now()+uQ;for(;Date.now()Cn(u.pid)).length!==0;)await new Promise(u=>setTimeout(u,100))}for(let a of r)this.entries.delete(a.id),this.runtimeProcesses.delete(a.id);return this.persist(),_.info("SYSTEM",`Reaped ${r.length} process(es) for session ${e}`,{sessionId:n,reaped:r.length}),r.length}persist(){let e={processes:Object.fromEntries(this.entries.entries())};(0,Ts.mkdirSync)(Yd.default.dirname(this.registryPath),{recursive:!0}),(0,Ts.writeFileSync)(this.registryPath,JSON.stringify(e,null,2))}},qE=null;function pg(){return qE||(qE=new HE),qE}var UM=require("child_process"),FM=require("fs"),qM=require("os"),ZE=Pe(require("path"),1),HM=require("util");re();On();var pQ=(0,HM.promisify)(UM.execFile),fQ=ZE.default.join((0,qM.homedir)(),".claude-mem"),mQ=ZE.default.join(fQ,"worker.pid");async function ZM(t){let e=t.currentPid??process.pid,r=t.pidFilePath??mQ,n=t.registry.getAll(),i=[...n].filter(o=>o.pid!==e).sort((o,a)=>Date.parse(a.startedAt)-Date.parse(o.startedAt));for(let o of i){if(!Cn(o.pid)){t.registry.unregister(o.id);continue}try{await LM(o.pid,"SIGTERM")}catch(a){_.debug("SYSTEM","Failed to send SIGTERM to child process",{pid:o.pid,type:o.type},a)}}await zM(i,5e3);let s=i.filter(o=>Cn(o.pid));for(let o of s)try{await LM(o.pid,"SIGKILL")}catch(a){_.debug("SYSTEM","Failed to force kill child process",{pid:o.pid,type:o.type},a)}await zM(s,1e3);for(let o of i)t.registry.unregister(o.id);for(let o of n.filter(a=>a.pid===e))t.registry.unregister(o.id);try{(0,FM.rmSync)(r,{force:!0})}catch(o){_.debug("SYSTEM","Failed to remove PID file during shutdown",{pidFilePath:r},o)}t.registry.pruneDeadEntries()}async function zM(t,e){let r=Date.now()+e;for(;Date.now()Cn(i.pid)).length===0)return;await new Promise(i=>setTimeout(i,100))}}async function LM(t,e){if(e==="SIGTERM"){try{process.kill(t,e)}catch(r){if(r.code==="ESRCH")return;throw r}return}if(process.platform==="win32"){let r=await hQ();if(r){await new Promise((i,s)=>{r(t,e,o=>{if(!o){i();return}if(o.code==="ESRCH"){i();return}s(o)})});return}let n=["/PID",String(t),"/T"];e==="SIGKILL"&&n.push("/F"),await pQ("taskkill",n,{timeout:$r.POWERSHELL_COMMAND,windowsHide:!0});return}try{process.kill(t,e)}catch(r){if(r.code==="ESRCH")return;throw r}}async function hQ(){let t="tree-kill";try{let e=await import(t);return e.default??e}catch{return null}}re();var BM=3e4,Uc=null;function gQ(){let e=pg().pruneDeadEntries();e>0&&_.info("SYSTEM",`Health check: pruned ${e} dead process(es) from registry`)}function GM(){Uc===null&&(Uc=setInterval(gQ,BM),Uc.unref(),_.debug("SYSTEM","Health checker started",{intervalMs:BM}))}function WM(){Uc!==null&&(clearInterval(Uc),Uc=null,_.debug("SYSTEM","Health checker stopped"))}var vQ=GE.default.join((0,VM.homedir)(),".claude-mem"),yQ=GE.default.join(vQ,"worker.pid"),BE=class{registry;started=!1;stopPromise=null;signalHandlersRegistered=!1;shutdownInitiated=!1;shutdownHandler=null;constructor(e){this.registry=e}async start(){if(this.started)return;if(this.registry.initialize(),WE({logAlive:!1})==="alive")throw new Error("Worker already running");this.started=!0,GM()}configureSignalHandlers(e){if(this.shutdownHandler=e,this.signalHandlersRegistered)return;this.signalHandlersRegistered=!0;let r=async n=>{if(this.shutdownInitiated){_.warn("SYSTEM",`Received ${n} but shutdown already in progress`);return}this.shutdownInitiated=!0,_.info("SYSTEM",`Received ${n}, shutting down...`);try{this.shutdownHandler?await this.shutdownHandler():await this.stop()}catch(i){_.error("SYSTEM","Error during shutdown",{},i);try{await this.stop()}catch(s){_.debug("SYSTEM","Supervisor shutdown fallback failed",{},s)}}process.exit(0)};process.on("SIGTERM",()=>{r("SIGTERM")}),process.on("SIGINT",()=>{r("SIGINT")}),process.platform!=="win32"&&(process.argv.includes("--daemon")?process.on("SIGHUP",()=>{_.debug("SYSTEM","Ignoring SIGHUP in daemon mode")}):process.on("SIGHUP",()=>{r("SIGHUP")}))}async stop(){if(this.stopPromise){await this.stopPromise;return}WM(),this.stopPromise=ZM({registry:this.registry,currentPid:process.pid}).finally(()=>{this.started=!1,this.stopPromise=null}),await this.stopPromise}assertCanSpawn(e){if(this.stopPromise!==null)throw new Error(`Supervisor is shutting down, refusing to spawn ${e}`)}registerProcess(e,r,n){this.registry.register(e,r,n)}unregisterProcess(e){this.registry.unregister(e)}getRegistry(){return this.registry}},fg=new BE(pg());async function KM(){await fg.start()}async function JM(){await fg.stop()}function yt(){return fg}function XM(t){fg.configureSignalHandlers(t)}function WE(t={}){let e=t.pidFilePath??yQ;if(!(0,sa.existsSync)(e))return"missing";let r=null;try{r=JSON.parse((0,sa.readFileSync)(e,"utf-8"))}catch(n){return _.warn("SYSTEM","Failed to parse worker PID file, removing it",{path:e},n),(0,sa.rmSync)(e,{force:!0}),"invalid"}return Cn(r.pid)?((t.logAlive??!0)&&_.info("SYSTEM","Worker already running (PID alive)",{existingPid:r.pid,existingPort:r.port,startedAt:r.startedAt}),"alive"):(_.info("SYSTEM","Removing stale PID file (worker process is dead)",{pid:r.pid,port:r.port,startedAt:r.startedAt}),(0,sa.rmSync)(e,{force:!0}),"stale")}var _Q="claude-mem-chroma",bQ="1.0.0",YM=3e4,QM=1e4,SQ=KE.default.join(JE.default.homedir(),".claude-mem","chroma"),mg="chroma-mcp",$s=class t{static instance=null;client=null;transport=null;connected=!1;lastConnectionFailureTimestamp=0;connecting=null;constructor(){}static getInstance(){return t.instance||(t.instance=new t),t.instance}async ensureConnected(){if(this.connected&&this.client)return;let e=Date.now()-this.lastConnectionFailureTimestamp;if(this.lastConnectionFailureTimestamp>0&&e{a=setTimeout(()=>d(new Error(`MCP connection to chroma-mcp timed out after ${YM}ms`)),YM)});try{await Promise.race([o,c])}catch(l){clearTimeout(a),_.warn("CHROMA_MCP","Connection failed, killing subprocess to prevent zombie",{error:l instanceof Error?l.message:String(l)});try{await this.transport.close()}catch{}try{await this.client.close()}catch{}throw this.client=null,this.transport=null,this.connected=!1,l}clearTimeout(a),this.connected=!0,this.registerManagedProcess(),_.info("CHROMA_MCP","Connected to chroma-mcp successfully");let u=this.transport;this.transport.onclose=()=>{if(this.transport!==u){_.debug("CHROMA_MCP","Ignoring stale onclose from previous transport");return}_.warn("CHROMA_MCP","chroma-mcp subprocess closed unexpectedly, applying reconnect backoff"),this.connected=!1,yt().unregisterProcess(mg),this.client=null,this.transport=null,this.lastConnectionFailureTimestamp=Date.now()}}buildCommandArgs(){let e=ve.loadFromFile(vt),r=e.CLAUDE_MEM_CHROMA_MODE||"local",n=process.env.CLAUDE_MEM_PYTHON_VERSION||e.CLAUDE_MEM_PYTHON_VERSION||"3.13";if(r==="remote"){let i=e.CLAUDE_MEM_CHROMA_HOST||"127.0.0.1",s=e.CLAUDE_MEM_CHROMA_PORT||"8000",o=e.CLAUDE_MEM_CHROMA_SSL==="true",a=e.CLAUDE_MEM_CHROMA_TENANT||"default_tenant",c=e.CLAUDE_MEM_CHROMA_DATABASE||"default_database",u=e.CLAUDE_MEM_CHROMA_API_KEY||"",l=["--python",n,"chroma-mcp","--client-type","http","--host",i,"--port",s];return l.push("--ssl",o?"true":"false"),a!=="default_tenant"&&l.push("--tenant",a),c!=="default_database"&&l.push("--database",c),u&&l.push("--api-key",u),l}return["--python",n,"chroma-mcp","--client-type","persistent","--data-dir",SQ.replace(/\\/g,"/")]}async callTool(e,r){await this.ensureConnected(),_.debug("CHROMA_MCP",`Calling tool: ${e}`,{arguments:JSON.stringify(r).slice(0,200)});let n;try{n=await this.client.callTool({name:e,arguments:r})}catch(o){this.connected=!1,this.client=null,this.transport=null,_.warn("CHROMA_MCP",`Transport error during "${e}", reconnecting and retrying once`,{error:o instanceof Error?o.message:String(o)});try{await this.ensureConnected(),n=await this.client.callTool({name:e,arguments:r})}catch(a){throw this.connected=!1,new Error(`chroma-mcp transport error during "${e}" (retry failed): ${a instanceof Error?a.message:String(a)}`)}}if(n.isError){let o=n.content?.find(a=>a.type==="text")?.text||"Unknown chroma-mcp error";throw new Error(`chroma-mcp tool "${e}" returned error: ${o}`)}let i=n.content;if(!i||i.length===0)return null;let s=i.find(o=>o.type==="text"&&o.text);if(!s||!s.text)return null;try{return JSON.parse(s.text)}catch{return null}}async isHealthy(){try{return await this.callTool("chroma_list_collections",{limit:1}),!0}catch{return!1}}async stop(){if(!this.client){_.debug("CHROMA_MCP","No active MCP connection to stop");return}_.info("CHROMA_MCP","Stopping chroma-mcp MCP connection");try{await this.client.close()}catch(e){_.debug("CHROMA_MCP","Error during client close (subprocess may already be dead)",{},e)}yt().unregisterProcess(mg),this.client=null,this.transport=null,this.connected=!1,this.connecting=null,_.info("CHROMA_MCP","chroma-mcp MCP connection stopped")}static async reset(){t.instance&&await t.instance.stop(),t.instance=null}getCombinedCertPath(){let e=KE.default.join(JE.default.homedir(),".claude-mem","combined_certs.pem");if(oa.default.existsSync(e)){let r=oa.default.statSync(e);if(Date.now()-r.mtimeMs<1440*60*1e3)return e}if(process.platform==="darwin")try{let r;try{r=(0,VE.execSync)('uvx --with certifi python -c "import certifi; print(certifi.where())"',{encoding:"utf8",stdio:["pipe","pipe","pipe"],timeout:1e4}).trim()}catch{return}if(!r||!oa.default.existsSync(r))return;let n="";try{n=(0,VE.execSync)('security find-certificate -a -c "Zscaler" -p /Library/Keychains/System.keychain',{encoding:"utf8",stdio:["pipe","pipe","pipe"],timeout:5e3})}catch{return}if(!n||!n.includes("-----BEGIN CERTIFICATE-----")||!n.includes("-----END CERTIFICATE-----"))return;let i=oa.default.readFileSync(r,"utf8"),s=e+".tmp";return oa.default.writeFileSync(s,i+` +`+n),oa.default.renameSync(s,e),_.info("CHROMA_MCP","Created combined SSL certificate bundle for Zscaler",{path:e}),e}catch(r){_.debug("CHROMA_MCP","Could not create combined cert bundle",{},r);return}}getSpawnEnv(){let e={};for(let[n,i]of Object.entries(Bi(process.env)))i!==void 0&&(e[n]=i);let r=this.getCombinedCertPath();return r?(_.info("CHROMA_MCP","Using combined SSL certificates for enterprise compatibility",{certPath:r}),{...e,SSL_CERT_FILE:r,REQUESTS_CA_BUNDLE:r,CURL_CA_BUNDLE:r,NODE_EXTRA_CA_CERTS:r}):e}registerManagedProcess(){let e=this.transport._process;e?.pid&&(yt().registerProcess(mg,{pid:e.pid,type:"chroma",startedAt:new Date().toISOString()},e),e.once("exit",()=>{yt().unregisterProcess(mg)}))}};vg();re();XE();var qc=class t{project;collectionName;collectionCreated=!1;BATCH_SIZE=100;constructor(e){this.project=e;let r=e.replace(/[^a-zA-Z0-9._-]/g,"_").replace(/[^a-zA-Z0-9]+$/,"");this.collectionName=`cm__${r||"unknown"}`}async ensureCollectionExists(){if(this.collectionCreated)return;let e=$s.getInstance();try{await e.callTool("chroma_create_collection",{collection_name:this.collectionName})}catch(r){if(!(r instanceof Error?r.message:String(r)).includes("already exists"))throw r}this.collectionCreated=!0,_.debug("CHROMA_SYNC","Collection ready",{collection:this.collectionName})}formatObservationDocs(e){let r=[],n=e.facts?JSON.parse(e.facts):[],i=e.concepts?JSON.parse(e.concepts):[],s=Fc(e.files_read),o=Fc(e.files_modified),a={sqlite_id:e.id,doc_type:"observation",memory_session_id:e.memory_session_id,project:e.project,created_at_epoch:e.created_at_epoch,type:e.type||"discovery",title:e.title||"Untitled"};return e.subtitle&&(a.subtitle=e.subtitle),i.length>0&&(a.concepts=i.join(",")),s.length>0&&(a.files_read=s.join(",")),o.length>0&&(a.files_modified=o.join(",")),e.narrative&&r.push({id:`obs_${e.id}_narrative`,document:e.narrative,metadata:{...a,field_type:"narrative"}}),e.text&&r.push({id:`obs_${e.id}_text`,document:e.text,metadata:{...a,field_type:"text"}}),n.forEach((c,u)=>{r.push({id:`obs_${e.id}_fact_${u}`,document:c,metadata:{...a,field_type:"fact",fact_index:u}})}),r}formatSummaryDocs(e){let r=[],n={sqlite_id:e.id,doc_type:"session_summary",memory_session_id:e.memory_session_id,project:e.project,created_at_epoch:e.created_at_epoch,prompt_number:e.prompt_number||0};return e.request&&r.push({id:`summary_${e.id}_request`,document:e.request,metadata:{...n,field_type:"request"}}),e.investigated&&r.push({id:`summary_${e.id}_investigated`,document:e.investigated,metadata:{...n,field_type:"investigated"}}),e.learned&&r.push({id:`summary_${e.id}_learned`,document:e.learned,metadata:{...n,field_type:"learned"}}),e.completed&&r.push({id:`summary_${e.id}_completed`,document:e.completed,metadata:{...n,field_type:"completed"}}),e.next_steps&&r.push({id:`summary_${e.id}_next_steps`,document:e.next_steps,metadata:{...n,field_type:"next_steps"}}),e.notes&&r.push({id:`summary_${e.id}_notes`,document:e.notes,metadata:{...n,field_type:"notes"}}),r}async addDocuments(e){if(e.length===0)return;await this.ensureCollectionExists();let r=$s.getInstance();for(let n=0;nObject.fromEntries(Object.entries(o.metadata).filter(([a,c])=>c!=null&&c!=="")));try{await r.callTool("chroma_add_documents",{collection_name:this.collectionName,ids:i.map(o=>o.id),documents:i.map(o=>o.document),metadatas:s})}catch(o){if((o instanceof Error?o.message:String(o)).includes("already exist"))try{await r.callTool("chroma_delete_documents",{collection_name:this.collectionName,ids:i.map(c=>c.id)}),await r.callTool("chroma_add_documents",{collection_name:this.collectionName,ids:i.map(c=>c.id),documents:i.map(c=>c.document),metadatas:s}),_.info("CHROMA_SYNC","Batch reconciled via delete+add after duplicate conflict",{collection:this.collectionName,batchStart:n,batchSize:i.length})}catch(c){_.error("CHROMA_SYNC","Batch reconcile (delete+add) failed",{collection:this.collectionName,batchStart:n,batchSize:i.length},c)}else _.error("CHROMA_SYNC","Batch add failed, continuing with remaining batches",{collection:this.collectionName,batchStart:n,batchSize:i.length},o)}}_.debug("CHROMA_SYNC","Documents added",{collection:this.collectionName,count:e.length})}async syncObservation(e,r,n,i,s,o,a=0){let c={id:e,memory_session_id:r,project:n,text:null,type:i.type,title:i.title,subtitle:i.subtitle,facts:JSON.stringify(i.facts),narrative:i.narrative,concepts:JSON.stringify(i.concepts),files_read:JSON.stringify(i.files_read),files_modified:JSON.stringify(i.files_modified),prompt_number:s,discovery_tokens:a,created_at:new Date(o*1e3).toISOString(),created_at_epoch:o},u=this.formatObservationDocs(c);_.info("CHROMA_SYNC","Syncing observation",{observationId:e,documentCount:u.length,project:n}),await this.addDocuments(u)}async syncSummary(e,r,n,i,s,o,a=0){let c={id:e,memory_session_id:r,project:n,request:i.request,investigated:i.investigated,learned:i.learned,completed:i.completed,next_steps:i.next_steps,notes:i.notes,prompt_number:s,discovery_tokens:a,created_at:new Date(o*1e3).toISOString(),created_at_epoch:o},u=this.formatSummaryDocs(c);_.info("CHROMA_SYNC","Syncing summary",{summaryId:e,documentCount:u.length,project:n}),await this.addDocuments(u)}formatUserPromptDoc(e){return{id:`prompt_${e.id}`,document:e.prompt_text,metadata:{sqlite_id:e.id,doc_type:"user_prompt",memory_session_id:e.memory_session_id,project:e.project,created_at_epoch:e.created_at_epoch,prompt_number:e.prompt_number}}}async syncUserPrompt(e,r,n,i,s,o){let a={id:e,content_session_id:"",prompt_number:s,prompt_text:i,created_at:new Date(o*1e3).toISOString(),created_at_epoch:o,memory_session_id:r,project:n},c=this.formatUserPromptDoc(a);_.info("CHROMA_SYNC","Syncing user prompt",{promptId:e,project:n}),await this.addDocuments([c])}async getExistingChromaIds(e){let r=e??this.project;await this.ensureCollectionExists();let n=$s.getInstance(),i=new Set,s=new Set,o=new Set,a=0,c=1e3;for(_.info("CHROMA_SYNC","Fetching existing Chroma document IDs...",{project:r});;){let l=(await n.callTool("chroma_get_documents",{collection_name:this.collectionName,limit:c,offset:a,where:{project:r},include:["metadatas"]}))?.metadatas||[];if(l.length===0)break;for(let d of l)if(d&&d.sqlite_id){let p=d.sqlite_id;d.doc_type==="observation"?i.add(p):d.doc_type==="session_summary"?s.add(p):d.doc_type==="user_prompt"&&o.add(p)}a+=c,_.debug("CHROMA_SYNC","Fetched batch of existing IDs",{project:r,offset:a,batchSize:l.length})}return _.info("CHROMA_SYNC","Existing IDs fetched",{project:r,observations:i.size,summaries:s.size,prompts:o.size}),{observations:i,summaries:s,prompts:o}}async ensureBackfilled(e){let r=e??this.project;_.info("CHROMA_SYNC","Starting smart backfill",{project:r}),await this.ensureCollectionExists();let n=await this.getExistingChromaIds(r),i=new Is;try{let s=Array.from(n.observations).filter(S=>Number.isInteger(S)&&S>0),o=s.length>0?`AND id NOT IN (${s.join(",")})`:"",a=i.db.prepare(` SELECT * FROM observations WHERE project = ? ${o} ORDER BY id ASC `).all(r),c=i.db.prepare(` SELECT COUNT(*) as count FROM observations WHERE project = ? - `).get(r);_.info("CHROMA_SYNC","Backfilling observations",{project:r,missing:a.length,existing:n.observations.size,total:c.count});let u=[];for(let y of a)u.push(...this.formatObservationDocs(y));for(let y=0;yNumber.isInteger(y)&&y>0),d=l.length>0?`AND id NOT IN (${l.join(",")})`:"",p=i.db.prepare(` + `).get(r);_.info("CHROMA_SYNC","Backfilling observations",{project:r,missing:a.length,existing:n.observations.size,total:c.count});let u=[];for(let S of a)u.push(...this.formatObservationDocs(S));for(let S=0;SNumber.isInteger(S)&&S>0),d=l.length>0?`AND id NOT IN (${l.join(",")})`:"",p=i.db.prepare(` SELECT * FROM session_summaries WHERE project = ? ${d} ORDER BY id ASC `).all(r),f=i.db.prepare(` SELECT COUNT(*) as count FROM session_summaries WHERE project = ? - `).get(r);_.info("CHROMA_SYNC","Backfilling summaries",{project:r,missing:p.length,existing:n.summaries.size,total:f.count});let m=[];for(let y of p)m.push(...this.formatSummaryDocs(y));for(let y=0;yNumber.isInteger(y)&&y>0),g=h.length>0?`AND up.id NOT IN (${h.join(",")})`:"",v=i.db.prepare(` + `).get(r);_.info("CHROMA_SYNC","Backfilling summaries",{project:r,missing:p.length,existing:n.summaries.size,total:f.count});let m=[];for(let S of p)m.push(...this.formatSummaryDocs(S));for(let S=0;SNumber.isInteger(S)&&S>0),g=h.length>0?`AND up.id NOT IN (${h.join(",")})`:"",v=i.db.prepare(` SELECT up.*, s.project, @@ -919,13 +1026,13 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs. JOIN sdk_sessions s ON up.content_session_id = s.content_session_id WHERE s.project = ? ${g} ORDER BY up.id ASC - `).all(r),S=i.db.prepare(` + `).all(r),y=i.db.prepare(` SELECT COUNT(*) as count FROM user_prompts up JOIN sdk_sessions s ON up.content_session_id = s.content_session_id WHERE s.project = ? - `).get(r);_.info("CHROMA_SYNC","Backfilling user prompts",{project:r,missing:v.length,existing:n.prompts.size,total:S.count});let b=[];for(let y of v)b.push(this.formatUserPromptDoc(y));for(let y=0;ys.trim()).find(s=>s.length>0)||null}catch{return null}}function nQ(t={}){let e=t.platform??process.platform,r=t.execPath??process.execPath;if(e!=="win32"||DM(r))return r;let n=t.env??process.env,i=t.homeDirectory??(0,zE.homedir)(),s=t.pathExists??Lt.existsSync,o=t.lookupInPath??rQ,a=[n.BUN,n.BUN_PATH,Fi.default.join(i,".bun","bin","bun.exe"),Fi.default.join(i,".bun","bin","bun"),n.USERPROFILE?Fi.default.join(n.USERPROFILE,".bun","bin","bun.exe"):void 0,n.LOCALAPPDATA?Fi.default.join(n.LOCALAPPDATA,"bun","bun.exe"):void 0,n.LOCALAPPDATA?Fi.default.join(n.LOCALAPPDATA,"bun","bin","bun.exe"):void 0];for(let c of a){let u=c?.trim();if(u&&(DM(u)&&s(u)||u.toLowerCase()==="bun"))return u}return o("bun",e)}function zM(t){(0,Lt.mkdirSync)(LE,{recursive:!0}),(0,Lt.writeFileSync)(qi,JSON.stringify(t,null,2))}function UE(){if(!(0,Lt.existsSync)(qi))return null;try{return JSON.parse((0,Lt.readFileSync)(qi,"utf-8"))}catch(t){return _.warn("SYSTEM","Failed to parse PID file",{path:qi},t),null}}function Xo(){if((0,Lt.existsSync)(qi))try{(0,Lt.unlinkSync)(qi)}catch(t){_.warn("SYSTEM","Failed to remove PID file",{path:qi},t)}}function Ts(t){return process.platform==="win32"?Math.round(t*2):t}function iQ(t){if(!t||t.trim()==="")return-1;let e=t.trim(),r=0,n=e.match(/^(\d+)-(\d+):(\d+):(\d+)$/);if(n)return r=parseInt(n[1],10)*24*60+parseInt(n[2],10)*60+parseInt(n[3],10),r;let i=e.match(/^(\d+):(\d+):(\d+)$/);if(i)return r=parseInt(i[1],10)*60+parseInt(i[2],10),r;let s=e.match(/^(\d+):(\d+)$/);return s?parseInt(s[1],10):-1}var jE=["worker-service.cjs","chroma-mcp"],sQ=["mcp-server.cjs"];async function LM(){let t=process.platform==="win32",e=process.pid,r=[],n=[...jE,...sQ];try{if(t){let s=`powershell -NoProfile -NonInteractive -Command "Get-CimInstance Win32_Process -Filter '(${n.map(l=>`CommandLine LIKE '%${l}%'`).join(" OR ")}) AND ProcessId != ${e}' | Select-Object ProcessId, CommandLine, CreationDate | ConvertTo-Json"`,{stdout:o}=await NM(s,{timeout:Er.POWERSHELL_COMMAND,windowsHide:!0});if(!o.trim()||o.trim()==="null"){_.debug("SYSTEM","No orphaned claude-mem processes found (Windows)");return}let a=JSON.parse(o),c=Array.isArray(a)?a:[a],u=Date.now();for(let l of c){let d=l.ProcessId;if(!Number.isInteger(d)||d<=0||d===e)continue;let p=l.CommandLine||"";if(jE.some(m=>p.includes(m)))r.push(d),_.debug("SYSTEM","Found orphaned process (aggressive)",{pid:d,commandLine:p.substring(0,80)});else{let m=l.CreationDate?.match(/\/Date\((\d+)\)\//);if(m){let h=parseInt(m[1],10),g=(u-h)/(1e3*60);g>=MM&&(r.push(d),_.debug("SYSTEM","Found orphaned process (age-gated)",{pid:d,ageMinutes:Math.round(g)}))}}}}else{let i=n.join("|"),{stdout:s}=await NM(`ps -eo pid,etime,command | grep -E "${i}" | grep -v grep || true`);if(!s.trim()){_.debug("SYSTEM","No orphaned claude-mem processes found (Unix)");return}let o=s.trim().split(` -`);for(let a of o){let c=a.trim().match(/^(\d+)\s+(\S+)\s+(.*)$/);if(!c)continue;let u=parseInt(c[1],10),l=c[2],d=c[3];if(!Number.isInteger(u)||u<=0||u===e)continue;if(jE.some(f=>d.includes(f)))r.push(u),_.debug("SYSTEM","Found orphaned process (aggressive)",{pid:u,command:d.substring(0,80)});else{let f=iQ(l);f>=MM&&(r.push(u),_.debug("SYSTEM","Found orphaned process (age-gated)",{pid:u,ageMinutes:f,command:d.substring(0,80)}))}}}}catch(i){_.error("SYSTEM","Failed to enumerate orphaned processes during aggressive cleanup",{},i);return}if(r.length!==0){if(_.info("SYSTEM","Aggressive startup cleanup: killing orphaned processes",{platform:t?"Windows":"Unix",count:r.length,pids:r}),t){for(let i of r)if(!(!Number.isInteger(i)||i<=0))try{(0,ks.execSync)(`taskkill /PID ${i} /T /F`,{timeout:Er.POWERSHELL_COMMAND,stdio:"ignore",windowsHide:!0})}catch(s){_.debug("SYSTEM","Failed to kill process, may have already exited",{pid:i},s)}}else for(let i of r)try{process.kill(i,"SIGKILL")}catch(s){_.debug("SYSTEM","Process already exited",{pid:i},s)}_.info("SYSTEM","Aggressive startup cleanup complete",{count:r.length})}}var oQ=".chroma-cleaned-v10.3";function UM(t){let e=t??LE,r=Fi.default.join(e,oQ),n=Fi.default.join(e,"chroma");if((0,Lt.existsSync)(r)){_.debug("SYSTEM","Chroma migration marker exists, skipping wipe");return}_.warn("SYSTEM","Running one-time chroma data wipe (upgrade from pre-v10.3)",{chromaDir:n}),(0,Lt.existsSync)(n)&&((0,Lt.rmSync)(n,{recursive:!0,force:!0}),_.info("SYSTEM","Chroma data directory removed",{chromaDir:n})),(0,Lt.mkdirSync)(e,{recursive:!0}),(0,Lt.writeFileSync)(r,new Date().toISOString()),_.info("SYSTEM","Chroma migration marker written",{markerPath:r})}function FE(t,e,r={}){let n=process.platform==="win32";vt().assertCanSpawn("worker daemon");let i=Ui({...process.env,CLAUDE_MEM_WORKER_PORT:String(e),...r});if(n){let a=nQ();if(!a){_.error("SYSTEM","Failed to locate Bun runtime for Windows worker spawn");return}let c=`Start-Process -FilePath '${a.replace(/'/g,"''")}' -ArgumentList @('${t.replace(/'/g,"''")}','--daemon') -WindowStyle Hidden`,u=Buffer.from(c,"utf16le").toString("base64");try{return(0,ks.execSync)(`powershell -NoProfile -EncodedCommand ${u}`,{stdio:"ignore",windowsHide:!0,env:i}),0}catch(l){_.error("SYSTEM","Failed to spawn worker daemon on Windows",{runtimePath:a},l);return}}let s="/usr/bin/setsid";if((0,Lt.existsSync)(s)){let a=(0,ks.spawn)(s,[process.execPath,t,"--daemon"],{detached:!0,stdio:"ignore",env:i});return a.pid===void 0?void 0:(a.unref(),a.pid)}let o=(0,ks.spawn)(process.execPath,[t,"--daemon"],{detached:!0,stdio:"ignore",env:i});if(o.pid!==void 0)return o.unref(),o.pid}function FM(t){if(t===0)return!0;if(!Number.isInteger(t)||t<0)return!1;try{return process.kill(t,0),!0}catch(e){return e.code==="EPERM"}}function qM(t=15e3){try{let e=(0,Lt.statSync)(qi);return Date.now()-e.mtimeMs{let r=GM.default.createServer();r.once("error",n=>{n.code==="EADDRINUSE"?e(!0):e(!1)}),r.once("listening",()=>{r.close(()=>e(!1))}),r.listen(t,"127.0.0.1")})}async function VM(t,e,r,n){let i=Date.now();for(;Date.now()-isetTimeout(s,500))}return!1}function Yo(t,e=3e4){return VM(t,"/api/health",e,"Service not ready yet, will retry")}function KM(t,e=3e4){return VM(t,"/api/readiness",e,"Worker not ready yet, will retry")}async function og(t,e=1e4){let r=Date.now();for(;Date.now()-rsetTimeout(n,500))}return!1}async function ag(t){try{let e=await qE(t,"/api/admin/shutdown","POST");return e.ok?!0:(_.warn("SYSTEM","Shutdown request returned error",{status:e.statusCode}),!1)}catch(e){return e instanceof Error&&e.message?.includes("ECONNREFUSED")?(_.debug("SYSTEM","Worker already stopped",{},e),!1):(_.error("SYSTEM","Shutdown request failed unexpectedly",{},e),!1)}}function aQ(){try{let t=BM.default.join(Ss,"package.json");return JSON.parse((0,WM.readFileSync)(t,"utf-8")).version}catch(t){let e=t.code;if(e==="ENOENT"||e==="EBUSY")return _.debug("SYSTEM","Could not read plugin version (shutdown race)",{code:e}),"unknown";throw t}}async function cQ(t){try{let e=await qE(t,"/api/version");return e.ok?JSON.parse(e.body).version:null}catch{return _.debug("SYSTEM","Could not fetch worker version",{}),null}}async function JM(t){let e=aQ(),r=await cQ(t);return!r||e==="unknown"?{matches:!0,pluginVersion:e,workerVersion:r}:{matches:e===r,pluginVersion:e,workerVersion:r}}re();async function XM(t){_.info("SYSTEM","Shutdown initiated"),t.server&&(await uQ(t.server),_.info("SYSTEM","HTTP server closed")),await t.sessionManager.shutdownAll(),t.mcpClient&&(await t.mcpClient.close(),_.info("SYSTEM","MCP client closed")),t.chromaMcpManager&&(_.info("SHUTDOWN","Stopping Chroma MCP connection..."),await t.chromaMcpManager.stop(),_.info("SHUTDOWN","Chroma MCP connection stopped")),t.dbManager&&await t.dbManager.close(),await TM(),_.info("SYSTEM","Worker shutdown complete")}async function uQ(t){t.closeAllConnections(),process.platform==="win32"&&await new Promise(e=>setTimeout(e,500)),await new Promise((e,r)=>{t.close(n=>n?r(n):e())}),process.platform==="win32"&&(await new Promise(e=>setTimeout(e,500)),_.info("SYSTEM","Waited for Windows port cleanup"))}var l6=Pe(hv(),1),VT=Pe(require("fs"),1),wp=Pe(require("path"),1);var X2=["search","context","summarize","import","export"],Y2=["workflow","search_params","examples","all"];re();var BT=Pe(hv(),1),i6=Pe(n6(),1),s6=Pe(require("path"),1);zt();re();function GT(t){let e=[];e.push(BT.default.json({limit:"50mb"})),e.push((0,i6.default)({origin:(i,s)=>{!i||i.startsWith("http://localhost:")||i.startsWith("http://127.0.0.1:")?s(null,!0):s(new Error("CORS not allowed"))},methods:["GET","HEAD","POST","PUT","PATCH","DELETE"],allowedHeaders:["Content-Type","Authorization","X-Requested-With"],credentials:!1})),e.push((i,s,o)=>{let c=[".html",".js",".css",".svg",".png",".jpg",".jpeg",".webp",".woff",".woff2",".ttf",".eot"].some(m=>i.path.endsWith(m)),u=i.path==="/api/logs";if(i.path.startsWith("/health")||i.path==="/"||c||u)return o();let l=Date.now(),d=`${i.method}-${Date.now()}`,p=t(i.method,i.path,i.body);_.debug("HTTP",`\u2192 ${i.method} ${i.path}`,{requestId:d},p);let f=s.send.bind(s);s.send=function(m){let h=Date.now()-l;return _.debug("HTTP",`\u2190 ${s.statusCode} ${i.path}`,{requestId:d,duration:`${h}ms`}),f(m)},o()});let r=dn(),n=s6.default.join(r,"plugin","ui");return e.push(BT.default.static(n)),e}function xp(t,e,r){let n=t.ip||t.connection.remoteAddress||"";if(!(n==="127.0.0.1"||n==="::1"||n==="::ffff:127.0.0.1"||n==="localhost")){_.warn("SECURITY","Admin endpoint access denied - not localhost",{endpoint:t.path,clientIp:n,method:t.method}),e.status(403).json({error:"Forbidden",message:"Admin endpoints are only accessible from localhost"});return}r()}function WT(t,e,r){if(!r||Object.keys(r).length===0||e.includes("/init"))return"";if(e.includes("/observations")){let n=r.tool_name||"?",i=r.tool_input;return`tool=${_.formatTool(n,i)}`}return e.includes("/summarize")?"requesting summary":""}re();var iu=class extends Error{constructor(r,n=500,i,s){super(r);this.statusCode=n;this.code=i;this.details=s;this.name="AppError"}};function o6(t,e,r,n){let i={error:t,message:e};return r&&(i.code=r),n&&(i.details=n),i}var a6=(t,e,r,n)=>{let i=t instanceof iu?t.statusCode:500;_.error("HTTP",`Error handling ${e.method} ${e.path}`,{statusCode:i,error:t.message,code:t instanceof iu?t.code:void 0},t);let s=o6(t.name||"Error",t.message,t instanceof iu?t.code:void 0,t instanceof iu?t.details:void 0);r.status(i).json(s)};function c6(t,e){e.status(404).json(o6("NotFound",`Cannot ${t.method} ${t.path}`))}var u6="11.0.1",gv=class{app;server=null;options;startTime=Date.now();constructor(e){this.options=e,this.app=(0,l6.default)(),this.setupMiddleware(),this.setupCoreRoutes()}getHttpServer(){return this.server}async listen(e,r){return new Promise((n,i)=>{this.server=this.app.listen(e,r,()=>{_.info("SYSTEM","HTTP server started",{host:r,port:e,pid:process.pid}),n()}),this.server.on("error",i)})}async close(){this.server&&(this.server.closeAllConnections(),process.platform==="win32"&&await new Promise(e=>setTimeout(e,500)),await new Promise((e,r)=>{this.server.close(n=>n?r(n):e())}),process.platform==="win32"&&await new Promise(e=>setTimeout(e,500)),this.server=null,_.info("SYSTEM","HTTP server closed"))}registerRoutes(e){e.setupRoutes(this.app)}finalizeRoutes(){this.app.use(c6),this.app.use(a6)}setupMiddleware(){GT(WT).forEach(r=>this.app.use(r))}setupCoreRoutes(){this.app.get("/api/health",(e,r)=>{r.status(200).json({status:"ok",version:u6,workerPath:this.options.workerPath,uptime:Date.now()-this.startTime,managed:process.env.CLAUDE_MEM_MANAGED==="true",hasIpc:typeof process.send=="function",platform:process.platform,pid:process.pid,initialized:this.options.getInitializationComplete(),mcpReady:this.options.getMcpReady(),ai:this.options.getAiStatus()})}),this.app.get("/api/readiness",(e,r)=>{this.options.getInitializationComplete()?r.status(200).json({status:"ready",mcpReady:this.options.getMcpReady()}):r.status(503).json({status:"initializing",message:"Worker is still initializing, please retry"})}),this.app.get("/api/version",(e,r)=>{r.status(200).json({version:u6})}),this.app.get("/api/instructions",async(e,r)=>{let n=e.query.topic||"all",i=e.query.operation;if(n&&!Y2.includes(n))return r.status(400).json({error:"Invalid topic"});try{let s;if(i){if(!X2.includes(i))return r.status(400).json({error:"Invalid operation"});let o=wp.default.resolve(__dirname,"../skills/mem-search/operations"),a=wp.default.resolve(o,`${i}.md`);if(!a.startsWith(o+wp.default.sep))return r.status(400).json({error:"Invalid request"});s=await VT.promises.readFile(a,"utf-8")}else{let o=wp.default.join(__dirname,"../skills/mem-search/SKILL.md"),a=await VT.promises.readFile(o,"utf-8");s=this.extractInstructionSection(a,n)}r.json({content:[{type:"text",text:s}]})}catch{r.status(404).json({error:"Instruction not found"})}}),this.app.post("/api/admin/restart",xp,async(e,r)=>{r.json({status:"restarting"}),process.platform==="win32"&&process.env.CLAUDE_MEM_MANAGED==="true"&&process.send?(_.info("SYSTEM","Sending restart request to wrapper"),process.send({type:"restart"})):setTimeout(async()=>{try{await this.options.onRestart()}finally{process.exit(0)}},100)}),this.app.post("/api/admin/shutdown",xp,async(e,r)=>{r.json({status:"shutting_down"}),process.platform==="win32"&&process.env.CLAUDE_MEM_MANAGED==="true"&&process.send?(_.info("SYSTEM","Sending shutdown request to wrapper"),process.send({type:"shutdown"})):setTimeout(async()=>{try{await this.options.onShutdown()}finally{process.exit(0)}},100)}),this.app.get("/api/admin/doctor",xp,(e,r)=>{let o=vt().getRegistry().getAll().map(m=>({id:m.id,pid:m.pid,type:m.type,status:$n(m.pid)?"alive":"dead",startedAt:m.startedAt})),a=o.filter(m=>m.status==="dead").map(m=>m.pid),c=!Object.keys(process.env).some(m=>TE.has(m)||kE.some(h=>m.startsWith(h))),u=Date.now()-this.startTime,l=Math.floor(u/1e3),d=Math.floor(l/3600),p=Math.floor(l%3600/60),f=d>0?`${d}h ${p}m`:`${p}m`;r.json({supervisor:{running:!0,pid:process.pid,uptime:f},processes:o,health:{deadProcessPids:a,envClean:c}})})}extractInstructionSection(e,r){let n={workflow:this.extractBetween(e,"## The Workflow","## Search Parameters"),search_params:this.extractBetween(e,"## Search Parameters","## Examples"),examples:this.extractBetween(e,"## Examples","## Why This Workflow"),all:e};return n[r]||n.all}extractBetween(e,r,n){let i=e.indexOf(r),s=e.indexOf(n);return i===-1?e:s===-1?e.substring(i):e.substring(i,s).trim()}};var It=Pe(require("path"),1),kp=require("os"),Kt=require("fs"),f6=require("child_process"),m6=require("util");re();Dr();zt();var Vn=require("fs"),Ep=require("path");re();function d6(t){try{return(0,Vn.existsSync)(t)?JSON.parse((0,Vn.readFileSync)(t,"utf-8")):{}}catch(e){return _.error("CONFIG","Failed to read Cursor registry, using empty registry",{file:t,error:e instanceof Error?e.message:String(e)}),{}}}function p6(t,e){let r=(0,Ep.join)(t,"..");(0,Vn.mkdirSync)(r,{recursive:!0}),(0,Vn.writeFileSync)(t,JSON.stringify(e,null,2))}function KT(t,e){let r=(0,Ep.join)(t,".cursor","rules"),n=(0,Ep.join)(r,"claude-mem-context.mdc"),i=`${n}.tmp`;(0,Vn.mkdirSync)(r,{recursive:!0});let s=`--- + `).get(r);_.info("CHROMA_SYNC","Backfilling user prompts",{project:r,missing:v.length,existing:n.prompts.size,total:y.count});let b=[];for(let S of v)b.push(this.formatUserPromptDoc(S));for(let S=0;Ss.trim()).find(s=>s.length>0)||null}catch{return null}}function $Q(t={}){let e=t.platform??process.platform,r=t.execPath??process.execPath;if(e!=="win32"||aD(r))return r;let n=t.env??process.env,i=t.homeDirectory??(0,ek.homedir)(),s=t.pathExists??Ht.existsSync,o=t.lookupInPath??TQ,a=[n.BUN,n.BUN_PATH,Wi.default.join(i,".bun","bin","bun.exe"),Wi.default.join(i,".bun","bin","bun"),n.USERPROFILE?Wi.default.join(n.USERPROFILE,".bun","bin","bun.exe"):void 0,n.LOCALAPPDATA?Wi.default.join(n.LOCALAPPDATA,"bun","bun.exe"):void 0,n.LOCALAPPDATA?Wi.default.join(n.LOCALAPPDATA,"bun","bin","bun.exe"):void 0];for(let c of a){let u=c?.trim();if(u&&(aD(u)&&s(u)||u.toLowerCase()==="bun"))return u}return o("bun",e)}function uD(t){(0,Ht.mkdirSync)(tk,{recursive:!0}),(0,Ht.writeFileSync)(Rs,JSON.stringify(t,null,2))}function rk(){if(!(0,Ht.existsSync)(Rs))return null;try{return JSON.parse((0,Ht.readFileSync)(Rs,"utf-8"))}catch(t){return _.warn("SYSTEM","Failed to parse PID file",{path:Rs},t),null}}function Hc(){if((0,Ht.existsSync)(Rs))try{(0,Ht.unlinkSync)(Rs)}catch(t){_.warn("SYSTEM","Failed to remove PID file",{path:Rs},t)}}function Cs(t){return process.platform==="win32"?Math.round(t*2):t}function IQ(t){if(!t||t.trim()==="")return-1;let e=t.trim(),r=0,n=e.match(/^(\d+)-(\d+):(\d+):(\d+)$/);if(n)return r=parseInt(n[1],10)*24*60+parseInt(n[2],10)*60+parseInt(n[3],10),r;let i=e.match(/^(\d+):(\d+):(\d+)$/);if(i)return r=parseInt(i[1],10)*60+parseInt(i[2],10),r;let s=e.match(/^(\d+):(\d+)$/);return s?parseInt(s[1],10):-1}var QE=["worker-service.cjs","chroma-mcp"],RQ=["mcp-server.cjs"];async function lD(){let t=process.platform==="win32",e=process.pid,r=[],n=[...QE,...RQ],i=new Set([e]);process.ppid&&process.ppid>0&&i.add(process.ppid);try{if(t){let o=`powershell -NoProfile -NonInteractive -Command "Get-CimInstance Win32_Process -Filter '(${n.map(d=>`CommandLine LIKE '%${d}%'`).join(" OR ")}) AND ProcessId != ${e}' | Select-Object ProcessId, CommandLine, CreationDate | ConvertTo-Json"`,{stdout:a}=await sD(o,{timeout:$r.POWERSHELL_COMMAND,windowsHide:!0});if(!a.trim()||a.trim()==="null"){_.debug("SYSTEM","No orphaned claude-mem processes found (Windows)");return}let c=JSON.parse(a),u=Array.isArray(c)?c:[c],l=Date.now();for(let d of u){let p=d.ProcessId;if(!Number.isInteger(p)||p<=0||i.has(p))continue;let f=d.CommandLine||"";if(QE.some(h=>f.includes(h)))r.push(p),_.debug("SYSTEM","Found orphaned process (aggressive)",{pid:p,commandLine:f.substring(0,80)});else{let h=d.CreationDate?.match(/\/Date\((\d+)\)\//);if(h){let g=parseInt(h[1],10),v=(l-g)/(1e3*60);v>=oD&&(r.push(p),_.debug("SYSTEM","Found orphaned process (age-gated)",{pid:p,ageMinutes:Math.round(v)}))}}}}else{let s=n.join("|"),{stdout:o}=await sD(`ps -eo pid,etime,command | grep -E "${s}" | grep -v grep || true`);if(!o.trim()){_.debug("SYSTEM","No orphaned claude-mem processes found (Unix)");return}let a=o.trim().split(` +`);for(let c of a){let u=c.trim().match(/^(\d+)\s+(\S+)\s+(.*)$/);if(!u)continue;let l=parseInt(u[1],10),d=u[2],p=u[3];if(!Number.isInteger(l)||l<=0||i.has(l))continue;if(QE.some(m=>p.includes(m)))r.push(l),_.debug("SYSTEM","Found orphaned process (aggressive)",{pid:l,command:p.substring(0,80)});else{let m=IQ(d);m>=oD&&(r.push(l),_.debug("SYSTEM","Found orphaned process (age-gated)",{pid:l,ageMinutes:m,command:p.substring(0,80)}))}}}}catch(s){_.error("SYSTEM","Failed to enumerate orphaned processes during aggressive cleanup",{},s);return}if(r.length!==0){if(_.info("SYSTEM","Aggressive startup cleanup: killing orphaned processes",{platform:t?"Windows":"Unix",count:r.length,pids:r}),t){for(let s of r)if(!(!Number.isInteger(s)||s<=0))try{(0,Os.execSync)(`taskkill /PID ${s} /T /F`,{timeout:$r.POWERSHELL_COMMAND,stdio:"ignore",windowsHide:!0})}catch(o){_.debug("SYSTEM","Failed to kill process, may have already exited",{pid:s},o)}}else for(let s of r)try{process.kill(s,"SIGKILL")}catch(o){_.debug("SYSTEM","Process already exited",{pid:s},o)}_.info("SYSTEM","Aggressive startup cleanup complete",{count:r.length})}}var OQ=".chroma-cleaned-v10.3";function dD(t){let e=t??tk,r=Wi.default.join(e,OQ),n=Wi.default.join(e,"chroma");if((0,Ht.existsSync)(r)){_.debug("SYSTEM","Chroma migration marker exists, skipping wipe");return}_.warn("SYSTEM","Running one-time chroma data wipe (upgrade from pre-v10.3)",{chromaDir:n}),(0,Ht.existsSync)(n)&&((0,Ht.rmSync)(n,{recursive:!0,force:!0}),_.info("SYSTEM","Chroma data directory removed",{chromaDir:n})),(0,Ht.mkdirSync)(e,{recursive:!0}),(0,Ht.writeFileSync)(r,new Date().toISOString()),_.info("SYSTEM","Chroma migration marker written",{markerPath:r})}function nk(t,e,r={}){let n=process.platform==="win32";yt().assertCanSpawn("worker daemon");let i=Bi({...process.env,CLAUDE_MEM_WORKER_PORT:String(e),...r});if(n){let a=$Q();if(!a){_.error("SYSTEM","Failed to locate Bun runtime for Windows worker spawn");return}let c=`Start-Process -FilePath '${a.replace(/'/g,"''")}' -ArgumentList @('${t.replace(/'/g,"''")}','--daemon') -WindowStyle Hidden`,u=Buffer.from(c,"utf16le").toString("base64");try{return(0,Os.execSync)(`powershell -NoProfile -EncodedCommand ${u}`,{stdio:"ignore",windowsHide:!0,env:i}),0}catch(l){_.error("SYSTEM","Failed to spawn worker daemon on Windows",{runtimePath:a},l);return}}let s="/usr/bin/setsid";if((0,Ht.existsSync)(s)){let a=(0,Os.spawn)(s,[process.execPath,t,"--daemon"],{detached:!0,stdio:"ignore",env:i});return a.pid===void 0?void 0:(a.unref(),a.pid)}let o=(0,Os.spawn)(process.execPath,[t,"--daemon"],{detached:!0,stdio:"ignore",env:i});if(o.pid!==void 0)return o.unref(),o.pid}function pD(t){if(t===0)return!0;if(!Number.isInteger(t)||t<0)return!1;try{return process.kill(t,0),!0}catch(e){return e.code==="EPERM"}}function fD(){try{if(!(0,Ht.existsSync)(Rs))return;let t=new Date;(0,Ht.utimesSync)(Rs,t,t)}catch{}}function mD(){return WE({logAlive:!1})}var hD=Pe(require("net"),1);re();It();async function gD(t,e,r="GET"){let n=await fetch(`http://127.0.0.1:${t}${e}`,{method:r}),i="";try{i=await n.text()}catch{}return{ok:n.ok,statusCode:n.status,body:i}}async function Qd(t){if(process.platform==="win32")try{return(await fetch(`http://127.0.0.1:${t}/api/health`)).ok}catch{return!1}return new Promise(e=>{let r=hD.default.createServer();r.once("error",n=>{n.code==="EADDRINUSE"?e(!0):e(!1)}),r.once("listening",()=>{r.close(()=>e(!1))}),r.listen(t,"127.0.0.1")})}async function vD(t,e,r,n){let i=Date.now();for(;Date.now()-isetTimeout(s,500))}return!1}function Zc(t,e=3e4){return vD(t,"/api/health",e,"Service not ready yet, will retry")}function ik(t,e=3e4){return vD(t,"/api/readiness",e,"Worker not ready yet, will retry")}async function sk(t,e=1e4){let r=Date.now();for(;Date.now()-rsetTimeout(n,500))}return!1}async function ok(t){try{let e=await gD(t,"/api/admin/shutdown","POST");return e.ok?!0:(_.warn("SYSTEM","Shutdown request returned error",{status:e.statusCode}),!1)}catch(e){return e instanceof Error&&e.message?.includes("ECONNREFUSED")?(_.debug("SYSTEM","Worker already stopped",{},e),!1):(_.error("SYSTEM","Shutdown request failed unexpectedly",{},e),!1)}}re();async function yD(t){_.info("SYSTEM","Shutdown initiated"),t.server&&(await CQ(t.server),_.info("SYSTEM","HTTP server closed")),await t.sessionManager.shutdownAll(),t.mcpClient&&(await t.mcpClient.close(),_.info("SYSTEM","MCP client closed")),t.chromaMcpManager&&(_.info("SHUTDOWN","Stopping Chroma MCP connection..."),await t.chromaMcpManager.stop(),_.info("SHUTDOWN","Chroma MCP connection stopped")),t.dbManager&&await t.dbManager.close(),await JM(),_.info("SYSTEM","Worker shutdown complete")}async function CQ(t){t.closeAllConnections(),process.platform==="win32"&&await new Promise(e=>setTimeout(e,500)),await new Promise((e,r)=>{t.close(n=>n?r(n):e())}),process.platform==="win32"&&(await new Promise(e=>setTimeout(e,500)),_.info("SYSTEM","Waited for Windows port cleanup"))}var I6=Pe(Tv(),1),p$=Pe(require("fs"),1),zp=Pe(require("path"),1);var h6=["search","context","summarize","import","export"],g6=["workflow","search_params","examples","all"];re();var u$=Pe(Tv(),1),x6=Pe(S6(),1),w6=Pe(require("path"),1);It();re();function l$(t){let e=[];e.push(u$.default.json({limit:"50mb"})),e.push((0,x6.default)({origin:(i,s)=>{!i||i.startsWith("http://localhost:")||i.startsWith("http://127.0.0.1:")?s(null,!0):s(new Error("CORS not allowed"))},methods:["GET","HEAD","POST","PUT","PATCH","DELETE"],allowedHeaders:["Content-Type","Authorization","X-Requested-With"],credentials:!1})),e.push((i,s,o)=>{let c=[".html",".js",".css",".svg",".png",".jpg",".jpeg",".webp",".woff",".woff2",".ttf",".eot"].some(m=>i.path.endsWith(m)),u=i.path==="/api/logs";if(i.path.startsWith("/health")||i.path==="/"||c||u)return o();let l=Date.now(),d=`${i.method}-${Date.now()}`,p=t(i.method,i.path,i.body);_.debug("HTTP",`\u2192 ${i.method} ${i.path}`,{requestId:d},p);let f=s.send.bind(s);s.send=function(m){let h=Date.now()-l;return _.debug("HTTP",`\u2190 ${s.statusCode} ${i.path}`,{requestId:d,duration:`${h}ms`}),f(m)},o()});let r=fn(),n=w6.default.join(r,"plugin","ui");return e.push(u$.default.static(n)),e}function jp(t,e,r){let n=t.ip||t.connection.remoteAddress||"";if(!(n==="127.0.0.1"||n==="::1"||n==="::ffff:127.0.0.1"||n==="localhost")){_.warn("SECURITY","Admin endpoint access denied - not localhost",{endpoint:t.path,clientIp:n,method:t.method}),e.status(403).json({error:"Forbidden",message:"Admin endpoints are only accessible from localhost"});return}r()}function d$(t,e,r){if(!r||Object.keys(r).length===0||e.includes("/init"))return"";if(e.includes("/observations")){let n=r.tool_name||"?",i=r.tool_input;return`tool=${_.formatTool(n,i)}`}return e.includes("/summarize")?"requesting summary":""}re();var yn=class extends Error{constructor(r,n=500,i,s){super(r);this.statusCode=n;this.code=i;this.details=s;this.name="AppError"}};function E6(t,e,r,n){let i={error:t,message:e};return r&&(i.code=r),n&&(i.details=n),i}var k6=(t,e,r,n)=>{let i=t instanceof yn?t.statusCode:500;_.error("HTTP",`Error handling ${e.method} ${e.path}`,{statusCode:i,error:t.message,code:t instanceof yn?t.code:void 0},t);let s=E6(t.name||"Error",t.message,t instanceof yn?t.code:void 0,t instanceof yn?t.details:void 0);r.status(i).json(s)};function T6(t,e){e.status(404).json(E6("NotFound",`Cannot ${t.method} ${t.path}`))}var $6="11.0.1",$v=class{app;server=null;options;startTime=Date.now();constructor(e){this.options=e,this.app=(0,I6.default)(),this.setupMiddleware(),this.setupCoreRoutes()}getHttpServer(){return this.server}async listen(e,r){return new Promise((n,i)=>{this.server=this.app.listen(e,r,()=>{_.info("SYSTEM","HTTP server started",{host:r,port:e,pid:process.pid}),n()}),this.server.on("error",i)})}async close(){this.server&&(this.server.closeAllConnections(),process.platform==="win32"&&await new Promise(e=>setTimeout(e,500)),await new Promise((e,r)=>{this.server.close(n=>n?r(n):e())}),process.platform==="win32"&&await new Promise(e=>setTimeout(e,500)),this.server=null,_.info("SYSTEM","HTTP server closed"))}registerRoutes(e){e.setupRoutes(this.app)}finalizeRoutes(){this.app.use(T6),this.app.use(k6)}setupMiddleware(){l$(d$).forEach(r=>this.app.use(r))}setupCoreRoutes(){this.app.get("/api/health",(e,r)=>{r.status(200).json({status:"ok",version:$6,workerPath:this.options.workerPath,uptime:Date.now()-this.startTime,managed:process.env.CLAUDE_MEM_MANAGED==="true",hasIpc:typeof process.send=="function",platform:process.platform,pid:process.pid,initialized:this.options.getInitializationComplete(),mcpReady:this.options.getMcpReady(),ai:this.options.getAiStatus()})}),this.app.get("/api/readiness",(e,r)=>{this.options.getInitializationComplete()?r.status(200).json({status:"ready",mcpReady:this.options.getMcpReady()}):r.status(503).json({status:"initializing",message:"Worker is still initializing, please retry"})}),this.app.get("/api/version",(e,r)=>{r.status(200).json({version:$6})}),this.app.get("/api/instructions",async(e,r)=>{let n=e.query.topic||"all",i=e.query.operation;if(n&&!g6.includes(n))return r.status(400).json({error:"Invalid topic"});try{let s;if(i){if(!h6.includes(i))return r.status(400).json({error:"Invalid operation"});let o=zp.default.resolve(__dirname,"../skills/mem-search/operations"),a=zp.default.resolve(o,`${i}.md`);if(!a.startsWith(o+zp.default.sep))return r.status(400).json({error:"Invalid request"});s=await p$.promises.readFile(a,"utf-8")}else{let o=zp.default.join(__dirname,"../skills/mem-search/SKILL.md"),a=await p$.promises.readFile(o,"utf-8");s=this.extractInstructionSection(a,n)}r.json({content:[{type:"text",text:s}]})}catch{r.status(404).json({error:"Instruction not found"})}}),this.app.post("/api/admin/restart",jp,async(e,r)=>{r.json({status:"restarting"}),process.platform==="win32"&&process.env.CLAUDE_MEM_MANAGED==="true"&&process.send?(_.info("SYSTEM","Sending restart request to wrapper"),process.send({type:"restart"})):setTimeout(async()=>{try{await this.options.onRestart()}finally{process.exit(0)}},100)}),this.app.post("/api/admin/shutdown",jp,async(e,r)=>{r.json({status:"shutting_down"}),process.platform==="win32"&&process.env.CLAUDE_MEM_MANAGED==="true"&&process.send?(_.info("SYSTEM","Sending shutdown request to wrapper"),process.send({type:"shutdown"})):setTimeout(async()=>{try{await this.options.onShutdown()}finally{process.exit(0)}},100)}),this.app.get("/api/admin/doctor",jp,(e,r)=>{let o=yt().getRegistry().getAll().map(m=>({id:m.id,pid:m.pid,type:m.type,status:Cn(m.pid)?"alive":"dead",startedAt:m.startedAt})),a=o.filter(m=>m.status==="dead").map(m=>m.pid),c=!Object.keys(process.env).some(m=>FE.has(m)||UE.some(h=>m.startsWith(h))),u=Date.now()-this.startTime,l=Math.floor(u/1e3),d=Math.floor(l/3600),p=Math.floor(l%3600/60),f=d>0?`${d}h ${p}m`:`${p}m`;r.json({supervisor:{running:!0,pid:process.pid,uptime:f},processes:o,health:{deadProcessPids:a,envClean:c}})})}extractInstructionSection(e,r){let n={workflow:this.extractBetween(e,"## The Workflow","## Search Parameters"),search_params:this.extractBetween(e,"## Search Parameters","## Examples"),examples:this.extractBetween(e,"## Examples","## Why This Workflow"),all:e};return n[r]||n.all}extractBetween(e,r,n){let i=e.indexOf(r),s=e.indexOf(n);return i===-1?e:s===-1?e.substring(i):e.substring(i,s).trim()}};var Ct=Pe(require("path"),1),Up=require("os"),Jt=require("fs"),C6=require("child_process"),P6=require("util");re();Ir();It();var Yn=require("fs"),Lp=require("path");re();function R6(t){try{return(0,Yn.existsSync)(t)?JSON.parse((0,Yn.readFileSync)(t,"utf-8")):{}}catch(e){return _.error("CONFIG","Failed to read Cursor registry, using empty registry",{file:t,error:e instanceof Error?e.message:String(e)}),{}}}function O6(t,e){let r=(0,Lp.join)(t,"..");(0,Yn.mkdirSync)(r,{recursive:!0}),(0,Yn.writeFileSync)(t,JSON.stringify(e,null,2))}function f$(t,e){let r=(0,Lp.join)(t,".cursor","rules"),n=(0,Lp.join)(r,"claude-mem-context.mdc"),i=`${n}.tmp`;(0,Yn.mkdirSync)(r,{recursive:!0});let s=`--- alwaysApply: true description: "Claude-mem context from past sessions (auto-updated)" --- @@ -938,9 +1045,9 @@ ${e} --- *Updated after last session. Use claude-mem's MCP search tools for more detailed queries.* -`;(0,Vn.writeFileSync)(i,s),(0,Vn.renameSync)(i,n)}var QNe=(0,m6.promisify)(f6.exec),h6=It.default.join(ur,"cursor-projects.json");function JT(){return d6(h6)}function g6(t){p6(h6,t)}function uue(t,e){let r=JT();r[t]={workspacePath:e,installedAt:new Date().toISOString()},g6(r),_.info("CURSOR","Registered project for auto-context updates",{projectName:t,workspacePath:e})}function lue(t){let e=JT();e[t]&&(delete e[t],g6(e),_.info("CURSOR","Unregistered project",{projectName:t}))}async function v6(t,e){let n=JT()[t];if(n)try{let i=await dt(`/api/context/inject?project=${encodeURIComponent(t)}`);if(!i.ok)return;let s=await i.text();if(!s||!s.trim())return;KT(n.workspacePath,s),_.debug("CURSOR","Updated context file",{projectName:t,workspacePath:n.workspacePath})}catch(i){_.error("CURSOR","Failed to update context file",{projectName:t},i)}}function XT(){let t=[It.default.join(Ss,"plugin","scripts","worker-service.cjs"),It.default.join(process.cwd(),"plugin","scripts","worker-service.cjs")];for(let e of t)if((0,Kt.existsSync)(e))return e;return null}function YT(){let t=[It.default.join((0,kp.homedir)(),".bun","bin","bun"),"/usr/local/bin/bun","/usr/bin/bun",...process.platform==="win32"?[It.default.join((0,kp.homedir)(),".bun","bin","bun.exe"),It.default.join(process.env.LOCALAPPDATA||"","bun","bun.exe")]:[]];for(let e of t)if(e&&(0,Kt.existsSync)(e))return e;return"bun"}function y6(t){switch(t){case"project":return It.default.join(process.cwd(),".cursor");case"user":return It.default.join((0,kp.homedir)(),".cursor");case"enterprise":return process.platform==="darwin"?"/Library/Application Support/Cursor":process.platform==="linux"?"/etc/cursor":process.platform==="win32"?It.default.join(process.env.ProgramData||"C:\\ProgramData","Cursor"):null;default:return null}}async function due(t){console.log(` +`;(0,Yn.writeFileSync)(i,s),(0,Yn.renameSync)(i,n)}var UMe=(0,P6.promisify)(C6.exec),A6=Ct.default.join(pr,"cursor-projects.json");function m$(){return R6(A6)}function N6(t){O6(A6,t)}function Cue(t,e){let r=m$();r[t]={workspacePath:e,installedAt:new Date().toISOString()},N6(r),_.info("CURSOR","Registered project for auto-context updates",{projectName:t,workspacePath:e})}function Pue(t){let e=m$();e[t]&&(delete e[t],N6(e),_.info("CURSOR","Unregistered project",{projectName:t}))}async function M6(t,e){let n=m$()[t];if(n)try{let i=await at(`/api/context/inject?project=${encodeURIComponent(t)}`);if(!i.ok)return;let s=await i.text();if(!s||!s.trim())return;f$(n.workspacePath,s),_.debug("CURSOR","Updated context file",{projectName:t,workspacePath:n.workspacePath})}catch(i){_.error("CURSOR","Failed to update context file",{projectName:t},i)}}function h$(){let t=[Ct.default.join(vo,"plugin","scripts","worker-service.cjs"),Ct.default.join(process.cwd(),"plugin","scripts","worker-service.cjs")];for(let e of t)if((0,Jt.existsSync)(e))return e;return null}function g$(){let t=[Ct.default.join((0,Up.homedir)(),".bun","bin","bun"),"/usr/local/bin/bun","/usr/bin/bun",...process.platform==="win32"?[Ct.default.join((0,Up.homedir)(),".bun","bin","bun.exe"),Ct.default.join(process.env.LOCALAPPDATA||"","bun","bun.exe")]:[]];for(let e of t)if(e&&(0,Jt.existsSync)(e))return e;return"bun"}function D6(t){switch(t){case"project":return Ct.default.join(process.cwd(),".cursor");case"user":return Ct.default.join((0,Up.homedir)(),".cursor");case"enterprise":return process.platform==="darwin"?"/Library/Application Support/Cursor":process.platform==="linux"?"/etc/cursor":process.platform==="win32"?Ct.default.join(process.env.ProgramData||"C:\\ProgramData","Cursor"):null;default:return null}}async function Aue(t){console.log(` Installing Claude-Mem Cursor hooks (${t} level)... -`);let e=y6(t);if(!e)return console.error(`Invalid target: ${t}. Use: project, user, or enterprise`),1;let r=XT();if(!r)return console.error("Could not find worker-service.cjs"),console.error(" Expected at: ~/.claude/plugins/marketplaces/thedotmack/plugin/scripts/worker-service.cjs"),1;let n=process.cwd();try{(0,Kt.mkdirSync)(e,{recursive:!0});let i=It.default.join(e,"hooks.json"),s=YT(),o=s.replace(/\\/g,"\\\\"),a=r.replace(/\\/g,"\\\\"),c=l=>`"${o}" "${a}" hook cursor ${l}`;console.log(` Using Bun runtime: ${s}`);let u={version:1,hooks:{beforeSubmitPrompt:[{command:c("session-init")},{command:c("context")}],afterMCPExecution:[{command:c("observation")}],afterShellExecution:[{command:c("observation")}],afterFileEdit:[{command:c("file-edit")}],stop:[{command:c("summarize")}]}};return(0,Kt.writeFileSync)(i,JSON.stringify(u,null,2)),console.log(" Created hooks.json (unified CLI mode)"),console.log(` Worker service: ${r}`),t==="project"&&await pue(e,n),console.log(` +`);let e=D6(t);if(!e)return console.error(`Invalid target: ${t}. Use: project, user, or enterprise`),1;let r=h$();if(!r)return console.error("Could not find worker-service.cjs"),console.error(" Expected at: ~/.claude/plugins/marketplaces/thedotmack/plugin/scripts/worker-service.cjs"),1;let n=process.cwd();try{(0,Jt.mkdirSync)(e,{recursive:!0});let i=Ct.default.join(e,"hooks.json"),s=g$(),o=s.replace(/\\/g,"\\\\"),a=r.replace(/\\/g,"\\\\"),c=l=>`"${o}" "${a}" hook cursor ${l}`;console.log(` Using Bun runtime: ${s}`);let u={version:1,hooks:{beforeSubmitPrompt:[{command:c("session-init")},{command:c("context")}],afterMCPExecution:[{command:c("observation")}],afterShellExecution:[{command:c("observation")}],afterFileEdit:[{command:c("file-edit")}],stop:[{command:c("summarize")}]}};return(0,Jt.writeFileSync)(i,JSON.stringify(u,null,2)),console.log(" Created hooks.json (unified CLI mode)"),console.log(` Worker service: ${r}`),t==="project"&&await Nue(e,n),console.log(` Installation complete! Hooks installed to: ${e}/hooks.json @@ -955,7 +1062,7 @@ Context Injection: Context from past sessions is stored in .cursor/rules/claude-mem-context.mdc and automatically included in every chat. It updates after each session ends. `),0}catch(i){return console.error(` -Installation failed: ${i.message}`),t==="enterprise"&&console.error(" Tip: Enterprise installation may require sudo/admin privileges"),1}}async function pue(t,e){let r=It.default.join(t,"rules");(0,Kt.mkdirSync)(r,{recursive:!0});let n=It.default.basename(e),i=!1;console.log(" Generating initial context...");try{if((await dt("/api/readiness")).ok){let o=await dt(`/api/context/inject?project=${encodeURIComponent(n)}`);if(o.ok){let a=await o.text();a&&a.trim()&&(KT(e,a),i=!0,console.log(" Generated initial context from existing memory"))}}}catch(s){_.debug("CURSOR","Worker not running during install",{},s)}if(!i){let s=It.default.join(r,"claude-mem-context.mdc");(0,Kt.writeFileSync)(s,`--- +Installation failed: ${i.message}`),t==="enterprise"&&console.error(" Tip: Enterprise installation may require sudo/admin privileges"),1}}async function Nue(t,e){let r=Ct.default.join(t,"rules");(0,Jt.mkdirSync)(r,{recursive:!0});let n=Ct.default.basename(e),i=!1;console.log(" Generating initial context...");try{if((await at("/api/readiness")).ok){let o=await at(`/api/context/inject?project=${encodeURIComponent(n)}`);if(o.ok){let a=await o.text();a&&a.trim()&&(f$(e,a),i=!0,console.log(" Generated initial context from existing memory"))}}}catch(s){_.debug("CURSOR","Worker not running during install",{},s)}if(!i){let s=Ct.default.join(r,"claude-mem-context.mdc");(0,Jt.writeFileSync)(s,`--- alwaysApply: true description: "Claude-mem context from past sessions (auto-updated)" --- @@ -965,15 +1072,15 @@ description: "Claude-mem context from past sessions (auto-updated)" *No context yet. Complete your first session and context will appear here.* Use claude-mem's MCP search tools for manual memory queries. -`),console.log(" Created placeholder context file (will populate after first session)")}uue(n,e),console.log(" Registered for auto-context updates")}function fue(t){console.log(` +`),console.log(" Created placeholder context file (will populate after first session)")}Cue(n,e),console.log(" Registered for auto-context updates")}function Mue(t){console.log(` Uninstalling Claude-Mem Cursor hooks (${t} level)... -`);let e=y6(t);if(!e)return console.error(`Invalid target: ${t}`),1;try{let r=It.default.join(e,"hooks"),n=It.default.join(e,"hooks.json"),i=["common.sh","session-init.sh","context-inject.sh","save-observation.sh","save-file-edit.sh","session-summary.sh"],s=["common.ps1","session-init.ps1","context-inject.ps1","save-observation.ps1","save-file-edit.ps1","session-summary.ps1"],o=[...i,...s];for(let a of o){let c=It.default.join(r,a);(0,Kt.existsSync)(c)&&((0,Kt.unlinkSync)(c),console.log(` Removed legacy script: ${a}`))}if((0,Kt.existsSync)(n)&&((0,Kt.unlinkSync)(n),console.log(" Removed hooks.json")),t==="project"){let a=It.default.join(e,"rules","claude-mem-context.mdc");(0,Kt.existsSync)(a)&&((0,Kt.unlinkSync)(a),console.log(" Removed context file"));let c=It.default.basename(process.cwd());lue(c),console.log(" Unregistered from auto-context updates")}return console.log(` +`);let e=D6(t);if(!e)return console.error(`Invalid target: ${t}`),1;try{let r=Ct.default.join(e,"hooks"),n=Ct.default.join(e,"hooks.json"),i=["common.sh","session-init.sh","context-inject.sh","save-observation.sh","save-file-edit.sh","session-summary.sh"],s=["common.ps1","session-init.ps1","context-inject.ps1","save-observation.ps1","save-file-edit.ps1","session-summary.ps1"],o=[...i,...s];for(let a of o){let c=Ct.default.join(r,a);(0,Jt.existsSync)(c)&&((0,Jt.unlinkSync)(c),console.log(` Removed legacy script: ${a}`))}if((0,Jt.existsSync)(n)&&((0,Jt.unlinkSync)(n),console.log(" Removed hooks.json")),t==="project"){let a=Ct.default.join(e,"rules","claude-mem-context.mdc");(0,Jt.existsSync)(a)&&((0,Jt.unlinkSync)(a),console.log(" Removed context file"));let c=Ct.default.basename(process.cwd());Pue(c),console.log(" Unregistered from auto-context updates")}return console.log(` Uninstallation complete! `),console.log("Restart Cursor to apply changes."),0}catch(r){return console.error(` -Uninstallation failed: ${r.message}`),1}}function mue(){console.log(` +Uninstallation failed: ${r.message}`),1}}function Due(){console.log(` Claude-Mem Cursor Hooks Status -`);let t=[{name:"Project",dir:It.default.join(process.cwd(),".cursor")},{name:"User",dir:It.default.join((0,kp.homedir)(),".cursor")}];process.platform==="darwin"?t.push({name:"Enterprise",dir:"/Library/Application Support/Cursor"}):process.platform==="linux"&&t.push({name:"Enterprise",dir:"/etc/cursor"});let e=!1;for(let r of t){let n=It.default.join(r.dir,"hooks.json"),i=It.default.join(r.dir,"hooks");if((0,Kt.existsSync)(n)){e=!0,console.log(`${r.name}: Installed`),console.log(` Config: ${n}`);try{let o=JSON.parse((0,Kt.readFileSync)(n,"utf-8"))?.hooks?.beforeSubmitPrompt?.[0]?.command||"";if(o.includes("worker-service.cjs")&&o.includes("hook cursor"))console.log(" Mode: Unified CLI (bun worker-service.cjs)");else{let a=["session-init.sh","context-inject.sh","save-observation.sh"],c=["session-init.ps1","context-inject.ps1","save-observation.ps1"],u=a.some(d=>(0,Kt.existsSync)(It.default.join(i,d))),l=c.some(d=>(0,Kt.existsSync)(It.default.join(i,d)));u||l?(console.log(" Mode: Legacy shell scripts (consider reinstalling for unified CLI)"),u&&l?console.log(" Platform: Both (bash + PowerShell)"):u?console.log(" Platform: Unix (bash)"):l&&console.log(" Platform: Windows (PowerShell)")):console.log(" Mode: Unknown configuration")}}catch{console.log(" Mode: Unable to parse hooks.json")}if(r.name==="Project"){let s=It.default.join(r.dir,"rules","claude-mem-context.mdc");(0,Kt.existsSync)(s)?console.log(" Context: Active"):console.log(" Context: Not yet generated (will be created on first prompt)")}}else console.log(`${r.name}: Not installed`);console.log("")}return e||console.log(`No hooks installed. Run: claude-mem cursor install -`),0}async function _6(t,e){switch(t){case"install":{let r=e[0]||"project";return due(r)}case"uninstall":{let r=e[0]||"project";return fue(r)}case"status":return mue();case"setup":return console.log("Use the main entry point for setup"),0;default:return console.log(` +`);let t=[{name:"Project",dir:Ct.default.join(process.cwd(),".cursor")},{name:"User",dir:Ct.default.join((0,Up.homedir)(),".cursor")}];process.platform==="darwin"?t.push({name:"Enterprise",dir:"/Library/Application Support/Cursor"}):process.platform==="linux"&&t.push({name:"Enterprise",dir:"/etc/cursor"});let e=!1;for(let r of t){let n=Ct.default.join(r.dir,"hooks.json"),i=Ct.default.join(r.dir,"hooks");if((0,Jt.existsSync)(n)){e=!0,console.log(`${r.name}: Installed`),console.log(` Config: ${n}`);try{let o=JSON.parse((0,Jt.readFileSync)(n,"utf-8"))?.hooks?.beforeSubmitPrompt?.[0]?.command||"";if(o.includes("worker-service.cjs")&&o.includes("hook cursor"))console.log(" Mode: Unified CLI (bun worker-service.cjs)");else{let a=["session-init.sh","context-inject.sh","save-observation.sh"],c=["session-init.ps1","context-inject.ps1","save-observation.ps1"],u=a.some(d=>(0,Jt.existsSync)(Ct.default.join(i,d))),l=c.some(d=>(0,Jt.existsSync)(Ct.default.join(i,d)));u||l?(console.log(" Mode: Legacy shell scripts (consider reinstalling for unified CLI)"),u&&l?console.log(" Platform: Both (bash + PowerShell)"):u?console.log(" Platform: Unix (bash)"):l&&console.log(" Platform: Windows (PowerShell)")):console.log(" Mode: Unknown configuration")}}catch{console.log(" Mode: Unable to parse hooks.json")}if(r.name==="Project"){let s=Ct.default.join(r.dir,"rules","claude-mem-context.mdc");(0,Jt.existsSync)(s)?console.log(" Context: Active"):console.log(" Context: Not yet generated (will be created on first prompt)")}}else console.log(`${r.name}: Not installed`);console.log("")}return e||console.log(`No hooks installed. Run: claude-mem cursor install +`),0}async function j6(t,e){switch(t){case"install":{let r=e[0]||"project";return Aue(r)}case"uninstall":{let r=e[0]||"project";return Mue(r)}case"status":return Due();case"setup":return console.log("Use the main entry point for setup"),0;default:return console.log(` Claude-Mem Cursor Integration Usage: claude-mem cursor [options] @@ -997,22 +1104,22 @@ Examples: claude-mem cursor status # Check if hooks are installed For more info: https://docs.claude-mem.ai/cursor - `),0}}var vv=Pe(require("path"),1),b6=require("os"),ir=require("fs");var yv=vv.default.join((0,b6.homedir)(),".gemini"),gi=vv.default.join(yv,"settings.json"),hi=vv.default.join(yv,"GEMINI.md"),Tp="claude-mem",hue=1e4,su={SessionStart:"context",BeforeAgent:"user-message",AfterAgent:"observation",BeforeTool:"observation",AfterTool:"observation",PreCompress:"summarize",Notification:"observation",SessionEnd:"session-complete"};function gue(t,e,r){let n=su[r];if(!n)throw new Error(`Unknown Gemini CLI event: ${r}`);let i=t.replace(/\\/g,"\\\\"),s=e.replace(/\\/g,"\\\\");return`"${i}" "${s}" hook gemini-cli ${n}`}function vue(t){return{matcher:"*",hooks:[{name:Tp,type:"command",command:t,timeout:hue}]}}function QT(){if(!(0,ir.existsSync)(gi))return{};let t=(0,ir.readFileSync)(gi,"utf-8");try{return JSON.parse(t)}catch{throw new Error(`Corrupt JSON in ${gi}, refusing to overwrite user settings`)}}function S6(t){(0,ir.mkdirSync)(yv,{recursive:!0}),(0,ir.writeFileSync)(gi,JSON.stringify(t,null,2)+` -`)}function yue(t,e){let r={...t};r.hooks||(r.hooks={});for(let[n,i]of Object.entries(e)){let s=r.hooks[n]??[];for(let o of i){let a=s.findIndex(c=>c.hooks.some(u=>u.name===Tp));if(a>=0){let c=s[a],u=c.hooks.findIndex(l=>l.name===Tp);u>=0?c.hooks[u]=o.hooks[0]:c.hooks.push(o.hooks[0])}else s.push(o)}r.hooks[n]=s}return r}function _ue(){let t="",r=`${t} + `),0}}var Iv=Pe(require("path"),1),z6=require("os"),ar=require("fs");var Rv=Iv.default.join((0,z6.homedir)(),".gemini"),bi=Iv.default.join(Rv,"settings.json"),_i=Iv.default.join(Rv,"GEMINI.md"),Fp="claude-mem",jue=1e4,yu={SessionStart:"context",BeforeAgent:"user-message",AfterAgent:"observation",BeforeTool:"observation",AfterTool:"observation",PreCompress:"summarize",Notification:"observation",SessionEnd:"session-complete"};function zue(t,e,r){let n=yu[r];if(!n)throw new Error(`Unknown Gemini CLI event: ${r}`);let i=t.replace(/\\/g,"\\\\"),s=e.replace(/\\/g,"\\\\");return`"${i}" "${s}" hook gemini-cli ${n}`}function Lue(t){return{matcher:"*",hooks:[{name:Fp,type:"command",command:t,timeout:jue}]}}function v$(){if(!(0,ar.existsSync)(bi))return{};let t=(0,ar.readFileSync)(bi,"utf-8");try{return JSON.parse(t)}catch{throw new Error(`Corrupt JSON in ${bi}, refusing to overwrite user settings`)}}function L6(t){(0,ar.mkdirSync)(Rv,{recursive:!0}),(0,ar.writeFileSync)(bi,JSON.stringify(t,null,2)+` +`)}function Uue(t,e){let r={...t};r.hooks||(r.hooks={});for(let[n,i]of Object.entries(e)){let s=r.hooks[n]??[];for(let o of i){let a=s.findIndex(c=>c.hooks.some(u=>u.name===Fp));if(a>=0){let c=s[a],u=c.hooks.findIndex(l=>l.name===Fp);u>=0?c.hooks[u]=o.hooks[0]:c.hooks.push(o.hooks[0])}else s.push(o)}r.hooks[n]=s}return r}function Fue(){let t="",r=`${t} # Memory Context from Past Sessions *No context yet. Complete your first session and context will appear here.* -`,n="";if((0,ir.existsSync)(hi)&&(n=(0,ir.readFileSync)(hi,"utf-8")),n.includes(t))return;let i=n.length>0&&!n.endsWith(` +`,n="";if((0,ar.existsSync)(_i)&&(n=(0,ar.readFileSync)(_i,"utf-8")),n.includes(t))return;let i=n.length>0&&!n.endsWith(` `)?` `:n.length>0?` `:"",s=n+i+r+` -`;(0,ir.mkdirSync)(yv,{recursive:!0}),(0,ir.writeFileSync)(hi,s)}async function bue(){console.log(` +`;(0,ar.mkdirSync)(Rv,{recursive:!0}),(0,ar.writeFileSync)(_i,s)}async function que(){console.log(` Installing Claude-Mem Gemini CLI hooks... -`);let t=XT();if(!t)return console.error("Could not find worker-service.cjs"),console.error(" Expected at: ~/.claude/plugins/marketplaces/thedotmack/plugin/scripts/worker-service.cjs"),1;let e=YT();console.log(` Using Bun runtime: ${e}`),console.log(` Worker service: ${t}`);try{let r={};for(let o of Object.keys(su)){let a=gue(e,t,o);r[o]=[vue(a)]}let n=QT(),i=yue(n,r);S6(i),console.log(` Merged hooks into ${gi}`),_ue(),console.log(` Setup context injection in ${hi}`);let s=Object.keys(su);console.log(` Registered ${s.length} hook events:`);for(let o of s){let a=su[o];console.log(` ${o} \u2192 ${a}`)}return console.log(` +`);let t=h$();if(!t)return console.error("Could not find worker-service.cjs"),console.error(" Expected at: ~/.claude/plugins/marketplaces/thedotmack/plugin/scripts/worker-service.cjs"),1;let e=g$();console.log(` Using Bun runtime: ${e}`),console.log(` Worker service: ${t}`);try{let r={};for(let o of Object.keys(yu)){let a=zue(e,t,o);r[o]=[Lue(a)]}let n=v$(),i=Uue(n,r);L6(i),console.log(` Merged hooks into ${bi}`),Fue(),console.log(` Setup context injection in ${_i}`);let s=Object.keys(yu);console.log(` Registered ${s.length} hook events:`);for(let o of s){let a=yu[o];console.log(` ${o} \u2192 ${a}`)}return console.log(` Installation complete! -Hooks installed to: ${gi} +Hooks installed to: ${bi} Using unified CLI: bun worker-service.cjs hook gemini-cli Next steps: @@ -1024,21 +1131,21 @@ Context Injection: Context from past sessions is injected via ~/.gemini/GEMINI.md and automatically included in Gemini CLI conversations. `),0}catch(r){return console.error(` -Installation failed: ${r.message}`),1}}function Sue(){console.log(` +Installation failed: ${r.message}`),1}}function Hue(){console.log(` Uninstalling Claude-Mem Gemini CLI hooks... -`);try{if(!(0,ir.existsSync)(gi))return console.log(" No Gemini CLI settings found \u2014 nothing to uninstall."),0;let t=QT();if(!t.hooks)return console.log(" No hooks found in Gemini CLI settings \u2014 nothing to uninstall."),0;let e=0;for(let[r,n]of Object.entries(t.hooks)){let i=n.map(s=>{let o=s.hooks.filter(a=>a.name!==Tp);return e+=s.hooks.length-o.length,{...s,hooks:o}}).filter(s=>s.hooks.length>0);i.length>0?t.hooks[r]=i:delete t.hooks[r]}if(Object.keys(t.hooks).length===0&&delete t.hooks,S6(t),console.log(` Removed ${e} claude-mem hook(s) from ${gi}`),(0,ir.existsSync)(hi)){let r=(0,ir.readFileSync)(hi,"utf-8"),n=/\n?[\s\S]*?<\/claude-mem-context>\n?/;n.test(r)&&(r=r.replace(n,""),(0,ir.writeFileSync)(hi,r),console.log(` Removed context section from ${hi}`))}return console.log(` +`);try{if(!(0,ar.existsSync)(bi))return console.log(" No Gemini CLI settings found \u2014 nothing to uninstall."),0;let t=v$();if(!t.hooks)return console.log(" No hooks found in Gemini CLI settings \u2014 nothing to uninstall."),0;let e=0;for(let[r,n]of Object.entries(t.hooks)){let i=n.map(s=>{let o=s.hooks.filter(a=>a.name!==Fp);return e+=s.hooks.length-o.length,{...s,hooks:o}}).filter(s=>s.hooks.length>0);i.length>0?t.hooks[r]=i:delete t.hooks[r]}if(Object.keys(t.hooks).length===0&&delete t.hooks,L6(t),console.log(` Removed ${e} claude-mem hook(s) from ${bi}`),(0,ar.existsSync)(_i)){let r=(0,ar.readFileSync)(_i,"utf-8"),n=/\n?[\s\S]*?<\/claude-mem-context>\n?/;n.test(r)&&(r=r.replace(n,""),(0,ar.writeFileSync)(_i,r),console.log(` Removed context section from ${_i}`))}return console.log(` Uninstallation complete! `),console.log("Restart Gemini CLI to apply changes."),0}catch(t){return console.error(` -Uninstallation failed: ${t.message}`),1}}function xue(){if(console.log(` +Uninstallation failed: ${t.message}`),1}}function Zue(){if(console.log(` Claude-Mem Gemini CLI Hooks Status -`),!(0,ir.existsSync)(gi))return console.log("Gemini CLI settings: Not found"),console.log(` Expected at: ${gi} +`),!(0,ar.existsSync)(bi))return console.log("Gemini CLI settings: Not found"),console.log(` Expected at: ${bi} `),console.log(`No hooks installed. Run: claude-mem install --ide gemini-cli -`),0;let t;try{t=QT()}catch(r){return console.log(`Gemini CLI settings: ${r.message} +`),0;let t;try{t=v$()}catch(r){return console.log(`Gemini CLI settings: ${r.message} `),0}if(!t.hooks)return console.log(`Gemini CLI settings: Found, but no hooks configured `),console.log(`No hooks installed. Run: claude-mem install --ide gemini-cli -`),0;let e=[];for(let[r,n]of Object.entries(t.hooks))n.some(s=>s.hooks.some(o=>o.name===Tp))&&e.push(r);if(e.length===0)return console.log(`Gemini CLI settings: Found, but no claude-mem hooks +`),0;let e=[];for(let[r,n]of Object.entries(t.hooks))n.some(s=>s.hooks.some(o=>o.name===Fp))&&e.push(r);if(e.length===0)return console.log(`Gemini CLI settings: Found, but no claude-mem hooks `),console.log(`Run: claude-mem install --ide gemini-cli -`),0;console.log(`Settings: ${gi}`),console.log("Mode: Unified CLI (bun worker-service.cjs hook gemini-cli)"),console.log(`Events: ${e.length} of ${Object.keys(su).length} mapped`);for(let r of e){let n=su[r]??"unknown";console.log(` ${r} \u2192 ${n}`)}return(0,ir.existsSync)(hi)?(0,ir.readFileSync)(hi,"utf-8").includes("")?console.log(`Context: Active (${hi})`):console.log("Context: GEMINI.md exists but missing claude-mem section"):console.log("Context: No GEMINI.md found"),console.log(""),0}async function x6(t,e){switch(t){case"install":return bue();case"uninstall":return Sue();case"status":return xue();default:return console.log(` +`),0;console.log(`Settings: ${bi}`),console.log("Mode: Unified CLI (bun worker-service.cjs hook gemini-cli)"),console.log(`Events: ${e.length} of ${Object.keys(yu).length} mapped`);for(let r of e){let n=yu[r]??"unknown";console.log(` ${r} \u2192 ${n}`)}return(0,ar.existsSync)(_i)?(0,ar.readFileSync)(_i,"utf-8").includes("")?console.log(`Context: Active (${_i})`):console.log("Context: GEMINI.md exists but missing claude-mem section"):console.log("Context: No GEMINI.md found"),console.log(""),0}async function U6(t,e){switch(t){case"install":return que();case"uninstall":return Hue();case"status":return Zue();default:return console.log(` Claude-Mem Gemini CLI Integration Usage: claude-mem gemini-cli @@ -1054,7 +1161,7 @@ Examples: claude-mem gemini-cli uninstall # Remove hooks For more info: https://docs.claude-mem.ai/usage/gemini-provider - `),0}}ng();var E6=require("bun:sqlite");zt();re();e$();var _v=class{db;constructor(e){e||(Mr(ur),e=Dd),this.db=new E6.Database(e),this.db.run("PRAGMA journal_mode = WAL"),this.ensureFTSTables()}ensureFTSTables(){if(!this.db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name LIKE '%_fts'").all().some(n=>n.name==="observations_fts"||n.name==="session_summaries_fts")){if(!this.isFts5Available()){_.warn("DB","FTS5 not available on this platform \u2014 skipping FTS table creation (search uses ChromaDB)");return}_.info("DB","Creating FTS5 tables");try{this.db.run(` + `),0}}vg();var q6=require("bun:sqlite");It();re();y$();var Ov=class t{db;static MISSING_SEARCH_INPUT_MESSAGE="Either query or filters required for search";constructor(e){e||(jr(pr),e=Kd),this.db=new q6.Database(e),this.db.run("PRAGMA journal_mode = WAL"),this.ensureFTSTables()}ensureFTSTables(){if(!this.db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name LIKE '%_fts'").all().some(n=>n.name==="observations_fts"||n.name==="session_summaries_fts")){if(!this.isFts5Available()){_.warn("DB","FTS5 not available on this platform \u2014 skipping FTS table creation (search uses ChromaDB)");return}_.info("DB","Creating FTS5 tables");try{this.db.run(` CREATE VIRTUAL TABLE IF NOT EXISTS observations_fts USING fts5( title, subtitle, @@ -1121,13 +1228,13 @@ For more info: https://docs.claude-mem.ai/usage/gemini-provider `),_.info("DB","FTS5 tables created successfully")}catch(n){_.warn("DB","FTS5 table creation failed \u2014 search will use ChromaDB and LIKE queries",{},n)}}}isFts5Available(){try{return this.db.run("CREATE VIRTUAL TABLE _fts5_probe USING fts5(test_column)"),this.db.run("DROP TABLE _fts5_probe"),!0}catch{return!1}}buildFilterClause(e,r,n="o"){let i=[];if(e.project&&(i.push(`${n}.project = ?`),r.push(e.project)),e.type)if(Array.isArray(e.type)){let s=e.type.map(()=>"?").join(",");i.push(`${n}.type IN (${s})`),r.push(...e.type)}else i.push(`${n}.type = ?`),r.push(e.type);if(e.dateRange){let{start:s,end:o}=e.dateRange;if(s){let a=typeof s=="number"?s:new Date(s).getTime();i.push(`${n}.created_at_epoch >= ?`),r.push(a)}if(o){let a=typeof o=="number"?o:new Date(o).getTime();i.push(`${n}.created_at_epoch <= ?`),r.push(a)}}if(e.concepts){let s=Array.isArray(e.concepts)?e.concepts:[e.concepts],o=s.map(()=>`EXISTS (SELECT 1 FROM json_each(${n}.concepts) WHERE value = ?)`);o.length>0&&(i.push(`(${o.join(" OR ")})`),r.push(...s))}if(e.files){let s=Array.isArray(e.files)?e.files:[e.files],o=s.map(()=>`( EXISTS (SELECT 1 FROM json_each(${n}.files_read) WHERE value LIKE ?) OR EXISTS (SELECT 1 FROM json_each(${n}.files_modified) WHERE value LIKE ?) - )`);o.length>0&&(i.push(`(${o.join(" OR ")})`),s.forEach(a=>{r.push(`%${a}%`,`%${a}%`)}))}return i.length>0?i.join(" AND "):""}buildOrderClause(e="relevance",r=!0,n="observations_fts"){switch(e){case"relevance":return r?`ORDER BY ${n}.rank ASC`:"ORDER BY o.created_at_epoch DESC";case"date_desc":return"ORDER BY o.created_at_epoch DESC";case"date_asc":return"ORDER BY o.created_at_epoch ASC";default:return"ORDER BY o.created_at_epoch DESC"}}searchObservations(e,r={}){let n=[],{limit:i=50,offset:s=0,orderBy:o="relevance",...a}=r;if(!e){let c=this.buildFilterClause(a,n,"o");if(!c)throw new Error("Either query or filters required for search");let u=this.buildOrderClause(o,!1),l=` + )`);o.length>0&&(i.push(`(${o.join(" OR ")})`),s.forEach(a=>{r.push(`%${a}%`,`%${a}%`)}))}return i.length>0?i.join(" AND "):""}buildOrderClause(e="relevance",r=!0,n="observations_fts"){switch(e){case"relevance":return r?`ORDER BY ${n}.rank ASC`:"ORDER BY o.created_at_epoch DESC";case"date_desc":return"ORDER BY o.created_at_epoch DESC";case"date_asc":return"ORDER BY o.created_at_epoch ASC";default:return"ORDER BY o.created_at_epoch DESC"}}searchObservations(e,r={}){let n=[],{limit:i=50,offset:s=0,orderBy:o="relevance",...a}=r;if(!e){let c=this.buildFilterClause(a,n,"o");if(!c)throw new yn(t.MISSING_SEARCH_INPUT_MESSAGE,400,"INVALID_SEARCH_REQUEST");let u=this.buildOrderClause(o,!1),l=` SELECT o.*, o.discovery_tokens FROM observations o WHERE ${c} ${u} LIMIT ? OFFSET ? - `;return n.push(i,s),this.db.prepare(l).all(...n)}return _.warn("DB","Text search not supported - use ChromaDB for vector search"),[]}searchSessions(e,r={}){let n=[],{limit:i=50,offset:s=0,orderBy:o="relevance",...a}=r;if(!e){let c={...a};delete c.type;let u=this.buildFilterClause(c,n,"s");if(!u)throw new Error("Either query or filters required for search");let d=` + `;return n.push(i,s),this.db.prepare(l).all(...n)}return _.warn("DB","Text search not supported - use ChromaDB for vector search"),[]}searchSessions(e,r={}){let n=[],{limit:i=50,offset:s=0,orderBy:o="relevance",...a}=r;if(!e){let c={...a};delete c.type;let u=this.buildFilterClause(c,n,"s");if(!u)throw new yn(t.MISSING_SEARCH_INPUT_MESSAGE,400,"INVALID_SEARCH_REQUEST");let d=` SELECT s.*, s.discovery_tokens FROM session_summaries s WHERE ${u} @@ -1139,28 +1246,28 @@ For more info: https://docs.claude-mem.ai/usage/gemini-provider WHERE ${u} ${l} LIMIT ? OFFSET ? - `;return n.push(i,s),this.db.prepare(d).all(...n)}hasDirectChildFile(e,r){let n=i=>{if(!i)return!1;try{let s=JSON.parse(i);if(Array.isArray(s))return s.some(o=>ma(o,r))}catch{}return!1};return n(e.files_modified)||n(e.files_read)}hasDirectChildFileSession(e,r){let n=i=>{if(!i)return!1;try{let s=JSON.parse(i);if(Array.isArray(s))return s.some(o=>ma(o,r))}catch{}return!1};return n(e.files_read)||n(e.files_edited)}findByFile(e,r={}){let n=[],{limit:i=50,offset:s=0,orderBy:o="date_desc",isFolder:a=!1,...c}=r,u=a?i*3:i,l={...c,files:e},d=this.buildFilterClause(l,n,"o"),p=this.buildOrderClause(o,!1),f=` + `;return n.push(i,s),this.db.prepare(d).all(...n)}hasDirectChildFile(e,r){let n=i=>{if(!i)return!1;try{let s=JSON.parse(i);if(Array.isArray(s))return s.some(o=>wa(o,r))}catch{}return!1};return n(e.files_modified)||n(e.files_read)}hasDirectChildFileSession(e,r){let n=i=>{if(!i)return!1;try{let s=JSON.parse(i);if(Array.isArray(s))return s.some(o=>wa(o,r))}catch{}return!1};return n(e.files_read)||n(e.files_edited)}findByFile(e,r={}){let n=[],{limit:i=50,offset:s=0,orderBy:o="date_desc",isFolder:a=!1,...c}=r,u=a?i*3:i,l={...c,files:e},d=this.buildFilterClause(l,n,"o"),p=this.buildOrderClause(o,!1),f=` SELECT o.*, o.discovery_tokens FROM observations o WHERE ${d} ${p} LIMIT ? OFFSET ? - `;n.push(u,s);let m=this.db.prepare(f).all(...n);a&&(m=m.filter(y=>this.hasDirectChildFile(y,e)).slice(0,i));let h=[],g={...c};delete g.type;let v=[];if(g.project&&(v.push("s.project = ?"),h.push(g.project)),g.dateRange){let{start:y,end:x}=g.dateRange;if(y){let w=typeof y=="number"?y:new Date(y).getTime();v.push("s.created_at_epoch >= ?"),h.push(w)}if(x){let w=typeof x=="number"?x:new Date(x).getTime();v.push("s.created_at_epoch <= ?"),h.push(w)}}v.push(`( + `;n.push(u,s);let m=this.db.prepare(f).all(...n);a&&(m=m.filter(S=>this.hasDirectChildFile(S,e)).slice(0,i));let h=[],g={...c};delete g.type;let v=[];if(g.project&&(v.push("s.project = ?"),h.push(g.project)),g.dateRange){let{start:S,end:x}=g.dateRange;if(S){let w=typeof S=="number"?S:new Date(S).getTime();v.push("s.created_at_epoch >= ?"),h.push(w)}if(x){let w=typeof x=="number"?x:new Date(x).getTime();v.push("s.created_at_epoch <= ?"),h.push(w)}}v.push(`( EXISTS (SELECT 1 FROM json_each(s.files_read) WHERE value LIKE ?) OR EXISTS (SELECT 1 FROM json_each(s.files_edited) WHERE value LIKE ?) - )`),h.push(`%${e}%`,`%${e}%`);let S=` + )`),h.push(`%${e}%`,`%${e}%`);let y=` SELECT s.*, s.discovery_tokens FROM session_summaries s WHERE ${v.join(" AND ")} ORDER BY s.created_at_epoch DESC LIMIT ? OFFSET ? - `;h.push(u,s);let b=this.db.prepare(S).all(...h);return a&&(b=b.filter(y=>this.hasDirectChildFileSession(y,e)).slice(0,i)),{observations:m,sessions:b}}findByType(e,r={}){let n=[],{limit:i=50,offset:s=0,orderBy:o="date_desc",...a}=r,c={...a,type:e},u=this.buildFilterClause(c,n,"o"),l=this.buildOrderClause(o,!1),d=` + `;h.push(u,s);let b=this.db.prepare(y).all(...h);return a&&(b=b.filter(S=>this.hasDirectChildFileSession(S,e)).slice(0,i)),{observations:m,sessions:b}}findByType(e,r={}){let n=[],{limit:i=50,offset:s=0,orderBy:o="date_desc",...a}=r,c={...a,type:e},u=this.buildFilterClause(c,n,"o"),l=this.buildOrderClause(o,!1),d=` SELECT o.*, o.discovery_tokens FROM observations o WHERE ${u} ${l} LIMIT ? OFFSET ? - `;return n.push(i,s),this.db.prepare(d).all(...n)}searchUserPrompts(e,r={}){let n=[],{limit:i=20,offset:s=0,orderBy:o="relevance",...a}=r,c=[];if(a.project&&(c.push("s.project = ?"),n.push(a.project)),a.dateRange){let{start:u,end:l}=a.dateRange;if(u){let d=typeof u=="number"?u:new Date(u).getTime();c.push("up.created_at_epoch >= ?"),n.push(d)}if(l){let d=typeof l=="number"?l:new Date(l).getTime();c.push("up.created_at_epoch <= ?"),n.push(d)}}if(!e){if(c.length===0)throw new Error("Either query or filters required for search");let d=` + `;return n.push(i,s),this.db.prepare(d).all(...n)}searchUserPrompts(e,r={}){let n=[],{limit:i=20,offset:s=0,orderBy:o="relevance",...a}=r,c=[];if(a.project&&(c.push("s.project = ?"),n.push(a.project)),a.dateRange){let{start:u,end:l}=a.dateRange;if(u){let d=typeof u=="number"?u:new Date(u).getTime();c.push("up.created_at_epoch >= ?"),n.push(d)}if(l){let d=typeof l=="number"?l:new Date(l).getTime();c.push("up.created_at_epoch <= ?"),n.push(d)}}if(!e){if(c.length===0)throw new yn(t.MISSING_SEARCH_INPUT_MESSAGE,400,"INVALID_SEARCH_REQUEST");let d=` SELECT up.* FROM user_prompts up JOIN sdk_sessions s ON up.content_session_id = s.content_session_id @@ -1178,13 +1285,13 @@ For more info: https://docs.claude-mem.ai/usage/gemini-provider FROM user_prompts WHERE content_session_id = ? ORDER BY prompt_number ASC - `).all(e)}close(){this.db.close()}};rr();zt();re();var bv=class{sessionStore=null;sessionSearch=null;chromaSync=null;async initialize(){this.sessionStore=new Es,this.sessionSearch=new _v,Se.loadFromFile(jt).CLAUDE_MEM_CHROMA_ENABLED!=="false"?this.chromaSync=new Cc("claude-mem"):_.info("DB","Chroma disabled via CLAUDE_MEM_CHROMA_ENABLED=false, using SQLite-only search"),_.info("DB","Database initialized")}async close(){this.chromaSync&&(await this.chromaSync.close(),this.chromaSync=null),this.sessionStore&&(this.sessionStore.close(),this.sessionStore=null),this.sessionSearch&&(this.sessionSearch.close(),this.sessionSearch=null),_.info("DB","Database closed")}getSessionStore(){if(!this.sessionStore)throw new Error("Database not initialized");return this.sessionStore}getSessionSearch(){if(!this.sessionSearch)throw new Error("Database not initialized");return this.sessionSearch}getChromaSync(){return this.chromaSync}getSessionById(e){let r=this.getSessionStore().getSessionById(e);if(!r)throw new Error(`Session ${e} not found`);return r}};var A6=require("events");re();ha();re();var Sv=180*1e3,xv=class{constructor(e,r){this.store=e;this.events=r}async*createIterator(e){let{sessionDbId:r,signal:n,onIdleTimeout:i}=e,s=Date.now();for(;!n.aborted;)try{let o=this.store.claimNextMessage(r);if(o)s=Date.now(),yield this.toPendingMessageWithId(o);else if(!await this.waitForMessage(n,Sv)&&!n.aborted){let c=Date.now()-s;if(c>=Sv){_.info("SESSION","Idle timeout reached, triggering abort to kill subprocess",{sessionDbId:r,idleDurationMs:c,thresholdMs:Sv}),i?.();return}s=Date.now()}}catch(o){if(n.aborted)return;_.error("SESSION","Error in queue processor loop",{sessionDbId:r},o),await new Promise(a=>setTimeout(a,1e3))}}toPendingMessageWithId(e){return{...this.store.toPendingMessage(e),_persistentId:e.id,_originalTimestamp:e.created_at_epoch}}waitForMessage(e,r=Sv){return new Promise(n=>{let i,s=()=>{c(),n(!0)},o=()=>{c(),n(!1)},a=()=>{c(),n(!1)},c=()=>{i!==void 0&&clearTimeout(i),this.events.off("message",s),e.removeEventListener("abort",o)};this.events.once("message",s),e.addEventListener("abort",o,{once:!0}),i=setTimeout(a,r)})}};var Rp=require("child_process"),$6=require("util");re();var I6=(0,$6.promisify)(Rp.exec);function Eue(){return vt().getRegistry().getAll().filter(t=>t.type==="sdk").map(t=>{let e=vt().getRegistry().getRuntimeProcess(t.id);return e?{pid:t.pid,sessionDbId:Number(t.sessionId),spawnedAt:Date.parse(t.startedAt),process:e}:null}).filter(t=>t!==null)}function kue(t,e,r){vt().registerProcess(`sdk:${e}:${t}`,{pid:t,type:"sdk",sessionId:e,startedAt:new Date().toISOString()},r),_.info("PROCESS",`Registered PID ${t} for session ${e}`,{pid:t,sessionDbId:e})}function wv(t){for(let e of vt().getRegistry().getByPid(t))e.type==="sdk"&&vt().unregisterProcess(e.id);_.debug("PROCESS",`Unregistered PID ${t}`,{pid:t}),R6()}function go(t){let e=Eue().filter(r=>r.sessionDbId===t);return e.length>1&&_.warn("PROCESS",`Multiple processes found for session ${t}`,{count:e.length,pids:e.map(r=>r.pid)}),e[0]}function k6(){return vt().getRegistry().getAll().filter(t=>t.type==="sdk").length}var Ip=[];function R6(){let t=Ip.shift();t&&t()}var T6=10;async function O6(t,e=6e4){let r=k6();if(r>=T6)throw new Error(`Hard cap exceeded: ${r} processes in registry (cap=${T6}). Refusing to spawn more.`);if(!(r{let s=setTimeout(()=>{let a=Ip.indexOf(o);a>=0&&Ip.splice(a,1),i(new Error(`Timed out waiting for agent pool slot after ${e}ms`))},e),o=()=>{clearTimeout(s),k6(){n.once("exit",()=>c())}),s=new Promise(c=>{setTimeout(c,e)});if(await Promise.race([i,s]),n.exitCode!==null){wv(r);return}_.warn("PROCESS",`PID ${r} did not exit after ${e}ms, sending SIGKILL`,{pid:r,timeoutMs:e});try{n.kill("SIGKILL")}catch{}let o=new Promise(c=>{n.once("exit",()=>c())}),a=new Promise(c=>{setTimeout(c,1e3)});await Promise.race([o,a]),wv(r)}async function Tue(){if(process.platform==="win32")return 0;let t=process.pid,e=0;try{let{stdout:r}=await I6('ps -eo pid,ppid,%cpu,etime,comm 2>/dev/null | grep "claude$" || true');for(let n of r.trim().split(` -`)){if(!n)continue;let i=n.trim().split(/\s+/);if(i.length<5)continue;let[s,o,a,c]=i,u=parseInt(s,10),l=parseInt(o,10),d=parseFloat(a);if(l!==t||d>0)continue;let p=0,f=c.match(/^(\d+)-(\d+):(\d+):(\d+)$/),m=c.match(/^(\d+):(\d+):(\d+)$/),h=c.match(/^(\d+):(\d+)$/);if(f?p=parseInt(f[1],10)*24*60+parseInt(f[2],10)*60+parseInt(f[3],10):m?p=parseInt(m[1],10)*60+parseInt(m[2],10):h&&(p=parseInt(h[1],10)),p>=1){_.info("PROCESS",`Killing idle daemon child PID ${u} (idle ${p}m)`,{pid:u,minutes:p});try{process.kill(u,"SIGKILL"),e++}catch{}}}}catch{}return e}async function $ue(){if(process.platform==="win32")return 0;try{let{stdout:t}=await I6('ps -eo pid,ppid,args 2>/dev/null | grep -E "claude.*haiku|claude.*output-format" | grep -v grep'),e=0;for(let r of t.trim().split(` -`)){if(!r)continue;let n=r.trim().match(/^(\d+)\s+(\d+)/);if(n&&parseInt(n[2])===1){let i=parseInt(n[1]);_.warn("PROCESS",`Killing system orphan PID ${i}`,{pid:i});try{process.kill(i,"SIGKILL"),e++}catch{}}}return e}catch{return 0}}async function Iue(t){let e=0;for(let r of vt().getRegistry().getAll().filter(n=>n.type==="sdk")){let n=r.pid,i=Number(r.sessionId),s=vt().getRegistry().getRuntimeProcess(r.id);if(!t.has(i)){_.warn("PROCESS",`Killing orphan PID ${n} (session ${i} gone)`,{pid:n,sessionDbId:i});try{s?s.kill("SIGKILL"):process.kill(n,"SIGKILL"),e++}catch{}vt().unregisterProcess(r.id),R6()}}return e+=await $ue(),e+=await Tue(),e}function C6(t){return e=>{vt().assertCanSpawn("claude sdk");let r=process.platform==="win32"&&e.command.endsWith(".cmd"),n=Ui(e.env??process.env),i=r?(0,Rp.spawn)("cmd.exe",["/d","/c",e.command,...e.args],{cwd:e.cwd,env:n,stdio:["pipe","pipe","pipe"],signal:e.signal,windowsHide:!0}):(0,Rp.spawn)(e.command,e.args,{cwd:e.cwd,env:n,stdio:["pipe","pipe","pipe"],signal:e.signal,windowsHide:!0});return i.stderr&&i.stderr.on("data",s=>{_.debug("SDK_SPAWN",`[session-${t}] stderr: ${s.toString().trim()}`)}),i.pid&&(kue(i.pid,t,i),i.on("exit",(s,o)=>{s!==0&&_.warn("SDK_SPAWN",`[session-${t}] Claude process exited`,{code:s,signal:o,pid:i.pid}),i.pid&&wv(i.pid)})),{stdin:i.stdin,stdout:i.stdout,stderr:i.stderr,get killed(){return i.killed},get exitCode(){return i.exitCode},kill:i.kill.bind(i),on:i.on.bind(i),once:i.once.bind(i),off:i.off.bind(i)}}}function P6(t,e=30*1e3){let r=setInterval(async()=>{try{let n=t(),i=await Iue(n);i>0&&_.info("PROCESS",`Reaper cleaned up ${i} orphaned processes`,{killed:i})}catch(n){_.error("PROCESS","Reaper error",{},n)}},e);return()=>clearInterval(r)}var Ev=class t{dbManager;sessions=new Map;sessionQueues=new Map;onSessionDeletedCallback;pendingStore=null;constructor(e){this.dbManager=e}getPendingStore(){if(!this.pendingStore){let e=this.dbManager.getSessionStore();this.pendingStore=new $p(e.db,3)}return this.pendingStore}setOnSessionDeleted(e){this.onSessionDeletedCallback=e}initializeSession(e,r,n){_.debug("SESSION","initializeSession called",{sessionDbId:e,promptNumber:n,has_currentUserPrompt:!!r});let i=this.sessions.get(e);if(i){_.debug("SESSION","Returning cached session",{sessionDbId:e,contentSessionId:i.contentSessionId,lastPromptNumber:i.lastPromptNumber});let c=this.dbManager.getSessionById(e);return c.project&&c.project!==i.project&&(_.debug("SESSION","Updating project from database",{sessionDbId:e,oldProject:i.project,newProject:c.project}),i.project=c.project),r?(_.debug("SESSION","Updating userPrompt for continuation",{sessionDbId:e,promptNumber:n,oldPrompt:i.userPrompt.substring(0,80),newPrompt:r.substring(0,80)}),i.userPrompt=r,i.lastPromptNumber=n||i.lastPromptNumber):_.debug("SESSION","No currentUserPrompt provided for existing session",{sessionDbId:e,promptNumber:n,usingCachedPrompt:i.userPrompt.substring(0,80)}),i}let s=this.dbManager.getSessionById(e);_.debug("SESSION","Fetched session from database",{sessionDbId:e,content_session_id:s.content_session_id,memory_session_id:s.memory_session_id}),s.memory_session_id&&_.warn("SESSION","Discarding stale memory_session_id from previous worker instance (Issue #817)",{sessionDbId:e,staleMemorySessionId:s.memory_session_id,reason:"SDK context lost on worker restart - will capture new ID"});let o=r||s.user_prompt;r?_.debug("SESSION","Initializing session with fresh userPrompt",{sessionDbId:e,promptNumber:n,userPrompt:r.substring(0,80)}):_.debug("SESSION","No currentUserPrompt provided for new session, using database",{sessionDbId:e,promptNumber:n,dbPrompt:s.user_prompt.substring(0,80)}),i={sessionDbId:e,contentSessionId:s.content_session_id,memorySessionId:null,project:s.project,userPrompt:o,pendingMessages:[],abortController:new AbortController,generatorPromise:null,lastPromptNumber:n||this.dbManager.getSessionStore().getPromptNumberFromUserPrompts(s.content_session_id),startTime:Date.now(),cumulativeInputTokens:0,cumulativeOutputTokens:0,earliestPendingTimestamp:null,conversationHistory:[],currentProvider:null,consecutiveRestarts:0,processingMessageIds:[],lastGeneratorActivity:Date.now()},_.debug("SESSION","Creating new session object (memorySessionId cleared to prevent stale resume)",{sessionDbId:e,contentSessionId:s.content_session_id,dbMemorySessionId:s.memory_session_id||"(none in DB)",memorySessionId:"(cleared - will capture fresh from SDK)",lastPromptNumber:n||this.dbManager.getSessionStore().getPromptNumberFromUserPrompts(s.content_session_id)}),this.sessions.set(e,i);let a=new A6.EventEmitter;return this.sessionQueues.set(e,a),_.info("SESSION","Session initialized",{sessionId:e,project:i.project,contentSessionId:i.contentSessionId,queueDepth:0,hasGenerator:!1}),i}getSession(e){return this.sessions.get(e)}queueObservation(e,r){let n=this.sessions.get(e);n||(n=this.initializeSession(e));let i={type:"observation",tool_name:r.tool_name,tool_input:r.tool_input,tool_response:r.tool_response,prompt_number:r.prompt_number,cwd:r.cwd};try{let o=this.getPendingStore().enqueue(e,n.contentSessionId,i),a=this.getPendingStore().getPendingCount(e),c=_.formatTool(r.tool_name,r.tool_input);_.info("QUEUE",`ENQUEUED | sessionDbId=${e} | messageId=${o} | type=observation | tool=${c} | depth=${a}`,{sessionId:e})}catch(o){throw _.error("SESSION","Failed to persist observation to DB",{sessionId:e,tool:r.tool_name},o),o}this.sessionQueues.get(e)?.emit("message")}queueSummarize(e,r){let n=this.sessions.get(e);n||(n=this.initializeSession(e));let i={type:"summarize",last_assistant_message:r};try{let o=this.getPendingStore().enqueue(e,n.contentSessionId,i),a=this.getPendingStore().getPendingCount(e);_.info("QUEUE",`ENQUEUED | sessionDbId=${e} | messageId=${o} | type=summarize | depth=${a}`,{sessionId:e})}catch(o){throw _.error("SESSION","Failed to persist summarize to DB",{sessionId:e},o),o}this.sessionQueues.get(e)?.emit("message")}async deleteSession(e){let r=this.sessions.get(e);if(!r)return;let n=Date.now()-r.startTime;if(r.abortController.abort(),r.generatorPromise){let s=r.generatorPromise.catch(()=>{_.debug("SYSTEM","Generator already failed, cleaning up",{sessionId:r.sessionDbId})}),o=new Promise(a=>{AbortSignal.timeout(3e4).addEventListener("abort",()=>a(),{once:!0})});await Promise.race([s,o]).then(()=>{},()=>{_.warn("SESSION","Generator did not exit within 30s after abort, forcing cleanup (#1099)",{sessionDbId:e})})}let i=go(e);i&&i.process.exitCode===null&&(_.debug("SESSION",`Waiting for subprocess PID ${i.pid} to exit`,{sessionId:e,pid:i.pid}),await vo(i,5e3));try{await vt().getRegistry().reapSession(e)}catch(s){_.warn("SESSION","Supervisor reapSession failed (non-blocking)",{sessionId:e},s)}this.sessions.delete(e),this.sessionQueues.delete(e),_.info("SESSION","Session deleted",{sessionId:e,duration:`${(n/1e3).toFixed(1)}s`,project:r.project}),this.onSessionDeletedCallback&&this.onSessionDeletedCallback()}removeSessionImmediate(e){let r=this.sessions.get(e);r&&(this.sessions.delete(e),this.sessionQueues.delete(e),_.info("SESSION","Session removed from active sessions",{sessionId:e,project:r.project}),this.onSessionDeletedCallback&&this.onSessionDeletedCallback())}static MAX_SESSION_IDLE_MS=900*1e3;async reapStaleSessions(){let e=Date.now(),r=[];for(let[n,i]of this.sessions){if(i.generatorPromise||this.getPendingStore().getPendingCount(n)>0)continue;e-i.startTime>t.MAX_SESSION_IDLE_MS&&r.push(n)}for(let n of r)_.warn("SESSION",`Reaping stale session ${n} (no activity for >${Math.round(t.MAX_SESSION_IDLE_MS/6e4)}m)`,{sessionDbId:n}),await this.deleteSession(n);return r.length}async shutdownAll(){let e=Array.from(this.sessions.keys());await Promise.all(e.map(r=>this.deleteSession(r)))}hasPendingMessages(){return this.getTotalQueueDepth()>0}getActiveSessionCount(){return this.sessions.size}getTotalQueueDepth(){let e=0;for(let r of this.sessions.values())e+=this.getPendingStore().getPendingCount(r.sessionDbId);return e}getTotalActiveWork(){return this.getTotalQueueDepth()}isAnySessionProcessing(){return this.getTotalQueueDepth()>0}async*getMessageIterator(e){let r=this.sessions.get(e);r||(r=this.initializeSession(e));let n=this.sessionQueues.get(e);if(!n)throw new Error(`No emitter for session ${e}`);let i=new xv(this.getPendingStore(),n);for await(let s of i.createIterator({sessionDbId:e,signal:r.abortController.signal,onIdleTimeout:()=>{_.info("SESSION","Triggering abort due to idle timeout to kill subprocess",{sessionDbId:e}),r.idleTimedOut=!0,r.abortController.abort()}}))r.earliestPendingTimestamp===null?r.earliestPendingTimestamp=s._originalTimestamp:r.earliestPendingTimestamp=Math.min(r.earliestPendingTimestamp,s._originalTimestamp),r.lastGeneratorActivity=Date.now(),yield s}getPendingMessageStore(){return this.getPendingStore()}};re();var kv=class{sseClients=new Set;addClient(e){this.sseClients.add(e),_.debug("WORKER","Client connected",{total:this.sseClients.size}),e.on("close",()=>{this.removeClient(e)}),this.sendToClient(e,{type:"connected",timestamp:Date.now()})}removeClient(e){this.sseClients.delete(e),_.debug("WORKER","Client disconnected",{total:this.sseClients.size})}broadcast(e){if(this.sseClients.size===0){_.debug("WORKER","SSE broadcast skipped (no clients)",{eventType:e.type});return}let r={...e,timestamp:Date.now()},n=`data: ${JSON.stringify(r)} + `).all(e)}close(){this.db.close()}};tr();It();re();var Cv=class{sessionStore=null;sessionSearch=null;chromaSync=null;async initialize(){this.sessionStore=new Is,this.sessionSearch=new Ov,ve.loadFromFile(vt).CLAUDE_MEM_CHROMA_ENABLED!=="false"?this.chromaSync=new qc("claude-mem"):_.info("DB","Chroma disabled via CLAUDE_MEM_CHROMA_ENABLED=false, using SQLite-only search"),_.info("DB","Database initialized")}async close(){this.chromaSync&&(await this.chromaSync.close(),this.chromaSync=null),this.sessionStore&&(this.sessionStore.close(),this.sessionStore=null),this.sessionSearch&&(this.sessionSearch.close(),this.sessionSearch=null),_.info("DB","Database closed")}getSessionStore(){if(!this.sessionStore)throw new Error("Database not initialized");return this.sessionStore}getSessionSearch(){if(!this.sessionSearch)throw new Error("Database not initialized");return this.sessionSearch}getChromaSync(){return this.chromaSync}getSessionById(e){let r=this.getSessionStore().getSessionById(e);if(!r)throw new Error(`Session ${e} not found`);return r}};var X6=require("events");re();Ea();re();var Pv=180*1e3,Av=class{constructor(e,r){this.store=e;this.events=r}async*createIterator(e){let{sessionDbId:r,signal:n,onIdleTimeout:i}=e,s=Date.now();for(;!n.aborted;)try{let o=this.store.claimNextMessage(r);if(o)s=Date.now(),yield this.toPendingMessageWithId(o);else if(!await this.waitForMessage(n,Pv)&&!n.aborted){let c=Date.now()-s;if(c>=Pv){_.info("SESSION","Idle timeout reached, triggering abort to kill subprocess",{sessionDbId:r,idleDurationMs:c,thresholdMs:Pv}),i?.();return}s=Date.now()}}catch(o){if(n.aborted)return;_.error("SESSION","Error in queue processor loop",{sessionDbId:r},o),await new Promise(a=>setTimeout(a,1e3))}}toPendingMessageWithId(e){return{...this.store.toPendingMessage(e),_persistentId:e.id,_originalTimestamp:e.created_at_epoch}}waitForMessage(e,r=Pv){return new Promise(n=>{let i,s=()=>{c(),n(!0)},o=()=>{c(),n(!1)},a=()=>{c(),n(!1)},c=()=>{i!==void 0&&clearTimeout(i),this.events.off("message",s),e.removeEventListener("abort",o)};this.events.once("message",s),e.addEventListener("abort",o,{once:!0}),i=setTimeout(a,r)})}};var Zp=require("child_process"),B6=require("util");re();var G6=(0,B6.promisify)(Zp.exec);function Gue(){return yt().getRegistry().getAll().filter(t=>t.type==="sdk").map(t=>{let e=yt().getRegistry().getRuntimeProcess(t.id);return e?{pid:t.pid,sessionDbId:Number(t.sessionId),spawnedAt:Date.parse(t.startedAt),process:e}:null}).filter(t=>t!==null)}function Wue(t,e,r){yt().registerProcess(`sdk:${e}:${t}`,{pid:t,type:"sdk",sessionId:e,startedAt:new Date().toISOString()},r),_.info("PROCESS",`Registered PID ${t} for session ${e}`,{pid:t,sessionDbId:e})}function Nv(t){for(let e of yt().getRegistry().getByPid(t))e.type==="sdk"&&yt().unregisterProcess(e.id);_.debug("PROCESS",`Unregistered PID ${t}`,{pid:t}),W6()}function To(t){let e=Gue().filter(r=>r.sessionDbId===t);return e.length>1&&_.warn("PROCESS",`Multiple processes found for session ${t}`,{count:e.length,pids:e.map(r=>r.pid)}),e[0]}function H6(){return yt().getRegistry().getAll().filter(t=>t.type==="sdk").length}var Hp=[];function W6(){let t=Hp.shift();t&&t()}var Z6=10;async function V6(t,e=6e4){let r=H6();if(r>=Z6)throw new Error(`Hard cap exceeded: ${r} processes in registry (cap=${Z6}). Refusing to spawn more.`);if(!(r{let s=setTimeout(()=>{let a=Hp.indexOf(o);a>=0&&Hp.splice(a,1),i(new Error(`Timed out waiting for agent pool slot after ${e}ms`))},e),o=()=>{clearTimeout(s),H6(){n.once("exit",()=>c())}),s=new Promise(c=>{setTimeout(c,e)});if(await Promise.race([i,s]),n.exitCode!==null){Nv(r);return}_.warn("PROCESS",`PID ${r} did not exit after ${e}ms, sending SIGKILL`,{pid:r,timeoutMs:e});try{n.kill("SIGKILL")}catch{}let o=new Promise(c=>{n.once("exit",()=>c())}),a=new Promise(c=>{setTimeout(c,1e3)});await Promise.race([o,a]),Nv(r)}async function Vue(){if(process.platform==="win32")return 0;let t=process.pid,e=0;try{let{stdout:r}=await G6('ps -eo pid,ppid,%cpu,etime,comm 2>/dev/null | grep "claude$" || true');for(let n of r.trim().split(` +`)){if(!n)continue;let i=n.trim().split(/\s+/);if(i.length<5)continue;let[s,o,a,c]=i,u=parseInt(s,10),l=parseInt(o,10),d=parseFloat(a);if(l!==t||d>0)continue;let p=0,f=c.match(/^(\d+)-(\d+):(\d+):(\d+)$/),m=c.match(/^(\d+):(\d+):(\d+)$/),h=c.match(/^(\d+):(\d+)$/);if(f?p=parseInt(f[1],10)*24*60+parseInt(f[2],10)*60+parseInt(f[3],10):m?p=parseInt(m[1],10)*60+parseInt(m[2],10):h&&(p=parseInt(h[1],10)),p>=1){_.info("PROCESS",`Killing idle daemon child PID ${u} (idle ${p}m)`,{pid:u,minutes:p});try{process.kill(u,"SIGKILL"),e++}catch{}}}}catch{}return e}async function Kue(){if(process.platform==="win32")return 0;try{let{stdout:t}=await G6('ps -eo pid,ppid,args 2>/dev/null | grep -E "claude.*haiku|claude.*output-format" | grep -v grep'),e=0;for(let r of t.trim().split(` +`)){if(!r)continue;let n=r.trim().match(/^(\d+)\s+(\d+)/);if(n&&parseInt(n[2])===1){let i=parseInt(n[1]);_.warn("PROCESS",`Killing system orphan PID ${i}`,{pid:i});try{process.kill(i,"SIGKILL"),e++}catch{}}}return e}catch{return 0}}async function Jue(t){let e=0;for(let r of yt().getRegistry().getAll().filter(n=>n.type==="sdk")){let n=r.pid,i=Number(r.sessionId),s=yt().getRegistry().getRuntimeProcess(r.id);if(!t.has(i)){_.warn("PROCESS",`Killing orphan PID ${n} (session ${i} gone)`,{pid:n,sessionDbId:i});try{s?s.kill("SIGKILL"):process.kill(n,"SIGKILL"),e++}catch{}yt().unregisterProcess(r.id),W6()}}return e+=await Kue(),e+=await Vue(),e}function K6(t){return e=>{yt().assertCanSpawn("claude sdk");let r=process.platform==="win32"&&e.command.endsWith(".cmd"),n=Bi(e.env??process.env),i=r?(0,Zp.spawn)("cmd.exe",["/d","/c",e.command,...e.args],{cwd:e.cwd,env:n,stdio:["pipe","pipe","pipe"],signal:e.signal,windowsHide:!0}):(0,Zp.spawn)(e.command,e.args,{cwd:e.cwd,env:n,stdio:["pipe","pipe","pipe"],signal:e.signal,windowsHide:!0});return i.stderr&&i.stderr.on("data",s=>{_.debug("SDK_SPAWN",`[session-${t}] stderr: ${s.toString().trim()}`)}),i.pid&&(Wue(i.pid,t,i),i.on("exit",(s,o)=>{s!==0&&_.warn("SDK_SPAWN",`[session-${t}] Claude process exited`,{code:s,signal:o,pid:i.pid}),i.pid&&Nv(i.pid)})),{stdin:i.stdin,stdout:i.stdout,stderr:i.stderr,get killed(){return i.killed},get exitCode(){return i.exitCode},kill:i.kill.bind(i),on:i.on.bind(i),once:i.once.bind(i),off:i.off.bind(i)}}}function J6(t,e=30*1e3){let r=setInterval(async()=>{try{let n=t(),i=await Jue(n);i>0&&_.info("PROCESS",`Reaper cleaned up ${i} orphaned processes`,{killed:i})}catch(n){_.error("PROCESS","Reaper error",{},n)}},e);return()=>clearInterval(r)}var Mv=class t{dbManager;sessions=new Map;sessionQueues=new Map;onSessionDeletedCallback;pendingStore=null;constructor(e){this.dbManager=e}getPendingStore(){if(!this.pendingStore){let e=this.dbManager.getSessionStore();this.pendingStore=new qp(e.db,3)}return this.pendingStore}setOnSessionDeleted(e){this.onSessionDeletedCallback=e}initializeSession(e,r,n){_.debug("SESSION","initializeSession called",{sessionDbId:e,promptNumber:n,has_currentUserPrompt:!!r});let i=this.sessions.get(e);if(i){_.debug("SESSION","Returning cached session",{sessionDbId:e,contentSessionId:i.contentSessionId,lastPromptNumber:i.lastPromptNumber});let c=this.dbManager.getSessionById(e);return c.project&&c.project!==i.project&&(_.debug("SESSION","Updating project from database",{sessionDbId:e,oldProject:i.project,newProject:c.project}),i.project=c.project),c.platform_source&&c.platform_source!==i.platformSource&&(i.platformSource=c.platform_source),r?(_.debug("SESSION","Updating userPrompt for continuation",{sessionDbId:e,promptNumber:n,oldPrompt:i.userPrompt.substring(0,80),newPrompt:r.substring(0,80)}),i.userPrompt=r,i.lastPromptNumber=n||i.lastPromptNumber):_.debug("SESSION","No currentUserPrompt provided for existing session",{sessionDbId:e,promptNumber:n,usingCachedPrompt:i.userPrompt.substring(0,80)}),i}let s=this.dbManager.getSessionById(e);_.debug("SESSION","Fetched session from database",{sessionDbId:e,content_session_id:s.content_session_id,memory_session_id:s.memory_session_id}),s.memory_session_id&&_.warn("SESSION","Discarding stale memory_session_id from previous worker instance (Issue #817)",{sessionDbId:e,staleMemorySessionId:s.memory_session_id,reason:"SDK context lost on worker restart - will capture new ID"});let o=r||s.user_prompt;r?_.debug("SESSION","Initializing session with fresh userPrompt",{sessionDbId:e,promptNumber:n,userPrompt:r.substring(0,80)}):_.debug("SESSION","No currentUserPrompt provided for new session, using database",{sessionDbId:e,promptNumber:n,dbPrompt:s.user_prompt.substring(0,80)}),i={sessionDbId:e,contentSessionId:s.content_session_id,memorySessionId:null,project:s.project,platformSource:s.platform_source,userPrompt:o,pendingMessages:[],abortController:new AbortController,generatorPromise:null,lastPromptNumber:n||this.dbManager.getSessionStore().getPromptNumberFromUserPrompts(s.content_session_id),startTime:Date.now(),cumulativeInputTokens:0,cumulativeOutputTokens:0,earliestPendingTimestamp:null,conversationHistory:[],currentProvider:null,consecutiveRestarts:0,processingMessageIds:[],lastGeneratorActivity:Date.now()},_.debug("SESSION","Creating new session object (memorySessionId cleared to prevent stale resume)",{sessionDbId:e,contentSessionId:s.content_session_id,dbMemorySessionId:s.memory_session_id||"(none in DB)",memorySessionId:"(cleared - will capture fresh from SDK)",lastPromptNumber:n||this.dbManager.getSessionStore().getPromptNumberFromUserPrompts(s.content_session_id)}),this.sessions.set(e,i);let a=new X6.EventEmitter;return this.sessionQueues.set(e,a),_.info("SESSION","Session initialized",{sessionId:e,project:i.project,contentSessionId:i.contentSessionId,queueDepth:0,hasGenerator:!1}),i}getSession(e){return this.sessions.get(e)}queueObservation(e,r){let n=this.sessions.get(e);n||(n=this.initializeSession(e));let i={type:"observation",tool_name:r.tool_name,tool_input:r.tool_input,tool_response:r.tool_response,prompt_number:r.prompt_number,cwd:r.cwd};try{let o=this.getPendingStore().enqueue(e,n.contentSessionId,i),a=this.getPendingStore().getPendingCount(e),c=_.formatTool(r.tool_name,r.tool_input);_.info("QUEUE",`ENQUEUED | sessionDbId=${e} | messageId=${o} | type=observation | tool=${c} | depth=${a}`,{sessionId:e})}catch(o){throw _.error("SESSION","Failed to persist observation to DB",{sessionId:e,tool:r.tool_name},o),o}this.sessionQueues.get(e)?.emit("message")}queueSummarize(e,r){let n=this.sessions.get(e);n||(n=this.initializeSession(e));let i={type:"summarize",last_assistant_message:r};try{let o=this.getPendingStore().enqueue(e,n.contentSessionId,i),a=this.getPendingStore().getPendingCount(e);_.info("QUEUE",`ENQUEUED | sessionDbId=${e} | messageId=${o} | type=summarize | depth=${a}`,{sessionId:e})}catch(o){throw _.error("SESSION","Failed to persist summarize to DB",{sessionId:e},o),o}this.sessionQueues.get(e)?.emit("message")}async deleteSession(e){let r=this.sessions.get(e);if(!r)return;let n=Date.now()-r.startTime;if(r.abortController.abort(),r.generatorPromise){let s=r.generatorPromise.catch(()=>{_.debug("SYSTEM","Generator already failed, cleaning up",{sessionId:r.sessionDbId})}),o=new Promise(a=>{AbortSignal.timeout(3e4).addEventListener("abort",()=>a(),{once:!0})});await Promise.race([s,o]).then(()=>{},()=>{_.warn("SESSION","Generator did not exit within 30s after abort, forcing cleanup (#1099)",{sessionDbId:e})})}let i=To(e);i&&i.process.exitCode===null&&(_.debug("SESSION",`Waiting for subprocess PID ${i.pid} to exit`,{sessionId:e,pid:i.pid}),await $o(i,5e3));try{await yt().getRegistry().reapSession(e)}catch(s){_.warn("SESSION","Supervisor reapSession failed (non-blocking)",{sessionId:e},s)}this.sessions.delete(e),this.sessionQueues.delete(e),_.info("SESSION","Session deleted",{sessionId:e,duration:`${(n/1e3).toFixed(1)}s`,project:r.project}),this.onSessionDeletedCallback&&this.onSessionDeletedCallback()}removeSessionImmediate(e){let r=this.sessions.get(e);r&&(this.sessions.delete(e),this.sessionQueues.delete(e),_.info("SESSION","Session removed from active sessions",{sessionId:e,project:r.project}),this.onSessionDeletedCallback&&this.onSessionDeletedCallback())}static MAX_SESSION_IDLE_MS=900*1e3;async reapStaleSessions(){let e=Date.now(),r=[];for(let[n,i]of this.sessions){if(i.generatorPromise||this.getPendingStore().getPendingCount(n)>0)continue;e-i.startTime>t.MAX_SESSION_IDLE_MS&&r.push(n)}for(let n of r)_.warn("SESSION",`Reaping stale session ${n} (no activity for >${Math.round(t.MAX_SESSION_IDLE_MS/6e4)}m)`,{sessionDbId:n}),await this.deleteSession(n);return r.length}async shutdownAll(){let e=Array.from(this.sessions.keys());await Promise.all(e.map(r=>this.deleteSession(r)))}hasPendingMessages(){return this.getTotalQueueDepth()>0}getActiveSessionCount(){return this.sessions.size}getTotalQueueDepth(){let e=0;for(let r of this.sessions.values())e+=this.getPendingStore().getPendingCount(r.sessionDbId);return e}getTotalActiveWork(){return this.getTotalQueueDepth()}isAnySessionProcessing(){return this.getTotalQueueDepth()>0}async*getMessageIterator(e){let r=this.sessions.get(e);r||(r=this.initializeSession(e));let n=this.sessionQueues.get(e);if(!n)throw new Error(`No emitter for session ${e}`);let i=new Av(this.getPendingStore(),n);for await(let s of i.createIterator({sessionDbId:e,signal:r.abortController.signal,onIdleTimeout:()=>{_.info("SESSION","Triggering abort due to idle timeout to kill subprocess",{sessionDbId:e}),r.idleTimedOut=!0,r.abortController.abort()}}))r.earliestPendingTimestamp===null?r.earliestPendingTimestamp=s._originalTimestamp:r.earliestPendingTimestamp=Math.min(r.earliestPendingTimestamp,s._originalTimestamp),r.lastGeneratorActivity=Date.now(),yield s}getPendingMessageStore(){return this.getPendingStore()}};re();var Dv=class{sseClients=new Set;addClient(e){this.sseClients.add(e),_.debug("WORKER","Client connected",{total:this.sseClients.size}),e.on("close",()=>{this.removeClient(e)}),this.sendToClient(e,{type:"connected",timestamp:Date.now()})}removeClient(e){this.sseClients.delete(e),_.debug("WORKER","Client disconnected",{total:this.sseClients.size})}broadcast(e){if(this.sseClients.size===0){_.debug("WORKER","SSE broadcast skipped (no clients)",{eventType:e.type});return}let r={...e,timestamp:Date.now()},n=`data: ${JSON.stringify(r)} `;_.debug("WORKER","SSE broadcast sent",{eventType:e.type,clients:this.sseClients.size});for(let i of this.sseClients)i.write(n)}getClientCount(){return this.sseClients.size}sendToClient(e,r){let n=`data: ${JSON.stringify(r)} -`;e.write(n)}};var X$=require("child_process"),f9=require("os"),m9=Pe(require("path"),1);re();re();function au(t,e,r,n){return`${n.prompts.system_identity} +`;e.write(n)}};var hI=require("child_process"),M9=require("os"),D9=Pe(require("path"),1);re();re();function bu(t,e,r,n){return`${n.prompts.system_identity} ${r} @@ -1239,7 +1346,7 @@ ${n.prompts.format_examples} ${n.prompts.footer} -${n.prompts.header_memory_start}`}function cu(t){let e,r;try{e=typeof t.tool_input=="string"?JSON.parse(t.tool_input):t.tool_input}catch(n){_.debug("SDK","Tool input is plain string, using as-is",{toolName:t.tool_name},n),e=t.tool_input}try{r=typeof t.tool_output=="string"?JSON.parse(t.tool_output):t.tool_output}catch(n){_.debug("SDK","Tool output is plain string, using as-is",{toolName:t.tool_name},n),r=t.tool_output}return` +${n.prompts.header_memory_start}`}function Su(t){let e,r;try{e=typeof t.tool_input=="string"?JSON.parse(t.tool_input):t.tool_input}catch(n){_.debug("SDK","Tool input is plain string, using as-is",{toolName:t.tool_name},n),e=t.tool_input}try{r=typeof t.tool_output=="string"?JSON.parse(t.tool_output):t.tool_output}catch(n){_.debug("SDK","Tool output is plain string, using as-is",{toolName:t.tool_name},n),r=t.tool_output}return` ${t.tool_name} ${new Date(t.created_at_epoch).toISOString()}${t.cwd?` ${t.cwd}`:""} @@ -1249,7 +1356,7 @@ ${n.prompts.header_memory_start}`}function cu(t){let e,r;try{e=typeof t.tool_inp Return either one or more ... blocks, or an empty response if this tool use should be skipped. Concrete debugging findings from logs, queue state, database rows, session routing, or code-path inspection count as durable discoveries and should be recorded. -Never reply with prose such as "Skipping", "No substantive tool executions", or any explanation outside XML. Non-XML text is discarded.`}function uu(t,e){let r=t.last_assistant_message||(_.error("SDK","Missing last_assistant_message in session for summary prompt",{sessionId:t.id}),"");return`--- MODE SWITCH: PROGRESS SUMMARY --- +Never reply with prose such as "Skipping", "No substantive tool executions", or any explanation outside XML. Non-XML text is discarded.`}function xu(t,e){let r=t.last_assistant_message||(_.error("SDK","Missing last_assistant_message in session for summary prompt",{sessionId:t.id}),"");return`--- MODE SWITCH: PROGRESS SUMMARY --- Do NOT output tags. This is a summary request, not an observation request. Your response MUST use tags ONLY. Any output will be discarded. @@ -1269,7 +1376,7 @@ ${e.prompts.summary_format_instruction} ${e.prompts.xml_summary_notes_placeholder} -${e.prompts.summary_footer}`}function lu(t,e,r,n){return`${n.prompts.continuation_greeting} +${e.prompts.summary_footer}`}function wu(t,e,r,n){return`${n.prompts.continuation_greeting} ${t} @@ -1328,7 +1435,7 @@ ${n.prompts.format_examples} ${n.prompts.footer} -${n.prompts.header_memory_continued}`}rr();zt();Qr();var t$=["429","500","502","503","ECONNREFUSED","ETIMEDOUT","fetch failed"];re();re();Qr();function M6(t,e){let r=[],n=/([\s\S]*?)<\/observation>/g,i;for(;(i=n.exec(t))!==null;){let s=i[1],o=Ji(s,"type"),a=Ji(s,"title"),c=Ji(s,"subtitle"),u=Ji(s,"narrative"),l=$v(s,"facts","fact"),d=$v(s,"concepts","concept"),p=$v(s,"files_read","file"),f=$v(s,"files_modified","file"),h=He.getInstance().getActiveMode().observation_types.map(b=>b.id),g=h[0],v=g;o?h.includes(o.trim())?v=o.trim():_.error("PARSER",`Invalid observation type: ${o}, using "${g}"`,{correlationId:e}):_.error("PARSER",`Observation missing type field, using "${g}"`,{correlationId:e});let S=d.filter(b=>b!==v);S.length!==d.length&&_.debug("PARSER","Removed observation type from concepts array",{correlationId:e,type:v,originalConcepts:d,cleanedConcepts:S}),r.push({type:v,title:a,subtitle:c,facts:l,narrative:u,concepts:S,files_read:p,files_modified:f})}return r}function D6(t,e){let n=//.exec(t);if(n)return _.info("PARSER","Summary skipped",{sessionId:e,reason:n[1]}),null;let s=/([\s\S]*?)<\/summary>/.exec(t);if(!s)return//.test(t)&&_.warn("PARSER","Summary response contained tags instead of \u2014 prompt conditioning may need strengthening",{sessionId:e}),null;let o=s[1],a=Ji(o,"request"),c=Ji(o,"investigated"),u=Ji(o,"learned"),l=Ji(o,"completed"),d=Ji(o,"next_steps"),p=Ji(o,"notes");return{request:a,investigated:c,learned:u,completed:l,next_steps:d,notes:p}}function Ji(t,e){let n=new RegExp(`<${e}>([\\s\\S]*?)`).exec(t);if(!n)return null;let i=n[1].trim();return i===""?null:i}function $v(t,e,r){let n=[],s=new RegExp(`<${e}>([\\s\\S]*?)`).exec(t);if(!s)return n;let o=s[1],a=new RegExp(`<${r}>([\\s\\S]*?)`,"g"),c;for(;(c=a.exec(o))!==null;){let u=c[1].trim();u&&n.push(u)}return n}var yi=require("fs"),Zt=Pe(require("path"),1),z6=Pe(require("os"),1);re();ga();rr();Dr();var Rue=Zt.default.join(z6.default.homedir(),".claude-mem","settings.json");function Oue(t){let e=t.split(Zt.default.sep).filter(r=>r&&r!=="."&&r!=="..");for(let r=1;r([\s\S]*?)<\/observation>/g,i;for(;(i=n.exec(t))!==null;){let s=i[1],o=rs(s,"type"),a=rs(s,"title"),c=rs(s,"subtitle"),u=rs(s,"narrative"),l=zv(s,"facts","fact"),d=zv(s,"concepts","concept"),p=zv(s,"files_read","file"),f=zv(s,"files_modified","file"),h=He.getInstance().getActiveMode().observation_types.map(b=>b.id),g=h[0],v=g;o?h.includes(o.trim())?v=o.trim():_.error("PARSER",`Invalid observation type: ${o}, using "${g}"`,{correlationId:e}):_.error("PARSER",`Observation missing type field, using "${g}"`,{correlationId:e});let y=d.filter(b=>b!==v);y.length!==d.length&&_.debug("PARSER","Removed observation type from concepts array",{correlationId:e,type:v,originalConcepts:d,cleanedConcepts:y}),r.push({type:v,title:a,subtitle:c,facts:l,narrative:u,concepts:y,files_read:p,files_modified:f})}return r}function eF(t,e){let n=//.exec(t);if(n)return _.info("PARSER","Summary skipped",{sessionId:e,reason:n[1]}),null;let s=/([\s\S]*?)<\/summary>/.exec(t);if(!s)return//.test(t)&&_.warn("PARSER","Summary response contained tags instead of \u2014 prompt conditioning may need strengthening",{sessionId:e}),null;let o=s[1],a=rs(o,"request"),c=rs(o,"investigated"),u=rs(o,"learned"),l=rs(o,"completed"),d=rs(o,"next_steps"),p=rs(o,"notes");return!a&&!c&&!u&&!l&&!d?(_.warn("PARSER","Summary match has no sub-tags \u2014 skipping false positive",{sessionId:e}),null):{request:a,investigated:c,learned:u,completed:l,next_steps:d,notes:p}}function rs(t,e){let n=new RegExp(`<${e}>([\\s\\S]*?)`).exec(t);if(!n)return null;let i=n[1].trim();return i===""?null:i}function zv(t,e,r){let n=[],s=new RegExp(`<${e}>([\\s\\S]*?)`).exec(t);if(!s)return n;let o=s[1],a=new RegExp(`<${r}>([\\s\\S]*?)`,"g"),c;for(;(c=a.exec(o))!==null;){let u=c[1].trim();u&&n.push(u)}return n}var xi=require("fs"),Bt=Pe(require("path"),1),rF=Pe(require("os"),1);re();js();tr();Ir();var nF=Bt.default.join(rF.default.homedir(),".claude-mem","settings.json"),iF="CLAUDE.md",sF="CLAUDE.local.md";function oF(t){return(t??ve.loadFromFile(nF)).CLAUDE_MEM_FOLDER_USE_LOCAL_MD==="true"?sF:iF}function Xue(t){let e=t.split(Bt.default.sep).filter(r=>r&&r!=="."&&r!=="..");for(let r=1;rnew Date(a.epoch).toISOString());for(let[a,c]of o){e.push(`### ${a}`),e.push(""),e.push("| ID | Time | T | Title | Read |"),e.push("|----|------|---|-------|------|");let u="";for(let l of c){let d=l.time===u?'"':l.time;u=l.time,e.push(`| ${l.id} | ${d} | ${l.typeEmoji} | ${l.title} | ${l.tokens} |`)}e.push("")}return e.join(` -`).trim()}var Nue=new Set(["res",".git","build","node_modules","__pycache__"]);function Mue(t){return Zt.default.normalize(t).split(Zt.default.sep).some(n=>Nue.has(n))}function Due(t){let e=Zt.default.join(t,".git");return(0,yi.existsSync)(e)}function jue(t,e){let r=Zt.default.resolve(t);for(let n of e){let i=Zt.default.resolve(n);if(r===i||r.startsWith(i+Zt.default.sep))return!0}return!1}async function L6(t,e,r,n){let i=Se.loadFromFile(Rue),s=parseInt(i.CLAUDE_MEM_CONTEXT_OBSERVATIONS,10)||50,o=[];try{let u=JSON.parse(i.CLAUDE_MEM_FOLDER_MD_EXCLUDE||"[]");Array.isArray(u)&&(o=u.filter(l=>typeof l=="string"))}catch{_.warn("FOLDER_INDEX","Failed to parse CLAUDE_MEM_FOLDER_MD_EXCLUDE setting")}let a=new Set;for(let u of t){if(!u)continue;if(Zt.default.basename(u)==="CLAUDE.md"){let d=u;n&&!Zt.default.isAbsolute(u)&&(d=Zt.default.join(n,u));let p=Zt.default.dirname(d);a.add(p),_.debug("FOLDER_INDEX","Detected active CLAUDE.md, will skip folder",{folderPath:p})}}let c=new Set;for(let u of t){if(!u||u==="")continue;if(!Cue(u,n)){_.debug("FOLDER_INDEX","Skipping invalid file path",{filePath:u,reason:"Failed path validation"});continue}let l=u;n&&!Zt.default.isAbsolute(u)&&(l=Zt.default.join(n,u));let d=Zt.default.dirname(l);if(d&&d!=="."&&d!=="/"){if(Due(d)){_.debug("FOLDER_INDEX","Skipping project root CLAUDE.md",{folderPath:d});continue}if(Mue(d)){_.debug("FOLDER_INDEX","Skipping unsafe directory for CLAUDE.md",{folderPath:d});continue}if(a.has(d)){_.debug("FOLDER_INDEX","Skipping folder with active CLAUDE.md to avoid race condition",{folderPath:d});continue}if(o.length>0&&jue(d,o)){_.debug("FOLDER_INDEX","Skipping excluded folder",{folderPath:d});continue}c.add(d)}}if(c.size!==0){_.debug("FOLDER_INDEX","Updating CLAUDE.md files",{project:e,folderCount:c.size});for(let u of c)try{let l=await dt(`/api/search/by-file?filePath=${encodeURIComponent(u)}&limit=${s}&project=${encodeURIComponent(e)}&isFolder=true`);if(!l.ok){_.error("FOLDER_INDEX","Failed to fetch timeline",{folderPath:u,status:l.status});continue}let d=await l.json();if(!d.content?.[0]?.text){_.debug("FOLDER_INDEX","No content for folder",{folderPath:u});continue}let p=Aue(d.content[0].text),f=Zt.default.join(u,"CLAUDE.md"),m=p.includes("*No recent activity*"),h=(0,yi.existsSync)(f);if(m&&!h){_.debug("FOLDER_INDEX","Skipping empty CLAUDE.md creation",{folderPath:u});continue}Pue(u,p),_.debug("FOLDER_INDEX","Updated CLAUDE.md",{folderPath:u})}catch(l){let d=l;_.error("FOLDER_INDEX","Failed to update CLAUDE.md",{folderPath:u,errorMessage:d.message,errorStack:d.stack})}}}Dr();rr();zt();function i$(t,e){t?.sseBroadcaster&&t.sseBroadcaster.broadcast({type:"new_observation",observation:e})}function s$(t,e){t?.sseBroadcaster&&t.sseBroadcaster.broadcast({type:"new_summary",summary:e})}function o$(t,e){t.earliestPendingTimestamp=null,e&&typeof e.broadcastProcessingStatus=="function"&&e.broadcastProcessingStatus()}async function _i(t,e,r,n,i,s,o,a,c){e.lastGeneratorActivity=Date.now(),t&&e.conversationHistory.push({role:"assistant",content:t});let u=M6(t,e.contentSessionId),l=D6(t,e.sessionDbId);if(t.trim()&&u.length===0&&!l&&!/||200?`${t.slice(0,200)}...`:t;_.warn("PARSER",`${a} returned non-XML response; observation content was discarded`,{sessionId:e.sessionDbId,preview:h})}let d=zue(l),p=r.getSessionStore();if(!e.memorySessionId)throw new Error("Cannot store observations: memorySessionId not yet captured");p.ensureMemorySessionIdRegistered(e.sessionDbId,e.memorySessionId),_.info("DB",`STORING | sessionDbId=${e.sessionDbId} | memorySessionId=${e.memorySessionId} | obsCount=${u.length} | hasSummary=${!!d}`,{sessionId:e.sessionDbId,memorySessionId:e.memorySessionId});let f=p.storeObservations(e.memorySessionId,e.project,u,d,e.lastPromptNumber,s,o??void 0);_.info("DB",`STORED | sessionDbId=${e.sessionDbId} | memorySessionId=${e.memorySessionId} | obsCount=${f.observationIds.length} | obsIds=[${f.observationIds.join(",")}] | summaryId=${f.summaryId||"none"}`,{sessionId:e.sessionDbId,memorySessionId:e.memorySessionId});let m=n.getPendingMessageStore();for(let h of e.processingMessageIds)m.confirmProcessed(h);e.processingMessageIds.length>0&&_.debug("QUEUE",`CONFIRMED_BATCH | sessionDbId=${e.sessionDbId} | count=${e.processingMessageIds.length} | ids=[${e.processingMessageIds.join(",")}]`),e.processingMessageIds=[],await Lue(u,f,e,r,i,s,a,c),await Uue(l,d,f,e,r,i,s,a),o$(e,i)}function zue(t){return t?{request:t.request||"",investigated:t.investigated||"",learned:t.learned||"",completed:t.completed||"",next_steps:t.next_steps||"",notes:t.notes}:null}async function Lue(t,e,r,n,i,s,o,a){for(let d=0;d{let h=Date.now()-m;_.debug("CHROMA","Observation synced",{obsId:p,duration:`${h}ms`,type:f.type,title:f.title||"(untitled)"})}).catch(h=>{_.error("CHROMA",`${o} chroma sync failed, continuing without vector search`,{obsId:p,type:f.type,title:f.title||"(untitled)"},h)}),i$(i,{id:p,memory_session_id:r.memorySessionId,session_id:r.contentSessionId,type:f.type,title:f.title,subtitle:f.subtitle,text:null,narrative:f.narrative||null,facts:JSON.stringify(f.facts||[]),concepts:JSON.stringify(f.concepts||[]),files_read:JSON.stringify(f.files_read||[]),files_modified:JSON.stringify(f.files_modified||[]),project:r.project,prompt_number:r.lastPromptNumber,created_at_epoch:e.createdAtEpoch})}let u=Se.loadFromFile(jt).CLAUDE_MEM_FOLDER_CLAUDEMD_ENABLED;if(u==="true"||u===!0){let d=[];for(let p of t)d.push(...p.files_modified||[]),d.push(...p.files_read||[]);d.length>0&&L6(d,r.project,Jr(),a).catch(p=>{_.warn("FOLDER_INDEX","CLAUDE.md update failed (non-critical)",{project:r.project},p)})}}async function Uue(t,e,r,n,i,s,o,a){if(!e||!r.summaryId)return;let c=Date.now();i.getChromaSync()?.syncSummary(r.summaryId,n.contentSessionId,n.project,e,n.lastPromptNumber,r.createdAtEpoch,o).then(()=>{let u=Date.now()-c;_.debug("CHROMA","Summary synced",{summaryId:r.summaryId,duration:`${u}ms`,request:e.request||"(no request)"})}).catch(u=>{_.error("CHROMA",`${a} chroma sync failed, continuing without vector search`,{summaryId:r.summaryId,request:e.request||"(no request)"},u)}),s$(s,{id:r.summaryId,session_id:n.contentSessionId,request:t.request,investigated:t.investigated,learned:t.learned,completed:t.completed,next_steps:t.next_steps,notes:t.notes,project:n.project,prompt_number:n.lastPromptNumber,created_at_epoch:r.createdAtEpoch}),v6(n.project,Jr()).catch(u=>{_.warn("CURSOR","Context update failed (non-critical)",{project:n.project},u)})}function Cp(t){let e=Fue(t);return t$.some(r=>e.includes(r))}function Fue(t){return t==null?"":typeof t=="string"?t:t instanceof Error?t.message:typeof t=="object"&&"message"in t?String(t.message):String(t)}function Pp(t){return t==null?!1:t instanceof Error&&t.name==="AbortError"?!0:typeof t=="object"&&"name"in t?t.name==="AbortError":!1}var f$=require("path"),TF=require("url"),$F=require("events"),RF=require("child_process"),OF=require("readline"),$e=Pe(require("fs"),1),CF=require("fs/promises"),DF=require("path"),jF=require("os"),_a=require("path"),LF=require("process"),UF=require("fs"),FF=require("crypto"),KF=require("crypto"),Pu=require("fs"),m$=require("path"),JF=require("crypto");var u_e={},que=Object.create,Hue=Object.getPrototypeOf,p$=Object.defineProperty,Zue=Object.getOwnPropertyNames,Bue=Object.prototype.hasOwnProperty,vF=(t,e,r)=>{r=t!=null?que(Hue(t)):{};let n=e||!t||!t.__esModule?p$(r,"default",{value:t,enumerable:!0}):r;for(let i of Zue(t))Bue.call(n,i)||p$(n,i,{get:()=>t[i],enumerable:!0});return n},ne=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),yF=(t,e)=>{for(var r in e)p$(t,r,{get:e[r],enumerable:!0,configurable:!0,set:n=>e[r]=()=>n})};var Mv=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.regexpCode=t.getEsmExportName=t.getProperty=t.safeStringify=t.stringify=t.strConcat=t.addCodeArg=t.str=t._=t.nil=t._Code=t.Name=t.IDENTIFIER=t._CodeOrName=void 0;class e{}t._CodeOrName=e,t.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class r extends e{constructor(S){if(super(),!t.IDENTIFIER.test(S))throw new Error("CodeGen: name must be a valid identifier");this.str=S}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}t.Name=r;class n extends e{constructor(S){super(),this._items=typeof S=="string"?[S]:S}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let S=this._items[0];return S===""||S==='""'}get str(){var S;return(S=this._str)!==null&&S!==void 0?S:this._str=this._items.reduce((b,y)=>`${b}${y}`,"")}get names(){var S;return(S=this._names)!==null&&S!==void 0?S:this._names=this._items.reduce((b,y)=>(y instanceof r&&(b[y.str]=(b[y.str]||0)+1),b),{})}}t._Code=n,t.nil=new n("");function i(v,...S){let b=[v[0]],y=0;for(;y{Object.defineProperty(t,"__esModule",{value:!0}),t.ValueScope=t.ValueScopeName=t.Scope=t.varKinds=t.UsedValueState=void 0;var e=Mv();class r extends Error{constructor(u){super(`CodeGen: "code" for ${u} not defined`),this.value=u.value}}var n;(function(c){c[c.Started=0]="Started",c[c.Completed=1]="Completed"})(n||(t.UsedValueState=n={})),t.varKinds={const:new e.Name("const"),let:new e.Name("let"),var:new e.Name("var")};class i{constructor({prefixes:u,parent:l}={}){this._names={},this._prefixes=u,this._parent=l}toName(u){return u instanceof e.Name?u:this.name(u)}name(u){return new e.Name(this._newName(u))}_newName(u){let l=this._names[u]||this._nameGroup(u);return`${u}${l.index++}`}_nameGroup(u){var l,d;if(!((d=(l=this._parent)===null||l===void 0?void 0:l._prefixes)===null||d===void 0)&&d.has(u)||this._prefixes&&!this._prefixes.has(u))throw new Error(`CodeGen: prefix "${u}" is not allowed in this scope`);return this._names[u]={prefix:u,index:0}}}t.Scope=i;class s extends e.Name{constructor(u,l){super(l),this.prefix=u}setValue(u,{property:l,itemIndex:d}){this.value=u,this.scopePath=(0,e._)`.${new e.Name(l)}[${d}]`}}t.ValueScopeName=s;var o=(0,e._)`\n`;class a extends i{constructor(u){super(u),this._values={},this._scope=u.scope,this.opts={...u,_n:u.lines?o:e.nil}}get(){return this._scope}name(u){return new s(u,this._newName(u))}value(u,l){var d;if(l.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let p=this.toName(u),{prefix:f}=p,m=(d=l.key)!==null&&d!==void 0?d:l.ref,h=this._values[f];if(h){let S=h.get(m);if(S)return S}else h=this._values[f]=new Map;h.set(m,p);let g=this._scope[f]||(this._scope[f]=[]),v=g.length;return g[v]=l.ref,p.setValue(l,{property:f,itemIndex:v}),p}getValue(u,l){let d=this._values[u];if(d)return d.get(l)}scopeRefs(u,l=this._values){return this._reduceValues(l,d=>{if(d.scopePath===void 0)throw new Error(`CodeGen: name "${d}" has no value`);return(0,e._)`${u}${d.scopePath}`})}scopeCode(u=this._values,l,d){return this._reduceValues(u,p=>{if(p.value===void 0)throw new Error(`CodeGen: name "${p}" has no value`);return p.value.code},l,d)}_reduceValues(u,l,d={},p){let f=e.nil;for(let m in u){let h=u[m];if(!h)continue;let g=d[m]=d[m]||new Map;h.forEach(v=>{if(g.has(v))return;g.set(v,n.Started);let S=l(v);if(S){let b=this.opts.es5?t.varKinds.var:t.varKinds.const;f=(0,e._)`${f}${b} ${v} = ${S};${this.opts._n}`}else if(S=p?.(v))f=(0,e._)`${f}${S}${this.opts._n}`;else throw new r(v);g.set(v,n.Completed)})}return f}}t.ValueScope=a}),Ze=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.or=t.and=t.not=t.CodeGen=t.operators=t.varKinds=t.ValueScopeName=t.ValueScope=t.Scope=t.Name=t.regexpCode=t.stringify=t.getProperty=t.nil=t.strConcat=t.str=t._=void 0;var e=Mv(),r=U6(),n=Mv();Object.defineProperty(t,"_",{enumerable:!0,get:function(){return n._}}),Object.defineProperty(t,"str",{enumerable:!0,get:function(){return n.str}}),Object.defineProperty(t,"strConcat",{enumerable:!0,get:function(){return n.strConcat}}),Object.defineProperty(t,"nil",{enumerable:!0,get:function(){return n.nil}}),Object.defineProperty(t,"getProperty",{enumerable:!0,get:function(){return n.getProperty}}),Object.defineProperty(t,"stringify",{enumerable:!0,get:function(){return n.stringify}}),Object.defineProperty(t,"regexpCode",{enumerable:!0,get:function(){return n.regexpCode}}),Object.defineProperty(t,"Name",{enumerable:!0,get:function(){return n.Name}});var i=U6();Object.defineProperty(t,"Scope",{enumerable:!0,get:function(){return i.Scope}}),Object.defineProperty(t,"ValueScope",{enumerable:!0,get:function(){return i.ValueScope}}),Object.defineProperty(t,"ValueScopeName",{enumerable:!0,get:function(){return i.ValueScopeName}}),Object.defineProperty(t,"varKinds",{enumerable:!0,get:function(){return i.varKinds}}),t.operators={GT:new e._Code(">"),GTE:new e._Code(">="),LT:new e._Code("<"),LTE:new e._Code("<="),EQ:new e._Code("==="),NEQ:new e._Code("!=="),NOT:new e._Code("!"),OR:new e._Code("||"),AND:new e._Code("&&"),ADD:new e._Code("+")};class s{optimizeNodes(){return this}optimizeNames(k,R){return this}}class o extends s{constructor(k,R,F){super(),this.varKind=k,this.name=R,this.rhs=F}render({es5:k,_n:R}){let F=k?r.varKinds.var:this.varKind,le=this.rhs===void 0?"":` = ${this.rhs}`;return`${F} ${this.name}${le};`+R}optimizeNames(k,R){if(k[this.name.str])return this.rhs&&(this.rhs=j(this.rhs,k,R)),this}get names(){return this.rhs instanceof e._CodeOrName?this.rhs.names:{}}}class a extends s{constructor(k,R,F){super(),this.lhs=k,this.rhs=R,this.sideEffects=F}render({_n:k}){return`${this.lhs} = ${this.rhs};`+k}optimizeNames(k,R){if(!(this.lhs instanceof e.Name&&!k[this.lhs.str]&&!this.sideEffects))return this.rhs=j(this.rhs,k,R),this}get names(){let k=this.lhs instanceof e.Name?{}:{...this.lhs.names};return V(k,this.rhs)}}class c extends a{constructor(k,R,F,le){super(k,F,le),this.op=R}render({_n:k}){return`${this.lhs} ${this.op}= ${this.rhs};`+k}}class u extends s{constructor(k){super(),this.label=k,this.names={}}render({_n:k}){return`${this.label}:`+k}}class l extends s{constructor(k){super(),this.label=k,this.names={}}render({_n:k}){return`break${this.label?` ${this.label}`:""};`+k}}class d extends s{constructor(k){super(),this.error=k}render({_n:k}){return`throw ${this.error};`+k}get names(){return this.error.names}}class p extends s{constructor(k){super(),this.code=k}render({_n:k}){return`${this.code};`+k}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(k,R){return this.code=j(this.code,k,R),this}get names(){return this.code instanceof e._CodeOrName?this.code.names:{}}}class f extends s{constructor(k=[]){super(),this.nodes=k}render(k){return this.nodes.reduce((R,F)=>R+F.render(k),"")}optimizeNodes(){let{nodes:k}=this,R=k.length;for(;R--;){let F=k[R].optimizeNodes();Array.isArray(F)?k.splice(R,1,...F):F?k[R]=F:k.splice(R,1)}return k.length>0?this:void 0}optimizeNames(k,R){let{nodes:F}=this,le=F.length;for(;le--;){let ce=F[le];ce.optimizeNames(k,R)||(ae(k,ce.names),F.splice(le,1))}return F.length>0?this:void 0}get names(){return this.nodes.reduce((k,R)=>U(k,R.names),{})}}class m extends f{render(k){return"{"+k._n+super.render(k)+"}"+k._n}}class h extends f{}class g extends m{}g.kind="else";class v extends m{constructor(k,R){super(R),this.condition=k}render(k){let R=`if(${this.condition})`+super.render(k);return this.else&&(R+="else "+this.else.render(k)),R}optimizeNodes(){super.optimizeNodes();let k=this.condition;if(k===!0)return this.nodes;let R=this.else;if(R){let F=R.optimizeNodes();R=this.else=Array.isArray(F)?new g(F):F}if(R)return k===!1?R instanceof v?R:R.nodes:this.nodes.length?this:new v(Me(k),R instanceof v?[R]:R.nodes);if(!(k===!1||!this.nodes.length))return this}optimizeNames(k,R){var F;if(this.else=(F=this.else)===null||F===void 0?void 0:F.optimizeNames(k,R),!!(super.optimizeNames(k,R)||this.else))return this.condition=j(this.condition,k,R),this}get names(){let k=super.names;return V(k,this.condition),this.else&&U(k,this.else.names),k}}v.kind="if";class S extends m{}S.kind="for";class b extends S{constructor(k){super(),this.iteration=k}render(k){return`for(${this.iteration})`+super.render(k)}optimizeNames(k,R){if(super.optimizeNames(k,R))return this.iteration=j(this.iteration,k,R),this}get names(){return U(super.names,this.iteration.names)}}class y extends S{constructor(k,R,F,le){super(),this.varKind=k,this.name=R,this.from=F,this.to=le}render(k){let R=k.es5?r.varKinds.var:this.varKind,{name:F,from:le,to:ce}=this;return`for(${R} ${F}=${le}; ${F}<${ce}; ${F}++)`+super.render(k)}get names(){let k=V(super.names,this.from);return V(k,this.to)}}class x extends S{constructor(k,R,F,le){super(),this.loop=k,this.varKind=R,this.name=F,this.iterable=le}render(k){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(k)}optimizeNames(k,R){if(super.optimizeNames(k,R))return this.iterable=j(this.iterable,k,R),this}get names(){return U(super.names,this.iterable.names)}}class w extends m{constructor(k,R,F){super(),this.name=k,this.args=R,this.async=F}render(k){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(k)}}w.kind="func";class E extends f{render(k){return"return "+super.render(k)}}E.kind="return";class T extends m{render(k){let R="try"+super.render(k);return this.catch&&(R+=this.catch.render(k)),this.finally&&(R+=this.finally.render(k)),R}optimizeNodes(){var k,R;return super.optimizeNodes(),(k=this.catch)===null||k===void 0||k.optimizeNodes(),(R=this.finally)===null||R===void 0||R.optimizeNodes(),this}optimizeNames(k,R){var F,le;return super.optimizeNames(k,R),(F=this.catch)===null||F===void 0||F.optimizeNames(k,R),(le=this.finally)===null||le===void 0||le.optimizeNames(k,R),this}get names(){let k=super.names;return this.catch&&U(k,this.catch.names),this.finally&&U(k,this.finally.names),k}}class I extends m{constructor(k){super(),this.error=k}render(k){return`catch(${this.error})`+super.render(k)}}I.kind="catch";class A extends m{render(k){return"finally"+super.render(k)}}A.kind="finally";class N{constructor(k,R={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...R,_n:R.lines?` -`:""},this._extScope=k,this._scope=new r.Scope({parent:k}),this._nodes=[new h]}toString(){return this._root.render(this.opts)}name(k){return this._scope.name(k)}scopeName(k){return this._extScope.name(k)}scopeValue(k,R){let F=this._extScope.value(k,R);return(this._values[F.prefix]||(this._values[F.prefix]=new Set)).add(F),F}getScopeValue(k,R){return this._extScope.getValue(k,R)}scopeRefs(k){return this._extScope.scopeRefs(k,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(k,R,F,le){let ce=this._scope.toName(R);return F!==void 0&&le&&(this._constants[ce.str]=F),this._leafNode(new o(k,ce,F)),ce}const(k,R,F){return this._def(r.varKinds.const,k,R,F)}let(k,R,F){return this._def(r.varKinds.let,k,R,F)}var(k,R,F){return this._def(r.varKinds.var,k,R,F)}assign(k,R,F){return this._leafNode(new a(k,R,F))}add(k,R){return this._leafNode(new c(k,t.operators.ADD,R))}code(k){return typeof k=="function"?k():k!==e.nil&&this._leafNode(new p(k)),this}object(...k){let R=["{"];for(let[F,le]of k)R.length>1&&R.push(","),R.push(F),(F!==le||this.opts.es5)&&(R.push(":"),(0,e.addCodeArg)(R,le));return R.push("}"),new e._Code(R)}if(k,R,F){if(this._blockNode(new v(k)),R&&F)this.code(R).else().code(F).endIf();else if(R)this.code(R).endIf();else if(F)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(k){return this._elseNode(new v(k))}else(){return this._elseNode(new g)}endIf(){return this._endBlockNode(v,g)}_for(k,R){return this._blockNode(k),R&&this.code(R).endFor(),this}for(k,R){return this._for(new b(k),R)}forRange(k,R,F,le,ce=this.opts.es5?r.varKinds.var:r.varKinds.let){let Qe=this._scope.toName(k);return this._for(new y(ce,Qe,R,F),()=>le(Qe))}forOf(k,R,F,le=r.varKinds.const){let ce=this._scope.toName(k);if(this.opts.es5){let Qe=R instanceof e.Name?R:this.var("_arr",R);return this.forRange("_i",0,(0,e._)`${Qe}.length`,Xe=>{this.var(ce,(0,e._)`${Qe}[${Xe}]`),F(ce)})}return this._for(new x("of",le,ce,R),()=>F(ce))}forIn(k,R,F,le=this.opts.es5?r.varKinds.var:r.varKinds.const){if(this.opts.ownProperties)return this.forOf(k,(0,e._)`Object.keys(${R})`,F);let ce=this._scope.toName(k);return this._for(new x("in",le,ce,R),()=>F(ce))}endFor(){return this._endBlockNode(S)}label(k){return this._leafNode(new u(k))}break(k){return this._leafNode(new l(k))}return(k){let R=new E;if(this._blockNode(R),this.code(k),R.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(E)}try(k,R,F){if(!R&&!F)throw new Error('CodeGen: "try" without "catch" and "finally"');let le=new T;if(this._blockNode(le),this.code(k),R){let ce=this.name("e");this._currNode=le.catch=new I(ce),R(ce)}return F&&(this._currNode=le.finally=new A,this.code(F)),this._endBlockNode(I,A)}throw(k){return this._leafNode(new d(k))}block(k,R){return this._blockStarts.push(this._nodes.length),k&&this.code(k).endBlock(R),this}endBlock(k){let R=this._blockStarts.pop();if(R===void 0)throw new Error("CodeGen: not in self-balancing block");let F=this._nodes.length-R;if(F<0||k!==void 0&&F!==k)throw new Error(`CodeGen: wrong number of nodes: ${F} vs ${k} expected`);return this._nodes.length=R,this}func(k,R=e.nil,F,le){return this._blockNode(new w(k,R,F)),le&&this.code(le).endFunc(),this}endFunc(){return this._endBlockNode(w)}optimize(k=1){for(;k-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(k){return this._currNode.nodes.push(k),this}_blockNode(k){this._currNode.nodes.push(k),this._nodes.push(k)}_endBlockNode(k,R){let F=this._currNode;if(F instanceof k||R&&F instanceof R)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${R?`${k.kind}/${R.kind}`:k.kind}"`)}_elseNode(k){let R=this._currNode;if(!(R instanceof v))throw new Error('CodeGen: "else" without "if"');return this._currNode=R.else=k,this}get _root(){return this._nodes[0]}get _currNode(){let k=this._nodes;return k[k.length-1]}set _currNode(k){let R=this._nodes;R[R.length-1]=k}}t.CodeGen=N;function U(M,k){for(let R in k)M[R]=(M[R]||0)+(k[R]||0);return M}function V(M,k){return k instanceof e._CodeOrName?U(M,k.names):M}function j(M,k,R){if(M instanceof e.Name)return F(M);if(!le(M))return M;return new e._Code(M._items.reduce((ce,Qe)=>(Qe instanceof e.Name&&(Qe=F(Qe)),Qe instanceof e._Code?ce.push(...Qe._items):ce.push(Qe),ce),[]));function F(ce){let Qe=R[ce.str];return Qe===void 0||k[ce.str]!==1?ce:(delete k[ce.str],Qe)}function le(ce){return ce instanceof e._Code&&ce._items.some(Qe=>Qe instanceof e.Name&&k[Qe.str]===1&&R[Qe.str]!==void 0)}}function ae(M,k){for(let R in k)M[R]=(M[R]||0)-(k[R]||0)}function Me(M){return typeof M=="boolean"||typeof M=="number"||M===null?!M:(0,e._)`!${H(M)}`}t.not=Me;var ze=C(t.operators.AND);function Et(...M){return M.reduce(ze)}t.and=Et;var Ge=C(t.operators.OR);function K(...M){return M.reduce(Ge)}t.or=K;function C(M){return(k,R)=>k===e.nil?R:R===e.nil?k:(0,e._)`${H(k)} ${M} ${H(R)}`}function H(M){return M instanceof e.Name?M:(0,e._)`(${M})`}}),at=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.checkStrictMode=t.getErrorPath=t.Type=t.useFunc=t.setEvaluated=t.evaluatedPropsToName=t.mergeEvaluated=t.eachItem=t.unescapeJsonPointer=t.escapeJsonPointer=t.escapeFragment=t.unescapeFragment=t.schemaRefOrVal=t.schemaHasRulesButRef=t.schemaHasRules=t.checkUnknownRules=t.alwaysValidSchema=t.toHash=void 0;var e=Ze(),r=Mv();function n(w){let E={};for(let T of w)E[T]=!0;return E}t.toHash=n;function i(w,E){return typeof E=="boolean"?E:Object.keys(E).length===0?!0:(s(w,E),!o(E,w.self.RULES.all))}t.alwaysValidSchema=i;function s(w,E=w.schema){let{opts:T,self:I}=w;if(!T.strictSchema||typeof E=="boolean")return;let A=I.RULES.keywords;for(let N in E)A[N]||x(w,`unknown keyword: "${N}"`)}t.checkUnknownRules=s;function o(w,E){if(typeof w=="boolean")return!w;for(let T in w)if(E[T])return!0;return!1}t.schemaHasRules=o;function a(w,E){if(typeof w=="boolean")return!w;for(let T in w)if(T!=="$ref"&&E.all[T])return!0;return!1}t.schemaHasRulesButRef=a;function c({topSchemaRef:w,schemaPath:E},T,I,A){if(!A){if(typeof T=="number"||typeof T=="boolean")return T;if(typeof T=="string")return(0,e._)`${T}`}return(0,e._)`${w}${E}${(0,e.getProperty)(I)}`}t.schemaRefOrVal=c;function u(w){return p(decodeURIComponent(w))}t.unescapeFragment=u;function l(w){return encodeURIComponent(d(w))}t.escapeFragment=l;function d(w){return typeof w=="number"?`${w}`:w.replace(/~/g,"~0").replace(/\//g,"~1")}t.escapeJsonPointer=d;function p(w){return w.replace(/~1/g,"/").replace(/~0/g,"~")}t.unescapeJsonPointer=p;function f(w,E){if(Array.isArray(w))for(let T of w)E(T);else E(w)}t.eachItem=f;function m({mergeNames:w,mergeToName:E,mergeValues:T,resultToName:I}){return(A,N,U,V)=>{let j=U===void 0?N:U instanceof e.Name?(N instanceof e.Name?w(A,N,U):E(A,N,U),U):N instanceof e.Name?(E(A,U,N),N):T(N,U);return V===e.Name&&!(j instanceof e.Name)?I(A,j):j}}t.mergeEvaluated={props:m({mergeNames:(w,E,T)=>w.if((0,e._)`${T} !== true && ${E} !== undefined`,()=>{w.if((0,e._)`${E} === true`,()=>w.assign(T,!0),()=>w.assign(T,(0,e._)`${T} || {}`).code((0,e._)`Object.assign(${T}, ${E})`))}),mergeToName:(w,E,T)=>w.if((0,e._)`${T} !== true`,()=>{E===!0?w.assign(T,!0):(w.assign(T,(0,e._)`${T} || {}`),g(w,T,E))}),mergeValues:(w,E)=>w===!0?!0:{...w,...E},resultToName:h}),items:m({mergeNames:(w,E,T)=>w.if((0,e._)`${T} !== true && ${E} !== undefined`,()=>w.assign(T,(0,e._)`${E} === true ? true : ${T} > ${E} ? ${T} : ${E}`)),mergeToName:(w,E,T)=>w.if((0,e._)`${T} !== true`,()=>w.assign(T,E===!0?!0:(0,e._)`${T} > ${E} ? ${T} : ${E}`)),mergeValues:(w,E)=>w===!0?!0:Math.max(w,E),resultToName:(w,E)=>w.var("items",E)})};function h(w,E){if(E===!0)return w.var("props",!0);let T=w.var("props",(0,e._)`{}`);return E!==void 0&&g(w,T,E),T}t.evaluatedPropsToName=h;function g(w,E,T){Object.keys(T).forEach(I=>w.assign((0,e._)`${E}${(0,e.getProperty)(I)}`,!0))}t.setEvaluated=g;var v={};function S(w,E){return w.scopeValue("func",{ref:E,code:v[E.code]||(v[E.code]=new r._Code(E.code))})}t.useFunc=S;var b;(function(w){w[w.Num=0]="Num",w[w.Str=1]="Str"})(b||(t.Type=b={}));function y(w,E,T){if(w instanceof e.Name){let I=E===b.Num;return T?I?(0,e._)`"[" + ${w} + "]"`:(0,e._)`"['" + ${w} + "']"`:I?(0,e._)`"/" + ${w}`:(0,e._)`"/" + ${w}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return T?(0,e.getProperty)(w).toString():"/"+d(w)}t.getErrorPath=y;function x(w,E,T=w.opts.strictSchema){if(T){if(E=`strict mode: ${E}`,T===!0)throw new Error(E);w.self.logger.warn(E)}}t.checkStrictMode=x}),xo=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r={data:new e.Name("data"),valCxt:new e.Name("valCxt"),instancePath:new e.Name("instancePath"),parentData:new e.Name("parentData"),parentDataProperty:new e.Name("parentDataProperty"),rootData:new e.Name("rootData"),dynamicAnchors:new e.Name("dynamicAnchors"),vErrors:new e.Name("vErrors"),errors:new e.Name("errors"),this:new e.Name("this"),self:new e.Name("self"),scope:new e.Name("scope"),json:new e.Name("json"),jsonPos:new e.Name("jsonPos"),jsonLen:new e.Name("jsonLen"),jsonPart:new e.Name("jsonPart")};t.default=r}),Hv=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.extendErrors=t.resetErrorsCount=t.reportExtraError=t.reportError=t.keyword$DataError=t.keywordError=void 0;var e=Ze(),r=at(),n=xo();t.keywordError={message:({keyword:g})=>(0,e.str)`must pass "${g}" keyword validation`},t.keyword$DataError={message:({keyword:g,schemaType:v})=>v?(0,e.str)`"${g}" keyword must be ${v} ($data)`:(0,e.str)`"${g}" keyword is invalid ($data)`};function i(g,v=t.keywordError,S,b){let{it:y}=g,{gen:x,compositeRule:w,allErrors:E}=y,T=d(g,v,S);b??(w||E)?c(x,T):u(y,(0,e._)`[${T}]`)}t.reportError=i;function s(g,v=t.keywordError,S){let{it:b}=g,{gen:y,compositeRule:x,allErrors:w}=b,E=d(g,v,S);c(y,E),x||w||u(b,n.default.vErrors)}t.reportExtraError=s;function o(g,v){g.assign(n.default.errors,v),g.if((0,e._)`${n.default.vErrors} !== null`,()=>g.if(v,()=>g.assign((0,e._)`${n.default.vErrors}.length`,v),()=>g.assign(n.default.vErrors,null)))}t.resetErrorsCount=o;function a({gen:g,keyword:v,schemaValue:S,data:b,errsCount:y,it:x}){if(y===void 0)throw new Error("ajv implementation error");let w=g.name("err");g.forRange("i",y,n.default.errors,E=>{g.const(w,(0,e._)`${n.default.vErrors}[${E}]`),g.if((0,e._)`${w}.instancePath === undefined`,()=>g.assign((0,e._)`${w}.instancePath`,(0,e.strConcat)(n.default.instancePath,x.errorPath))),g.assign((0,e._)`${w}.schemaPath`,(0,e.str)`${x.errSchemaPath}/${v}`),x.opts.verbose&&(g.assign((0,e._)`${w}.schema`,S),g.assign((0,e._)`${w}.data`,b))})}t.extendErrors=a;function c(g,v){let S=g.const("err",v);g.if((0,e._)`${n.default.vErrors} === null`,()=>g.assign(n.default.vErrors,(0,e._)`[${S}]`),(0,e._)`${n.default.vErrors}.push(${S})`),g.code((0,e._)`${n.default.errors}++`)}function u(g,v){let{gen:S,validateName:b,schemaEnv:y}=g;y.$async?S.throw((0,e._)`new ${g.ValidationError}(${v})`):(S.assign((0,e._)`${b}.errors`,v),S.return(!1))}var l={keyword:new e.Name("keyword"),schemaPath:new e.Name("schemaPath"),params:new e.Name("params"),propertyName:new e.Name("propertyName"),message:new e.Name("message"),schema:new e.Name("schema"),parentSchema:new e.Name("parentSchema")};function d(g,v,S){let{createErrors:b}=g.it;return b===!1?(0,e._)`{}`:p(g,v,S)}function p(g,v,S={}){let{gen:b,it:y}=g,x=[f(y,S),m(g,S)];return h(g,v,x),b.object(...x)}function f({errorPath:g},{instancePath:v}){let S=v?(0,e.str)`${g}${(0,r.getErrorPath)(v,r.Type.Str)}`:g;return[n.default.instancePath,(0,e.strConcat)(n.default.instancePath,S)]}function m({keyword:g,it:{errSchemaPath:v}},{schemaPath:S,parentSchema:b}){let y=b?v:(0,e.str)`${v}/${g}`;return S&&(y=(0,e.str)`${y}${(0,r.getErrorPath)(S,r.Type.Str)}`),[l.schemaPath,y]}function h(g,{params:v,message:S},b){let{keyword:y,data:x,schemaValue:w,it:E}=g,{opts:T,propertyName:I,topSchemaRef:A,schemaPath:N}=E;b.push([l.keyword,y],[l.params,typeof v=="function"?v(g):v||(0,e._)`{}`]),T.messages&&b.push([l.message,typeof S=="function"?S(g):S]),T.verbose&&b.push([l.schema,w],[l.parentSchema,(0,e._)`${A}${N}`],[n.default.data,x]),I&&b.push([l.propertyName,I])}}),Gue=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.boolOrEmptySchema=t.topBoolOrEmptySchema=void 0;var e=Hv(),r=Ze(),n=xo(),i={message:"boolean schema is false"};function s(c){let{gen:u,schema:l,validateName:d}=c;l===!1?a(c,!1):typeof l=="object"&&l.$async===!0?u.return(n.default.data):(u.assign((0,r._)`${d}.errors`,null),u.return(!0))}t.topBoolOrEmptySchema=s;function o(c,u){let{gen:l,schema:d}=c;d===!1?(l.var(u,!1),a(c)):l.var(u,!0)}t.boolOrEmptySchema=o;function a(c,u){let{gen:l,data:d}=c,p={gen:l,keyword:"false schema",data:d,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:c};(0,e.reportError)(p,i,void 0,u)}}),_F=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getRules=t.isJSONType=void 0;var e=["string","number","integer","boolean","null","object","array"],r=new Set(e);function n(s){return typeof s=="string"&&r.has(s)}t.isJSONType=n;function i(){let s={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...s,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},s.number,s.string,s.array,s.object],post:{rules:[]},all:{},keywords:{}}}t.getRules=i}),bF=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.shouldUseRule=t.shouldUseGroup=t.schemaHasRulesForType=void 0;function e({schema:i,self:s},o){let a=s.RULES.types[o];return a&&a!==!0&&r(i,a)}t.schemaHasRulesForType=e;function r(i,s){return s.rules.some(o=>n(i,o))}t.shouldUseGroup=r;function n(i,s){var o;return i[s.keyword]!==void 0||((o=s.definition.implements)===null||o===void 0?void 0:o.some(a=>i[a]!==void 0))}t.shouldUseRule=n}),Dv=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.reportTypeError=t.checkDataTypes=t.checkDataType=t.coerceAndCheckDataType=t.getJSONTypes=t.getSchemaTypes=t.DataType=void 0;var e=_F(),r=bF(),n=Hv(),i=Ze(),s=at(),o;(function(b){b[b.Correct=0]="Correct",b[b.Wrong=1]="Wrong"})(o||(t.DataType=o={}));function a(b){let y=c(b.type);if(y.includes("null")){if(b.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!y.length&&b.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');b.nullable===!0&&y.push("null")}return y}t.getSchemaTypes=a;function c(b){let y=Array.isArray(b)?b:b?[b]:[];if(y.every(e.isJSONType))return y;throw new Error("type must be JSONType or JSONType[]: "+y.join(","))}t.getJSONTypes=c;function u(b,y){let{gen:x,data:w,opts:E}=b,T=d(y,E.coerceTypes),I=y.length>0&&!(T.length===0&&y.length===1&&(0,r.schemaHasRulesForType)(b,y[0]));if(I){let A=h(y,w,E.strictNumbers,o.Wrong);x.if(A,()=>{T.length?p(b,y,T):v(b)})}return I}t.coerceAndCheckDataType=u;var l=new Set(["string","number","integer","boolean","null"]);function d(b,y){return y?b.filter(x=>l.has(x)||y==="array"&&x==="array"):[]}function p(b,y,x){let{gen:w,data:E,opts:T}=b,I=w.let("dataType",(0,i._)`typeof ${E}`),A=w.let("coerced",(0,i._)`undefined`);T.coerceTypes==="array"&&w.if((0,i._)`${I} == 'object' && Array.isArray(${E}) && ${E}.length == 1`,()=>w.assign(E,(0,i._)`${E}[0]`).assign(I,(0,i._)`typeof ${E}`).if(h(y,E,T.strictNumbers),()=>w.assign(A,E))),w.if((0,i._)`${A} !== undefined`);for(let U of x)(l.has(U)||U==="array"&&T.coerceTypes==="array")&&N(U);w.else(),v(b),w.endIf(),w.if((0,i._)`${A} !== undefined`,()=>{w.assign(E,A),f(b,A)});function N(U){switch(U){case"string":w.elseIf((0,i._)`${I} == "number" || ${I} == "boolean"`).assign(A,(0,i._)`"" + ${E}`).elseIf((0,i._)`${E} === null`).assign(A,(0,i._)`""`);return;case"number":w.elseIf((0,i._)`${I} == "boolean" || ${E} === null +${n}`}function Que(t,e,r){let n=Bt.default.resolve(t);if(n.includes("/.git/")||n.includes("\\.git\\")||n.endsWith("/.git")||n.endsWith("\\.git"))return;let i=r??oF(),s=Bt.default.join(t,i),o=`${s}.tmp`;if(!(0,xi.existsSync)(t)){_.debug("FOLDER_INDEX","Skipping non-existent folder",{folderPath:t});return}let a="";(0,xi.existsSync)(s)&&(a=(0,xi.readFileSync)(s,"utf-8"));let c=S$(a,e);(0,xi.writeFileSync)(o,c),(0,xi.renameSync)(o,s)}function ele(t){let e=[];e.push("# Recent Activity"),e.push("");let r=t.split(` +`),n=[],i="",s=null;for(let a of r){let c=a.match(/^###\s+(.+)$/);if(c){let l=c[1].trim(),d=new Date(l);isNaN(d.getTime())||(s=d);continue}let u=a.match(/^\|\s*(#[S]?\d+)\s*\|\s*([^|]+)\s*\|\s*([^|]+)\s*\|\s*([^|]+)\s*\|\s*([^|]+)\s*\|/);if(u){let[,l,d,p,f,m]=u,h;d.trim()==="\u2033"||d.trim()==='"'?h=i:(h=d.trim(),i=h);let g=s?new Date(s):new Date,v=h.match(/(\d+):(\d+)\s*(AM|PM)/i),y=g.getTime();if(v){let b=parseInt(v[1],10),S=parseInt(v[2],10),x=v[3].toUpperCase()==="PM";x&&b!==12&&(b+=12),!x&&b===12&&(b=0),g.setHours(b,S,0,0),y=g.getTime()}n.push({id:l.trim(),time:h,typeEmoji:p.trim(),title:f.trim(),tokens:m.trim(),epoch:y})}}if(n.length===0)return"";let o=Ds(n,a=>new Date(a.epoch).toISOString());for(let[a,c]of o){e.push(`### ${a}`),e.push(""),e.push("| ID | Time | T | Title | Read |"),e.push("|----|------|---|-------|------|");let u="";for(let l of c){let d=l.time===u?'"':l.time;u=l.time,e.push(`| ${l.id} | ${d} | ${l.typeEmoji} | ${l.title} | ${l.tokens} |`)}e.push("")}return e.join(` +`).trim()}var tle=new Set(["res",".git","build","node_modules","__pycache__"]);function rle(t){return Bt.default.normalize(t).split(Bt.default.sep).some(n=>tle.has(n))}function nle(t){let e=Bt.default.join(t,".git");return(0,xi.existsSync)(e)}function ile(t,e){let r=Bt.default.resolve(t);for(let n of e){let i=Bt.default.resolve(n);if(r===i||r.startsWith(i+Bt.default.sep))return!0}return!1}async function aF(t,e,r,n){let i=ve.loadFromFile(nF),s=parseInt(i.CLAUDE_MEM_CONTEXT_OBSERVATIONS,10)||50,o=oF(i),a=[];try{let l=JSON.parse(i.CLAUDE_MEM_FOLDER_MD_EXCLUDE||"[]");Array.isArray(l)&&(a=l.filter(d=>typeof d=="string"))}catch{_.warn("FOLDER_INDEX","Failed to parse CLAUDE_MEM_FOLDER_MD_EXCLUDE setting")}let c=new Set;for(let l of t){if(!l)continue;let d=Bt.default.basename(l);if(d===iF||d===sF){let p=l;n&&!Bt.default.isAbsolute(l)&&(p=Bt.default.join(n,l));let f=Bt.default.dirname(p);c.add(f),_.debug("FOLDER_INDEX","Detected active context file, will skip folder",{folderPath:f,basename:d})}}let u=new Set;for(let l of t){if(!l||l==="")continue;if(!Yue(l,n)){_.debug("FOLDER_INDEX","Skipping invalid file path",{filePath:l,reason:"Failed path validation"});continue}let d=l;n&&!Bt.default.isAbsolute(l)&&(d=Bt.default.join(n,l));let p=Bt.default.dirname(d);if(p&&p!=="."&&p!=="/"){if(nle(p)){_.debug("FOLDER_INDEX","Skipping project root CLAUDE.md",{folderPath:p});continue}if(rle(p)){_.debug("FOLDER_INDEX","Skipping unsafe directory for CLAUDE.md",{folderPath:p});continue}if(c.has(p)){_.debug("FOLDER_INDEX","Skipping folder with active CLAUDE.md to avoid race condition",{folderPath:p});continue}if(a.length>0&&ile(p,a)){_.debug("FOLDER_INDEX","Skipping excluded folder",{folderPath:p});continue}u.add(p)}}if(u.size!==0){_.debug("FOLDER_INDEX","Updating CLAUDE.md files",{project:e,folderCount:u.size});for(let l of u)try{let d=await at(`/api/search/by-file?filePath=${encodeURIComponent(l)}&limit=${s}&project=${encodeURIComponent(e)}&isFolder=true`);if(!d.ok){_.error("FOLDER_INDEX","Failed to fetch timeline",{folderPath:l,status:d.status});continue}let p=await d.json();if(!p.content?.[0]?.text){_.debug("FOLDER_INDEX","No content for folder",{folderPath:l});continue}let f=ele(p.content[0].text),m=Bt.default.join(l,o),h=f.includes("*No recent activity*"),g=(0,xi.existsSync)(m);if(h&&!g){_.debug("FOLDER_INDEX","Skipping empty context file creation",{folderPath:l,targetFilename:o});continue}Que(l,f,o),_.debug("FOLDER_INDEX","Updated context file",{folderPath:l,targetFilename:o})}catch(d){let p=d;_.error("FOLDER_INDEX",`Failed to update ${o}`,{folderPath:l,errorMessage:p.message,errorStack:p.stack})}}}Ir();tr();It();function x$(t,e){t?.sseBroadcaster&&t.sseBroadcaster.broadcast({type:"new_observation",observation:e})}function w$(t,e){t?.sseBroadcaster&&t.sseBroadcaster.broadcast({type:"new_summary",summary:e})}function E$(t,e){t.earliestPendingTimestamp=null,e&&typeof e.broadcastProcessingStatus=="function"&&e.broadcastProcessingStatus()}async function wi(t,e,r,n,i,s,o,a,c,u){e.lastGeneratorActivity=Date.now(),t&&e.conversationHistory.push({role:"assistant",content:t});let l=Q6(t,e.contentSessionId),d=eF(t,e.sessionDbId);if(t.trim()&&l.length===0&&!d&&!/||200?`${t.slice(0,200)}...`:t;_.warn("PARSER",`${a} returned non-XML response; observation content was discarded`,{sessionId:e.sessionDbId,preview:g})}let p=sle(d),f=r.getSessionStore();if(!e.memorySessionId)throw new Error("Cannot store observations: memorySessionId not yet captured");f.ensureMemorySessionIdRegistered(e.sessionDbId,e.memorySessionId),_.info("DB",`STORING | sessionDbId=${e.sessionDbId} | memorySessionId=${e.memorySessionId} | obsCount=${l.length} | hasSummary=${!!p}`,{sessionId:e.sessionDbId,memorySessionId:e.memorySessionId});let m=f.storeObservations(e.memorySessionId,e.project,l,p,e.lastPromptNumber,s,o??void 0,u);_.info("DB",`STORED | sessionDbId=${e.sessionDbId} | memorySessionId=${e.memorySessionId} | obsCount=${m.observationIds.length} | obsIds=[${m.observationIds.join(",")}] | summaryId=${m.summaryId||"none"}`,{sessionId:e.sessionDbId,memorySessionId:e.memorySessionId});let h=n.getPendingMessageStore();for(let g of e.processingMessageIds)h.confirmProcessed(g);e.processingMessageIds.length>0&&_.debug("QUEUE",`CONFIRMED_BATCH | sessionDbId=${e.sessionDbId} | count=${e.processingMessageIds.length} | ids=[${e.processingMessageIds.join(",")}]`),e.processingMessageIds=[],await ole(l,m,e,r,i,s,a,c),await ale(d,p,m,e,r,i,s,a),E$(e,i)}function sle(t){return t?{request:t.request||"",investigated:t.investigated||"",learned:t.learned||"",completed:t.completed||"",next_steps:t.next_steps||"",notes:t.notes}:null}async function ole(t,e,r,n,i,s,o,a){for(let d=0;d{let h=Date.now()-m;_.debug("CHROMA","Observation synced",{obsId:p,duration:`${h}ms`,type:f.type,title:f.title||"(untitled)"})}).catch(h=>{_.error("CHROMA",`${o} chroma sync failed, continuing without vector search`,{obsId:p,type:f.type,title:f.title||"(untitled)"},h)}),x$(i,{id:p,memory_session_id:r.memorySessionId,session_id:r.contentSessionId,platform_source:r.platformSource,type:f.type,title:f.title,subtitle:f.subtitle,text:null,narrative:f.narrative||null,facts:JSON.stringify(f.facts||[]),concepts:JSON.stringify(f.concepts||[]),files_read:JSON.stringify(f.files_read||[]),files_modified:JSON.stringify(f.files_modified||[]),project:r.project,prompt_number:r.lastPromptNumber,created_at_epoch:e.createdAtEpoch})}let u=ve.loadFromFile(vt).CLAUDE_MEM_FOLDER_CLAUDEMD_ENABLED;if(u==="true"||u===!0){let d=[];for(let p of t)d.push(...p.files_modified||[]),d.push(...p.files_read||[]);d.length>0&&aF(d,r.project,Yr(),a).catch(p=>{_.warn("FOLDER_INDEX","CLAUDE.md update failed (non-critical)",{project:r.project},p)})}}async function ale(t,e,r,n,i,s,o,a){if(!e||!r.summaryId)return;let c=Date.now();i.getChromaSync()?.syncSummary(r.summaryId,n.contentSessionId,n.project,e,n.lastPromptNumber,r.createdAtEpoch,o).then(()=>{let u=Date.now()-c;_.debug("CHROMA","Summary synced",{summaryId:r.summaryId,duration:`${u}ms`,request:e.request||"(no request)"})}).catch(u=>{_.error("CHROMA",`${a} chroma sync failed, continuing without vector search`,{summaryId:r.summaryId,request:e.request||"(no request)"},u)}),w$(s,{id:r.summaryId,session_id:n.contentSessionId,platform_source:n.platformSource,request:t.request,investigated:t.investigated,learned:t.learned,completed:t.completed,next_steps:t.next_steps,notes:t.notes,project:n.project,prompt_number:n.lastPromptNumber,created_at_epoch:r.createdAtEpoch}),M6(n.project,Yr()).catch(u=>{_.warn("CURSOR","Context update failed (non-critical)",{project:n.project},u)})}function Gp(t){let e=cle(t);return _$.some(r=>e.includes(r))}function cle(t){return t==null?"":typeof t=="string"?t:t instanceof Error?t.message:typeof t=="object"&&"message"in t?String(t.message):String(t)}function Wp(t){return t==null?!1:t instanceof Error&&t.name==="AbortError"?!0:typeof t=="object"&&"name"in t?t.name==="AbortError":!1}var C$=require("path"),VF=require("url"),KF=require("events"),XF=require("child_process"),YF=require("readline"),Re=Pe(require("fs"),1),QF=require("fs/promises"),iq=require("path"),sq=require("os"),Ia=require("path"),aq=require("process"),cq=require("fs"),uq=require("crypto"),vq=require("crypto"),Zu=require("fs"),P$=require("path"),yq=require("crypto");var O_e={},ule=Object.create,lle=Object.getPrototypeOf,O$=Object.defineProperty,dle=Object.getOwnPropertyNames,ple=Object.prototype.hasOwnProperty,LF=(t,e,r)=>{r=t!=null?ule(lle(t)):{};let n=e||!t||!t.__esModule?O$(r,"default",{value:t,enumerable:!0}):r;for(let i of dle(t))ple.call(n,i)||O$(n,i,{get:()=>t[i],enumerable:!0});return n},ne=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),UF=(t,e)=>{for(var r in e)O$(t,r,{get:e[r],enumerable:!0,configurable:!0,set:n=>e[r]=()=>n})};var Bv=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.regexpCode=t.getEsmExportName=t.getProperty=t.safeStringify=t.stringify=t.strConcat=t.addCodeArg=t.str=t._=t.nil=t._Code=t.Name=t.IDENTIFIER=t._CodeOrName=void 0;class e{}t._CodeOrName=e,t.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class r extends e{constructor(y){if(super(),!t.IDENTIFIER.test(y))throw new Error("CodeGen: name must be a valid identifier");this.str=y}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}t.Name=r;class n extends e{constructor(y){super(),this._items=typeof y=="string"?[y]:y}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let y=this._items[0];return y===""||y==='""'}get str(){var y;return(y=this._str)!==null&&y!==void 0?y:this._str=this._items.reduce((b,S)=>`${b}${S}`,"")}get names(){var y;return(y=this._names)!==null&&y!==void 0?y:this._names=this._items.reduce((b,S)=>(S instanceof r&&(b[S.str]=(b[S.str]||0)+1),b),{})}}t._Code=n,t.nil=new n("");function i(v,...y){let b=[v[0]],S=0;for(;S{Object.defineProperty(t,"__esModule",{value:!0}),t.ValueScope=t.ValueScopeName=t.Scope=t.varKinds=t.UsedValueState=void 0;var e=Bv();class r extends Error{constructor(u){super(`CodeGen: "code" for ${u} not defined`),this.value=u.value}}var n;(function(c){c[c.Started=0]="Started",c[c.Completed=1]="Completed"})(n||(t.UsedValueState=n={})),t.varKinds={const:new e.Name("const"),let:new e.Name("let"),var:new e.Name("var")};class i{constructor({prefixes:u,parent:l}={}){this._names={},this._prefixes=u,this._parent=l}toName(u){return u instanceof e.Name?u:this.name(u)}name(u){return new e.Name(this._newName(u))}_newName(u){let l=this._names[u]||this._nameGroup(u);return`${u}${l.index++}`}_nameGroup(u){var l,d;if(!((d=(l=this._parent)===null||l===void 0?void 0:l._prefixes)===null||d===void 0)&&d.has(u)||this._prefixes&&!this._prefixes.has(u))throw new Error(`CodeGen: prefix "${u}" is not allowed in this scope`);return this._names[u]={prefix:u,index:0}}}t.Scope=i;class s extends e.Name{constructor(u,l){super(l),this.prefix=u}setValue(u,{property:l,itemIndex:d}){this.value=u,this.scopePath=(0,e._)`.${new e.Name(l)}[${d}]`}}t.ValueScopeName=s;var o=(0,e._)`\n`;class a extends i{constructor(u){super(u),this._values={},this._scope=u.scope,this.opts={...u,_n:u.lines?o:e.nil}}get(){return this._scope}name(u){return new s(u,this._newName(u))}value(u,l){var d;if(l.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let p=this.toName(u),{prefix:f}=p,m=(d=l.key)!==null&&d!==void 0?d:l.ref,h=this._values[f];if(h){let y=h.get(m);if(y)return y}else h=this._values[f]=new Map;h.set(m,p);let g=this._scope[f]||(this._scope[f]=[]),v=g.length;return g[v]=l.ref,p.setValue(l,{property:f,itemIndex:v}),p}getValue(u,l){let d=this._values[u];if(d)return d.get(l)}scopeRefs(u,l=this._values){return this._reduceValues(l,d=>{if(d.scopePath===void 0)throw new Error(`CodeGen: name "${d}" has no value`);return(0,e._)`${u}${d.scopePath}`})}scopeCode(u=this._values,l,d){return this._reduceValues(u,p=>{if(p.value===void 0)throw new Error(`CodeGen: name "${p}" has no value`);return p.value.code},l,d)}_reduceValues(u,l,d={},p){let f=e.nil;for(let m in u){let h=u[m];if(!h)continue;let g=d[m]=d[m]||new Map;h.forEach(v=>{if(g.has(v))return;g.set(v,n.Started);let y=l(v);if(y){let b=this.opts.es5?t.varKinds.var:t.varKinds.const;f=(0,e._)`${f}${b} ${v} = ${y};${this.opts._n}`}else if(y=p?.(v))f=(0,e._)`${f}${y}${this.opts._n}`;else throw new r(v);g.set(v,n.Completed)})}return f}}t.ValueScope=a}),Ze=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.or=t.and=t.not=t.CodeGen=t.operators=t.varKinds=t.ValueScopeName=t.ValueScope=t.Scope=t.Name=t.regexpCode=t.stringify=t.getProperty=t.nil=t.strConcat=t.str=t._=void 0;var e=Bv(),r=cF(),n=Bv();Object.defineProperty(t,"_",{enumerable:!0,get:function(){return n._}}),Object.defineProperty(t,"str",{enumerable:!0,get:function(){return n.str}}),Object.defineProperty(t,"strConcat",{enumerable:!0,get:function(){return n.strConcat}}),Object.defineProperty(t,"nil",{enumerable:!0,get:function(){return n.nil}}),Object.defineProperty(t,"getProperty",{enumerable:!0,get:function(){return n.getProperty}}),Object.defineProperty(t,"stringify",{enumerable:!0,get:function(){return n.stringify}}),Object.defineProperty(t,"regexpCode",{enumerable:!0,get:function(){return n.regexpCode}}),Object.defineProperty(t,"Name",{enumerable:!0,get:function(){return n.Name}});var i=cF();Object.defineProperty(t,"Scope",{enumerable:!0,get:function(){return i.Scope}}),Object.defineProperty(t,"ValueScope",{enumerable:!0,get:function(){return i.ValueScope}}),Object.defineProperty(t,"ValueScopeName",{enumerable:!0,get:function(){return i.ValueScopeName}}),Object.defineProperty(t,"varKinds",{enumerable:!0,get:function(){return i.varKinds}}),t.operators={GT:new e._Code(">"),GTE:new e._Code(">="),LT:new e._Code("<"),LTE:new e._Code("<="),EQ:new e._Code("==="),NEQ:new e._Code("!=="),NOT:new e._Code("!"),OR:new e._Code("||"),AND:new e._Code("&&"),ADD:new e._Code("+")};class s{optimizeNodes(){return this}optimizeNames(k,R){return this}}class o extends s{constructor(k,R,F){super(),this.varKind=k,this.name=R,this.rhs=F}render({es5:k,_n:R}){let F=k?r.varKinds.var:this.varKind,le=this.rhs===void 0?"":` = ${this.rhs}`;return`${F} ${this.name}${le};`+R}optimizeNames(k,R){if(k[this.name.str])return this.rhs&&(this.rhs=j(this.rhs,k,R)),this}get names(){return this.rhs instanceof e._CodeOrName?this.rhs.names:{}}}class a extends s{constructor(k,R,F){super(),this.lhs=k,this.rhs=R,this.sideEffects=F}render({_n:k}){return`${this.lhs} = ${this.rhs};`+k}optimizeNames(k,R){if(!(this.lhs instanceof e.Name&&!k[this.lhs.str]&&!this.sideEffects))return this.rhs=j(this.rhs,k,R),this}get names(){let k=this.lhs instanceof e.Name?{}:{...this.lhs.names};return V(k,this.rhs)}}class c extends a{constructor(k,R,F,le){super(k,F,le),this.op=R}render({_n:k}){return`${this.lhs} ${this.op}= ${this.rhs};`+k}}class u extends s{constructor(k){super(),this.label=k,this.names={}}render({_n:k}){return`${this.label}:`+k}}class l extends s{constructor(k){super(),this.label=k,this.names={}}render({_n:k}){return`break${this.label?` ${this.label}`:""};`+k}}class d extends s{constructor(k){super(),this.error=k}render({_n:k}){return`throw ${this.error};`+k}get names(){return this.error.names}}class p extends s{constructor(k){super(),this.code=k}render({_n:k}){return`${this.code};`+k}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(k,R){return this.code=j(this.code,k,R),this}get names(){return this.code instanceof e._CodeOrName?this.code.names:{}}}class f extends s{constructor(k=[]){super(),this.nodes=k}render(k){return this.nodes.reduce((R,F)=>R+F.render(k),"")}optimizeNodes(){let{nodes:k}=this,R=k.length;for(;R--;){let F=k[R].optimizeNodes();Array.isArray(F)?k.splice(R,1,...F):F?k[R]=F:k.splice(R,1)}return k.length>0?this:void 0}optimizeNames(k,R){let{nodes:F}=this,le=F.length;for(;le--;){let ce=F[le];ce.optimizeNames(k,R)||(ae(k,ce.names),F.splice(le,1))}return F.length>0?this:void 0}get names(){return this.nodes.reduce((k,R)=>U(k,R.names),{})}}class m extends f{render(k){return"{"+k._n+super.render(k)+"}"+k._n}}class h extends f{}class g extends m{}g.kind="else";class v extends m{constructor(k,R){super(R),this.condition=k}render(k){let R=`if(${this.condition})`+super.render(k);return this.else&&(R+="else "+this.else.render(k)),R}optimizeNodes(){super.optimizeNodes();let k=this.condition;if(k===!0)return this.nodes;let R=this.else;if(R){let F=R.optimizeNodes();R=this.else=Array.isArray(F)?new g(F):F}if(R)return k===!1?R instanceof v?R:R.nodes:this.nodes.length?this:new v(Me(k),R instanceof v?[R]:R.nodes);if(!(k===!1||!this.nodes.length))return this}optimizeNames(k,R){var F;if(this.else=(F=this.else)===null||F===void 0?void 0:F.optimizeNames(k,R),!!(super.optimizeNames(k,R)||this.else))return this.condition=j(this.condition,k,R),this}get names(){let k=super.names;return V(k,this.condition),this.else&&U(k,this.else.names),k}}v.kind="if";class y extends m{}y.kind="for";class b extends y{constructor(k){super(),this.iteration=k}render(k){return`for(${this.iteration})`+super.render(k)}optimizeNames(k,R){if(super.optimizeNames(k,R))return this.iteration=j(this.iteration,k,R),this}get names(){return U(super.names,this.iteration.names)}}class S extends y{constructor(k,R,F,le){super(),this.varKind=k,this.name=R,this.from=F,this.to=le}render(k){let R=k.es5?r.varKinds.var:this.varKind,{name:F,from:le,to:ce}=this;return`for(${R} ${F}=${le}; ${F}<${ce}; ${F}++)`+super.render(k)}get names(){let k=V(super.names,this.from);return V(k,this.to)}}class x extends y{constructor(k,R,F,le){super(),this.loop=k,this.varKind=R,this.name=F,this.iterable=le}render(k){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(k)}optimizeNames(k,R){if(super.optimizeNames(k,R))return this.iterable=j(this.iterable,k,R),this}get names(){return U(super.names,this.iterable.names)}}class w extends m{constructor(k,R,F){super(),this.name=k,this.args=R,this.async=F}render(k){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(k)}}w.kind="func";class E extends f{render(k){return"return "+super.render(k)}}E.kind="return";class T extends m{render(k){let R="try"+super.render(k);return this.catch&&(R+=this.catch.render(k)),this.finally&&(R+=this.finally.render(k)),R}optimizeNodes(){var k,R;return super.optimizeNodes(),(k=this.catch)===null||k===void 0||k.optimizeNodes(),(R=this.finally)===null||R===void 0||R.optimizeNodes(),this}optimizeNames(k,R){var F,le;return super.optimizeNames(k,R),(F=this.catch)===null||F===void 0||F.optimizeNames(k,R),(le=this.finally)===null||le===void 0||le.optimizeNames(k,R),this}get names(){let k=super.names;return this.catch&&U(k,this.catch.names),this.finally&&U(k,this.finally.names),k}}class I extends m{constructor(k){super(),this.error=k}render(k){return`catch(${this.error})`+super.render(k)}}I.kind="catch";class A extends m{render(k){return"finally"+super.render(k)}}A.kind="finally";class N{constructor(k,R={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...R,_n:R.lines?` +`:""},this._extScope=k,this._scope=new r.Scope({parent:k}),this._nodes=[new h]}toString(){return this._root.render(this.opts)}name(k){return this._scope.name(k)}scopeName(k){return this._extScope.name(k)}scopeValue(k,R){let F=this._extScope.value(k,R);return(this._values[F.prefix]||(this._values[F.prefix]=new Set)).add(F),F}getScopeValue(k,R){return this._extScope.getValue(k,R)}scopeRefs(k){return this._extScope.scopeRefs(k,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(k,R,F,le){let ce=this._scope.toName(R);return F!==void 0&&le&&(this._constants[ce.str]=F),this._leafNode(new o(k,ce,F)),ce}const(k,R,F){return this._def(r.varKinds.const,k,R,F)}let(k,R,F){return this._def(r.varKinds.let,k,R,F)}var(k,R,F){return this._def(r.varKinds.var,k,R,F)}assign(k,R,F){return this._leafNode(new a(k,R,F))}add(k,R){return this._leafNode(new c(k,t.operators.ADD,R))}code(k){return typeof k=="function"?k():k!==e.nil&&this._leafNode(new p(k)),this}object(...k){let R=["{"];for(let[F,le]of k)R.length>1&&R.push(","),R.push(F),(F!==le||this.opts.es5)&&(R.push(":"),(0,e.addCodeArg)(R,le));return R.push("}"),new e._Code(R)}if(k,R,F){if(this._blockNode(new v(k)),R&&F)this.code(R).else().code(F).endIf();else if(R)this.code(R).endIf();else if(F)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(k){return this._elseNode(new v(k))}else(){return this._elseNode(new g)}endIf(){return this._endBlockNode(v,g)}_for(k,R){return this._blockNode(k),R&&this.code(R).endFor(),this}for(k,R){return this._for(new b(k),R)}forRange(k,R,F,le,ce=this.opts.es5?r.varKinds.var:r.varKinds.let){let Qe=this._scope.toName(k);return this._for(new S(ce,Qe,R,F),()=>le(Qe))}forOf(k,R,F,le=r.varKinds.const){let ce=this._scope.toName(k);if(this.opts.es5){let Qe=R instanceof e.Name?R:this.var("_arr",R);return this.forRange("_i",0,(0,e._)`${Qe}.length`,Xe=>{this.var(ce,(0,e._)`${Qe}[${Xe}]`),F(ce)})}return this._for(new x("of",le,ce,R),()=>F(ce))}forIn(k,R,F,le=this.opts.es5?r.varKinds.var:r.varKinds.const){if(this.opts.ownProperties)return this.forOf(k,(0,e._)`Object.keys(${R})`,F);let ce=this._scope.toName(k);return this._for(new x("in",le,ce,R),()=>F(ce))}endFor(){return this._endBlockNode(y)}label(k){return this._leafNode(new u(k))}break(k){return this._leafNode(new l(k))}return(k){let R=new E;if(this._blockNode(R),this.code(k),R.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(E)}try(k,R,F){if(!R&&!F)throw new Error('CodeGen: "try" without "catch" and "finally"');let le=new T;if(this._blockNode(le),this.code(k),R){let ce=this.name("e");this._currNode=le.catch=new I(ce),R(ce)}return F&&(this._currNode=le.finally=new A,this.code(F)),this._endBlockNode(I,A)}throw(k){return this._leafNode(new d(k))}block(k,R){return this._blockStarts.push(this._nodes.length),k&&this.code(k).endBlock(R),this}endBlock(k){let R=this._blockStarts.pop();if(R===void 0)throw new Error("CodeGen: not in self-balancing block");let F=this._nodes.length-R;if(F<0||k!==void 0&&F!==k)throw new Error(`CodeGen: wrong number of nodes: ${F} vs ${k} expected`);return this._nodes.length=R,this}func(k,R=e.nil,F,le){return this._blockNode(new w(k,R,F)),le&&this.code(le).endFunc(),this}endFunc(){return this._endBlockNode(w)}optimize(k=1){for(;k-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(k){return this._currNode.nodes.push(k),this}_blockNode(k){this._currNode.nodes.push(k),this._nodes.push(k)}_endBlockNode(k,R){let F=this._currNode;if(F instanceof k||R&&F instanceof R)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${R?`${k.kind}/${R.kind}`:k.kind}"`)}_elseNode(k){let R=this._currNode;if(!(R instanceof v))throw new Error('CodeGen: "else" without "if"');return this._currNode=R.else=k,this}get _root(){return this._nodes[0]}get _currNode(){let k=this._nodes;return k[k.length-1]}set _currNode(k){let R=this._nodes;R[R.length-1]=k}}t.CodeGen=N;function U(M,k){for(let R in k)M[R]=(M[R]||0)+(k[R]||0);return M}function V(M,k){return k instanceof e._CodeOrName?U(M,k.names):M}function j(M,k,R){if(M instanceof e.Name)return F(M);if(!le(M))return M;return new e._Code(M._items.reduce((ce,Qe)=>(Qe instanceof e.Name&&(Qe=F(Qe)),Qe instanceof e._Code?ce.push(...Qe._items):ce.push(Qe),ce),[]));function F(ce){let Qe=R[ce.str];return Qe===void 0||k[ce.str]!==1?ce:(delete k[ce.str],Qe)}function le(ce){return ce instanceof e._Code&&ce._items.some(Qe=>Qe instanceof e.Name&&k[Qe.str]===1&&R[Qe.str]!==void 0)}}function ae(M,k){for(let R in k)M[R]=(M[R]||0)-(k[R]||0)}function Me(M){return typeof M=="boolean"||typeof M=="number"||M===null?!M:(0,e._)`!${H(M)}`}t.not=Me;var Le=C(t.operators.AND);function kt(...M){return M.reduce(Le)}t.and=kt;var Ge=C(t.operators.OR);function K(...M){return M.reduce(Ge)}t.or=K;function C(M){return(k,R)=>k===e.nil?R:R===e.nil?k:(0,e._)`${H(k)} ${M} ${H(R)}`}function H(M){return M instanceof e.Name?M:(0,e._)`(${M})`}}),ct=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.checkStrictMode=t.getErrorPath=t.Type=t.useFunc=t.setEvaluated=t.evaluatedPropsToName=t.mergeEvaluated=t.eachItem=t.unescapeJsonPointer=t.escapeJsonPointer=t.escapeFragment=t.unescapeFragment=t.schemaRefOrVal=t.schemaHasRulesButRef=t.schemaHasRules=t.checkUnknownRules=t.alwaysValidSchema=t.toHash=void 0;var e=Ze(),r=Bv();function n(w){let E={};for(let T of w)E[T]=!0;return E}t.toHash=n;function i(w,E){return typeof E=="boolean"?E:Object.keys(E).length===0?!0:(s(w,E),!o(E,w.self.RULES.all))}t.alwaysValidSchema=i;function s(w,E=w.schema){let{opts:T,self:I}=w;if(!T.strictSchema||typeof E=="boolean")return;let A=I.RULES.keywords;for(let N in E)A[N]||x(w,`unknown keyword: "${N}"`)}t.checkUnknownRules=s;function o(w,E){if(typeof w=="boolean")return!w;for(let T in w)if(E[T])return!0;return!1}t.schemaHasRules=o;function a(w,E){if(typeof w=="boolean")return!w;for(let T in w)if(T!=="$ref"&&E.all[T])return!0;return!1}t.schemaHasRulesButRef=a;function c({topSchemaRef:w,schemaPath:E},T,I,A){if(!A){if(typeof T=="number"||typeof T=="boolean")return T;if(typeof T=="string")return(0,e._)`${T}`}return(0,e._)`${w}${E}${(0,e.getProperty)(I)}`}t.schemaRefOrVal=c;function u(w){return p(decodeURIComponent(w))}t.unescapeFragment=u;function l(w){return encodeURIComponent(d(w))}t.escapeFragment=l;function d(w){return typeof w=="number"?`${w}`:w.replace(/~/g,"~0").replace(/\//g,"~1")}t.escapeJsonPointer=d;function p(w){return w.replace(/~1/g,"/").replace(/~0/g,"~")}t.unescapeJsonPointer=p;function f(w,E){if(Array.isArray(w))for(let T of w)E(T);else E(w)}t.eachItem=f;function m({mergeNames:w,mergeToName:E,mergeValues:T,resultToName:I}){return(A,N,U,V)=>{let j=U===void 0?N:U instanceof e.Name?(N instanceof e.Name?w(A,N,U):E(A,N,U),U):N instanceof e.Name?(E(A,U,N),N):T(N,U);return V===e.Name&&!(j instanceof e.Name)?I(A,j):j}}t.mergeEvaluated={props:m({mergeNames:(w,E,T)=>w.if((0,e._)`${T} !== true && ${E} !== undefined`,()=>{w.if((0,e._)`${E} === true`,()=>w.assign(T,!0),()=>w.assign(T,(0,e._)`${T} || {}`).code((0,e._)`Object.assign(${T}, ${E})`))}),mergeToName:(w,E,T)=>w.if((0,e._)`${T} !== true`,()=>{E===!0?w.assign(T,!0):(w.assign(T,(0,e._)`${T} || {}`),g(w,T,E))}),mergeValues:(w,E)=>w===!0?!0:{...w,...E},resultToName:h}),items:m({mergeNames:(w,E,T)=>w.if((0,e._)`${T} !== true && ${E} !== undefined`,()=>w.assign(T,(0,e._)`${E} === true ? true : ${T} > ${E} ? ${T} : ${E}`)),mergeToName:(w,E,T)=>w.if((0,e._)`${T} !== true`,()=>w.assign(T,E===!0?!0:(0,e._)`${T} > ${E} ? ${T} : ${E}`)),mergeValues:(w,E)=>w===!0?!0:Math.max(w,E),resultToName:(w,E)=>w.var("items",E)})};function h(w,E){if(E===!0)return w.var("props",!0);let T=w.var("props",(0,e._)`{}`);return E!==void 0&&g(w,T,E),T}t.evaluatedPropsToName=h;function g(w,E,T){Object.keys(T).forEach(I=>w.assign((0,e._)`${E}${(0,e.getProperty)(I)}`,!0))}t.setEvaluated=g;var v={};function y(w,E){return w.scopeValue("func",{ref:E,code:v[E.code]||(v[E.code]=new r._Code(E.code))})}t.useFunc=y;var b;(function(w){w[w.Num=0]="Num",w[w.Str=1]="Str"})(b||(t.Type=b={}));function S(w,E,T){if(w instanceof e.Name){let I=E===b.Num;return T?I?(0,e._)`"[" + ${w} + "]"`:(0,e._)`"['" + ${w} + "']"`:I?(0,e._)`"/" + ${w}`:(0,e._)`"/" + ${w}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return T?(0,e.getProperty)(w).toString():"/"+d(w)}t.getErrorPath=S;function x(w,E,T=w.opts.strictSchema){if(T){if(E=`strict mode: ${E}`,T===!0)throw new Error(E);w.self.logger.warn(E)}}t.checkStrictMode=x}),Po=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r={data:new e.Name("data"),valCxt:new e.Name("valCxt"),instancePath:new e.Name("instancePath"),parentData:new e.Name("parentData"),parentDataProperty:new e.Name("parentDataProperty"),rootData:new e.Name("rootData"),dynamicAnchors:new e.Name("dynamicAnchors"),vErrors:new e.Name("vErrors"),errors:new e.Name("errors"),this:new e.Name("this"),self:new e.Name("self"),scope:new e.Name("scope"),json:new e.Name("json"),jsonPos:new e.Name("jsonPos"),jsonLen:new e.Name("jsonLen"),jsonPart:new e.Name("jsonPart")};t.default=r}),Qv=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.extendErrors=t.resetErrorsCount=t.reportExtraError=t.reportError=t.keyword$DataError=t.keywordError=void 0;var e=Ze(),r=ct(),n=Po();t.keywordError={message:({keyword:g})=>(0,e.str)`must pass "${g}" keyword validation`},t.keyword$DataError={message:({keyword:g,schemaType:v})=>v?(0,e.str)`"${g}" keyword must be ${v} ($data)`:(0,e.str)`"${g}" keyword is invalid ($data)`};function i(g,v=t.keywordError,y,b){let{it:S}=g,{gen:x,compositeRule:w,allErrors:E}=S,T=d(g,v,y);b??(w||E)?c(x,T):u(S,(0,e._)`[${T}]`)}t.reportError=i;function s(g,v=t.keywordError,y){let{it:b}=g,{gen:S,compositeRule:x,allErrors:w}=b,E=d(g,v,y);c(S,E),x||w||u(b,n.default.vErrors)}t.reportExtraError=s;function o(g,v){g.assign(n.default.errors,v),g.if((0,e._)`${n.default.vErrors} !== null`,()=>g.if(v,()=>g.assign((0,e._)`${n.default.vErrors}.length`,v),()=>g.assign(n.default.vErrors,null)))}t.resetErrorsCount=o;function a({gen:g,keyword:v,schemaValue:y,data:b,errsCount:S,it:x}){if(S===void 0)throw new Error("ajv implementation error");let w=g.name("err");g.forRange("i",S,n.default.errors,E=>{g.const(w,(0,e._)`${n.default.vErrors}[${E}]`),g.if((0,e._)`${w}.instancePath === undefined`,()=>g.assign((0,e._)`${w}.instancePath`,(0,e.strConcat)(n.default.instancePath,x.errorPath))),g.assign((0,e._)`${w}.schemaPath`,(0,e.str)`${x.errSchemaPath}/${v}`),x.opts.verbose&&(g.assign((0,e._)`${w}.schema`,y),g.assign((0,e._)`${w}.data`,b))})}t.extendErrors=a;function c(g,v){let y=g.const("err",v);g.if((0,e._)`${n.default.vErrors} === null`,()=>g.assign(n.default.vErrors,(0,e._)`[${y}]`),(0,e._)`${n.default.vErrors}.push(${y})`),g.code((0,e._)`${n.default.errors}++`)}function u(g,v){let{gen:y,validateName:b,schemaEnv:S}=g;S.$async?y.throw((0,e._)`new ${g.ValidationError}(${v})`):(y.assign((0,e._)`${b}.errors`,v),y.return(!1))}var l={keyword:new e.Name("keyword"),schemaPath:new e.Name("schemaPath"),params:new e.Name("params"),propertyName:new e.Name("propertyName"),message:new e.Name("message"),schema:new e.Name("schema"),parentSchema:new e.Name("parentSchema")};function d(g,v,y){let{createErrors:b}=g.it;return b===!1?(0,e._)`{}`:p(g,v,y)}function p(g,v,y={}){let{gen:b,it:S}=g,x=[f(S,y),m(g,y)];return h(g,v,x),b.object(...x)}function f({errorPath:g},{instancePath:v}){let y=v?(0,e.str)`${g}${(0,r.getErrorPath)(v,r.Type.Str)}`:g;return[n.default.instancePath,(0,e.strConcat)(n.default.instancePath,y)]}function m({keyword:g,it:{errSchemaPath:v}},{schemaPath:y,parentSchema:b}){let S=b?v:(0,e.str)`${v}/${g}`;return y&&(S=(0,e.str)`${S}${(0,r.getErrorPath)(y,r.Type.Str)}`),[l.schemaPath,S]}function h(g,{params:v,message:y},b){let{keyword:S,data:x,schemaValue:w,it:E}=g,{opts:T,propertyName:I,topSchemaRef:A,schemaPath:N}=E;b.push([l.keyword,S],[l.params,typeof v=="function"?v(g):v||(0,e._)`{}`]),T.messages&&b.push([l.message,typeof y=="function"?y(g):y]),T.verbose&&b.push([l.schema,w],[l.parentSchema,(0,e._)`${A}${N}`],[n.default.data,x]),I&&b.push([l.propertyName,I])}}),fle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.boolOrEmptySchema=t.topBoolOrEmptySchema=void 0;var e=Qv(),r=Ze(),n=Po(),i={message:"boolean schema is false"};function s(c){let{gen:u,schema:l,validateName:d}=c;l===!1?a(c,!1):typeof l=="object"&&l.$async===!0?u.return(n.default.data):(u.assign((0,r._)`${d}.errors`,null),u.return(!0))}t.topBoolOrEmptySchema=s;function o(c,u){let{gen:l,schema:d}=c;d===!1?(l.var(u,!1),a(c)):l.var(u,!0)}t.boolOrEmptySchema=o;function a(c,u){let{gen:l,data:d}=c,p={gen:l,keyword:"false schema",data:d,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:c};(0,e.reportError)(p,i,void 0,u)}}),FF=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getRules=t.isJSONType=void 0;var e=["string","number","integer","boolean","null","object","array"],r=new Set(e);function n(s){return typeof s=="string"&&r.has(s)}t.isJSONType=n;function i(){let s={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...s,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},s.number,s.string,s.array,s.object],post:{rules:[]},all:{},keywords:{}}}t.getRules=i}),qF=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.shouldUseRule=t.shouldUseGroup=t.schemaHasRulesForType=void 0;function e({schema:i,self:s},o){let a=s.RULES.types[o];return a&&a!==!0&&r(i,a)}t.schemaHasRulesForType=e;function r(i,s){return s.rules.some(o=>n(i,o))}t.shouldUseGroup=r;function n(i,s){var o;return i[s.keyword]!==void 0||((o=s.definition.implements)===null||o===void 0?void 0:o.some(a=>i[a]!==void 0))}t.shouldUseRule=n}),Gv=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.reportTypeError=t.checkDataTypes=t.checkDataType=t.coerceAndCheckDataType=t.getJSONTypes=t.getSchemaTypes=t.DataType=void 0;var e=FF(),r=qF(),n=Qv(),i=Ze(),s=ct(),o;(function(b){b[b.Correct=0]="Correct",b[b.Wrong=1]="Wrong"})(o||(t.DataType=o={}));function a(b){let S=c(b.type);if(S.includes("null")){if(b.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!S.length&&b.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');b.nullable===!0&&S.push("null")}return S}t.getSchemaTypes=a;function c(b){let S=Array.isArray(b)?b:b?[b]:[];if(S.every(e.isJSONType))return S;throw new Error("type must be JSONType or JSONType[]: "+S.join(","))}t.getJSONTypes=c;function u(b,S){let{gen:x,data:w,opts:E}=b,T=d(S,E.coerceTypes),I=S.length>0&&!(T.length===0&&S.length===1&&(0,r.schemaHasRulesForType)(b,S[0]));if(I){let A=h(S,w,E.strictNumbers,o.Wrong);x.if(A,()=>{T.length?p(b,S,T):v(b)})}return I}t.coerceAndCheckDataType=u;var l=new Set(["string","number","integer","boolean","null"]);function d(b,S){return S?b.filter(x=>l.has(x)||S==="array"&&x==="array"):[]}function p(b,S,x){let{gen:w,data:E,opts:T}=b,I=w.let("dataType",(0,i._)`typeof ${E}`),A=w.let("coerced",(0,i._)`undefined`);T.coerceTypes==="array"&&w.if((0,i._)`${I} == 'object' && Array.isArray(${E}) && ${E}.length == 1`,()=>w.assign(E,(0,i._)`${E}[0]`).assign(I,(0,i._)`typeof ${E}`).if(h(S,E,T.strictNumbers),()=>w.assign(A,E))),w.if((0,i._)`${A} !== undefined`);for(let U of x)(l.has(U)||U==="array"&&T.coerceTypes==="array")&&N(U);w.else(),v(b),w.endIf(),w.if((0,i._)`${A} !== undefined`,()=>{w.assign(E,A),f(b,A)});function N(U){switch(U){case"string":w.elseIf((0,i._)`${I} == "number" || ${I} == "boolean"`).assign(A,(0,i._)`"" + ${E}`).elseIf((0,i._)`${E} === null`).assign(A,(0,i._)`""`);return;case"number":w.elseIf((0,i._)`${I} == "boolean" || ${E} === null || (${I} == "string" && ${E} && ${E} == +${E})`).assign(A,(0,i._)`+${E}`);return;case"integer":w.elseIf((0,i._)`${I} === "boolean" || ${E} === null || (${I} === "string" && ${E} && ${E} == +${E} && !(${E} % 1))`).assign(A,(0,i._)`+${E}`);return;case"boolean":w.elseIf((0,i._)`${E} === "false" || ${E} === 0 || ${E} === null`).assign(A,!1).elseIf((0,i._)`${E} === "true" || ${E} === 1`).assign(A,!0);return;case"null":w.elseIf((0,i._)`${E} === "" || ${E} === 0 || ${E} === false`),w.assign(A,null);return;case"array":w.elseIf((0,i._)`${I} === "string" || ${I} === "number" - || ${I} === "boolean" || ${E} === null`).assign(A,(0,i._)`[${E}]`)}}}function f({gen:b,parentData:y,parentDataProperty:x},w){b.if((0,i._)`${y} !== undefined`,()=>b.assign((0,i._)`${y}[${x}]`,w))}function m(b,y,x,w=o.Correct){let E=w===o.Correct?i.operators.EQ:i.operators.NEQ,T;switch(b){case"null":return(0,i._)`${y} ${E} null`;case"array":T=(0,i._)`Array.isArray(${y})`;break;case"object":T=(0,i._)`${y} && typeof ${y} == "object" && !Array.isArray(${y})`;break;case"integer":T=I((0,i._)`!(${y} % 1) && !isNaN(${y})`);break;case"number":T=I();break;default:return(0,i._)`typeof ${y} ${E} ${b}`}return w===o.Correct?T:(0,i.not)(T);function I(A=i.nil){return(0,i.and)((0,i._)`typeof ${y} == "number"`,A,x?(0,i._)`isFinite(${y})`:i.nil)}}t.checkDataType=m;function h(b,y,x,w){if(b.length===1)return m(b[0],y,x,w);let E,T=(0,s.toHash)(b);if(T.array&&T.object){let I=(0,i._)`typeof ${y} != "object"`;E=T.null?I:(0,i._)`!${y} || ${I}`,delete T.null,delete T.array,delete T.object}else E=i.nil;T.number&&delete T.integer;for(let I in T)E=(0,i.and)(E,m(I,y,x,w));return E}t.checkDataTypes=h;var g={message:({schema:b})=>`must be ${b}`,params:({schema:b,schemaValue:y})=>typeof b=="string"?(0,i._)`{type: ${b}}`:(0,i._)`{type: ${y}}`};function v(b){let y=S(b);(0,n.reportError)(y,g)}t.reportTypeError=v;function S(b){let{gen:y,data:x,schema:w}=b,E=(0,s.schemaRefOrVal)(b,w,"type");return{gen:y,keyword:"type",data:x,schema:w.type,schemaCode:E,schemaValue:E,parentSchema:w,params:{},it:b}}}),Wue=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.assignDefaults=void 0;var e=Ze(),r=at();function n(s,o){let{properties:a,items:c}=s.schema;if(o==="object"&&a)for(let u in a)i(s,u,a[u].default);else o==="array"&&Array.isArray(c)&&c.forEach((u,l)=>i(s,l,u.default))}t.assignDefaults=n;function i(s,o,a){let{gen:c,compositeRule:u,data:l,opts:d}=s;if(a===void 0)return;let p=(0,e._)`${l}${(0,e.getProperty)(o)}`;if(u){(0,r.checkStrictMode)(s,`default is ignored for: ${p}`);return}let f=(0,e._)`${p} === undefined`;d.useDefaults==="empty"&&(f=(0,e._)`${f} || ${p} === null || ${p} === ""`),c.if(f,(0,e._)`${p} = ${(0,e.stringify)(a)}`)}}),wi=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateUnion=t.validateArray=t.usePattern=t.callValidateCode=t.schemaProperties=t.allSchemaProperties=t.noPropertyInData=t.propertyInData=t.isOwnProperty=t.hasPropFunc=t.reportMissingProp=t.checkMissingProp=t.checkReportMissingProp=void 0;var e=Ze(),r=at(),n=xo(),i=at();function s(b,y){let{gen:x,data:w,it:E}=b;x.if(d(x,w,y,E.opts.ownProperties),()=>{b.setParams({missingProperty:(0,e._)`${y}`},!0),b.error()})}t.checkReportMissingProp=s;function o({gen:b,data:y,it:{opts:x}},w,E){return(0,e.or)(...w.map(T=>(0,e.and)(d(b,y,T,x.ownProperties),(0,e._)`${E} = ${T}`)))}t.checkMissingProp=o;function a(b,y){b.setParams({missingProperty:y},!0),b.error()}t.reportMissingProp=a;function c(b){return b.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,e._)`Object.prototype.hasOwnProperty`})}t.hasPropFunc=c;function u(b,y,x){return(0,e._)`${c(b)}.call(${y}, ${x})`}t.isOwnProperty=u;function l(b,y,x,w){let E=(0,e._)`${y}${(0,e.getProperty)(x)} !== undefined`;return w?(0,e._)`${E} && ${u(b,y,x)}`:E}t.propertyInData=l;function d(b,y,x,w){let E=(0,e._)`${y}${(0,e.getProperty)(x)} === undefined`;return w?(0,e.or)(E,(0,e.not)(u(b,y,x))):E}t.noPropertyInData=d;function p(b){return b?Object.keys(b).filter(y=>y!=="__proto__"):[]}t.allSchemaProperties=p;function f(b,y){return p(y).filter(x=>!(0,r.alwaysValidSchema)(b,y[x]))}t.schemaProperties=f;function m({schemaCode:b,data:y,it:{gen:x,topSchemaRef:w,schemaPath:E,errorPath:T},it:I},A,N,U){let V=U?(0,e._)`${b}, ${y}, ${w}${E}`:y,j=[[n.default.instancePath,(0,e.strConcat)(n.default.instancePath,T)],[n.default.parentData,I.parentData],[n.default.parentDataProperty,I.parentDataProperty],[n.default.rootData,n.default.rootData]];I.opts.dynamicRef&&j.push([n.default.dynamicAnchors,n.default.dynamicAnchors]);let ae=(0,e._)`${V}, ${x.object(...j)}`;return N!==e.nil?(0,e._)`${A}.call(${N}, ${ae})`:(0,e._)`${A}(${ae})`}t.callValidateCode=m;var h=(0,e._)`new RegExp`;function g({gen:b,it:{opts:y}},x){let w=y.unicodeRegExp?"u":"",{regExp:E}=y.code,T=E(x,w);return b.scopeValue("pattern",{key:T.toString(),ref:T,code:(0,e._)`${E.code==="new RegExp"?h:(0,i.useFunc)(b,E)}(${x}, ${w})`})}t.usePattern=g;function v(b){let{gen:y,data:x,keyword:w,it:E}=b,T=y.name("valid");if(E.allErrors){let A=y.let("valid",!0);return I(()=>y.assign(A,!1)),A}return y.var(T,!0),I(()=>y.break()),T;function I(A){let N=y.const("len",(0,e._)`${x}.length`);y.forRange("i",0,N,U=>{b.subschema({keyword:w,dataProp:U,dataPropType:r.Type.Num},T),y.if((0,e.not)(T),A)})}}t.validateArray=v;function S(b){let{gen:y,schema:x,keyword:w,it:E}=b;if(!Array.isArray(x))throw new Error("ajv implementation error");if(x.some(N=>(0,r.alwaysValidSchema)(E,N))&&!E.opts.unevaluated)return;let I=y.let("valid",!1),A=y.name("_valid");y.block(()=>x.forEach((N,U)=>{let V=b.subschema({keyword:w,schemaProp:U,compositeRule:!0},A);y.assign(I,(0,e._)`${I} || ${A}`),b.mergeValidEvaluated(V,A)||y.if((0,e.not)(I))})),b.result(I,()=>b.reset(),()=>b.error(!0))}t.validateUnion=S}),Vue=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateKeywordUsage=t.validSchemaType=t.funcKeywordCode=t.macroKeywordCode=void 0;var e=Ze(),r=xo(),n=wi(),i=Hv();function s(f,m){let{gen:h,keyword:g,schema:v,parentSchema:S,it:b}=f,y=m.macro.call(b.self,v,S,b),x=l(h,g,y);b.opts.validateSchema!==!1&&b.self.validateSchema(y,!0);let w=h.name("valid");f.subschema({schema:y,schemaPath:e.nil,errSchemaPath:`${b.errSchemaPath}/${g}`,topSchemaRef:x,compositeRule:!0},w),f.pass(w,()=>f.error(!0))}t.macroKeywordCode=s;function o(f,m){var h;let{gen:g,keyword:v,schema:S,parentSchema:b,$data:y,it:x}=f;u(x,m);let w=!y&&m.compile?m.compile.call(x.self,S,b,x):m.validate,E=l(g,v,w),T=g.let("valid");f.block$data(T,I),f.ok((h=m.valid)!==null&&h!==void 0?h:T);function I(){if(m.errors===!1)U(),m.modifying&&a(f),V(()=>f.error());else{let j=m.async?A():N();m.modifying&&a(f),V(()=>c(f,j))}}function A(){let j=g.let("ruleErrs",null);return g.try(()=>U((0,e._)`await `),ae=>g.assign(T,!1).if((0,e._)`${ae} instanceof ${x.ValidationError}`,()=>g.assign(j,(0,e._)`${ae}.errors`),()=>g.throw(ae))),j}function N(){let j=(0,e._)`${E}.errors`;return g.assign(j,null),U(e.nil),j}function U(j=m.async?(0,e._)`await `:e.nil){let ae=x.opts.passContext?r.default.this:r.default.self,Me=!("compile"in m&&!y||m.schema===!1);g.assign(T,(0,e._)`${j}${(0,n.callValidateCode)(f,E,ae,Me)}`,m.modifying)}function V(j){var ae;g.if((0,e.not)((ae=m.valid)!==null&&ae!==void 0?ae:T),j)}}t.funcKeywordCode=o;function a(f){let{gen:m,data:h,it:g}=f;m.if(g.parentData,()=>m.assign(h,(0,e._)`${g.parentData}[${g.parentDataProperty}]`))}function c(f,m){let{gen:h}=f;h.if((0,e._)`Array.isArray(${m})`,()=>{h.assign(r.default.vErrors,(0,e._)`${r.default.vErrors} === null ? ${m} : ${r.default.vErrors}.concat(${m})`).assign(r.default.errors,(0,e._)`${r.default.vErrors}.length`),(0,i.extendErrors)(f)},()=>f.error())}function u({schemaEnv:f},m){if(m.async&&!f.$async)throw new Error("async keyword in sync schema")}function l(f,m,h){if(h===void 0)throw new Error(`keyword "${m}" failed to compile`);return f.scopeValue("keyword",typeof h=="function"?{ref:h}:{ref:h,code:(0,e.stringify)(h)})}function d(f,m,h=!1){return!m.length||m.some(g=>g==="array"?Array.isArray(f):g==="object"?f&&typeof f=="object"&&!Array.isArray(f):typeof f==g||h&&typeof f>"u")}t.validSchemaType=d;function p({schema:f,opts:m,self:h,errSchemaPath:g},v,S){if(Array.isArray(v.keyword)?!v.keyword.includes(S):v.keyword!==S)throw new Error("ajv implementation error");let b=v.dependencies;if(b?.some(y=>!Object.prototype.hasOwnProperty.call(f,y)))throw new Error(`parent schema must have dependencies of ${S}: ${b.join(",")}`);if(v.validateSchema&&!v.validateSchema(f[S])){let x=`keyword "${S}" value is invalid at path "${g}": `+h.errorsText(v.validateSchema.errors);if(m.validateSchema==="log")h.logger.error(x);else throw new Error(x)}}t.validateKeywordUsage=p}),Kue=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.extendSubschemaMode=t.extendSubschemaData=t.getSubschema=void 0;var e=Ze(),r=at();function n(o,{keyword:a,schemaProp:c,schema:u,schemaPath:l,errSchemaPath:d,topSchemaRef:p}){if(a!==void 0&&u!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(a!==void 0){let f=o.schema[a];return c===void 0?{schema:f,schemaPath:(0,e._)`${o.schemaPath}${(0,e.getProperty)(a)}`,errSchemaPath:`${o.errSchemaPath}/${a}`}:{schema:f[c],schemaPath:(0,e._)`${o.schemaPath}${(0,e.getProperty)(a)}${(0,e.getProperty)(c)}`,errSchemaPath:`${o.errSchemaPath}/${a}/${(0,r.escapeFragment)(c)}`}}if(u!==void 0){if(l===void 0||d===void 0||p===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:u,schemaPath:l,topSchemaRef:p,errSchemaPath:d}}throw new Error('either "keyword" or "schema" must be passed')}t.getSubschema=n;function i(o,a,{dataProp:c,dataPropType:u,data:l,dataTypes:d,propertyName:p}){if(l!==void 0&&c!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:f}=a;if(c!==void 0){let{errorPath:h,dataPathArr:g,opts:v}=a,S=f.let("data",(0,e._)`${a.data}${(0,e.getProperty)(c)}`,!0);m(S),o.errorPath=(0,e.str)`${h}${(0,r.getErrorPath)(c,u,v.jsPropertySyntax)}`,o.parentDataProperty=(0,e._)`${c}`,o.dataPathArr=[...g,o.parentDataProperty]}if(l!==void 0){let h=l instanceof e.Name?l:f.let("data",l,!0);m(h),p!==void 0&&(o.propertyName=p)}d&&(o.dataTypes=d);function m(h){o.data=h,o.dataLevel=a.dataLevel+1,o.dataTypes=[],a.definedProperties=new Set,o.parentData=a.data,o.dataNames=[...a.dataNames,h]}}t.extendSubschemaData=i;function s(o,{jtdDiscriminator:a,jtdMetadata:c,compositeRule:u,createErrors:l,allErrors:d}){u!==void 0&&(o.compositeRule=u),l!==void 0&&(o.createErrors=l),d!==void 0&&(o.allErrors=d),o.jtdDiscriminator=a,o.jtdMetadata=c}t.extendSubschemaMode=s}),SF=ne((t,e)=>{e.exports=function r(n,i){if(n===i)return!0;if(n&&i&&typeof n=="object"&&typeof i=="object"){if(n.constructor!==i.constructor)return!1;var s,o,a;if(Array.isArray(n)){if(s=n.length,s!=i.length)return!1;for(o=s;o--!==0;)if(!r(n[o],i[o]))return!1;return!0}if(n.constructor===RegExp)return n.source===i.source&&n.flags===i.flags;if(n.valueOf!==Object.prototype.valueOf)return n.valueOf()===i.valueOf();if(n.toString!==Object.prototype.toString)return n.toString()===i.toString();if(a=Object.keys(n),s=a.length,s!==Object.keys(i).length)return!1;for(o=s;o--!==0;)if(!Object.prototype.hasOwnProperty.call(i,a[o]))return!1;for(o=s;o--!==0;){var c=a[o];if(!r(n[c],i[c]))return!1}return!0}return n!==n&&i!==i}}),Jue=ne((t,e)=>{var r=e.exports=function(s,o,a){typeof o=="function"&&(a=o,o={}),a=o.cb||a;var c=typeof a=="function"?a:a.pre||function(){},u=a.post||function(){};n(o,c,u,s,"",s)};r.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0},r.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0},r.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0},r.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function n(s,o,a,c,u,l,d,p,f,m){if(c&&typeof c=="object"&&!Array.isArray(c)){o(c,u,l,d,p,f,m);for(var h in c){var g=c[h];if(Array.isArray(g)){if(h in r.arrayKeywords)for(var v=0;v{Object.defineProperty(t,"__esModule",{value:!0}),t.getSchemaRefs=t.resolveUrl=t.normalizeId=t._getFullPath=t.getFullPath=t.inlineRef=void 0;var e=at(),r=SF(),n=Jue(),i=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function s(g,v=!0){return typeof g=="boolean"?!0:v===!0?!a(g):v?c(g)<=v:!1}t.inlineRef=s;var o=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function a(g){for(let v in g){if(o.has(v))return!0;let S=g[v];if(Array.isArray(S)&&S.some(a)||typeof S=="object"&&a(S))return!0}return!1}function c(g){let v=0;for(let S in g){if(S==="$ref")return 1/0;if(v++,!i.has(S)&&(typeof g[S]=="object"&&(0,e.eachItem)(g[S],b=>v+=c(b)),v===1/0))return 1/0}return v}function u(g,v="",S){S!==!1&&(v=p(v));let b=g.parse(v);return l(g,b)}t.getFullPath=u;function l(g,v){return g.serialize(v).split("#")[0]+"#"}t._getFullPath=l;var d=/#\/?$/;function p(g){return g?g.replace(d,""):""}t.normalizeId=p;function f(g,v,S){return S=p(S),g.resolve(v,S)}t.resolveUrl=f;var m=/^[a-z_][-a-z0-9._]*$/i;function h(g,v){if(typeof g=="boolean")return{};let{schemaId:S,uriResolver:b}=this.opts,y=p(g[S]||v),x={"":y},w=u(b,y,!1),E={},T=new Set;return n(g,{allKeys:!0},(N,U,V,j)=>{if(j===void 0)return;let ae=w+U,Me=x[j];typeof N[S]=="string"&&(Me=ze.call(this,N[S])),Et.call(this,N.$anchor),Et.call(this,N.$dynamicAnchor),x[U]=Me;function ze(Ge){let K=this.opts.uriResolver.resolve;if(Ge=p(Me?K(Me,Ge):Ge),T.has(Ge))throw A(Ge);T.add(Ge);let C=this.refs[Ge];return typeof C=="string"&&(C=this.refs[C]),typeof C=="object"?I(N,C.schema,Ge):Ge!==p(ae)&&(Ge[0]==="#"?(I(N,E[Ge],Ge),E[Ge]=N):this.refs[Ge]=ae),Ge}function Et(Ge){if(typeof Ge=="string"){if(!m.test(Ge))throw new Error(`invalid anchor "${Ge}"`);ze.call(this,`#${Ge}`)}}}),E;function I(N,U,V){if(U!==void 0&&!r(N,U))throw A(V)}function A(N){return new Error(`reference "${N}" resolves to more than one schema`)}}t.getSchemaRefs=h}),Bv=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getData=t.KeywordCxt=t.validateFunctionCode=void 0;var e=Gue(),r=Dv(),n=bF(),i=Dv(),s=Wue(),o=Vue(),a=Kue(),c=Ze(),u=xo(),l=Zv(),d=at(),p=Hv();function f(P){if(w(P)&&(T(P),x(P))){v(P);return}m(P,()=>(0,e.topBoolOrEmptySchema)(P))}t.validateFunctionCode=f;function m({gen:P,validateName:D,schema:Z,schemaEnv:J,opts:ue},We){ue.code.es5?P.func(D,(0,c._)`${u.default.data}, ${u.default.valCxt}`,J.$async,()=>{P.code((0,c._)`"use strict"; ${b(Z,ue)}`),g(P,ue),P.code(We)}):P.func(D,(0,c._)`${u.default.data}, ${h(ue)}`,J.$async,()=>P.code(b(Z,ue)).code(We))}function h(P){return(0,c._)`{${u.default.instancePath}="", ${u.default.parentData}, ${u.default.parentDataProperty}, ${u.default.rootData}=${u.default.data}${P.dynamicRef?(0,c._)`, ${u.default.dynamicAnchors}={}`:c.nil}}={}`}function g(P,D){P.if(u.default.valCxt,()=>{P.var(u.default.instancePath,(0,c._)`${u.default.valCxt}.${u.default.instancePath}`),P.var(u.default.parentData,(0,c._)`${u.default.valCxt}.${u.default.parentData}`),P.var(u.default.parentDataProperty,(0,c._)`${u.default.valCxt}.${u.default.parentDataProperty}`),P.var(u.default.rootData,(0,c._)`${u.default.valCxt}.${u.default.rootData}`),D.dynamicRef&&P.var(u.default.dynamicAnchors,(0,c._)`${u.default.valCxt}.${u.default.dynamicAnchors}`)},()=>{P.var(u.default.instancePath,(0,c._)`""`),P.var(u.default.parentData,(0,c._)`undefined`),P.var(u.default.parentDataProperty,(0,c._)`undefined`),P.var(u.default.rootData,u.default.data),D.dynamicRef&&P.var(u.default.dynamicAnchors,(0,c._)`{}`)})}function v(P){let{schema:D,opts:Z,gen:J}=P;m(P,()=>{Z.$comment&&D.$comment&&j(P),N(P),J.let(u.default.vErrors,null),J.let(u.default.errors,0),Z.unevaluated&&S(P),I(P),ae(P)})}function S(P){let{gen:D,validateName:Z}=P;P.evaluated=D.const("evaluated",(0,c._)`${Z}.evaluated`),D.if((0,c._)`${P.evaluated}.dynamicProps`,()=>D.assign((0,c._)`${P.evaluated}.props`,(0,c._)`undefined`)),D.if((0,c._)`${P.evaluated}.dynamicItems`,()=>D.assign((0,c._)`${P.evaluated}.items`,(0,c._)`undefined`))}function b(P,D){let Z=typeof P=="object"&&P[D.schemaId];return Z&&(D.code.source||D.code.process)?(0,c._)`/*# sourceURL=${Z} */`:c.nil}function y(P,D){if(w(P)&&(T(P),x(P))){E(P,D);return}(0,e.boolOrEmptySchema)(P,D)}function x({schema:P,self:D}){if(typeof P=="boolean")return!P;for(let Z in P)if(D.RULES.all[Z])return!0;return!1}function w(P){return typeof P.schema!="boolean"}function E(P,D){let{schema:Z,gen:J,opts:ue}=P;ue.$comment&&Z.$comment&&j(P),U(P),V(P);let We=J.const("_errs",u.default.errors);I(P,We),J.var(D,(0,c._)`${We} === ${u.default.errors}`)}function T(P){(0,d.checkUnknownRules)(P),A(P)}function I(P,D){if(P.opts.jtd)return ze(P,[],!1,D);let Z=(0,r.getSchemaTypes)(P.schema),J=(0,r.coerceAndCheckDataType)(P,Z);ze(P,Z,!J,D)}function A(P){let{schema:D,errSchemaPath:Z,opts:J,self:ue}=P;D.$ref&&J.ignoreKeywordsWithRef&&(0,d.schemaHasRulesButRef)(D,ue.RULES)&&ue.logger.warn(`$ref: keywords ignored in schema at path "${Z}"`)}function N(P){let{schema:D,opts:Z}=P;D.default!==void 0&&Z.useDefaults&&Z.strictSchema&&(0,d.checkStrictMode)(P,"default is ignored in the schema root")}function U(P){let D=P.schema[P.opts.schemaId];D&&(P.baseId=(0,l.resolveUrl)(P.opts.uriResolver,P.baseId,D))}function V(P){if(P.schema.$async&&!P.schemaEnv.$async)throw new Error("async schema in sync schema")}function j({gen:P,schemaEnv:D,schema:Z,errSchemaPath:J,opts:ue}){let We=Z.$comment;if(ue.$comment===!0)P.code((0,c._)`${u.default.self}.logger.log(${We})`);else if(typeof ue.$comment=="function"){let gr=(0,c.str)`${J}/$comment`,ri=P.scopeValue("root",{ref:D.root});P.code((0,c._)`${u.default.self}.opts.$comment(${We}, ${gr}, ${ri}.schema)`)}}function ae(P){let{gen:D,schemaEnv:Z,validateName:J,ValidationError:ue,opts:We}=P;Z.$async?D.if((0,c._)`${u.default.errors} === 0`,()=>D.return(u.default.data),()=>D.throw((0,c._)`new ${ue}(${u.default.vErrors})`)):(D.assign((0,c._)`${J}.errors`,u.default.vErrors),We.unevaluated&&Me(P),D.return((0,c._)`${u.default.errors} === 0`))}function Me({gen:P,evaluated:D,props:Z,items:J}){Z instanceof c.Name&&P.assign((0,c._)`${D}.props`,Z),J instanceof c.Name&&P.assign((0,c._)`${D}.items`,J)}function ze(P,D,Z,J){let{gen:ue,schema:We,data:gr,allErrors:ri,opts:nn,self:sn}=P,{RULES:vr}=sn;if(We.$ref&&(nn.ignoreKeywordsWithRef||!(0,d.schemaHasRulesButRef)(We,vr))){ue.block(()=>ce(P,"$ref",vr.all.$ref.definition));return}nn.jtd||Ge(P,D),ue.block(()=>{for(let Nn of vr.rules)Na(Nn);Na(vr.post)});function Na(Nn){(0,n.shouldUseGroup)(We,Nn)&&(Nn.type?(ue.if((0,i.checkDataType)(Nn.type,gr,nn.strictNumbers)),Et(P,Nn),D.length===1&&D[0]===Nn.type&&Z&&(ue.else(),(0,i.reportTypeError)(P)),ue.endIf()):Et(P,Nn),ri||ue.if((0,c._)`${u.default.errors} === ${J||0}`))}}function Et(P,D){let{gen:Z,schema:J,opts:{useDefaults:ue}}=P;ue&&(0,s.assignDefaults)(P,D.type),Z.block(()=>{for(let We of D.rules)(0,n.shouldUseRule)(J,We)&&ce(P,We.keyword,We.definition,D.type)})}function Ge(P,D){P.schemaEnv.meta||!P.opts.strictTypes||(K(P,D),P.opts.allowUnionTypes||C(P,D),H(P,P.dataTypes))}function K(P,D){if(D.length){if(!P.dataTypes.length){P.dataTypes=D;return}D.forEach(Z=>{k(P.dataTypes,Z)||F(P,`type "${Z}" not allowed by context "${P.dataTypes.join(",")}"`)}),R(P,D)}}function C(P,D){D.length>1&&!(D.length===2&&D.includes("null"))&&F(P,"use allowUnionTypes to allow union type keyword")}function H(P,D){let Z=P.self.RULES.all;for(let J in Z){let ue=Z[J];if(typeof ue=="object"&&(0,n.shouldUseRule)(P.schema,ue)){let{type:We}=ue.definition;We.length&&!We.some(gr=>M(D,gr))&&F(P,`missing type "${We.join(",")}" for keyword "${J}"`)}}}function M(P,D){return P.includes(D)||D==="number"&&P.includes("integer")}function k(P,D){return P.includes(D)||D==="integer"&&P.includes("number")}function R(P,D){let Z=[];for(let J of P.dataTypes)k(D,J)?Z.push(J):D.includes("integer")&&J==="number"&&Z.push("integer");P.dataTypes=Z}function F(P,D){let Z=P.schemaEnv.baseId+P.errSchemaPath;D+=` at "${Z}" (strictTypes)`,(0,d.checkStrictMode)(P,D,P.opts.strictTypes)}class le{constructor(D,Z,J){if((0,o.validateKeywordUsage)(D,Z,J),this.gen=D.gen,this.allErrors=D.allErrors,this.keyword=J,this.data=D.data,this.schema=D.schema[J],this.$data=Z.$data&&D.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,d.schemaRefOrVal)(D,this.schema,J,this.$data),this.schemaType=Z.schemaType,this.parentSchema=D.schema,this.params={},this.it=D,this.def=Z,this.$data)this.schemaCode=D.gen.const("vSchema",qt(this.$data,D));else if(this.schemaCode=this.schemaValue,!(0,o.validSchemaType)(this.schema,Z.schemaType,Z.allowUndefined))throw new Error(`${J} value must be ${JSON.stringify(Z.schemaType)}`);("code"in Z?Z.trackErrors:Z.errors!==!1)&&(this.errsCount=D.gen.const("_errs",u.default.errors))}result(D,Z,J){this.failResult((0,c.not)(D),Z,J)}failResult(D,Z,J){this.gen.if(D),J?J():this.error(),Z?(this.gen.else(),Z(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(D,Z){this.failResult((0,c.not)(D),void 0,Z)}fail(D){if(D===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(D),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(D){if(!this.$data)return this.fail(D);let{schemaCode:Z}=this;this.fail((0,c._)`${Z} !== undefined && (${(0,c.or)(this.invalid$data(),D)})`)}error(D,Z,J){if(Z){this.setParams(Z),this._error(D,J),this.setParams({});return}this._error(D,J)}_error(D,Z){(D?p.reportExtraError:p.reportError)(this,this.def.error,Z)}$dataError(){(0,p.reportError)(this,this.def.$dataError||p.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,p.resetErrorsCount)(this.gen,this.errsCount)}ok(D){this.allErrors||this.gen.if(D)}setParams(D,Z){Z?Object.assign(this.params,D):this.params=D}block$data(D,Z,J=c.nil){this.gen.block(()=>{this.check$data(D,J),Z()})}check$data(D=c.nil,Z=c.nil){if(!this.$data)return;let{gen:J,schemaCode:ue,schemaType:We,def:gr}=this;J.if((0,c.or)((0,c._)`${ue} === undefined`,Z)),D!==c.nil&&J.assign(D,!0),(We.length||gr.validateSchema)&&(J.elseIf(this.invalid$data()),this.$dataError(),D!==c.nil&&J.assign(D,!1)),J.else()}invalid$data(){let{gen:D,schemaCode:Z,schemaType:J,def:ue,it:We}=this;return(0,c.or)(gr(),ri());function gr(){if(J.length){if(!(Z instanceof c.Name))throw new Error("ajv implementation error");let nn=Array.isArray(J)?J:[J];return(0,c._)`${(0,i.checkDataTypes)(nn,Z,We.opts.strictNumbers,i.DataType.Wrong)}`}return c.nil}function ri(){if(ue.validateSchema){let nn=D.scopeValue("validate$data",{ref:ue.validateSchema});return(0,c._)`!${nn}(${Z})`}return c.nil}}subschema(D,Z){let J=(0,a.getSubschema)(this.it,D);(0,a.extendSubschemaData)(J,this.it,D),(0,a.extendSubschemaMode)(J,D);let ue={...this.it,...J,items:void 0,props:void 0};return y(ue,Z),ue}mergeEvaluated(D,Z){let{it:J,gen:ue}=this;J.opts.unevaluated&&(J.props!==!0&&D.props!==void 0&&(J.props=d.mergeEvaluated.props(ue,D.props,J.props,Z)),J.items!==!0&&D.items!==void 0&&(J.items=d.mergeEvaluated.items(ue,D.items,J.items,Z)))}mergeValidEvaluated(D,Z){let{it:J,gen:ue}=this;if(J.opts.unevaluated&&(J.props!==!0||J.items!==!0))return ue.if(Z,()=>this.mergeEvaluated(D,c.Name)),!0}}t.KeywordCxt=le;function ce(P,D,Z,J){let ue=new le(P,Z,D);"code"in Z?Z.code(ue,J):ue.$data&&Z.validate?(0,o.funcKeywordCode)(ue,Z):"macro"in Z?(0,o.macroKeywordCode)(ue,Z):(Z.compile||Z.validate)&&(0,o.funcKeywordCode)(ue,Z)}var Qe=/^\/(?:[^~]|~0|~1)*$/,Xe=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function qt(P,{dataLevel:D,dataNames:Z,dataPathArr:J}){let ue,We;if(P==="")return u.default.rootData;if(P[0]==="/"){if(!Qe.test(P))throw new Error(`Invalid JSON-pointer: ${P}`);ue=P,We=u.default.rootData}else{let sn=Xe.exec(P);if(!sn)throw new Error(`Invalid JSON-pointer: ${P}`);let vr=+sn[1];if(ue=sn[2],ue==="#"){if(vr>=D)throw new Error(nn("property/index",vr));return J[D-vr]}if(vr>D)throw new Error(nn("data",vr));if(We=Z[D-vr],!ue)return We}let gr=We,ri=ue.split("/");for(let sn of ri)sn&&(We=(0,c._)`${We}${(0,c.getProperty)((0,d.unescapeJsonPointer)(sn))}`,gr=(0,c._)`${gr} && ${We}`);return gr;function nn(sn,vr){return`Cannot access ${sn} ${vr} levels up, current level is ${D}`}}t.getData=qt}),A$=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});class e extends Error{constructor(n){super("validation failed"),this.errors=n,this.ajv=this.validation=!0}}t.default=e}),Gv=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Zv();class r extends Error{constructor(i,s,o,a){super(a||`can't resolve reference ${o} from id ${s}`),this.missingRef=(0,e.resolveUrl)(i,s,o),this.missingSchema=(0,e.normalizeId)((0,e.getFullPath)(i,this.missingRef))}}t.default=r}),N$=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.resolveSchema=t.getCompilingSchema=t.resolveRef=t.compileSchema=t.SchemaEnv=void 0;var e=Ze(),r=A$(),n=xo(),i=Zv(),s=at(),o=Bv();class a{constructor(S){var b;this.refs={},this.dynamicAnchors={};let y;typeof S.schema=="object"&&(y=S.schema),this.schema=S.schema,this.schemaId=S.schemaId,this.root=S.root||this,this.baseId=(b=S.baseId)!==null&&b!==void 0?b:(0,i.normalizeId)(y?.[S.schemaId||"$id"]),this.schemaPath=S.schemaPath,this.localRefs=S.localRefs,this.meta=S.meta,this.$async=y?.$async,this.refs={}}}t.SchemaEnv=a;function c(v){let S=d.call(this,v);if(S)return S;let b=(0,i.getFullPath)(this.opts.uriResolver,v.root.baseId),{es5:y,lines:x}=this.opts.code,{ownProperties:w}=this.opts,E=new e.CodeGen(this.scope,{es5:y,lines:x,ownProperties:w}),T;v.$async&&(T=E.scopeValue("Error",{ref:r.default,code:(0,e._)`require("ajv/dist/runtime/validation_error").default`}));let I=E.scopeName("validate");v.validateName=I;let A={gen:E,allErrors:this.opts.allErrors,data:n.default.data,parentData:n.default.parentData,parentDataProperty:n.default.parentDataProperty,dataNames:[n.default.data],dataPathArr:[e.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:E.scopeValue("schema",this.opts.code.source===!0?{ref:v.schema,code:(0,e.stringify)(v.schema)}:{ref:v.schema}),validateName:I,ValidationError:T,schema:v.schema,schemaEnv:v,rootId:b,baseId:v.baseId||b,schemaPath:e.nil,errSchemaPath:v.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,e._)`""`,opts:this.opts,self:this},N;try{this._compilations.add(v),(0,o.validateFunctionCode)(A),E.optimize(this.opts.code.optimize);let U=E.toString();N=`${E.scopeRefs(n.default.scope)}return ${U}`,this.opts.code.process&&(N=this.opts.code.process(N,v));let j=new Function(`${n.default.self}`,`${n.default.scope}`,N)(this,this.scope.get());if(this.scope.value(I,{ref:j}),j.errors=null,j.schema=v.schema,j.schemaEnv=v,v.$async&&(j.$async=!0),this.opts.code.source===!0&&(j.source={validateName:I,validateCode:U,scopeValues:E._values}),this.opts.unevaluated){let{props:ae,items:Me}=A;j.evaluated={props:ae instanceof e.Name?void 0:ae,items:Me instanceof e.Name?void 0:Me,dynamicProps:ae instanceof e.Name,dynamicItems:Me instanceof e.Name},j.source&&(j.source.evaluated=(0,e.stringify)(j.evaluated))}return v.validate=j,v}catch(U){throw delete v.validate,delete v.validateName,N&&this.logger.error("Error compiling schema, function code:",N),U}finally{this._compilations.delete(v)}}t.compileSchema=c;function u(v,S,b){var y;b=(0,i.resolveUrl)(this.opts.uriResolver,S,b);let x=v.refs[b];if(x)return x;let w=f.call(this,v,b);if(w===void 0){let E=(y=v.localRefs)===null||y===void 0?void 0:y[b],{schemaId:T}=this.opts;E&&(w=new a({schema:E,schemaId:T,root:v,baseId:S}))}if(w!==void 0)return v.refs[b]=l.call(this,w)}t.resolveRef=u;function l(v){return(0,i.inlineRef)(v.schema,this.opts.inlineRefs)?v.schema:v.validate?v:c.call(this,v)}function d(v){for(let S of this._compilations)if(p(S,v))return S}t.getCompilingSchema=d;function p(v,S){return v.schema===S.schema&&v.root===S.root&&v.baseId===S.baseId}function f(v,S){let b;for(;typeof(b=this.refs[S])=="string";)S=b;return b||this.schemas[S]||m.call(this,v,S)}function m(v,S){let b=this.opts.uriResolver.parse(S),y=(0,i._getFullPath)(this.opts.uriResolver,b),x=(0,i.getFullPath)(this.opts.uriResolver,v.baseId,void 0);if(Object.keys(v.schema).length>0&&y===x)return g.call(this,b,v);let w=(0,i.normalizeId)(y),E=this.refs[w]||this.schemas[w];if(typeof E=="string"){let T=m.call(this,v,E);return typeof T?.schema!="object"?void 0:g.call(this,b,T)}if(typeof E?.schema=="object"){if(E.validate||c.call(this,E),w===(0,i.normalizeId)(S)){let{schema:T}=E,{schemaId:I}=this.opts,A=T[I];return A&&(x=(0,i.resolveUrl)(this.opts.uriResolver,x,A)),new a({schema:T,schemaId:I,root:v,baseId:x})}return g.call(this,b,E)}}t.resolveSchema=m;var h=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function g(v,{baseId:S,schema:b,root:y}){var x;if(((x=v.fragment)===null||x===void 0?void 0:x[0])!=="/")return;for(let T of v.fragment.slice(1).split("/")){if(typeof b=="boolean")return;let I=b[(0,s.unescapeFragment)(T)];if(I===void 0)return;b=I;let A=typeof b=="object"&&b[this.opts.schemaId];!h.has(T)&&A&&(S=(0,i.resolveUrl)(this.opts.uriResolver,S,A))}let w;if(typeof b!="boolean"&&b.$ref&&!(0,s.schemaHasRulesButRef)(b,this.RULES)){let T=(0,i.resolveUrl)(this.opts.uriResolver,S,b.$ref);w=m.call(this,y,T)}let{schemaId:E}=this.opts;if(w=w||new a({schema:b,schemaId:E,root:y,baseId:S}),w.schema!==w.root.schema)return w}}),Xue=ne((t,e)=>{e.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}}),Yue=ne((t,e)=>{var r={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};e.exports={HEX:r}}),Que=ne((t,e)=>{var{HEX:r}=Yue(),n=/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u;function i(v){if(u(v,".")<3)return{host:v,isIPV4:!1};let S=v.match(n)||[],[b]=S;return b?{host:c(b,"."),isIPV4:!0}:{host:v,isIPV4:!1}}function s(v,S=!1){let b="",y=!0;for(let x of v){if(r[x]===void 0)return;x!=="0"&&y===!0&&(y=!1),y||(b+=x)}return S&&b.length===0&&(b="0"),b}function o(v){let S=0,b={error:!1,address:"",zone:""},y=[],x=[],w=!1,E=!1,T=!1;function I(){if(x.length){if(w===!1){let A=s(x);if(A!==void 0)y.push(A);else return b.error=!0,!1}x.length=0}return!0}for(let A=0;A7){b.error=!0;break}A-1>=0&&v[A-1]===":"&&(E=!0);continue}else if(N==="%"){if(!I())break;w=!0}else{x.push(N);continue}}return x.length&&(w?b.zone=x.join(""):T?y.push(x.join("")):y.push(s(x))),b.address=y.join(""),b}function a(v){if(u(v,":")<2)return{host:v,isIPV6:!1};let S=o(v);if(S.error)return{host:v,isIPV6:!1};{let b=S.address,y=S.address;return S.zone&&(b+="%"+S.zone,y+="%25"+S.zone),{host:b,escapedHost:y,isIPV6:!0}}}function c(v,S){let b="",y=!0,x=v.length;for(let w=0;w{var r=/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu,n=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function i(y){return typeof y.secure=="boolean"?y.secure:String(y.scheme).toLowerCase()==="wss"}function s(y){return y.host||(y.error=y.error||"HTTP URIs must have a host."),y}function o(y){let x=String(y.scheme).toLowerCase()==="https";return(y.port===(x?443:80)||y.port==="")&&(y.port=void 0),y.path||(y.path="/"),y}function a(y){return y.secure=i(y),y.resourceName=(y.path||"/")+(y.query?"?"+y.query:""),y.path=void 0,y.query=void 0,y}function c(y){if((y.port===(i(y)?443:80)||y.port==="")&&(y.port=void 0),typeof y.secure=="boolean"&&(y.scheme=y.secure?"wss":"ws",y.secure=void 0),y.resourceName){let[x,w]=y.resourceName.split("?");y.path=x&&x!=="/"?x:void 0,y.query=w,y.resourceName=void 0}return y.fragment=void 0,y}function u(y,x){if(!y.path)return y.error="URN can not be parsed",y;let w=y.path.match(n);if(w){let E=x.scheme||y.scheme||"urn";y.nid=w[1].toLowerCase(),y.nss=w[2];let T=`${E}:${x.nid||y.nid}`,I=b[T];y.path=void 0,I&&(y=I.parse(y,x))}else y.error=y.error||"URN can not be parsed.";return y}function l(y,x){let w=x.scheme||y.scheme||"urn",E=y.nid.toLowerCase(),T=`${w}:${x.nid||E}`,I=b[T];I&&(y=I.serialize(y,x));let A=y,N=y.nss;return A.path=`${E||x.nid}:${N}`,x.skipEscape=!0,A}function d(y,x){let w=y;return w.uuid=w.nss,w.nss=void 0,!x.tolerant&&(!w.uuid||!r.test(w.uuid))&&(w.error=w.error||"UUID is not valid."),w}function p(y){let x=y;return x.nss=(y.uuid||"").toLowerCase(),x}var f={scheme:"http",domainHost:!0,parse:s,serialize:o},m={scheme:"https",domainHost:f.domainHost,parse:s,serialize:o},h={scheme:"ws",domainHost:!0,parse:a,serialize:c},g={scheme:"wss",domainHost:h.domainHost,parse:h.parse,serialize:h.serialize},v={scheme:"urn",parse:u,serialize:l,skipNormalize:!0},S={scheme:"urn:uuid",parse:d,serialize:p,skipNormalize:!0},b={http:f,https:m,ws:h,wss:g,urn:v,"urn:uuid":S};e.exports=b}),tle=ne((t,e)=>{var{normalizeIPv6:r,normalizeIPv4:n,removeDotSegments:i,recomposeAuthority:s,normalizeComponentEncoding:o}=Que(),a=ele();function c(S,b){return typeof S=="string"?S=p(g(S,b),b):typeof S=="object"&&(S=g(p(S,b),b)),S}function u(S,b,y){let x=Object.assign({scheme:"null"},y),w=l(g(S,x),g(b,x),x,!0);return p(w,{...x,skipEscape:!0})}function l(S,b,y,x){let w={};return x||(S=g(p(S,y),y),b=g(p(b,y),y)),y=y||{},!y.tolerant&&b.scheme?(w.scheme=b.scheme,w.userinfo=b.userinfo,w.host=b.host,w.port=b.port,w.path=i(b.path||""),w.query=b.query):(b.userinfo!==void 0||b.host!==void 0||b.port!==void 0?(w.userinfo=b.userinfo,w.host=b.host,w.port=b.port,w.path=i(b.path||""),w.query=b.query):(b.path?(b.path.charAt(0)==="/"?w.path=i(b.path):((S.userinfo!==void 0||S.host!==void 0||S.port!==void 0)&&!S.path?w.path="/"+b.path:S.path?w.path=S.path.slice(0,S.path.lastIndexOf("/")+1)+b.path:w.path=b.path,w.path=i(w.path)),w.query=b.query):(w.path=S.path,b.query!==void 0?w.query=b.query:w.query=S.query),w.userinfo=S.userinfo,w.host=S.host,w.port=S.port),w.scheme=S.scheme),w.fragment=b.fragment,w}function d(S,b,y){return typeof S=="string"?(S=unescape(S),S=p(o(g(S,y),!0),{...y,skipEscape:!0})):typeof S=="object"&&(S=p(o(S,!0),{...y,skipEscape:!0})),typeof b=="string"?(b=unescape(b),b=p(o(g(b,y),!0),{...y,skipEscape:!0})):typeof b=="object"&&(b=p(o(b,!0),{...y,skipEscape:!0})),S.toLowerCase()===b.toLowerCase()}function p(S,b){let y={host:S.host,scheme:S.scheme,userinfo:S.userinfo,port:S.port,path:S.path,query:S.query,nid:S.nid,nss:S.nss,uuid:S.uuid,fragment:S.fragment,reference:S.reference,resourceName:S.resourceName,secure:S.secure,error:""},x=Object.assign({},b),w=[],E=a[(x.scheme||y.scheme||"").toLowerCase()];E&&E.serialize&&E.serialize(y,x),y.path!==void 0&&(x.skipEscape?y.path=unescape(y.path):(y.path=escape(y.path),y.scheme!==void 0&&(y.path=y.path.split("%3A").join(":")))),x.reference!=="suffix"&&y.scheme&&w.push(y.scheme,":");let T=s(y);if(T!==void 0&&(x.reference!=="suffix"&&w.push("//"),w.push(T),y.path&&y.path.charAt(0)!=="/"&&w.push("/")),y.path!==void 0){let I=y.path;!x.absolutePath&&(!E||!E.absolutePath)&&(I=i(I)),T===void 0&&(I=I.replace(/^\/\//u,"/%2F")),w.push(I)}return y.query!==void 0&&w.push("?",y.query),y.fragment!==void 0&&w.push("#",y.fragment),w.join("")}var f=Array.from({length:127},(S,b)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(b)));function m(S){let b=0;for(let y=0,x=S.length;y126||f[b])return!0;return!1}var h=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function g(S,b){let y=Object.assign({},b),x={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},w=S.indexOf("%")!==-1,E=!1;y.reference==="suffix"&&(S=(y.scheme?y.scheme+":":"")+"//"+S);let T=S.match(h);if(T){if(x.scheme=T[1],x.userinfo=T[3],x.host=T[4],x.port=parseInt(T[5],10),x.path=T[6]||"",x.query=T[7],x.fragment=T[8],isNaN(x.port)&&(x.port=T[5]),x.host){let A=n(x.host);if(A.isIPV4===!1){let N=r(A.host);x.host=N.host.toLowerCase(),E=N.isIPV6}else x.host=A.host,E=!0}x.scheme===void 0&&x.userinfo===void 0&&x.host===void 0&&x.port===void 0&&x.query===void 0&&!x.path?x.reference="same-document":x.scheme===void 0?x.reference="relative":x.fragment===void 0?x.reference="absolute":x.reference="uri",y.reference&&y.reference!=="suffix"&&y.reference!==x.reference&&(x.error=x.error||"URI is not a "+y.reference+" reference.");let I=a[(y.scheme||x.scheme||"").toLowerCase()];if(!y.unicodeSupport&&(!I||!I.unicodeSupport)&&x.host&&(y.domainHost||I&&I.domainHost)&&E===!1&&m(x.host))try{x.host=URL.domainToASCII(x.host.toLowerCase())}catch(A){x.error=x.error||"Host's domain name can not be converted to ASCII: "+A}(!I||I&&!I.skipNormalize)&&(w&&x.scheme!==void 0&&(x.scheme=unescape(x.scheme)),w&&x.host!==void 0&&(x.host=unescape(x.host)),x.path&&(x.path=escape(unescape(x.path))),x.fragment&&(x.fragment=encodeURI(decodeURIComponent(x.fragment)))),I&&I.parse&&I.parse(x,y)}else x.error=x.error||"URI can not be parsed.";return x}var v={SCHEMES:a,normalize:c,resolve:u,resolveComponents:l,equal:d,serialize:p,parse:g};e.exports=v,e.exports.default=v,e.exports.fastUri=v}),rle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=tle();e.code='require("ajv/dist/runtime/uri").default',t.default=e}),nle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CodeGen=t.Name=t.nil=t.stringify=t.str=t._=t.KeywordCxt=void 0;var e=Bv();Object.defineProperty(t,"KeywordCxt",{enumerable:!0,get:function(){return e.KeywordCxt}});var r=Ze();Object.defineProperty(t,"_",{enumerable:!0,get:function(){return r._}}),Object.defineProperty(t,"str",{enumerable:!0,get:function(){return r.str}}),Object.defineProperty(t,"stringify",{enumerable:!0,get:function(){return r.stringify}}),Object.defineProperty(t,"nil",{enumerable:!0,get:function(){return r.nil}}),Object.defineProperty(t,"Name",{enumerable:!0,get:function(){return r.Name}}),Object.defineProperty(t,"CodeGen",{enumerable:!0,get:function(){return r.CodeGen}});var n=A$(),i=Gv(),s=_F(),o=N$(),a=Ze(),c=Zv(),u=Dv(),l=at(),d=Xue(),p=rle(),f=(K,C)=>new RegExp(K,C);f.code="new RegExp";var m=["removeAdditional","useDefaults","coerceTypes"],h=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),g={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},v={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},S=200;function b(K){var C,H,M,k,R,F,le,ce,Qe,Xe,qt,P,D,Z,J,ue,We,gr,ri,nn,sn,vr,Na,Nn,p_;let Yu=K.strict,f_=(C=K.code)===null||C===void 0?void 0:C.optimize,YI=f_===!0||f_===void 0?1:f_||0,QI=(M=(H=K.code)===null||H===void 0?void 0:H.regExp)!==null&&M!==void 0?M:f,rH=(k=K.uriResolver)!==null&&k!==void 0?k:p.default;return{strictSchema:(F=(R=K.strictSchema)!==null&&R!==void 0?R:Yu)!==null&&F!==void 0?F:!0,strictNumbers:(ce=(le=K.strictNumbers)!==null&&le!==void 0?le:Yu)!==null&&ce!==void 0?ce:!0,strictTypes:(Xe=(Qe=K.strictTypes)!==null&&Qe!==void 0?Qe:Yu)!==null&&Xe!==void 0?Xe:"log",strictTuples:(P=(qt=K.strictTuples)!==null&&qt!==void 0?qt:Yu)!==null&&P!==void 0?P:"log",strictRequired:(Z=(D=K.strictRequired)!==null&&D!==void 0?D:Yu)!==null&&Z!==void 0?Z:!1,code:K.code?{...K.code,optimize:YI,regExp:QI}:{optimize:YI,regExp:QI},loopRequired:(J=K.loopRequired)!==null&&J!==void 0?J:S,loopEnum:(ue=K.loopEnum)!==null&&ue!==void 0?ue:S,meta:(We=K.meta)!==null&&We!==void 0?We:!0,messages:(gr=K.messages)!==null&&gr!==void 0?gr:!0,inlineRefs:(ri=K.inlineRefs)!==null&&ri!==void 0?ri:!0,schemaId:(nn=K.schemaId)!==null&&nn!==void 0?nn:"$id",addUsedSchema:(sn=K.addUsedSchema)!==null&&sn!==void 0?sn:!0,validateSchema:(vr=K.validateSchema)!==null&&vr!==void 0?vr:!0,validateFormats:(Na=K.validateFormats)!==null&&Na!==void 0?Na:!0,unicodeRegExp:(Nn=K.unicodeRegExp)!==null&&Nn!==void 0?Nn:!0,int32range:(p_=K.int32range)!==null&&p_!==void 0?p_:!0,uriResolver:rH}}class y{constructor(C={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,C=this.opts={...C,...b(C)};let{es5:H,lines:M}=this.opts.code;this.scope=new a.ValueScope({scope:{},prefixes:h,es5:H,lines:M}),this.logger=U(C.logger);let k=C.validateFormats;C.validateFormats=!1,this.RULES=(0,s.getRules)(),x.call(this,g,C,"NOT SUPPORTED"),x.call(this,v,C,"DEPRECATED","warn"),this._metaOpts=A.call(this),C.formats&&T.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),C.keywords&&I.call(this,C.keywords),typeof C.meta=="object"&&this.addMetaSchema(C.meta),E.call(this),C.validateFormats=k}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:C,meta:H,schemaId:M}=this.opts,k=d;M==="id"&&(k={...d},k.id=k.$id,delete k.$id),H&&C&&this.addMetaSchema(k,k[M],!1)}defaultMeta(){let{meta:C,schemaId:H}=this.opts;return this.opts.defaultMeta=typeof C=="object"?C[H]||C:void 0}validate(C,H){let M;if(typeof C=="string"){if(M=this.getSchema(C),!M)throw new Error(`no schema with key or ref "${C}"`)}else M=this.compile(C);let k=M(H);return"$async"in M||(this.errors=M.errors),k}compile(C,H){let M=this._addSchema(C,H);return M.validate||this._compileSchemaEnv(M)}compileAsync(C,H){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:M}=this.opts;return k.call(this,C,H);async function k(Xe,qt){await R.call(this,Xe.$schema);let P=this._addSchema(Xe,qt);return P.validate||F.call(this,P)}async function R(Xe){Xe&&!this.getSchema(Xe)&&await k.call(this,{$ref:Xe},!0)}async function F(Xe){try{return this._compileSchemaEnv(Xe)}catch(qt){if(!(qt instanceof i.default))throw qt;return le.call(this,qt),await ce.call(this,qt.missingSchema),F.call(this,Xe)}}function le({missingSchema:Xe,missingRef:qt}){if(this.refs[Xe])throw new Error(`AnySchema ${Xe} is loaded but ${qt} cannot be resolved`)}async function ce(Xe){let qt=await Qe.call(this,Xe);this.refs[Xe]||await R.call(this,qt.$schema),this.refs[Xe]||this.addSchema(qt,Xe,H)}async function Qe(Xe){let qt=this._loading[Xe];if(qt)return qt;try{return await(this._loading[Xe]=M(Xe))}finally{delete this._loading[Xe]}}}addSchema(C,H,M,k=this.opts.validateSchema){if(Array.isArray(C)){for(let F of C)this.addSchema(F,void 0,M,k);return this}let R;if(typeof C=="object"){let{schemaId:F}=this.opts;if(R=C[F],R!==void 0&&typeof R!="string")throw new Error(`schema ${F} must be string`)}return H=(0,c.normalizeId)(H||R),this._checkUnique(H),this.schemas[H]=this._addSchema(C,M,H,k,!0),this}addMetaSchema(C,H,M=this.opts.validateSchema){return this.addSchema(C,H,!0,M),this}validateSchema(C,H){if(typeof C=="boolean")return!0;let M;if(M=C.$schema,M!==void 0&&typeof M!="string")throw new Error("$schema must be a string");if(M=M||this.opts.defaultMeta||this.defaultMeta(),!M)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let k=this.validate(M,C);if(!k&&H){let R="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(R);else throw new Error(R)}return k}getSchema(C){let H;for(;typeof(H=w.call(this,C))=="string";)C=H;if(H===void 0){let{schemaId:M}=this.opts,k=new o.SchemaEnv({schema:{},schemaId:M});if(H=o.resolveSchema.call(this,k,C),!H)return;this.refs[C]=H}return H.validate||this._compileSchemaEnv(H)}removeSchema(C){if(C instanceof RegExp)return this._removeAllSchemas(this.schemas,C),this._removeAllSchemas(this.refs,C),this;switch(typeof C){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let H=w.call(this,C);return typeof H=="object"&&this._cache.delete(H.schema),delete this.schemas[C],delete this.refs[C],this}case"object":{let H=C;this._cache.delete(H);let M=C[this.opts.schemaId];return M&&(M=(0,c.normalizeId)(M),delete this.schemas[M],delete this.refs[M]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(C){for(let H of C)this.addKeyword(H);return this}addKeyword(C,H){let M;if(typeof C=="string")M=C,typeof H=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),H.keyword=M);else if(typeof C=="object"&&H===void 0){if(H=C,M=H.keyword,Array.isArray(M)&&!M.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(j.call(this,M,H),!H)return(0,l.eachItem)(M,R=>ae.call(this,R)),this;ze.call(this,H);let k={...H,type:(0,u.getJSONTypes)(H.type),schemaType:(0,u.getJSONTypes)(H.schemaType)};return(0,l.eachItem)(M,k.type.length===0?R=>ae.call(this,R,k):R=>k.type.forEach(F=>ae.call(this,R,k,F))),this}getKeyword(C){let H=this.RULES.all[C];return typeof H=="object"?H.definition:!!H}removeKeyword(C){let{RULES:H}=this;delete H.keywords[C],delete H.all[C];for(let M of H.rules){let k=M.rules.findIndex(R=>R.keyword===C);k>=0&&M.rules.splice(k,1)}return this}addFormat(C,H){return typeof H=="string"&&(H=new RegExp(H)),this.formats[C]=H,this}errorsText(C=this.errors,{separator:H=", ",dataVar:M="data"}={}){return!C||C.length===0?"No errors":C.map(k=>`${M}${k.instancePath} ${k.message}`).reduce((k,R)=>k+H+R)}$dataMetaSchema(C,H){let M=this.RULES.all;C=JSON.parse(JSON.stringify(C));for(let k of H){let R=k.split("/").slice(1),F=C;for(let le of R)F=F[le];for(let le in M){let ce=M[le];if(typeof ce!="object")continue;let{$data:Qe}=ce.definition,Xe=F[le];Qe&&Xe&&(F[le]=Ge(Xe))}}return C}_removeAllSchemas(C,H){for(let M in C){let k=C[M];(!H||H.test(M))&&(typeof k=="string"?delete C[M]:k&&!k.meta&&(this._cache.delete(k.schema),delete C[M]))}}_addSchema(C,H,M,k=this.opts.validateSchema,R=this.opts.addUsedSchema){let F,{schemaId:le}=this.opts;if(typeof C=="object")F=C[le];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof C!="boolean")throw new Error("schema must be object or boolean")}let ce=this._cache.get(C);if(ce!==void 0)return ce;M=(0,c.normalizeId)(F||M);let Qe=c.getSchemaRefs.call(this,C,M);return ce=new o.SchemaEnv({schema:C,schemaId:le,meta:H,baseId:M,localRefs:Qe}),this._cache.set(ce.schema,ce),R&&!M.startsWith("#")&&(M&&this._checkUnique(M),this.refs[M]=ce),k&&this.validateSchema(C,!0),ce}_checkUnique(C){if(this.schemas[C]||this.refs[C])throw new Error(`schema with key or id "${C}" already exists`)}_compileSchemaEnv(C){if(C.meta?this._compileMetaSchema(C):o.compileSchema.call(this,C),!C.validate)throw new Error("ajv implementation error");return C.validate}_compileMetaSchema(C){let H=this.opts;this.opts=this._metaOpts;try{o.compileSchema.call(this,C)}finally{this.opts=H}}}y.ValidationError=n.default,y.MissingRefError=i.default,t.default=y;function x(K,C,H,M="error"){for(let k in K){let R=k;R in C&&this.logger[M](`${H}: option ${k}. ${K[R]}`)}}function w(K){return K=(0,c.normalizeId)(K),this.schemas[K]||this.refs[K]}function E(){let K=this.opts.schemas;if(K)if(Array.isArray(K))this.addSchema(K);else for(let C in K)this.addSchema(K[C],C)}function T(){for(let K in this.opts.formats){let C=this.opts.formats[K];C&&this.addFormat(K,C)}}function I(K){if(Array.isArray(K)){this.addVocabulary(K);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let C in K){let H=K[C];H.keyword||(H.keyword=C),this.addKeyword(H)}}function A(){let K={...this.opts};for(let C of m)delete K[C];return K}var N={log(){},warn(){},error(){}};function U(K){if(K===!1)return N;if(K===void 0)return console;if(K.log&&K.warn&&K.error)return K;throw new Error("logger must implement log, warn and error methods")}var V=/^[a-z_$][a-z0-9_$:-]*$/i;function j(K,C){let{RULES:H}=this;if((0,l.eachItem)(K,M=>{if(H.keywords[M])throw new Error(`Keyword ${M} is already defined`);if(!V.test(M))throw new Error(`Keyword ${M} has invalid name`)}),!!C&&C.$data&&!("code"in C||"validate"in C))throw new Error('$data keyword must have "code" or "validate" function')}function ae(K,C,H){var M;let k=C?.post;if(H&&k)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:R}=this,F=k?R.post:R.rules.find(({type:ce})=>ce===H);if(F||(F={type:H,rules:[]},R.rules.push(F)),R.keywords[K]=!0,!C)return;let le={keyword:K,definition:{...C,type:(0,u.getJSONTypes)(C.type),schemaType:(0,u.getJSONTypes)(C.schemaType)}};C.before?Me.call(this,F,le,C.before):F.rules.push(le),R.all[K]=le,(M=C.implements)===null||M===void 0||M.forEach(ce=>this.addKeyword(ce))}function Me(K,C,H){let M=K.rules.findIndex(k=>k.keyword===H);M>=0?K.rules.splice(M,0,C):(K.rules.push(C),this.logger.warn(`rule ${H} is not defined`))}function ze(K){let{metaSchema:C}=K;C!==void 0&&(K.$data&&this.opts.$data&&(C=Ge(C)),K.validateSchema=this.compile(C,!0))}var Et={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Ge(K){return{anyOf:[K,Et]}}}),ile=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};t.default=e}),sle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.callRef=t.getValidate=void 0;var e=Gv(),r=wi(),n=Ze(),i=xo(),s=N$(),o=at(),a={keyword:"$ref",schemaType:"string",code(l){let{gen:d,schema:p,it:f}=l,{baseId:m,schemaEnv:h,validateName:g,opts:v,self:S}=f,{root:b}=h;if((p==="#"||p==="#/")&&m===b.baseId)return x();let y=s.resolveRef.call(S,b,m,p);if(y===void 0)throw new e.default(f.opts.uriResolver,m,p);if(y instanceof s.SchemaEnv)return w(y);return E(y);function x(){if(h===b)return u(l,g,h,h.$async);let T=d.scopeValue("root",{ref:b});return u(l,(0,n._)`${T}.validate`,b,b.$async)}function w(T){let I=c(l,T);u(l,I,T,T.$async)}function E(T){let I=d.scopeValue("schema",v.code.source===!0?{ref:T,code:(0,n.stringify)(T)}:{ref:T}),A=d.name("valid"),N=l.subschema({schema:T,dataTypes:[],schemaPath:n.nil,topSchemaRef:I,errSchemaPath:p},A);l.mergeEvaluated(N),l.ok(A)}}};function c(l,d){let{gen:p}=l;return d.validate?p.scopeValue("validate",{ref:d.validate}):(0,n._)`${p.scopeValue("wrapper",{ref:d})}.validate`}t.getValidate=c;function u(l,d,p,f){let{gen:m,it:h}=l,{allErrors:g,schemaEnv:v,opts:S}=h,b=S.passContext?i.default.this:n.nil;f?y():x();function y(){if(!v.$async)throw new Error("async schema referenced by sync schema");let T=m.let("valid");m.try(()=>{m.code((0,n._)`await ${(0,r.callValidateCode)(l,d,b)}`),E(d),g||m.assign(T,!0)},I=>{m.if((0,n._)`!(${I} instanceof ${h.ValidationError})`,()=>m.throw(I)),w(I),g||m.assign(T,!1)}),l.ok(T)}function x(){l.result((0,r.callValidateCode)(l,d,b),()=>E(d),()=>w(d))}function w(T){let I=(0,n._)`${T}.errors`;m.assign(i.default.vErrors,(0,n._)`${i.default.vErrors} === null ? ${I} : ${i.default.vErrors}.concat(${I})`),m.assign(i.default.errors,(0,n._)`${i.default.vErrors}.length`)}function E(T){var I;if(!h.opts.unevaluated)return;let A=(I=p?.validate)===null||I===void 0?void 0:I.evaluated;if(h.props!==!0)if(A&&!A.dynamicProps)A.props!==void 0&&(h.props=o.mergeEvaluated.props(m,A.props,h.props));else{let N=m.var("props",(0,n._)`${T}.evaluated.props`);h.props=o.mergeEvaluated.props(m,N,h.props,n.Name)}if(h.items!==!0)if(A&&!A.dynamicItems)A.items!==void 0&&(h.items=o.mergeEvaluated.items(m,A.items,h.items));else{let N=m.var("items",(0,n._)`${T}.evaluated.items`);h.items=o.mergeEvaluated.items(m,N,h.items,n.Name)}}}t.callRef=u,t.default=a}),ole=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=ile(),r=sle(),n=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",e.default,r.default];t.default=n}),ale=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=e.operators,n={maximum:{okStr:"<=",ok:r.LTE,fail:r.GT},minimum:{okStr:">=",ok:r.GTE,fail:r.LT},exclusiveMaximum:{okStr:"<",ok:r.LT,fail:r.GTE},exclusiveMinimum:{okStr:">",ok:r.GT,fail:r.LTE}},i={message:({keyword:o,schemaCode:a})=>(0,e.str)`must be ${n[o].okStr} ${a}`,params:({keyword:o,schemaCode:a})=>(0,e._)`{comparison: ${n[o].okStr}, limit: ${a}}`},s={keyword:Object.keys(n),type:"number",schemaType:"number",$data:!0,error:i,code(o){let{keyword:a,data:c,schemaCode:u}=o;o.fail$data((0,e._)`${c} ${n[a].fail} ${u} || isNaN(${c})`)}};t.default=s}),cle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r={message:({schemaCode:i})=>(0,e.str)`must be multiple of ${i}`,params:({schemaCode:i})=>(0,e._)`{multipleOf: ${i}}`},n={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:r,code(i){let{gen:s,data:o,schemaCode:a,it:c}=i,u=c.opts.multipleOfPrecision,l=s.let("res"),d=u?(0,e._)`Math.abs(Math.round(${l}) - ${l}) > 1e-${u}`:(0,e._)`${l} !== parseInt(${l})`;i.fail$data((0,e._)`(${a} === 0 || (${l} = ${o}/${a}, ${d}))`)}};t.default=n}),ule=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});function e(r){let n=r.length,i=0,s=0,o;for(;s=55296&&o<=56319&&s{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=at(),n=ule(),i={message({keyword:o,schemaCode:a}){let c=o==="maxLength"?"more":"fewer";return(0,e.str)`must NOT have ${c} than ${a} characters`},params:({schemaCode:o})=>(0,e._)`{limit: ${o}}`},s={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:i,code(o){let{keyword:a,data:c,schemaCode:u,it:l}=o,d=a==="maxLength"?e.operators.GT:e.operators.LT,p=l.opts.unicode===!1?(0,e._)`${c}.length`:(0,e._)`${(0,r.useFunc)(o.gen,n.default)}(${c})`;o.fail$data((0,e._)`${p} ${d} ${u}`)}};t.default=s}),dle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=wi(),r=Ze(),n={message:({schemaCode:s})=>(0,r.str)`must match pattern "${s}"`,params:({schemaCode:s})=>(0,r._)`{pattern: ${s}}`},i={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:n,code(s){let{data:o,$data:a,schema:c,schemaCode:u,it:l}=s,d=l.opts.unicodeRegExp?"u":"",p=a?(0,r._)`(new RegExp(${u}, ${d}))`:(0,e.usePattern)(s,c);s.fail$data((0,r._)`!${p}.test(${o})`)}};t.default=i}),ple=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r={message({keyword:i,schemaCode:s}){let o=i==="maxProperties"?"more":"fewer";return(0,e.str)`must NOT have ${o} than ${s} properties`},params:({schemaCode:i})=>(0,e._)`{limit: ${i}}`},n={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:r,code(i){let{keyword:s,data:o,schemaCode:a}=i,c=s==="maxProperties"?e.operators.GT:e.operators.LT;i.fail$data((0,e._)`Object.keys(${o}).length ${c} ${a}`)}};t.default=n}),fle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=wi(),r=Ze(),n=at(),i={message:({params:{missingProperty:o}})=>(0,r.str)`must have required property '${o}'`,params:({params:{missingProperty:o}})=>(0,r._)`{missingProperty: ${o}}`},s={keyword:"required",type:"object",schemaType:"array",$data:!0,error:i,code(o){let{gen:a,schema:c,schemaCode:u,data:l,$data:d,it:p}=o,{opts:f}=p;if(!d&&c.length===0)return;let m=c.length>=f.loopRequired;if(p.allErrors?h():g(),f.strictRequired){let b=o.parentSchema.properties,{definedProperties:y}=o.it;for(let x of c)if(b?.[x]===void 0&&!y.has(x)){let w=p.schemaEnv.baseId+p.errSchemaPath,E=`required property "${x}" is not defined at "${w}" (strictRequired)`;(0,n.checkStrictMode)(p,E,p.opts.strictRequired)}}function h(){if(m||d)o.block$data(r.nil,v);else for(let b of c)(0,e.checkReportMissingProp)(o,b)}function g(){let b=a.let("missing");if(m||d){let y=a.let("valid",!0);o.block$data(y,()=>S(b,y)),o.ok(y)}else a.if((0,e.checkMissingProp)(o,c,b)),(0,e.reportMissingProp)(o,b),a.else()}function v(){a.forOf("prop",u,b=>{o.setParams({missingProperty:b}),a.if((0,e.noPropertyInData)(a,l,b,f.ownProperties),()=>o.error())})}function S(b,y){o.setParams({missingProperty:b}),a.forOf(b,u,()=>{a.assign(y,(0,e.propertyInData)(a,l,b,f.ownProperties)),a.if((0,r.not)(y),()=>{o.error(),a.break()})},r.nil)}}};t.default=s}),mle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r={message({keyword:i,schemaCode:s}){let o=i==="maxItems"?"more":"fewer";return(0,e.str)`must NOT have ${o} than ${s} items`},params:({schemaCode:i})=>(0,e._)`{limit: ${i}}`},n={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:r,code(i){let{keyword:s,data:o,schemaCode:a}=i,c=s==="maxItems"?e.operators.GT:e.operators.LT;i.fail$data((0,e._)`${o}.length ${c} ${a}`)}};t.default=n}),M$=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=SF();e.code='require("ajv/dist/runtime/equal").default',t.default=e}),hle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Dv(),r=Ze(),n=at(),i=M$(),s={message:({params:{i:a,j:c}})=>(0,r.str)`must NOT have duplicate items (items ## ${c} and ${a} are identical)`,params:({params:{i:a,j:c}})=>(0,r._)`{i: ${a}, j: ${c}}`},o={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:s,code(a){let{gen:c,data:u,$data:l,schema:d,parentSchema:p,schemaCode:f,it:m}=a;if(!l&&!d)return;let h=c.let("valid"),g=p.items?(0,e.getSchemaTypes)(p.items):[];a.block$data(h,v,(0,r._)`${f} === false`),a.ok(h);function v(){let x=c.let("i",(0,r._)`${u}.length`),w=c.let("j");a.setParams({i:x,j:w}),c.assign(h,!0),c.if((0,r._)`${x} > 1`,()=>(S()?b:y)(x,w))}function S(){return g.length>0&&!g.some(x=>x==="object"||x==="array")}function b(x,w){let E=c.name("item"),T=(0,e.checkDataTypes)(g,E,m.opts.strictNumbers,e.DataType.Wrong),I=c.const("indices",(0,r._)`{}`);c.for((0,r._)`;${x}--;`,()=>{c.let(E,(0,r._)`${u}[${x}]`),c.if(T,(0,r._)`continue`),g.length>1&&c.if((0,r._)`typeof ${E} == "string"`,(0,r._)`${E} += "_"`),c.if((0,r._)`typeof ${I}[${E}] == "number"`,()=>{c.assign(w,(0,r._)`${I}[${E}]`),a.error(),c.assign(h,!1).break()}).code((0,r._)`${I}[${E}] = ${x}`)})}function y(x,w){let E=(0,n.useFunc)(c,i.default),T=c.name("outer");c.label(T).for((0,r._)`;${x}--;`,()=>c.for((0,r._)`${w} = ${x}; ${w}--;`,()=>c.if((0,r._)`${E}(${u}[${x}], ${u}[${w}])`,()=>{a.error(),c.assign(h,!1).break(T)})))}}};t.default=o}),gle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=at(),n=M$(),i={message:"must be equal to constant",params:({schemaCode:o})=>(0,e._)`{allowedValue: ${o}}`},s={keyword:"const",$data:!0,error:i,code(o){let{gen:a,data:c,$data:u,schemaCode:l,schema:d}=o;u||d&&typeof d=="object"?o.fail$data((0,e._)`!${(0,r.useFunc)(a,n.default)}(${c}, ${l})`):o.fail((0,e._)`${d} !== ${c}`)}};t.default=s}),vle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=at(),n=M$(),i={message:"must be equal to one of the allowed values",params:({schemaCode:o})=>(0,e._)`{allowedValues: ${o}}`},s={keyword:"enum",schemaType:"array",$data:!0,error:i,code(o){let{gen:a,data:c,$data:u,schema:l,schemaCode:d,it:p}=o;if(!u&&l.length===0)throw new Error("enum must have non-empty array");let f=l.length>=p.opts.loopEnum,m,h=()=>m??(m=(0,r.useFunc)(a,n.default)),g;if(f||u)g=a.let("valid"),o.block$data(g,v);else{if(!Array.isArray(l))throw new Error("ajv implementation error");let b=a.const("vSchema",d);g=(0,e.or)(...l.map((y,x)=>S(b,x)))}o.pass(g);function v(){a.assign(g,!1),a.forOf("v",d,b=>a.if((0,e._)`${h()}(${c}, ${b})`,()=>a.assign(g,!0).break()))}function S(b,y){let x=l[y];return typeof x=="object"&&x!==null?(0,e._)`${h()}(${c}, ${b}[${y}])`:(0,e._)`${c} === ${x}`}}};t.default=s}),yle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=ale(),r=cle(),n=lle(),i=dle(),s=ple(),o=fle(),a=mle(),c=hle(),u=gle(),l=vle(),d=[e.default,r.default,n.default,i.default,s.default,o.default,a.default,c.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},u.default,l.default];t.default=d}),xF=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateAdditionalItems=void 0;var e=Ze(),r=at(),n={message:({params:{len:o}})=>(0,e.str)`must NOT have more than ${o} items`,params:({params:{len:o}})=>(0,e._)`{limit: ${o}}`},i={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:n,code(o){let{parentSchema:a,it:c}=o,{items:u}=a;if(!Array.isArray(u)){(0,r.checkStrictMode)(c,'"additionalItems" is ignored when "items" is not an array of schemas');return}s(o,u)}};function s(o,a){let{gen:c,schema:u,data:l,keyword:d,it:p}=o;p.items=!0;let f=c.const("len",(0,e._)`${l}.length`);if(u===!1)o.setParams({len:a.length}),o.pass((0,e._)`${f} <= ${a.length}`);else if(typeof u=="object"&&!(0,r.alwaysValidSchema)(p,u)){let h=c.var("valid",(0,e._)`${f} <= ${a.length}`);c.if((0,e.not)(h),()=>m(h)),o.ok(h)}function m(h){c.forRange("i",a.length,f,g=>{o.subschema({keyword:d,dataProp:g,dataPropType:r.Type.Num},h),p.allErrors||c.if((0,e.not)(h),()=>c.break())})}}t.validateAdditionalItems=s,t.default=i}),wF=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateTuple=void 0;var e=Ze(),r=at(),n=wi(),i={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(o){let{schema:a,it:c}=o;if(Array.isArray(a))return s(o,"additionalItems",a);c.items=!0,!(0,r.alwaysValidSchema)(c,a)&&o.ok((0,n.validateArray)(o))}};function s(o,a,c=o.schema){let{gen:u,parentSchema:l,data:d,keyword:p,it:f}=o;g(l),f.opts.unevaluated&&c.length&&f.items!==!0&&(f.items=r.mergeEvaluated.items(u,c.length,f.items));let m=u.name("valid"),h=u.const("len",(0,e._)`${d}.length`);c.forEach((v,S)=>{(0,r.alwaysValidSchema)(f,v)||(u.if((0,e._)`${h} > ${S}`,()=>o.subschema({keyword:p,schemaProp:S,dataProp:S},m)),o.ok(m))});function g(v){let{opts:S,errSchemaPath:b}=f,y=c.length,x=y===v.minItems&&(y===v.maxItems||v[a]===!1);if(S.strictTuples&&!x){let w=`"${p}" is ${y}-tuple, but minItems or maxItems/${a} are not specified or different at path "${b}"`;(0,r.checkStrictMode)(f,w,S.strictTuples)}}}t.validateTuple=s,t.default=i}),_le=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=wF(),r={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:n=>(0,e.validateTuple)(n,"items")};t.default=r}),ble=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=at(),n=wi(),i=xF(),s={message:({params:{len:a}})=>(0,e.str)`must NOT have more than ${a} items`,params:({params:{len:a}})=>(0,e._)`{limit: ${a}}`},o={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:s,code(a){let{schema:c,parentSchema:u,it:l}=a,{prefixItems:d}=u;l.items=!0,!(0,r.alwaysValidSchema)(l,c)&&(d?(0,i.validateAdditionalItems)(a,d):a.ok((0,n.validateArray)(a)))}};t.default=o}),Sle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=at(),n={message:({params:{min:s,max:o}})=>o===void 0?(0,e.str)`must contain at least ${s} valid item(s)`:(0,e.str)`must contain at least ${s} and no more than ${o} valid item(s)`,params:({params:{min:s,max:o}})=>o===void 0?(0,e._)`{minContains: ${s}}`:(0,e._)`{minContains: ${s}, maxContains: ${o}}`},i={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:n,code(s){let{gen:o,schema:a,parentSchema:c,data:u,it:l}=s,d,p,{minContains:f,maxContains:m}=c;l.opts.next?(d=f===void 0?1:f,p=m):d=1;let h=o.const("len",(0,e._)`${u}.length`);if(s.setParams({min:d,max:p}),p===void 0&&d===0){(0,r.checkStrictMode)(l,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(p!==void 0&&d>p){(0,r.checkStrictMode)(l,'"minContains" > "maxContains" is always invalid'),s.fail();return}if((0,r.alwaysValidSchema)(l,a)){let y=(0,e._)`${h} >= ${d}`;p!==void 0&&(y=(0,e._)`${y} && ${h} <= ${p}`),s.pass(y);return}l.items=!0;let g=o.name("valid");p===void 0&&d===1?S(g,()=>o.if(g,()=>o.break())):d===0?(o.let(g,!0),p!==void 0&&o.if((0,e._)`${u}.length > 0`,v)):(o.let(g,!1),v()),s.result(g,()=>s.reset());function v(){let y=o.name("_valid"),x=o.let("count",0);S(y,()=>o.if(y,()=>b(x)))}function S(y,x){o.forRange("i",0,h,w=>{s.subschema({keyword:"contains",dataProp:w,dataPropType:r.Type.Num,compositeRule:!0},y),x()})}function b(y){o.code((0,e._)`${y}++`),p===void 0?o.if((0,e._)`${y} >= ${d}`,()=>o.assign(g,!0).break()):(o.if((0,e._)`${y} > ${p}`,()=>o.assign(g,!1).break()),d===1?o.assign(g,!0):o.if((0,e._)`${y} >= ${d}`,()=>o.assign(g,!0)))}}};t.default=i}),xle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateSchemaDeps=t.validatePropertyDeps=t.error=void 0;var e=Ze(),r=at(),n=wi();t.error={message:({params:{property:c,depsCount:u,deps:l}})=>{let d=u===1?"property":"properties";return(0,e.str)`must have ${d} ${l} when property ${c} is present`},params:({params:{property:c,depsCount:u,deps:l,missingProperty:d}})=>(0,e._)`{property: ${c}, + || ${I} === "boolean" || ${E} === null`).assign(A,(0,i._)`[${E}]`)}}}function f({gen:b,parentData:S,parentDataProperty:x},w){b.if((0,i._)`${S} !== undefined`,()=>b.assign((0,i._)`${S}[${x}]`,w))}function m(b,S,x,w=o.Correct){let E=w===o.Correct?i.operators.EQ:i.operators.NEQ,T;switch(b){case"null":return(0,i._)`${S} ${E} null`;case"array":T=(0,i._)`Array.isArray(${S})`;break;case"object":T=(0,i._)`${S} && typeof ${S} == "object" && !Array.isArray(${S})`;break;case"integer":T=I((0,i._)`!(${S} % 1) && !isNaN(${S})`);break;case"number":T=I();break;default:return(0,i._)`typeof ${S} ${E} ${b}`}return w===o.Correct?T:(0,i.not)(T);function I(A=i.nil){return(0,i.and)((0,i._)`typeof ${S} == "number"`,A,x?(0,i._)`isFinite(${S})`:i.nil)}}t.checkDataType=m;function h(b,S,x,w){if(b.length===1)return m(b[0],S,x,w);let E,T=(0,s.toHash)(b);if(T.array&&T.object){let I=(0,i._)`typeof ${S} != "object"`;E=T.null?I:(0,i._)`!${S} || ${I}`,delete T.null,delete T.array,delete T.object}else E=i.nil;T.number&&delete T.integer;for(let I in T)E=(0,i.and)(E,m(I,S,x,w));return E}t.checkDataTypes=h;var g={message:({schema:b})=>`must be ${b}`,params:({schema:b,schemaValue:S})=>typeof b=="string"?(0,i._)`{type: ${b}}`:(0,i._)`{type: ${S}}`};function v(b){let S=y(b);(0,n.reportError)(S,g)}t.reportTypeError=v;function y(b){let{gen:S,data:x,schema:w}=b,E=(0,s.schemaRefOrVal)(b,w,"type");return{gen:S,keyword:"type",data:x,schema:w.type,schemaCode:E,schemaValue:E,parentSchema:w,params:{},it:b}}}),mle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.assignDefaults=void 0;var e=Ze(),r=ct();function n(s,o){let{properties:a,items:c}=s.schema;if(o==="object"&&a)for(let u in a)i(s,u,a[u].default);else o==="array"&&Array.isArray(c)&&c.forEach((u,l)=>i(s,l,u.default))}t.assignDefaults=n;function i(s,o,a){let{gen:c,compositeRule:u,data:l,opts:d}=s;if(a===void 0)return;let p=(0,e._)`${l}${(0,e.getProperty)(o)}`;if(u){(0,r.checkStrictMode)(s,`default is ignored for: ${p}`);return}let f=(0,e._)`${p} === undefined`;d.useDefaults==="empty"&&(f=(0,e._)`${f} || ${p} === null || ${p} === ""`),c.if(f,(0,e._)`${p} = ${(0,e.stringify)(a)}`)}}),$i=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateUnion=t.validateArray=t.usePattern=t.callValidateCode=t.schemaProperties=t.allSchemaProperties=t.noPropertyInData=t.propertyInData=t.isOwnProperty=t.hasPropFunc=t.reportMissingProp=t.checkMissingProp=t.checkReportMissingProp=void 0;var e=Ze(),r=ct(),n=Po(),i=ct();function s(b,S){let{gen:x,data:w,it:E}=b;x.if(d(x,w,S,E.opts.ownProperties),()=>{b.setParams({missingProperty:(0,e._)`${S}`},!0),b.error()})}t.checkReportMissingProp=s;function o({gen:b,data:S,it:{opts:x}},w,E){return(0,e.or)(...w.map(T=>(0,e.and)(d(b,S,T,x.ownProperties),(0,e._)`${E} = ${T}`)))}t.checkMissingProp=o;function a(b,S){b.setParams({missingProperty:S},!0),b.error()}t.reportMissingProp=a;function c(b){return b.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,e._)`Object.prototype.hasOwnProperty`})}t.hasPropFunc=c;function u(b,S,x){return(0,e._)`${c(b)}.call(${S}, ${x})`}t.isOwnProperty=u;function l(b,S,x,w){let E=(0,e._)`${S}${(0,e.getProperty)(x)} !== undefined`;return w?(0,e._)`${E} && ${u(b,S,x)}`:E}t.propertyInData=l;function d(b,S,x,w){let E=(0,e._)`${S}${(0,e.getProperty)(x)} === undefined`;return w?(0,e.or)(E,(0,e.not)(u(b,S,x))):E}t.noPropertyInData=d;function p(b){return b?Object.keys(b).filter(S=>S!=="__proto__"):[]}t.allSchemaProperties=p;function f(b,S){return p(S).filter(x=>!(0,r.alwaysValidSchema)(b,S[x]))}t.schemaProperties=f;function m({schemaCode:b,data:S,it:{gen:x,topSchemaRef:w,schemaPath:E,errorPath:T},it:I},A,N,U){let V=U?(0,e._)`${b}, ${S}, ${w}${E}`:S,j=[[n.default.instancePath,(0,e.strConcat)(n.default.instancePath,T)],[n.default.parentData,I.parentData],[n.default.parentDataProperty,I.parentDataProperty],[n.default.rootData,n.default.rootData]];I.opts.dynamicRef&&j.push([n.default.dynamicAnchors,n.default.dynamicAnchors]);let ae=(0,e._)`${V}, ${x.object(...j)}`;return N!==e.nil?(0,e._)`${A}.call(${N}, ${ae})`:(0,e._)`${A}(${ae})`}t.callValidateCode=m;var h=(0,e._)`new RegExp`;function g({gen:b,it:{opts:S}},x){let w=S.unicodeRegExp?"u":"",{regExp:E}=S.code,T=E(x,w);return b.scopeValue("pattern",{key:T.toString(),ref:T,code:(0,e._)`${E.code==="new RegExp"?h:(0,i.useFunc)(b,E)}(${x}, ${w})`})}t.usePattern=g;function v(b){let{gen:S,data:x,keyword:w,it:E}=b,T=S.name("valid");if(E.allErrors){let A=S.let("valid",!0);return I(()=>S.assign(A,!1)),A}return S.var(T,!0),I(()=>S.break()),T;function I(A){let N=S.const("len",(0,e._)`${x}.length`);S.forRange("i",0,N,U=>{b.subschema({keyword:w,dataProp:U,dataPropType:r.Type.Num},T),S.if((0,e.not)(T),A)})}}t.validateArray=v;function y(b){let{gen:S,schema:x,keyword:w,it:E}=b;if(!Array.isArray(x))throw new Error("ajv implementation error");if(x.some(N=>(0,r.alwaysValidSchema)(E,N))&&!E.opts.unevaluated)return;let I=S.let("valid",!1),A=S.name("_valid");S.block(()=>x.forEach((N,U)=>{let V=b.subschema({keyword:w,schemaProp:U,compositeRule:!0},A);S.assign(I,(0,e._)`${I} || ${A}`),b.mergeValidEvaluated(V,A)||S.if((0,e.not)(I))})),b.result(I,()=>b.reset(),()=>b.error(!0))}t.validateUnion=y}),hle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateKeywordUsage=t.validSchemaType=t.funcKeywordCode=t.macroKeywordCode=void 0;var e=Ze(),r=Po(),n=$i(),i=Qv();function s(f,m){let{gen:h,keyword:g,schema:v,parentSchema:y,it:b}=f,S=m.macro.call(b.self,v,y,b),x=l(h,g,S);b.opts.validateSchema!==!1&&b.self.validateSchema(S,!0);let w=h.name("valid");f.subschema({schema:S,schemaPath:e.nil,errSchemaPath:`${b.errSchemaPath}/${g}`,topSchemaRef:x,compositeRule:!0},w),f.pass(w,()=>f.error(!0))}t.macroKeywordCode=s;function o(f,m){var h;let{gen:g,keyword:v,schema:y,parentSchema:b,$data:S,it:x}=f;u(x,m);let w=!S&&m.compile?m.compile.call(x.self,y,b,x):m.validate,E=l(g,v,w),T=g.let("valid");f.block$data(T,I),f.ok((h=m.valid)!==null&&h!==void 0?h:T);function I(){if(m.errors===!1)U(),m.modifying&&a(f),V(()=>f.error());else{let j=m.async?A():N();m.modifying&&a(f),V(()=>c(f,j))}}function A(){let j=g.let("ruleErrs",null);return g.try(()=>U((0,e._)`await `),ae=>g.assign(T,!1).if((0,e._)`${ae} instanceof ${x.ValidationError}`,()=>g.assign(j,(0,e._)`${ae}.errors`),()=>g.throw(ae))),j}function N(){let j=(0,e._)`${E}.errors`;return g.assign(j,null),U(e.nil),j}function U(j=m.async?(0,e._)`await `:e.nil){let ae=x.opts.passContext?r.default.this:r.default.self,Me=!("compile"in m&&!S||m.schema===!1);g.assign(T,(0,e._)`${j}${(0,n.callValidateCode)(f,E,ae,Me)}`,m.modifying)}function V(j){var ae;g.if((0,e.not)((ae=m.valid)!==null&&ae!==void 0?ae:T),j)}}t.funcKeywordCode=o;function a(f){let{gen:m,data:h,it:g}=f;m.if(g.parentData,()=>m.assign(h,(0,e._)`${g.parentData}[${g.parentDataProperty}]`))}function c(f,m){let{gen:h}=f;h.if((0,e._)`Array.isArray(${m})`,()=>{h.assign(r.default.vErrors,(0,e._)`${r.default.vErrors} === null ? ${m} : ${r.default.vErrors}.concat(${m})`).assign(r.default.errors,(0,e._)`${r.default.vErrors}.length`),(0,i.extendErrors)(f)},()=>f.error())}function u({schemaEnv:f},m){if(m.async&&!f.$async)throw new Error("async keyword in sync schema")}function l(f,m,h){if(h===void 0)throw new Error(`keyword "${m}" failed to compile`);return f.scopeValue("keyword",typeof h=="function"?{ref:h}:{ref:h,code:(0,e.stringify)(h)})}function d(f,m,h=!1){return!m.length||m.some(g=>g==="array"?Array.isArray(f):g==="object"?f&&typeof f=="object"&&!Array.isArray(f):typeof f==g||h&&typeof f>"u")}t.validSchemaType=d;function p({schema:f,opts:m,self:h,errSchemaPath:g},v,y){if(Array.isArray(v.keyword)?!v.keyword.includes(y):v.keyword!==y)throw new Error("ajv implementation error");let b=v.dependencies;if(b?.some(S=>!Object.prototype.hasOwnProperty.call(f,S)))throw new Error(`parent schema must have dependencies of ${y}: ${b.join(",")}`);if(v.validateSchema&&!v.validateSchema(f[y])){let x=`keyword "${y}" value is invalid at path "${g}": `+h.errorsText(v.validateSchema.errors);if(m.validateSchema==="log")h.logger.error(x);else throw new Error(x)}}t.validateKeywordUsage=p}),gle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.extendSubschemaMode=t.extendSubschemaData=t.getSubschema=void 0;var e=Ze(),r=ct();function n(o,{keyword:a,schemaProp:c,schema:u,schemaPath:l,errSchemaPath:d,topSchemaRef:p}){if(a!==void 0&&u!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(a!==void 0){let f=o.schema[a];return c===void 0?{schema:f,schemaPath:(0,e._)`${o.schemaPath}${(0,e.getProperty)(a)}`,errSchemaPath:`${o.errSchemaPath}/${a}`}:{schema:f[c],schemaPath:(0,e._)`${o.schemaPath}${(0,e.getProperty)(a)}${(0,e.getProperty)(c)}`,errSchemaPath:`${o.errSchemaPath}/${a}/${(0,r.escapeFragment)(c)}`}}if(u!==void 0){if(l===void 0||d===void 0||p===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:u,schemaPath:l,topSchemaRef:p,errSchemaPath:d}}throw new Error('either "keyword" or "schema" must be passed')}t.getSubschema=n;function i(o,a,{dataProp:c,dataPropType:u,data:l,dataTypes:d,propertyName:p}){if(l!==void 0&&c!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:f}=a;if(c!==void 0){let{errorPath:h,dataPathArr:g,opts:v}=a,y=f.let("data",(0,e._)`${a.data}${(0,e.getProperty)(c)}`,!0);m(y),o.errorPath=(0,e.str)`${h}${(0,r.getErrorPath)(c,u,v.jsPropertySyntax)}`,o.parentDataProperty=(0,e._)`${c}`,o.dataPathArr=[...g,o.parentDataProperty]}if(l!==void 0){let h=l instanceof e.Name?l:f.let("data",l,!0);m(h),p!==void 0&&(o.propertyName=p)}d&&(o.dataTypes=d);function m(h){o.data=h,o.dataLevel=a.dataLevel+1,o.dataTypes=[],a.definedProperties=new Set,o.parentData=a.data,o.dataNames=[...a.dataNames,h]}}t.extendSubschemaData=i;function s(o,{jtdDiscriminator:a,jtdMetadata:c,compositeRule:u,createErrors:l,allErrors:d}){u!==void 0&&(o.compositeRule=u),l!==void 0&&(o.createErrors=l),d!==void 0&&(o.allErrors=d),o.jtdDiscriminator=a,o.jtdMetadata=c}t.extendSubschemaMode=s}),HF=ne((t,e)=>{e.exports=function r(n,i){if(n===i)return!0;if(n&&i&&typeof n=="object"&&typeof i=="object"){if(n.constructor!==i.constructor)return!1;var s,o,a;if(Array.isArray(n)){if(s=n.length,s!=i.length)return!1;for(o=s;o--!==0;)if(!r(n[o],i[o]))return!1;return!0}if(n.constructor===RegExp)return n.source===i.source&&n.flags===i.flags;if(n.valueOf!==Object.prototype.valueOf)return n.valueOf()===i.valueOf();if(n.toString!==Object.prototype.toString)return n.toString()===i.toString();if(a=Object.keys(n),s=a.length,s!==Object.keys(i).length)return!1;for(o=s;o--!==0;)if(!Object.prototype.hasOwnProperty.call(i,a[o]))return!1;for(o=s;o--!==0;){var c=a[o];if(!r(n[c],i[c]))return!1}return!0}return n!==n&&i!==i}}),vle=ne((t,e)=>{var r=e.exports=function(s,o,a){typeof o=="function"&&(a=o,o={}),a=o.cb||a;var c=typeof a=="function"?a:a.pre||function(){},u=a.post||function(){};n(o,c,u,s,"",s)};r.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0},r.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0},r.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0},r.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function n(s,o,a,c,u,l,d,p,f,m){if(c&&typeof c=="object"&&!Array.isArray(c)){o(c,u,l,d,p,f,m);for(var h in c){var g=c[h];if(Array.isArray(g)){if(h in r.arrayKeywords)for(var v=0;v{Object.defineProperty(t,"__esModule",{value:!0}),t.getSchemaRefs=t.resolveUrl=t.normalizeId=t._getFullPath=t.getFullPath=t.inlineRef=void 0;var e=ct(),r=HF(),n=vle(),i=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function s(g,v=!0){return typeof g=="boolean"?!0:v===!0?!a(g):v?c(g)<=v:!1}t.inlineRef=s;var o=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function a(g){for(let v in g){if(o.has(v))return!0;let y=g[v];if(Array.isArray(y)&&y.some(a)||typeof y=="object"&&a(y))return!0}return!1}function c(g){let v=0;for(let y in g){if(y==="$ref")return 1/0;if(v++,!i.has(y)&&(typeof g[y]=="object"&&(0,e.eachItem)(g[y],b=>v+=c(b)),v===1/0))return 1/0}return v}function u(g,v="",y){y!==!1&&(v=p(v));let b=g.parse(v);return l(g,b)}t.getFullPath=u;function l(g,v){return g.serialize(v).split("#")[0]+"#"}t._getFullPath=l;var d=/#\/?$/;function p(g){return g?g.replace(d,""):""}t.normalizeId=p;function f(g,v,y){return y=p(y),g.resolve(v,y)}t.resolveUrl=f;var m=/^[a-z_][-a-z0-9._]*$/i;function h(g,v){if(typeof g=="boolean")return{};let{schemaId:y,uriResolver:b}=this.opts,S=p(g[y]||v),x={"":S},w=u(b,S,!1),E={},T=new Set;return n(g,{allKeys:!0},(N,U,V,j)=>{if(j===void 0)return;let ae=w+U,Me=x[j];typeof N[y]=="string"&&(Me=Le.call(this,N[y])),kt.call(this,N.$anchor),kt.call(this,N.$dynamicAnchor),x[U]=Me;function Le(Ge){let K=this.opts.uriResolver.resolve;if(Ge=p(Me?K(Me,Ge):Ge),T.has(Ge))throw A(Ge);T.add(Ge);let C=this.refs[Ge];return typeof C=="string"&&(C=this.refs[C]),typeof C=="object"?I(N,C.schema,Ge):Ge!==p(ae)&&(Ge[0]==="#"?(I(N,E[Ge],Ge),E[Ge]=N):this.refs[Ge]=ae),Ge}function kt(Ge){if(typeof Ge=="string"){if(!m.test(Ge))throw new Error(`invalid anchor "${Ge}"`);Le.call(this,`#${Ge}`)}}}),E;function I(N,U,V){if(U!==void 0&&!r(N,U))throw A(V)}function A(N){return new Error(`reference "${N}" resolves to more than one schema`)}}t.getSchemaRefs=h}),ty=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getData=t.KeywordCxt=t.validateFunctionCode=void 0;var e=fle(),r=Gv(),n=qF(),i=Gv(),s=mle(),o=hle(),a=gle(),c=Ze(),u=Po(),l=ey(),d=ct(),p=Qv();function f(P){if(w(P)&&(T(P),x(P))){v(P);return}m(P,()=>(0,e.topBoolOrEmptySchema)(P))}t.validateFunctionCode=f;function m({gen:P,validateName:D,schema:Z,schemaEnv:J,opts:ue},We){ue.code.es5?P.func(D,(0,c._)`${u.default.data}, ${u.default.valCxt}`,J.$async,()=>{P.code((0,c._)`"use strict"; ${b(Z,ue)}`),g(P,ue),P.code(We)}):P.func(D,(0,c._)`${u.default.data}, ${h(ue)}`,J.$async,()=>P.code(b(Z,ue)).code(We))}function h(P){return(0,c._)`{${u.default.instancePath}="", ${u.default.parentData}, ${u.default.parentDataProperty}, ${u.default.rootData}=${u.default.data}${P.dynamicRef?(0,c._)`, ${u.default.dynamicAnchors}={}`:c.nil}}={}`}function g(P,D){P.if(u.default.valCxt,()=>{P.var(u.default.instancePath,(0,c._)`${u.default.valCxt}.${u.default.instancePath}`),P.var(u.default.parentData,(0,c._)`${u.default.valCxt}.${u.default.parentData}`),P.var(u.default.parentDataProperty,(0,c._)`${u.default.valCxt}.${u.default.parentDataProperty}`),P.var(u.default.rootData,(0,c._)`${u.default.valCxt}.${u.default.rootData}`),D.dynamicRef&&P.var(u.default.dynamicAnchors,(0,c._)`${u.default.valCxt}.${u.default.dynamicAnchors}`)},()=>{P.var(u.default.instancePath,(0,c._)`""`),P.var(u.default.parentData,(0,c._)`undefined`),P.var(u.default.parentDataProperty,(0,c._)`undefined`),P.var(u.default.rootData,u.default.data),D.dynamicRef&&P.var(u.default.dynamicAnchors,(0,c._)`{}`)})}function v(P){let{schema:D,opts:Z,gen:J}=P;m(P,()=>{Z.$comment&&D.$comment&&j(P),N(P),J.let(u.default.vErrors,null),J.let(u.default.errors,0),Z.unevaluated&&y(P),I(P),ae(P)})}function y(P){let{gen:D,validateName:Z}=P;P.evaluated=D.const("evaluated",(0,c._)`${Z}.evaluated`),D.if((0,c._)`${P.evaluated}.dynamicProps`,()=>D.assign((0,c._)`${P.evaluated}.props`,(0,c._)`undefined`)),D.if((0,c._)`${P.evaluated}.dynamicItems`,()=>D.assign((0,c._)`${P.evaluated}.items`,(0,c._)`undefined`))}function b(P,D){let Z=typeof P=="object"&&P[D.schemaId];return Z&&(D.code.source||D.code.process)?(0,c._)`/*# sourceURL=${Z} */`:c.nil}function S(P,D){if(w(P)&&(T(P),x(P))){E(P,D);return}(0,e.boolOrEmptySchema)(P,D)}function x({schema:P,self:D}){if(typeof P=="boolean")return!P;for(let Z in P)if(D.RULES.all[Z])return!0;return!1}function w(P){return typeof P.schema!="boolean"}function E(P,D){let{schema:Z,gen:J,opts:ue}=P;ue.$comment&&Z.$comment&&j(P),U(P),V(P);let We=J.const("_errs",u.default.errors);I(P,We),J.var(D,(0,c._)`${We} === ${u.default.errors}`)}function T(P){(0,d.checkUnknownRules)(P),A(P)}function I(P,D){if(P.opts.jtd)return Le(P,[],!1,D);let Z=(0,r.getSchemaTypes)(P.schema),J=(0,r.coerceAndCheckDataType)(P,Z);Le(P,Z,!J,D)}function A(P){let{schema:D,errSchemaPath:Z,opts:J,self:ue}=P;D.$ref&&J.ignoreKeywordsWithRef&&(0,d.schemaHasRulesButRef)(D,ue.RULES)&&ue.logger.warn(`$ref: keywords ignored in schema at path "${Z}"`)}function N(P){let{schema:D,opts:Z}=P;D.default!==void 0&&Z.useDefaults&&Z.strictSchema&&(0,d.checkStrictMode)(P,"default is ignored in the schema root")}function U(P){let D=P.schema[P.opts.schemaId];D&&(P.baseId=(0,l.resolveUrl)(P.opts.uriResolver,P.baseId,D))}function V(P){if(P.schema.$async&&!P.schemaEnv.$async)throw new Error("async schema in sync schema")}function j({gen:P,schemaEnv:D,schema:Z,errSchemaPath:J,opts:ue}){let We=Z.$comment;if(ue.$comment===!0)P.code((0,c._)`${u.default.self}.logger.log(${We})`);else if(typeof ue.$comment=="function"){let _r=(0,c.str)`${J}/$comment`,oi=P.scopeValue("root",{ref:D.root});P.code((0,c._)`${u.default.self}.opts.$comment(${We}, ${_r}, ${oi}.schema)`)}}function ae(P){let{gen:D,schemaEnv:Z,validateName:J,ValidationError:ue,opts:We}=P;Z.$async?D.if((0,c._)`${u.default.errors} === 0`,()=>D.return(u.default.data),()=>D.throw((0,c._)`new ${ue}(${u.default.vErrors})`)):(D.assign((0,c._)`${J}.errors`,u.default.vErrors),We.unevaluated&&Me(P),D.return((0,c._)`${u.default.errors} === 0`))}function Me({gen:P,evaluated:D,props:Z,items:J}){Z instanceof c.Name&&P.assign((0,c._)`${D}.props`,Z),J instanceof c.Name&&P.assign((0,c._)`${D}.items`,J)}function Le(P,D,Z,J){let{gen:ue,schema:We,data:_r,allErrors:oi,opts:on,self:an}=P,{RULES:br}=an;if(We.$ref&&(on.ignoreKeywordsWithRef||!(0,d.schemaHasRulesButRef)(We,br))){ue.block(()=>ce(P,"$ref",br.all.$ref.definition));return}on.jtd||Ge(P,D),ue.block(()=>{for(let zn of br.rules)Ha(zn);Ha(br.post)});function Ha(zn){(0,n.shouldUseGroup)(We,zn)&&(zn.type?(ue.if((0,i.checkDataType)(zn.type,_r,on.strictNumbers)),kt(P,zn),D.length===1&&D[0]===zn.type&&Z&&(ue.else(),(0,i.reportTypeError)(P)),ue.endIf()):kt(P,zn),oi||ue.if((0,c._)`${u.default.errors} === ${J||0}`))}}function kt(P,D){let{gen:Z,schema:J,opts:{useDefaults:ue}}=P;ue&&(0,s.assignDefaults)(P,D.type),Z.block(()=>{for(let We of D.rules)(0,n.shouldUseRule)(J,We)&&ce(P,We.keyword,We.definition,D.type)})}function Ge(P,D){P.schemaEnv.meta||!P.opts.strictTypes||(K(P,D),P.opts.allowUnionTypes||C(P,D),H(P,P.dataTypes))}function K(P,D){if(D.length){if(!P.dataTypes.length){P.dataTypes=D;return}D.forEach(Z=>{k(P.dataTypes,Z)||F(P,`type "${Z}" not allowed by context "${P.dataTypes.join(",")}"`)}),R(P,D)}}function C(P,D){D.length>1&&!(D.length===2&&D.includes("null"))&&F(P,"use allowUnionTypes to allow union type keyword")}function H(P,D){let Z=P.self.RULES.all;for(let J in Z){let ue=Z[J];if(typeof ue=="object"&&(0,n.shouldUseRule)(P.schema,ue)){let{type:We}=ue.definition;We.length&&!We.some(_r=>M(D,_r))&&F(P,`missing type "${We.join(",")}" for keyword "${J}"`)}}}function M(P,D){return P.includes(D)||D==="number"&&P.includes("integer")}function k(P,D){return P.includes(D)||D==="integer"&&P.includes("number")}function R(P,D){let Z=[];for(let J of P.dataTypes)k(D,J)?Z.push(J):D.includes("integer")&&J==="number"&&Z.push("integer");P.dataTypes=Z}function F(P,D){let Z=P.schemaEnv.baseId+P.errSchemaPath;D+=` at "${Z}" (strictTypes)`,(0,d.checkStrictMode)(P,D,P.opts.strictTypes)}class le{constructor(D,Z,J){if((0,o.validateKeywordUsage)(D,Z,J),this.gen=D.gen,this.allErrors=D.allErrors,this.keyword=J,this.data=D.data,this.schema=D.schema[J],this.$data=Z.$data&&D.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,d.schemaRefOrVal)(D,this.schema,J,this.$data),this.schemaType=Z.schemaType,this.parentSchema=D.schema,this.params={},this.it=D,this.def=Z,this.$data)this.schemaCode=D.gen.const("vSchema",qt(this.$data,D));else if(this.schemaCode=this.schemaValue,!(0,o.validSchemaType)(this.schema,Z.schemaType,Z.allowUndefined))throw new Error(`${J} value must be ${JSON.stringify(Z.schemaType)}`);("code"in Z?Z.trackErrors:Z.errors!==!1)&&(this.errsCount=D.gen.const("_errs",u.default.errors))}result(D,Z,J){this.failResult((0,c.not)(D),Z,J)}failResult(D,Z,J){this.gen.if(D),J?J():this.error(),Z?(this.gen.else(),Z(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(D,Z){this.failResult((0,c.not)(D),void 0,Z)}fail(D){if(D===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(D),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(D){if(!this.$data)return this.fail(D);let{schemaCode:Z}=this;this.fail((0,c._)`${Z} !== undefined && (${(0,c.or)(this.invalid$data(),D)})`)}error(D,Z,J){if(Z){this.setParams(Z),this._error(D,J),this.setParams({});return}this._error(D,J)}_error(D,Z){(D?p.reportExtraError:p.reportError)(this,this.def.error,Z)}$dataError(){(0,p.reportError)(this,this.def.$dataError||p.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,p.resetErrorsCount)(this.gen,this.errsCount)}ok(D){this.allErrors||this.gen.if(D)}setParams(D,Z){Z?Object.assign(this.params,D):this.params=D}block$data(D,Z,J=c.nil){this.gen.block(()=>{this.check$data(D,J),Z()})}check$data(D=c.nil,Z=c.nil){if(!this.$data)return;let{gen:J,schemaCode:ue,schemaType:We,def:_r}=this;J.if((0,c.or)((0,c._)`${ue} === undefined`,Z)),D!==c.nil&&J.assign(D,!0),(We.length||_r.validateSchema)&&(J.elseIf(this.invalid$data()),this.$dataError(),D!==c.nil&&J.assign(D,!1)),J.else()}invalid$data(){let{gen:D,schemaCode:Z,schemaType:J,def:ue,it:We}=this;return(0,c.or)(_r(),oi());function _r(){if(J.length){if(!(Z instanceof c.Name))throw new Error("ajv implementation error");let on=Array.isArray(J)?J:[J];return(0,c._)`${(0,i.checkDataTypes)(on,Z,We.opts.strictNumbers,i.DataType.Wrong)}`}return c.nil}function oi(){if(ue.validateSchema){let on=D.scopeValue("validate$data",{ref:ue.validateSchema});return(0,c._)`!${on}(${Z})`}return c.nil}}subschema(D,Z){let J=(0,a.getSubschema)(this.it,D);(0,a.extendSubschemaData)(J,this.it,D),(0,a.extendSubschemaMode)(J,D);let ue={...this.it,...J,items:void 0,props:void 0};return S(ue,Z),ue}mergeEvaluated(D,Z){let{it:J,gen:ue}=this;J.opts.unevaluated&&(J.props!==!0&&D.props!==void 0&&(J.props=d.mergeEvaluated.props(ue,D.props,J.props,Z)),J.items!==!0&&D.items!==void 0&&(J.items=d.mergeEvaluated.items(ue,D.items,J.items,Z)))}mergeValidEvaluated(D,Z){let{it:J,gen:ue}=this;if(J.opts.unevaluated&&(J.props!==!0||J.items!==!0))return ue.if(Z,()=>this.mergeEvaluated(D,c.Name)),!0}}t.KeywordCxt=le;function ce(P,D,Z,J){let ue=new le(P,Z,D);"code"in Z?Z.code(ue,J):ue.$data&&Z.validate?(0,o.funcKeywordCode)(ue,Z):"macro"in Z?(0,o.macroKeywordCode)(ue,Z):(Z.compile||Z.validate)&&(0,o.funcKeywordCode)(ue,Z)}var Qe=/^\/(?:[^~]|~0|~1)*$/,Xe=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function qt(P,{dataLevel:D,dataNames:Z,dataPathArr:J}){let ue,We;if(P==="")return u.default.rootData;if(P[0]==="/"){if(!Qe.test(P))throw new Error(`Invalid JSON-pointer: ${P}`);ue=P,We=u.default.rootData}else{let an=Xe.exec(P);if(!an)throw new Error(`Invalid JSON-pointer: ${P}`);let br=+an[1];if(ue=an[2],ue==="#"){if(br>=D)throw new Error(on("property/index",br));return J[D-br]}if(br>D)throw new Error(on("data",br));if(We=Z[D-br],!ue)return We}let _r=We,oi=ue.split("/");for(let an of oi)an&&(We=(0,c._)`${We}${(0,c.getProperty)((0,d.unescapeJsonPointer)(an))}`,_r=(0,c._)`${_r} && ${We}`);return _r;function on(an,br){return`Cannot access ${an} ${br} levels up, current level is ${D}`}}t.getData=qt}),X$=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});class e extends Error{constructor(n){super("validation failed"),this.errors=n,this.ajv=this.validation=!0}}t.default=e}),ry=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=ey();class r extends Error{constructor(i,s,o,a){super(a||`can't resolve reference ${o} from id ${s}`),this.missingRef=(0,e.resolveUrl)(i,s,o),this.missingSchema=(0,e.normalizeId)((0,e.getFullPath)(i,this.missingRef))}}t.default=r}),Y$=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.resolveSchema=t.getCompilingSchema=t.resolveRef=t.compileSchema=t.SchemaEnv=void 0;var e=Ze(),r=X$(),n=Po(),i=ey(),s=ct(),o=ty();class a{constructor(y){var b;this.refs={},this.dynamicAnchors={};let S;typeof y.schema=="object"&&(S=y.schema),this.schema=y.schema,this.schemaId=y.schemaId,this.root=y.root||this,this.baseId=(b=y.baseId)!==null&&b!==void 0?b:(0,i.normalizeId)(S?.[y.schemaId||"$id"]),this.schemaPath=y.schemaPath,this.localRefs=y.localRefs,this.meta=y.meta,this.$async=S?.$async,this.refs={}}}t.SchemaEnv=a;function c(v){let y=d.call(this,v);if(y)return y;let b=(0,i.getFullPath)(this.opts.uriResolver,v.root.baseId),{es5:S,lines:x}=this.opts.code,{ownProperties:w}=this.opts,E=new e.CodeGen(this.scope,{es5:S,lines:x,ownProperties:w}),T;v.$async&&(T=E.scopeValue("Error",{ref:r.default,code:(0,e._)`require("ajv/dist/runtime/validation_error").default`}));let I=E.scopeName("validate");v.validateName=I;let A={gen:E,allErrors:this.opts.allErrors,data:n.default.data,parentData:n.default.parentData,parentDataProperty:n.default.parentDataProperty,dataNames:[n.default.data],dataPathArr:[e.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:E.scopeValue("schema",this.opts.code.source===!0?{ref:v.schema,code:(0,e.stringify)(v.schema)}:{ref:v.schema}),validateName:I,ValidationError:T,schema:v.schema,schemaEnv:v,rootId:b,baseId:v.baseId||b,schemaPath:e.nil,errSchemaPath:v.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,e._)`""`,opts:this.opts,self:this},N;try{this._compilations.add(v),(0,o.validateFunctionCode)(A),E.optimize(this.opts.code.optimize);let U=E.toString();N=`${E.scopeRefs(n.default.scope)}return ${U}`,this.opts.code.process&&(N=this.opts.code.process(N,v));let j=new Function(`${n.default.self}`,`${n.default.scope}`,N)(this,this.scope.get());if(this.scope.value(I,{ref:j}),j.errors=null,j.schema=v.schema,j.schemaEnv=v,v.$async&&(j.$async=!0),this.opts.code.source===!0&&(j.source={validateName:I,validateCode:U,scopeValues:E._values}),this.opts.unevaluated){let{props:ae,items:Me}=A;j.evaluated={props:ae instanceof e.Name?void 0:ae,items:Me instanceof e.Name?void 0:Me,dynamicProps:ae instanceof e.Name,dynamicItems:Me instanceof e.Name},j.source&&(j.source.evaluated=(0,e.stringify)(j.evaluated))}return v.validate=j,v}catch(U){throw delete v.validate,delete v.validateName,N&&this.logger.error("Error compiling schema, function code:",N),U}finally{this._compilations.delete(v)}}t.compileSchema=c;function u(v,y,b){var S;b=(0,i.resolveUrl)(this.opts.uriResolver,y,b);let x=v.refs[b];if(x)return x;let w=f.call(this,v,b);if(w===void 0){let E=(S=v.localRefs)===null||S===void 0?void 0:S[b],{schemaId:T}=this.opts;E&&(w=new a({schema:E,schemaId:T,root:v,baseId:y}))}if(w!==void 0)return v.refs[b]=l.call(this,w)}t.resolveRef=u;function l(v){return(0,i.inlineRef)(v.schema,this.opts.inlineRefs)?v.schema:v.validate?v:c.call(this,v)}function d(v){for(let y of this._compilations)if(p(y,v))return y}t.getCompilingSchema=d;function p(v,y){return v.schema===y.schema&&v.root===y.root&&v.baseId===y.baseId}function f(v,y){let b;for(;typeof(b=this.refs[y])=="string";)y=b;return b||this.schemas[y]||m.call(this,v,y)}function m(v,y){let b=this.opts.uriResolver.parse(y),S=(0,i._getFullPath)(this.opts.uriResolver,b),x=(0,i.getFullPath)(this.opts.uriResolver,v.baseId,void 0);if(Object.keys(v.schema).length>0&&S===x)return g.call(this,b,v);let w=(0,i.normalizeId)(S),E=this.refs[w]||this.schemas[w];if(typeof E=="string"){let T=m.call(this,v,E);return typeof T?.schema!="object"?void 0:g.call(this,b,T)}if(typeof E?.schema=="object"){if(E.validate||c.call(this,E),w===(0,i.normalizeId)(y)){let{schema:T}=E,{schemaId:I}=this.opts,A=T[I];return A&&(x=(0,i.resolveUrl)(this.opts.uriResolver,x,A)),new a({schema:T,schemaId:I,root:v,baseId:x})}return g.call(this,b,E)}}t.resolveSchema=m;var h=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function g(v,{baseId:y,schema:b,root:S}){var x;if(((x=v.fragment)===null||x===void 0?void 0:x[0])!=="/")return;for(let T of v.fragment.slice(1).split("/")){if(typeof b=="boolean")return;let I=b[(0,s.unescapeFragment)(T)];if(I===void 0)return;b=I;let A=typeof b=="object"&&b[this.opts.schemaId];!h.has(T)&&A&&(y=(0,i.resolveUrl)(this.opts.uriResolver,y,A))}let w;if(typeof b!="boolean"&&b.$ref&&!(0,s.schemaHasRulesButRef)(b,this.RULES)){let T=(0,i.resolveUrl)(this.opts.uriResolver,y,b.$ref);w=m.call(this,S,T)}let{schemaId:E}=this.opts;if(w=w||new a({schema:b,schemaId:E,root:S,baseId:y}),w.schema!==w.root.schema)return w}}),yle=ne((t,e)=>{e.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}}),_le=ne((t,e)=>{var r={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};e.exports={HEX:r}}),ble=ne((t,e)=>{var{HEX:r}=_le(),n=/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u;function i(v){if(u(v,".")<3)return{host:v,isIPV4:!1};let y=v.match(n)||[],[b]=y;return b?{host:c(b,"."),isIPV4:!0}:{host:v,isIPV4:!1}}function s(v,y=!1){let b="",S=!0;for(let x of v){if(r[x]===void 0)return;x!=="0"&&S===!0&&(S=!1),S||(b+=x)}return y&&b.length===0&&(b="0"),b}function o(v){let y=0,b={error:!1,address:"",zone:""},S=[],x=[],w=!1,E=!1,T=!1;function I(){if(x.length){if(w===!1){let A=s(x);if(A!==void 0)S.push(A);else return b.error=!0,!1}x.length=0}return!0}for(let A=0;A7){b.error=!0;break}A-1>=0&&v[A-1]===":"&&(E=!0);continue}else if(N==="%"){if(!I())break;w=!0}else{x.push(N);continue}}return x.length&&(w?b.zone=x.join(""):T?S.push(x.join("")):S.push(s(x))),b.address=S.join(""),b}function a(v){if(u(v,":")<2)return{host:v,isIPV6:!1};let y=o(v);if(y.error)return{host:v,isIPV6:!1};{let b=y.address,S=y.address;return y.zone&&(b+="%"+y.zone,S+="%25"+y.zone),{host:b,escapedHost:S,isIPV6:!0}}}function c(v,y){let b="",S=!0,x=v.length;for(let w=0;w{var r=/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu,n=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function i(S){return typeof S.secure=="boolean"?S.secure:String(S.scheme).toLowerCase()==="wss"}function s(S){return S.host||(S.error=S.error||"HTTP URIs must have a host."),S}function o(S){let x=String(S.scheme).toLowerCase()==="https";return(S.port===(x?443:80)||S.port==="")&&(S.port=void 0),S.path||(S.path="/"),S}function a(S){return S.secure=i(S),S.resourceName=(S.path||"/")+(S.query?"?"+S.query:""),S.path=void 0,S.query=void 0,S}function c(S){if((S.port===(i(S)?443:80)||S.port==="")&&(S.port=void 0),typeof S.secure=="boolean"&&(S.scheme=S.secure?"wss":"ws",S.secure=void 0),S.resourceName){let[x,w]=S.resourceName.split("?");S.path=x&&x!=="/"?x:void 0,S.query=w,S.resourceName=void 0}return S.fragment=void 0,S}function u(S,x){if(!S.path)return S.error="URN can not be parsed",S;let w=S.path.match(n);if(w){let E=x.scheme||S.scheme||"urn";S.nid=w[1].toLowerCase(),S.nss=w[2];let T=`${E}:${x.nid||S.nid}`,I=b[T];S.path=void 0,I&&(S=I.parse(S,x))}else S.error=S.error||"URN can not be parsed.";return S}function l(S,x){let w=x.scheme||S.scheme||"urn",E=S.nid.toLowerCase(),T=`${w}:${x.nid||E}`,I=b[T];I&&(S=I.serialize(S,x));let A=S,N=S.nss;return A.path=`${E||x.nid}:${N}`,x.skipEscape=!0,A}function d(S,x){let w=S;return w.uuid=w.nss,w.nss=void 0,!x.tolerant&&(!w.uuid||!r.test(w.uuid))&&(w.error=w.error||"UUID is not valid."),w}function p(S){let x=S;return x.nss=(S.uuid||"").toLowerCase(),x}var f={scheme:"http",domainHost:!0,parse:s,serialize:o},m={scheme:"https",domainHost:f.domainHost,parse:s,serialize:o},h={scheme:"ws",domainHost:!0,parse:a,serialize:c},g={scheme:"wss",domainHost:h.domainHost,parse:h.parse,serialize:h.serialize},v={scheme:"urn",parse:u,serialize:l,skipNormalize:!0},y={scheme:"urn:uuid",parse:d,serialize:p,skipNormalize:!0},b={http:f,https:m,ws:h,wss:g,urn:v,"urn:uuid":y};e.exports=b}),xle=ne((t,e)=>{var{normalizeIPv6:r,normalizeIPv4:n,removeDotSegments:i,recomposeAuthority:s,normalizeComponentEncoding:o}=ble(),a=Sle();function c(y,b){return typeof y=="string"?y=p(g(y,b),b):typeof y=="object"&&(y=g(p(y,b),b)),y}function u(y,b,S){let x=Object.assign({scheme:"null"},S),w=l(g(y,x),g(b,x),x,!0);return p(w,{...x,skipEscape:!0})}function l(y,b,S,x){let w={};return x||(y=g(p(y,S),S),b=g(p(b,S),S)),S=S||{},!S.tolerant&&b.scheme?(w.scheme=b.scheme,w.userinfo=b.userinfo,w.host=b.host,w.port=b.port,w.path=i(b.path||""),w.query=b.query):(b.userinfo!==void 0||b.host!==void 0||b.port!==void 0?(w.userinfo=b.userinfo,w.host=b.host,w.port=b.port,w.path=i(b.path||""),w.query=b.query):(b.path?(b.path.charAt(0)==="/"?w.path=i(b.path):((y.userinfo!==void 0||y.host!==void 0||y.port!==void 0)&&!y.path?w.path="/"+b.path:y.path?w.path=y.path.slice(0,y.path.lastIndexOf("/")+1)+b.path:w.path=b.path,w.path=i(w.path)),w.query=b.query):(w.path=y.path,b.query!==void 0?w.query=b.query:w.query=y.query),w.userinfo=y.userinfo,w.host=y.host,w.port=y.port),w.scheme=y.scheme),w.fragment=b.fragment,w}function d(y,b,S){return typeof y=="string"?(y=unescape(y),y=p(o(g(y,S),!0),{...S,skipEscape:!0})):typeof y=="object"&&(y=p(o(y,!0),{...S,skipEscape:!0})),typeof b=="string"?(b=unescape(b),b=p(o(g(b,S),!0),{...S,skipEscape:!0})):typeof b=="object"&&(b=p(o(b,!0),{...S,skipEscape:!0})),y.toLowerCase()===b.toLowerCase()}function p(y,b){let S={host:y.host,scheme:y.scheme,userinfo:y.userinfo,port:y.port,path:y.path,query:y.query,nid:y.nid,nss:y.nss,uuid:y.uuid,fragment:y.fragment,reference:y.reference,resourceName:y.resourceName,secure:y.secure,error:""},x=Object.assign({},b),w=[],E=a[(x.scheme||S.scheme||"").toLowerCase()];E&&E.serialize&&E.serialize(S,x),S.path!==void 0&&(x.skipEscape?S.path=unescape(S.path):(S.path=escape(S.path),S.scheme!==void 0&&(S.path=S.path.split("%3A").join(":")))),x.reference!=="suffix"&&S.scheme&&w.push(S.scheme,":");let T=s(S);if(T!==void 0&&(x.reference!=="suffix"&&w.push("//"),w.push(T),S.path&&S.path.charAt(0)!=="/"&&w.push("/")),S.path!==void 0){let I=S.path;!x.absolutePath&&(!E||!E.absolutePath)&&(I=i(I)),T===void 0&&(I=I.replace(/^\/\//u,"/%2F")),w.push(I)}return S.query!==void 0&&w.push("?",S.query),S.fragment!==void 0&&w.push("#",S.fragment),w.join("")}var f=Array.from({length:127},(y,b)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(b)));function m(y){let b=0;for(let S=0,x=y.length;S126||f[b])return!0;return!1}var h=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function g(y,b){let S=Object.assign({},b),x={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},w=y.indexOf("%")!==-1,E=!1;S.reference==="suffix"&&(y=(S.scheme?S.scheme+":":"")+"//"+y);let T=y.match(h);if(T){if(x.scheme=T[1],x.userinfo=T[3],x.host=T[4],x.port=parseInt(T[5],10),x.path=T[6]||"",x.query=T[7],x.fragment=T[8],isNaN(x.port)&&(x.port=T[5]),x.host){let A=n(x.host);if(A.isIPV4===!1){let N=r(A.host);x.host=N.host.toLowerCase(),E=N.isIPV6}else x.host=A.host,E=!0}x.scheme===void 0&&x.userinfo===void 0&&x.host===void 0&&x.port===void 0&&x.query===void 0&&!x.path?x.reference="same-document":x.scheme===void 0?x.reference="relative":x.fragment===void 0?x.reference="absolute":x.reference="uri",S.reference&&S.reference!=="suffix"&&S.reference!==x.reference&&(x.error=x.error||"URI is not a "+S.reference+" reference.");let I=a[(S.scheme||x.scheme||"").toLowerCase()];if(!S.unicodeSupport&&(!I||!I.unicodeSupport)&&x.host&&(S.domainHost||I&&I.domainHost)&&E===!1&&m(x.host))try{x.host=URL.domainToASCII(x.host.toLowerCase())}catch(A){x.error=x.error||"Host's domain name can not be converted to ASCII: "+A}(!I||I&&!I.skipNormalize)&&(w&&x.scheme!==void 0&&(x.scheme=unescape(x.scheme)),w&&x.host!==void 0&&(x.host=unescape(x.host)),x.path&&(x.path=escape(unescape(x.path))),x.fragment&&(x.fragment=encodeURI(decodeURIComponent(x.fragment)))),I&&I.parse&&I.parse(x,S)}else x.error=x.error||"URI can not be parsed.";return x}var v={SCHEMES:a,normalize:c,resolve:u,resolveComponents:l,equal:d,serialize:p,parse:g};e.exports=v,e.exports.default=v,e.exports.fastUri=v}),wle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=xle();e.code='require("ajv/dist/runtime/uri").default',t.default=e}),Ele=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CodeGen=t.Name=t.nil=t.stringify=t.str=t._=t.KeywordCxt=void 0;var e=ty();Object.defineProperty(t,"KeywordCxt",{enumerable:!0,get:function(){return e.KeywordCxt}});var r=Ze();Object.defineProperty(t,"_",{enumerable:!0,get:function(){return r._}}),Object.defineProperty(t,"str",{enumerable:!0,get:function(){return r.str}}),Object.defineProperty(t,"stringify",{enumerable:!0,get:function(){return r.stringify}}),Object.defineProperty(t,"nil",{enumerable:!0,get:function(){return r.nil}}),Object.defineProperty(t,"Name",{enumerable:!0,get:function(){return r.Name}}),Object.defineProperty(t,"CodeGen",{enumerable:!0,get:function(){return r.CodeGen}});var n=X$(),i=ry(),s=FF(),o=Y$(),a=Ze(),c=ey(),u=Gv(),l=ct(),d=yle(),p=wle(),f=(K,C)=>new RegExp(K,C);f.code="new RegExp";var m=["removeAdditional","useDefaults","coerceTypes"],h=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),g={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},v={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},y=200;function b(K){var C,H,M,k,R,F,le,ce,Qe,Xe,qt,P,D,Z,J,ue,We,_r,oi,on,an,br,Ha,zn,E_;let ll=K.strict,k_=(C=K.code)===null||C===void 0?void 0:C.optimize,yR=k_===!0||k_===void 0?1:k_||0,_R=(M=(H=K.code)===null||H===void 0?void 0:H.regExp)!==null&&M!==void 0?M:f,O5=(k=K.uriResolver)!==null&&k!==void 0?k:p.default;return{strictSchema:(F=(R=K.strictSchema)!==null&&R!==void 0?R:ll)!==null&&F!==void 0?F:!0,strictNumbers:(ce=(le=K.strictNumbers)!==null&&le!==void 0?le:ll)!==null&&ce!==void 0?ce:!0,strictTypes:(Xe=(Qe=K.strictTypes)!==null&&Qe!==void 0?Qe:ll)!==null&&Xe!==void 0?Xe:"log",strictTuples:(P=(qt=K.strictTuples)!==null&&qt!==void 0?qt:ll)!==null&&P!==void 0?P:"log",strictRequired:(Z=(D=K.strictRequired)!==null&&D!==void 0?D:ll)!==null&&Z!==void 0?Z:!1,code:K.code?{...K.code,optimize:yR,regExp:_R}:{optimize:yR,regExp:_R},loopRequired:(J=K.loopRequired)!==null&&J!==void 0?J:y,loopEnum:(ue=K.loopEnum)!==null&&ue!==void 0?ue:y,meta:(We=K.meta)!==null&&We!==void 0?We:!0,messages:(_r=K.messages)!==null&&_r!==void 0?_r:!0,inlineRefs:(oi=K.inlineRefs)!==null&&oi!==void 0?oi:!0,schemaId:(on=K.schemaId)!==null&&on!==void 0?on:"$id",addUsedSchema:(an=K.addUsedSchema)!==null&&an!==void 0?an:!0,validateSchema:(br=K.validateSchema)!==null&&br!==void 0?br:!0,validateFormats:(Ha=K.validateFormats)!==null&&Ha!==void 0?Ha:!0,unicodeRegExp:(zn=K.unicodeRegExp)!==null&&zn!==void 0?zn:!0,int32range:(E_=K.int32range)!==null&&E_!==void 0?E_:!0,uriResolver:O5}}class S{constructor(C={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,C=this.opts={...C,...b(C)};let{es5:H,lines:M}=this.opts.code;this.scope=new a.ValueScope({scope:{},prefixes:h,es5:H,lines:M}),this.logger=U(C.logger);let k=C.validateFormats;C.validateFormats=!1,this.RULES=(0,s.getRules)(),x.call(this,g,C,"NOT SUPPORTED"),x.call(this,v,C,"DEPRECATED","warn"),this._metaOpts=A.call(this),C.formats&&T.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),C.keywords&&I.call(this,C.keywords),typeof C.meta=="object"&&this.addMetaSchema(C.meta),E.call(this),C.validateFormats=k}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:C,meta:H,schemaId:M}=this.opts,k=d;M==="id"&&(k={...d},k.id=k.$id,delete k.$id),H&&C&&this.addMetaSchema(k,k[M],!1)}defaultMeta(){let{meta:C,schemaId:H}=this.opts;return this.opts.defaultMeta=typeof C=="object"?C[H]||C:void 0}validate(C,H){let M;if(typeof C=="string"){if(M=this.getSchema(C),!M)throw new Error(`no schema with key or ref "${C}"`)}else M=this.compile(C);let k=M(H);return"$async"in M||(this.errors=M.errors),k}compile(C,H){let M=this._addSchema(C,H);return M.validate||this._compileSchemaEnv(M)}compileAsync(C,H){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:M}=this.opts;return k.call(this,C,H);async function k(Xe,qt){await R.call(this,Xe.$schema);let P=this._addSchema(Xe,qt);return P.validate||F.call(this,P)}async function R(Xe){Xe&&!this.getSchema(Xe)&&await k.call(this,{$ref:Xe},!0)}async function F(Xe){try{return this._compileSchemaEnv(Xe)}catch(qt){if(!(qt instanceof i.default))throw qt;return le.call(this,qt),await ce.call(this,qt.missingSchema),F.call(this,Xe)}}function le({missingSchema:Xe,missingRef:qt}){if(this.refs[Xe])throw new Error(`AnySchema ${Xe} is loaded but ${qt} cannot be resolved`)}async function ce(Xe){let qt=await Qe.call(this,Xe);this.refs[Xe]||await R.call(this,qt.$schema),this.refs[Xe]||this.addSchema(qt,Xe,H)}async function Qe(Xe){let qt=this._loading[Xe];if(qt)return qt;try{return await(this._loading[Xe]=M(Xe))}finally{delete this._loading[Xe]}}}addSchema(C,H,M,k=this.opts.validateSchema){if(Array.isArray(C)){for(let F of C)this.addSchema(F,void 0,M,k);return this}let R;if(typeof C=="object"){let{schemaId:F}=this.opts;if(R=C[F],R!==void 0&&typeof R!="string")throw new Error(`schema ${F} must be string`)}return H=(0,c.normalizeId)(H||R),this._checkUnique(H),this.schemas[H]=this._addSchema(C,M,H,k,!0),this}addMetaSchema(C,H,M=this.opts.validateSchema){return this.addSchema(C,H,!0,M),this}validateSchema(C,H){if(typeof C=="boolean")return!0;let M;if(M=C.$schema,M!==void 0&&typeof M!="string")throw new Error("$schema must be a string");if(M=M||this.opts.defaultMeta||this.defaultMeta(),!M)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let k=this.validate(M,C);if(!k&&H){let R="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(R);else throw new Error(R)}return k}getSchema(C){let H;for(;typeof(H=w.call(this,C))=="string";)C=H;if(H===void 0){let{schemaId:M}=this.opts,k=new o.SchemaEnv({schema:{},schemaId:M});if(H=o.resolveSchema.call(this,k,C),!H)return;this.refs[C]=H}return H.validate||this._compileSchemaEnv(H)}removeSchema(C){if(C instanceof RegExp)return this._removeAllSchemas(this.schemas,C),this._removeAllSchemas(this.refs,C),this;switch(typeof C){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let H=w.call(this,C);return typeof H=="object"&&this._cache.delete(H.schema),delete this.schemas[C],delete this.refs[C],this}case"object":{let H=C;this._cache.delete(H);let M=C[this.opts.schemaId];return M&&(M=(0,c.normalizeId)(M),delete this.schemas[M],delete this.refs[M]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(C){for(let H of C)this.addKeyword(H);return this}addKeyword(C,H){let M;if(typeof C=="string")M=C,typeof H=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),H.keyword=M);else if(typeof C=="object"&&H===void 0){if(H=C,M=H.keyword,Array.isArray(M)&&!M.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(j.call(this,M,H),!H)return(0,l.eachItem)(M,R=>ae.call(this,R)),this;Le.call(this,H);let k={...H,type:(0,u.getJSONTypes)(H.type),schemaType:(0,u.getJSONTypes)(H.schemaType)};return(0,l.eachItem)(M,k.type.length===0?R=>ae.call(this,R,k):R=>k.type.forEach(F=>ae.call(this,R,k,F))),this}getKeyword(C){let H=this.RULES.all[C];return typeof H=="object"?H.definition:!!H}removeKeyword(C){let{RULES:H}=this;delete H.keywords[C],delete H.all[C];for(let M of H.rules){let k=M.rules.findIndex(R=>R.keyword===C);k>=0&&M.rules.splice(k,1)}return this}addFormat(C,H){return typeof H=="string"&&(H=new RegExp(H)),this.formats[C]=H,this}errorsText(C=this.errors,{separator:H=", ",dataVar:M="data"}={}){return!C||C.length===0?"No errors":C.map(k=>`${M}${k.instancePath} ${k.message}`).reduce((k,R)=>k+H+R)}$dataMetaSchema(C,H){let M=this.RULES.all;C=JSON.parse(JSON.stringify(C));for(let k of H){let R=k.split("/").slice(1),F=C;for(let le of R)F=F[le];for(let le in M){let ce=M[le];if(typeof ce!="object")continue;let{$data:Qe}=ce.definition,Xe=F[le];Qe&&Xe&&(F[le]=Ge(Xe))}}return C}_removeAllSchemas(C,H){for(let M in C){let k=C[M];(!H||H.test(M))&&(typeof k=="string"?delete C[M]:k&&!k.meta&&(this._cache.delete(k.schema),delete C[M]))}}_addSchema(C,H,M,k=this.opts.validateSchema,R=this.opts.addUsedSchema){let F,{schemaId:le}=this.opts;if(typeof C=="object")F=C[le];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof C!="boolean")throw new Error("schema must be object or boolean")}let ce=this._cache.get(C);if(ce!==void 0)return ce;M=(0,c.normalizeId)(F||M);let Qe=c.getSchemaRefs.call(this,C,M);return ce=new o.SchemaEnv({schema:C,schemaId:le,meta:H,baseId:M,localRefs:Qe}),this._cache.set(ce.schema,ce),R&&!M.startsWith("#")&&(M&&this._checkUnique(M),this.refs[M]=ce),k&&this.validateSchema(C,!0),ce}_checkUnique(C){if(this.schemas[C]||this.refs[C])throw new Error(`schema with key or id "${C}" already exists`)}_compileSchemaEnv(C){if(C.meta?this._compileMetaSchema(C):o.compileSchema.call(this,C),!C.validate)throw new Error("ajv implementation error");return C.validate}_compileMetaSchema(C){let H=this.opts;this.opts=this._metaOpts;try{o.compileSchema.call(this,C)}finally{this.opts=H}}}S.ValidationError=n.default,S.MissingRefError=i.default,t.default=S;function x(K,C,H,M="error"){for(let k in K){let R=k;R in C&&this.logger[M](`${H}: option ${k}. ${K[R]}`)}}function w(K){return K=(0,c.normalizeId)(K),this.schemas[K]||this.refs[K]}function E(){let K=this.opts.schemas;if(K)if(Array.isArray(K))this.addSchema(K);else for(let C in K)this.addSchema(K[C],C)}function T(){for(let K in this.opts.formats){let C=this.opts.formats[K];C&&this.addFormat(K,C)}}function I(K){if(Array.isArray(K)){this.addVocabulary(K);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let C in K){let H=K[C];H.keyword||(H.keyword=C),this.addKeyword(H)}}function A(){let K={...this.opts};for(let C of m)delete K[C];return K}var N={log(){},warn(){},error(){}};function U(K){if(K===!1)return N;if(K===void 0)return console;if(K.log&&K.warn&&K.error)return K;throw new Error("logger must implement log, warn and error methods")}var V=/^[a-z_$][a-z0-9_$:-]*$/i;function j(K,C){let{RULES:H}=this;if((0,l.eachItem)(K,M=>{if(H.keywords[M])throw new Error(`Keyword ${M} is already defined`);if(!V.test(M))throw new Error(`Keyword ${M} has invalid name`)}),!!C&&C.$data&&!("code"in C||"validate"in C))throw new Error('$data keyword must have "code" or "validate" function')}function ae(K,C,H){var M;let k=C?.post;if(H&&k)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:R}=this,F=k?R.post:R.rules.find(({type:ce})=>ce===H);if(F||(F={type:H,rules:[]},R.rules.push(F)),R.keywords[K]=!0,!C)return;let le={keyword:K,definition:{...C,type:(0,u.getJSONTypes)(C.type),schemaType:(0,u.getJSONTypes)(C.schemaType)}};C.before?Me.call(this,F,le,C.before):F.rules.push(le),R.all[K]=le,(M=C.implements)===null||M===void 0||M.forEach(ce=>this.addKeyword(ce))}function Me(K,C,H){let M=K.rules.findIndex(k=>k.keyword===H);M>=0?K.rules.splice(M,0,C):(K.rules.push(C),this.logger.warn(`rule ${H} is not defined`))}function Le(K){let{metaSchema:C}=K;C!==void 0&&(K.$data&&this.opts.$data&&(C=Ge(C)),K.validateSchema=this.compile(C,!0))}var kt={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Ge(K){return{anyOf:[K,kt]}}}),kle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};t.default=e}),Tle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.callRef=t.getValidate=void 0;var e=ry(),r=$i(),n=Ze(),i=Po(),s=Y$(),o=ct(),a={keyword:"$ref",schemaType:"string",code(l){let{gen:d,schema:p,it:f}=l,{baseId:m,schemaEnv:h,validateName:g,opts:v,self:y}=f,{root:b}=h;if((p==="#"||p==="#/")&&m===b.baseId)return x();let S=s.resolveRef.call(y,b,m,p);if(S===void 0)throw new e.default(f.opts.uriResolver,m,p);if(S instanceof s.SchemaEnv)return w(S);return E(S);function x(){if(h===b)return u(l,g,h,h.$async);let T=d.scopeValue("root",{ref:b});return u(l,(0,n._)`${T}.validate`,b,b.$async)}function w(T){let I=c(l,T);u(l,I,T,T.$async)}function E(T){let I=d.scopeValue("schema",v.code.source===!0?{ref:T,code:(0,n.stringify)(T)}:{ref:T}),A=d.name("valid"),N=l.subschema({schema:T,dataTypes:[],schemaPath:n.nil,topSchemaRef:I,errSchemaPath:p},A);l.mergeEvaluated(N),l.ok(A)}}};function c(l,d){let{gen:p}=l;return d.validate?p.scopeValue("validate",{ref:d.validate}):(0,n._)`${p.scopeValue("wrapper",{ref:d})}.validate`}t.getValidate=c;function u(l,d,p,f){let{gen:m,it:h}=l,{allErrors:g,schemaEnv:v,opts:y}=h,b=y.passContext?i.default.this:n.nil;f?S():x();function S(){if(!v.$async)throw new Error("async schema referenced by sync schema");let T=m.let("valid");m.try(()=>{m.code((0,n._)`await ${(0,r.callValidateCode)(l,d,b)}`),E(d),g||m.assign(T,!0)},I=>{m.if((0,n._)`!(${I} instanceof ${h.ValidationError})`,()=>m.throw(I)),w(I),g||m.assign(T,!1)}),l.ok(T)}function x(){l.result((0,r.callValidateCode)(l,d,b),()=>E(d),()=>w(d))}function w(T){let I=(0,n._)`${T}.errors`;m.assign(i.default.vErrors,(0,n._)`${i.default.vErrors} === null ? ${I} : ${i.default.vErrors}.concat(${I})`),m.assign(i.default.errors,(0,n._)`${i.default.vErrors}.length`)}function E(T){var I;if(!h.opts.unevaluated)return;let A=(I=p?.validate)===null||I===void 0?void 0:I.evaluated;if(h.props!==!0)if(A&&!A.dynamicProps)A.props!==void 0&&(h.props=o.mergeEvaluated.props(m,A.props,h.props));else{let N=m.var("props",(0,n._)`${T}.evaluated.props`);h.props=o.mergeEvaluated.props(m,N,h.props,n.Name)}if(h.items!==!0)if(A&&!A.dynamicItems)A.items!==void 0&&(h.items=o.mergeEvaluated.items(m,A.items,h.items));else{let N=m.var("items",(0,n._)`${T}.evaluated.items`);h.items=o.mergeEvaluated.items(m,N,h.items,n.Name)}}}t.callRef=u,t.default=a}),$le=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=kle(),r=Tle(),n=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",e.default,r.default];t.default=n}),Ile=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=e.operators,n={maximum:{okStr:"<=",ok:r.LTE,fail:r.GT},minimum:{okStr:">=",ok:r.GTE,fail:r.LT},exclusiveMaximum:{okStr:"<",ok:r.LT,fail:r.GTE},exclusiveMinimum:{okStr:">",ok:r.GT,fail:r.LTE}},i={message:({keyword:o,schemaCode:a})=>(0,e.str)`must be ${n[o].okStr} ${a}`,params:({keyword:o,schemaCode:a})=>(0,e._)`{comparison: ${n[o].okStr}, limit: ${a}}`},s={keyword:Object.keys(n),type:"number",schemaType:"number",$data:!0,error:i,code(o){let{keyword:a,data:c,schemaCode:u}=o;o.fail$data((0,e._)`${c} ${n[a].fail} ${u} || isNaN(${c})`)}};t.default=s}),Rle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r={message:({schemaCode:i})=>(0,e.str)`must be multiple of ${i}`,params:({schemaCode:i})=>(0,e._)`{multipleOf: ${i}}`},n={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:r,code(i){let{gen:s,data:o,schemaCode:a,it:c}=i,u=c.opts.multipleOfPrecision,l=s.let("res"),d=u?(0,e._)`Math.abs(Math.round(${l}) - ${l}) > 1e-${u}`:(0,e._)`${l} !== parseInt(${l})`;i.fail$data((0,e._)`(${a} === 0 || (${l} = ${o}/${a}, ${d}))`)}};t.default=n}),Ole=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});function e(r){let n=r.length,i=0,s=0,o;for(;s=55296&&o<=56319&&s{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=ct(),n=Ole(),i={message({keyword:o,schemaCode:a}){let c=o==="maxLength"?"more":"fewer";return(0,e.str)`must NOT have ${c} than ${a} characters`},params:({schemaCode:o})=>(0,e._)`{limit: ${o}}`},s={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:i,code(o){let{keyword:a,data:c,schemaCode:u,it:l}=o,d=a==="maxLength"?e.operators.GT:e.operators.LT,p=l.opts.unicode===!1?(0,e._)`${c}.length`:(0,e._)`${(0,r.useFunc)(o.gen,n.default)}(${c})`;o.fail$data((0,e._)`${p} ${d} ${u}`)}};t.default=s}),Ple=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=$i(),r=Ze(),n={message:({schemaCode:s})=>(0,r.str)`must match pattern "${s}"`,params:({schemaCode:s})=>(0,r._)`{pattern: ${s}}`},i={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:n,code(s){let{data:o,$data:a,schema:c,schemaCode:u,it:l}=s,d=l.opts.unicodeRegExp?"u":"",p=a?(0,r._)`(new RegExp(${u}, ${d}))`:(0,e.usePattern)(s,c);s.fail$data((0,r._)`!${p}.test(${o})`)}};t.default=i}),Ale=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r={message({keyword:i,schemaCode:s}){let o=i==="maxProperties"?"more":"fewer";return(0,e.str)`must NOT have ${o} than ${s} properties`},params:({schemaCode:i})=>(0,e._)`{limit: ${i}}`},n={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:r,code(i){let{keyword:s,data:o,schemaCode:a}=i,c=s==="maxProperties"?e.operators.GT:e.operators.LT;i.fail$data((0,e._)`Object.keys(${o}).length ${c} ${a}`)}};t.default=n}),Nle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=$i(),r=Ze(),n=ct(),i={message:({params:{missingProperty:o}})=>(0,r.str)`must have required property '${o}'`,params:({params:{missingProperty:o}})=>(0,r._)`{missingProperty: ${o}}`},s={keyword:"required",type:"object",schemaType:"array",$data:!0,error:i,code(o){let{gen:a,schema:c,schemaCode:u,data:l,$data:d,it:p}=o,{opts:f}=p;if(!d&&c.length===0)return;let m=c.length>=f.loopRequired;if(p.allErrors?h():g(),f.strictRequired){let b=o.parentSchema.properties,{definedProperties:S}=o.it;for(let x of c)if(b?.[x]===void 0&&!S.has(x)){let w=p.schemaEnv.baseId+p.errSchemaPath,E=`required property "${x}" is not defined at "${w}" (strictRequired)`;(0,n.checkStrictMode)(p,E,p.opts.strictRequired)}}function h(){if(m||d)o.block$data(r.nil,v);else for(let b of c)(0,e.checkReportMissingProp)(o,b)}function g(){let b=a.let("missing");if(m||d){let S=a.let("valid",!0);o.block$data(S,()=>y(b,S)),o.ok(S)}else a.if((0,e.checkMissingProp)(o,c,b)),(0,e.reportMissingProp)(o,b),a.else()}function v(){a.forOf("prop",u,b=>{o.setParams({missingProperty:b}),a.if((0,e.noPropertyInData)(a,l,b,f.ownProperties),()=>o.error())})}function y(b,S){o.setParams({missingProperty:b}),a.forOf(b,u,()=>{a.assign(S,(0,e.propertyInData)(a,l,b,f.ownProperties)),a.if((0,r.not)(S),()=>{o.error(),a.break()})},r.nil)}}};t.default=s}),Mle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r={message({keyword:i,schemaCode:s}){let o=i==="maxItems"?"more":"fewer";return(0,e.str)`must NOT have ${o} than ${s} items`},params:({schemaCode:i})=>(0,e._)`{limit: ${i}}`},n={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:r,code(i){let{keyword:s,data:o,schemaCode:a}=i,c=s==="maxItems"?e.operators.GT:e.operators.LT;i.fail$data((0,e._)`${o}.length ${c} ${a}`)}};t.default=n}),Q$=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=HF();e.code='require("ajv/dist/runtime/equal").default',t.default=e}),Dle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Gv(),r=Ze(),n=ct(),i=Q$(),s={message:({params:{i:a,j:c}})=>(0,r.str)`must NOT have duplicate items (items ## ${c} and ${a} are identical)`,params:({params:{i:a,j:c}})=>(0,r._)`{i: ${a}, j: ${c}}`},o={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:s,code(a){let{gen:c,data:u,$data:l,schema:d,parentSchema:p,schemaCode:f,it:m}=a;if(!l&&!d)return;let h=c.let("valid"),g=p.items?(0,e.getSchemaTypes)(p.items):[];a.block$data(h,v,(0,r._)`${f} === false`),a.ok(h);function v(){let x=c.let("i",(0,r._)`${u}.length`),w=c.let("j");a.setParams({i:x,j:w}),c.assign(h,!0),c.if((0,r._)`${x} > 1`,()=>(y()?b:S)(x,w))}function y(){return g.length>0&&!g.some(x=>x==="object"||x==="array")}function b(x,w){let E=c.name("item"),T=(0,e.checkDataTypes)(g,E,m.opts.strictNumbers,e.DataType.Wrong),I=c.const("indices",(0,r._)`{}`);c.for((0,r._)`;${x}--;`,()=>{c.let(E,(0,r._)`${u}[${x}]`),c.if(T,(0,r._)`continue`),g.length>1&&c.if((0,r._)`typeof ${E} == "string"`,(0,r._)`${E} += "_"`),c.if((0,r._)`typeof ${I}[${E}] == "number"`,()=>{c.assign(w,(0,r._)`${I}[${E}]`),a.error(),c.assign(h,!1).break()}).code((0,r._)`${I}[${E}] = ${x}`)})}function S(x,w){let E=(0,n.useFunc)(c,i.default),T=c.name("outer");c.label(T).for((0,r._)`;${x}--;`,()=>c.for((0,r._)`${w} = ${x}; ${w}--;`,()=>c.if((0,r._)`${E}(${u}[${x}], ${u}[${w}])`,()=>{a.error(),c.assign(h,!1).break(T)})))}}};t.default=o}),jle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=ct(),n=Q$(),i={message:"must be equal to constant",params:({schemaCode:o})=>(0,e._)`{allowedValue: ${o}}`},s={keyword:"const",$data:!0,error:i,code(o){let{gen:a,data:c,$data:u,schemaCode:l,schema:d}=o;u||d&&typeof d=="object"?o.fail$data((0,e._)`!${(0,r.useFunc)(a,n.default)}(${c}, ${l})`):o.fail((0,e._)`${d} !== ${c}`)}};t.default=s}),zle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=ct(),n=Q$(),i={message:"must be equal to one of the allowed values",params:({schemaCode:o})=>(0,e._)`{allowedValues: ${o}}`},s={keyword:"enum",schemaType:"array",$data:!0,error:i,code(o){let{gen:a,data:c,$data:u,schema:l,schemaCode:d,it:p}=o;if(!u&&l.length===0)throw new Error("enum must have non-empty array");let f=l.length>=p.opts.loopEnum,m,h=()=>m??(m=(0,r.useFunc)(a,n.default)),g;if(f||u)g=a.let("valid"),o.block$data(g,v);else{if(!Array.isArray(l))throw new Error("ajv implementation error");let b=a.const("vSchema",d);g=(0,e.or)(...l.map((S,x)=>y(b,x)))}o.pass(g);function v(){a.assign(g,!1),a.forOf("v",d,b=>a.if((0,e._)`${h()}(${c}, ${b})`,()=>a.assign(g,!0).break()))}function y(b,S){let x=l[S];return typeof x=="object"&&x!==null?(0,e._)`${h()}(${c}, ${b}[${S}])`:(0,e._)`${c} === ${x}`}}};t.default=s}),Lle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ile(),r=Rle(),n=Cle(),i=Ple(),s=Ale(),o=Nle(),a=Mle(),c=Dle(),u=jle(),l=zle(),d=[e.default,r.default,n.default,i.default,s.default,o.default,a.default,c.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},u.default,l.default];t.default=d}),ZF=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateAdditionalItems=void 0;var e=Ze(),r=ct(),n={message:({params:{len:o}})=>(0,e.str)`must NOT have more than ${o} items`,params:({params:{len:o}})=>(0,e._)`{limit: ${o}}`},i={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:n,code(o){let{parentSchema:a,it:c}=o,{items:u}=a;if(!Array.isArray(u)){(0,r.checkStrictMode)(c,'"additionalItems" is ignored when "items" is not an array of schemas');return}s(o,u)}};function s(o,a){let{gen:c,schema:u,data:l,keyword:d,it:p}=o;p.items=!0;let f=c.const("len",(0,e._)`${l}.length`);if(u===!1)o.setParams({len:a.length}),o.pass((0,e._)`${f} <= ${a.length}`);else if(typeof u=="object"&&!(0,r.alwaysValidSchema)(p,u)){let h=c.var("valid",(0,e._)`${f} <= ${a.length}`);c.if((0,e.not)(h),()=>m(h)),o.ok(h)}function m(h){c.forRange("i",a.length,f,g=>{o.subschema({keyword:d,dataProp:g,dataPropType:r.Type.Num},h),p.allErrors||c.if((0,e.not)(h),()=>c.break())})}}t.validateAdditionalItems=s,t.default=i}),BF=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateTuple=void 0;var e=Ze(),r=ct(),n=$i(),i={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(o){let{schema:a,it:c}=o;if(Array.isArray(a))return s(o,"additionalItems",a);c.items=!0,!(0,r.alwaysValidSchema)(c,a)&&o.ok((0,n.validateArray)(o))}};function s(o,a,c=o.schema){let{gen:u,parentSchema:l,data:d,keyword:p,it:f}=o;g(l),f.opts.unevaluated&&c.length&&f.items!==!0&&(f.items=r.mergeEvaluated.items(u,c.length,f.items));let m=u.name("valid"),h=u.const("len",(0,e._)`${d}.length`);c.forEach((v,y)=>{(0,r.alwaysValidSchema)(f,v)||(u.if((0,e._)`${h} > ${y}`,()=>o.subschema({keyword:p,schemaProp:y,dataProp:y},m)),o.ok(m))});function g(v){let{opts:y,errSchemaPath:b}=f,S=c.length,x=S===v.minItems&&(S===v.maxItems||v[a]===!1);if(y.strictTuples&&!x){let w=`"${p}" is ${S}-tuple, but minItems or maxItems/${a} are not specified or different at path "${b}"`;(0,r.checkStrictMode)(f,w,y.strictTuples)}}}t.validateTuple=s,t.default=i}),Ule=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=BF(),r={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:n=>(0,e.validateTuple)(n,"items")};t.default=r}),Fle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=ct(),n=$i(),i=ZF(),s={message:({params:{len:a}})=>(0,e.str)`must NOT have more than ${a} items`,params:({params:{len:a}})=>(0,e._)`{limit: ${a}}`},o={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:s,code(a){let{schema:c,parentSchema:u,it:l}=a,{prefixItems:d}=u;l.items=!0,!(0,r.alwaysValidSchema)(l,c)&&(d?(0,i.validateAdditionalItems)(a,d):a.ok((0,n.validateArray)(a)))}};t.default=o}),qle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=ct(),n={message:({params:{min:s,max:o}})=>o===void 0?(0,e.str)`must contain at least ${s} valid item(s)`:(0,e.str)`must contain at least ${s} and no more than ${o} valid item(s)`,params:({params:{min:s,max:o}})=>o===void 0?(0,e._)`{minContains: ${s}}`:(0,e._)`{minContains: ${s}, maxContains: ${o}}`},i={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:n,code(s){let{gen:o,schema:a,parentSchema:c,data:u,it:l}=s,d,p,{minContains:f,maxContains:m}=c;l.opts.next?(d=f===void 0?1:f,p=m):d=1;let h=o.const("len",(0,e._)`${u}.length`);if(s.setParams({min:d,max:p}),p===void 0&&d===0){(0,r.checkStrictMode)(l,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(p!==void 0&&d>p){(0,r.checkStrictMode)(l,'"minContains" > "maxContains" is always invalid'),s.fail();return}if((0,r.alwaysValidSchema)(l,a)){let S=(0,e._)`${h} >= ${d}`;p!==void 0&&(S=(0,e._)`${S} && ${h} <= ${p}`),s.pass(S);return}l.items=!0;let g=o.name("valid");p===void 0&&d===1?y(g,()=>o.if(g,()=>o.break())):d===0?(o.let(g,!0),p!==void 0&&o.if((0,e._)`${u}.length > 0`,v)):(o.let(g,!1),v()),s.result(g,()=>s.reset());function v(){let S=o.name("_valid"),x=o.let("count",0);y(S,()=>o.if(S,()=>b(x)))}function y(S,x){o.forRange("i",0,h,w=>{s.subschema({keyword:"contains",dataProp:w,dataPropType:r.Type.Num,compositeRule:!0},S),x()})}function b(S){o.code((0,e._)`${S}++`),p===void 0?o.if((0,e._)`${S} >= ${d}`,()=>o.assign(g,!0).break()):(o.if((0,e._)`${S} > ${p}`,()=>o.assign(g,!1).break()),d===1?o.assign(g,!0):o.if((0,e._)`${S} >= ${d}`,()=>o.assign(g,!0)))}}};t.default=i}),Hle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.validateSchemaDeps=t.validatePropertyDeps=t.error=void 0;var e=Ze(),r=ct(),n=$i();t.error={message:({params:{property:c,depsCount:u,deps:l}})=>{let d=u===1?"property":"properties";return(0,e.str)`must have ${d} ${l} when property ${c} is present`},params:({params:{property:c,depsCount:u,deps:l,missingProperty:d}})=>(0,e._)`{property: ${c}, missingProperty: ${d}, depsCount: ${u}, - deps: ${l}}`};var i={keyword:"dependencies",type:"object",schemaType:"object",error:t.error,code(c){let[u,l]=s(c);o(c,u),a(c,l)}};function s({schema:c}){let u={},l={};for(let d in c){if(d==="__proto__")continue;let p=Array.isArray(c[d])?u:l;p[d]=c[d]}return[u,l]}function o(c,u=c.schema){let{gen:l,data:d,it:p}=c;if(Object.keys(u).length===0)return;let f=l.let("missing");for(let m in u){let h=u[m];if(h.length===0)continue;let g=(0,n.propertyInData)(l,d,m,p.opts.ownProperties);c.setParams({property:m,depsCount:h.length,deps:h.join(", ")}),p.allErrors?l.if(g,()=>{for(let v of h)(0,n.checkReportMissingProp)(c,v)}):(l.if((0,e._)`${g} && (${(0,n.checkMissingProp)(c,h,f)})`),(0,n.reportMissingProp)(c,f),l.else())}}t.validatePropertyDeps=o;function a(c,u=c.schema){let{gen:l,data:d,keyword:p,it:f}=c,m=l.name("valid");for(let h in u)(0,r.alwaysValidSchema)(f,u[h])||(l.if((0,n.propertyInData)(l,d,h,f.opts.ownProperties),()=>{let g=c.subschema({keyword:p,schemaProp:h},m);c.mergeValidEvaluated(g,m)},()=>l.var(m,!0)),c.ok(m))}t.validateSchemaDeps=a,t.default=i}),wle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=at(),n={message:"property name must be valid",params:({params:s})=>(0,e._)`{propertyName: ${s.propertyName}}`},i={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:n,code(s){let{gen:o,schema:a,data:c,it:u}=s;if((0,r.alwaysValidSchema)(u,a))return;let l=o.name("valid");o.forIn("key",c,d=>{s.setParams({propertyName:d}),s.subschema({keyword:"propertyNames",data:d,dataTypes:["string"],propertyName:d,compositeRule:!0},l),o.if((0,e.not)(l),()=>{s.error(!0),u.allErrors||o.break()})}),s.ok(l)}};t.default=i}),EF=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=wi(),r=Ze(),n=xo(),i=at(),s={message:"must NOT have additional properties",params:({params:a})=>(0,r._)`{additionalProperty: ${a.additionalProperty}}`},o={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:s,code(a){let{gen:c,schema:u,parentSchema:l,data:d,errsCount:p,it:f}=a;if(!p)throw new Error("ajv implementation error");let{allErrors:m,opts:h}=f;if(f.props=!0,h.removeAdditional!=="all"&&(0,i.alwaysValidSchema)(f,u))return;let g=(0,e.allSchemaProperties)(l.properties),v=(0,e.allSchemaProperties)(l.patternProperties);S(),a.ok((0,r._)`${p} === ${n.default.errors}`);function S(){c.forIn("key",d,E=>{!g.length&&!v.length?x(E):c.if(b(E),()=>x(E))})}function b(E){let T;if(g.length>8){let I=(0,i.schemaRefOrVal)(f,l.properties,"properties");T=(0,e.isOwnProperty)(c,I,E)}else g.length?T=(0,r.or)(...g.map(I=>(0,r._)`${E} === ${I}`)):T=r.nil;return v.length&&(T=(0,r.or)(T,...v.map(I=>(0,r._)`${(0,e.usePattern)(a,I)}.test(${E})`))),(0,r.not)(T)}function y(E){c.code((0,r._)`delete ${d}[${E}]`)}function x(E){if(h.removeAdditional==="all"||h.removeAdditional&&u===!1){y(E);return}if(u===!1){a.setParams({additionalProperty:E}),a.error(),m||c.break();return}if(typeof u=="object"&&!(0,i.alwaysValidSchema)(f,u)){let T=c.name("valid");h.removeAdditional==="failing"?(w(E,T,!1),c.if((0,r.not)(T),()=>{a.reset(),y(E)})):(w(E,T),m||c.if((0,r.not)(T),()=>c.break()))}}function w(E,T,I){let A={keyword:"additionalProperties",dataProp:E,dataPropType:i.Type.Str};I===!1&&Object.assign(A,{compositeRule:!0,createErrors:!1,allErrors:!1}),a.subschema(A,T)}}};t.default=o}),Ele=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Bv(),r=wi(),n=at(),i=EF(),s={keyword:"properties",type:"object",schemaType:"object",code(o){let{gen:a,schema:c,parentSchema:u,data:l,it:d}=o;d.opts.removeAdditional==="all"&&u.additionalProperties===void 0&&i.default.code(new e.KeywordCxt(d,i.default,"additionalProperties"));let p=(0,r.allSchemaProperties)(c);for(let v of p)d.definedProperties.add(v);d.opts.unevaluated&&p.length&&d.props!==!0&&(d.props=n.mergeEvaluated.props(a,(0,n.toHash)(p),d.props));let f=p.filter(v=>!(0,n.alwaysValidSchema)(d,c[v]));if(f.length===0)return;let m=a.name("valid");for(let v of f)h(v)?g(v):(a.if((0,r.propertyInData)(a,l,v,d.opts.ownProperties)),g(v),d.allErrors||a.else().var(m,!0),a.endIf()),o.it.definedProperties.add(v),o.ok(m);function h(v){return d.opts.useDefaults&&!d.compositeRule&&c[v].default!==void 0}function g(v){o.subschema({keyword:"properties",schemaProp:v,dataProp:v},m)}}};t.default=s}),kle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=wi(),r=Ze(),n=at(),i=at(),s={keyword:"patternProperties",type:"object",schemaType:"object",code(o){let{gen:a,schema:c,data:u,parentSchema:l,it:d}=o,{opts:p}=d,f=(0,e.allSchemaProperties)(c),m=f.filter(x=>(0,n.alwaysValidSchema)(d,c[x]));if(f.length===0||m.length===f.length&&(!d.opts.unevaluated||d.props===!0))return;let h=p.strictSchema&&!p.allowMatchingProperties&&l.properties,g=a.name("valid");d.props!==!0&&!(d.props instanceof r.Name)&&(d.props=(0,i.evaluatedPropsToName)(a,d.props));let{props:v}=d;S();function S(){for(let x of f)h&&b(x),d.allErrors?y(x):(a.var(g,!0),y(x),a.if(g))}function b(x){for(let w in h)new RegExp(x).test(w)&&(0,n.checkStrictMode)(d,`property ${w} matches pattern ${x} (use allowMatchingProperties)`)}function y(x){a.forIn("key",u,w=>{a.if((0,r._)`${(0,e.usePattern)(o,x)}.test(${w})`,()=>{let E=m.includes(x);E||o.subschema({keyword:"patternProperties",schemaProp:x,dataProp:w,dataPropType:i.Type.Str},g),d.opts.unevaluated&&v!==!0?a.assign((0,r._)`${v}[${w}]`,!0):!E&&!d.allErrors&&a.if((0,r.not)(g),()=>a.break())})})}}};t.default=s}),Tle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=at(),r={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(n){let{gen:i,schema:s,it:o}=n;if((0,e.alwaysValidSchema)(o,s)){n.fail();return}let a=i.name("valid");n.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},a),n.failResult(a,()=>n.reset(),()=>n.error())},error:{message:"must NOT be valid"}};t.default=r}),$le=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=wi(),r={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:e.validateUnion,error:{message:"must match a schema in anyOf"}};t.default=r}),Ile=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=at(),n={message:"must match exactly one schema in oneOf",params:({params:s})=>(0,e._)`{passingSchemas: ${s.passing}}`},i={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:n,code(s){let{gen:o,schema:a,parentSchema:c,it:u}=s;if(!Array.isArray(a))throw new Error("ajv implementation error");if(u.opts.discriminator&&c.discriminator)return;let l=a,d=o.let("valid",!1),p=o.let("passing",null),f=o.name("_valid");s.setParams({passing:p}),o.block(m),s.result(d,()=>s.reset(),()=>s.error(!0));function m(){l.forEach((h,g)=>{let v;(0,r.alwaysValidSchema)(u,h)?o.var(f,!0):v=s.subschema({keyword:"oneOf",schemaProp:g,compositeRule:!0},f),g>0&&o.if((0,e._)`${f} && ${d}`).assign(d,!1).assign(p,(0,e._)`[${p}, ${g}]`).else(),o.if(f,()=>{o.assign(d,!0),o.assign(p,g),v&&s.mergeEvaluated(v,e.Name)})})}}};t.default=i}),Rle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=at(),r={keyword:"allOf",schemaType:"array",code(n){let{gen:i,schema:s,it:o}=n;if(!Array.isArray(s))throw new Error("ajv implementation error");let a=i.name("valid");s.forEach((c,u)=>{if((0,e.alwaysValidSchema)(o,c))return;let l=n.subschema({keyword:"allOf",schemaProp:u},a);n.ok(a),n.mergeEvaluated(l)})}};t.default=r}),Ole=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=at(),n={message:({params:o})=>(0,e.str)`must match "${o.ifClause}" schema`,params:({params:o})=>(0,e._)`{failingKeyword: ${o.ifClause}}`},i={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:n,code(o){let{gen:a,parentSchema:c,it:u}=o;c.then===void 0&&c.else===void 0&&(0,r.checkStrictMode)(u,'"if" without "then" and "else" is ignored');let l=s(u,"then"),d=s(u,"else");if(!l&&!d)return;let p=a.let("valid",!0),f=a.name("_valid");if(m(),o.reset(),l&&d){let g=a.let("ifClause");o.setParams({ifClause:g}),a.if(f,h("then",g),h("else",g))}else l?a.if(f,h("then")):a.if((0,e.not)(f),h("else"));o.pass(p,()=>o.error(!0));function m(){let g=o.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},f);o.mergeEvaluated(g)}function h(g,v){return()=>{let S=o.subschema({keyword:g},f);a.assign(p,f),o.mergeValidEvaluated(S,p),v?a.assign(v,(0,e._)`${g}`):o.setParams({ifClause:g})}}}};function s(o,a){let c=o.schema[a];return c!==void 0&&!(0,r.alwaysValidSchema)(o,c)}t.default=i}),Cle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=at(),r={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:n,parentSchema:i,it:s}){i.if===void 0&&(0,e.checkStrictMode)(s,`"${n}" without "if" is ignored`)}};t.default=r}),Ple=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=xF(),r=_le(),n=wF(),i=ble(),s=Sle(),o=xle(),a=wle(),c=EF(),u=Ele(),l=kle(),d=Tle(),p=$le(),f=Ile(),m=Rle(),h=Ole(),g=Cle();function v(S=!1){let b=[d.default,p.default,f.default,m.default,h.default,g.default,a.default,c.default,o.default,u.default,l.default];return S?b.push(r.default,i.default):b.push(e.default,n.default),b.push(s.default),b}t.default=v}),Ale=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r={message:({schemaCode:i})=>(0,e.str)`must match format "${i}"`,params:({schemaCode:i})=>(0,e._)`{format: ${i}}`},n={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:r,code(i,s){let{gen:o,data:a,$data:c,schema:u,schemaCode:l,it:d}=i,{opts:p,errSchemaPath:f,schemaEnv:m,self:h}=d;if(!p.validateFormats)return;c?g():v();function g(){let S=o.scopeValue("formats",{ref:h.formats,code:p.code.formats}),b=o.const("fDef",(0,e._)`${S}[${l}]`),y=o.let("fType"),x=o.let("format");o.if((0,e._)`typeof ${b} == "object" && !(${b} instanceof RegExp)`,()=>o.assign(y,(0,e._)`${b}.type || "string"`).assign(x,(0,e._)`${b}.validate`),()=>o.assign(y,(0,e._)`"string"`).assign(x,b)),i.fail$data((0,e.or)(w(),E()));function w(){return p.strictSchema===!1?e.nil:(0,e._)`${l} && !${x}`}function E(){let T=m.$async?(0,e._)`(${b}.async ? await ${x}(${a}) : ${x}(${a}))`:(0,e._)`${x}(${a})`,I=(0,e._)`(typeof ${x} == "function" ? ${T} : ${x}.test(${a}))`;return(0,e._)`${x} && ${x} !== true && ${y} === ${s} && !${I}`}}function v(){let S=h.formats[u];if(!S){w();return}if(S===!0)return;let[b,y,x]=E(S);b===s&&i.pass(T());function w(){if(p.strictSchema===!1){h.logger.warn(I());return}throw new Error(I());function I(){return`unknown format "${u}" ignored in schema at path "${f}"`}}function E(I){let A=I instanceof RegExp?(0,e.regexpCode)(I):p.code.formats?(0,e._)`${p.code.formats}${(0,e.getProperty)(u)}`:void 0,N=o.scopeValue("formats",{key:u,ref:I,code:A});return typeof I=="object"&&!(I instanceof RegExp)?[I.type||"string",I.validate,(0,e._)`${N}.validate`]:["string",I,N]}function T(){if(typeof S=="object"&&!(S instanceof RegExp)&&S.async){if(!m.$async)throw new Error("async format in sync schema");return(0,e._)`await ${x}(${a})`}return typeof y=="function"?(0,e._)`${x}(${a})`:(0,e._)`${x}.test(${a})`}}}};t.default=n}),Nle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ale(),r=[e.default];t.default=r}),Mle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.contentVocabulary=t.metadataVocabulary=void 0,t.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"],t.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]}),Dle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=ole(),r=yle(),n=Ple(),i=Nle(),s=Mle(),o=[e.default,r.default,(0,n.default)(),i.default,s.metadataVocabulary,s.contentVocabulary];t.default=o}),jle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DiscrError=void 0;var e;(function(r){r.Tag="tag",r.Mapping="mapping"})(e||(t.DiscrError=e={}))}),zle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=jle(),n=N$(),i=Gv(),s=at(),o={message:({params:{discrError:c,tagName:u}})=>c===r.DiscrError.Tag?`tag "${u}" must be string`:`value of tag "${u}" must be in oneOf`,params:({params:{discrError:c,tag:u,tagName:l}})=>(0,e._)`{error: ${c}, tag: ${l}, tagValue: ${u}}`},a={keyword:"discriminator",type:"object",schemaType:"object",error:o,code(c){let{gen:u,data:l,schema:d,parentSchema:p,it:f}=c,{oneOf:m}=p;if(!f.opts.discriminator)throw new Error("discriminator: requires discriminator option");let h=d.propertyName;if(typeof h!="string")throw new Error("discriminator: requires propertyName");if(d.mapping)throw new Error("discriminator: mapping is not supported");if(!m)throw new Error("discriminator: requires oneOf keyword");let g=u.let("valid",!1),v=u.const("tag",(0,e._)`${l}${(0,e.getProperty)(h)}`);u.if((0,e._)`typeof ${v} == "string"`,()=>S(),()=>c.error(!1,{discrError:r.DiscrError.Tag,tag:v,tagName:h})),c.ok(g);function S(){let x=y();u.if(!1);for(let w in x)u.elseIf((0,e._)`${v} === ${w}`),u.assign(g,b(x[w]));u.else(),c.error(!1,{discrError:r.DiscrError.Mapping,tag:v,tagName:h}),u.endIf()}function b(x){let w=u.name("valid"),E=c.subschema({keyword:"oneOf",schemaProp:x},w);return c.mergeEvaluated(E,e.Name),w}function y(){var x;let w={},E=I(p),T=!0;for(let U=0;U{e.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}}),kF=ne((t,e)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.MissingRefError=t.ValidationError=t.CodeGen=t.Name=t.nil=t.stringify=t.str=t._=t.KeywordCxt=t.Ajv=void 0;var r=nle(),n=Dle(),i=zle(),s=Lle(),o=["/properties"],a="http://json-schema.org/draft-07/schema";class c extends r.default{_addVocabularies(){super._addVocabularies(),n.default.forEach(m=>this.addVocabulary(m)),this.opts.discriminator&&this.addKeyword(i.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let m=this.opts.$data?this.$dataMetaSchema(s,o):s;this.addMetaSchema(m,a,!1),this.refs["http://json-schema.org/schema"]=a}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(a)?a:void 0)}}t.Ajv=c,e.exports=t=c,e.exports.Ajv=c,Object.defineProperty(t,"__esModule",{value:!0}),t.default=c;var u=Bv();Object.defineProperty(t,"KeywordCxt",{enumerable:!0,get:function(){return u.KeywordCxt}});var l=Ze();Object.defineProperty(t,"_",{enumerable:!0,get:function(){return l._}}),Object.defineProperty(t,"str",{enumerable:!0,get:function(){return l.str}}),Object.defineProperty(t,"stringify",{enumerable:!0,get:function(){return l.stringify}}),Object.defineProperty(t,"nil",{enumerable:!0,get:function(){return l.nil}}),Object.defineProperty(t,"Name",{enumerable:!0,get:function(){return l.Name}}),Object.defineProperty(t,"CodeGen",{enumerable:!0,get:function(){return l.CodeGen}});var d=A$();Object.defineProperty(t,"ValidationError",{enumerable:!0,get:function(){return d.default}});var p=Gv();Object.defineProperty(t,"MissingRefError",{enumerable:!0,get:function(){return p.default}})}),Ule=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.formatNames=t.fastFormats=t.fullFormats=void 0;function e(N,U){return{validate:N,compare:U}}t.fullFormats={date:e(s,o),time:e(c(!0),u),"date-time":e(p(!0),f),"iso-time":e(c(),l),"iso-date-time":e(p(),m),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:v,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:A,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:b,int32:{type:"number",validate:w},int64:{type:"number",validate:E},float:{type:"number",validate:T},double:{type:"number",validate:T},password:!0,binary:!0},t.fastFormats={...t.fullFormats,date:e(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,o),time:e(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,u),"date-time":e(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,f),"iso-time":e(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,l),"iso-date-time":e(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,m),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i},t.formatNames=Object.keys(t.fullFormats);function r(N){return N%4===0&&(N%100!==0||N%400===0)}var n=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,i=[0,31,28,31,30,31,30,31,31,30,31,30,31];function s(N){let U=n.exec(N);if(!U)return!1;let V=+U[1],j=+U[2],ae=+U[3];return j>=1&&j<=12&&ae>=1&&ae<=(j===2&&r(V)?29:i[j])}function o(N,U){if(N&&U)return N>U?1:N23||C>59||N&&!Et)return!1;if(ae<=23&&Me<=59&&ze<60)return!0;let H=Me-C*Ge,M=ae-K*Ge-(H<0?1:0);return(M===23||M===-1)&&(H===59||H===-1)&&ze<61}}function u(N,U){if(!(N&&U))return;let V=new Date("2020-01-01T"+N).valueOf(),j=new Date("2020-01-01T"+U).valueOf();if(V&&j)return V-j}function l(N,U){if(!(N&&U))return;let V=a.exec(N),j=a.exec(U);if(V&&j)return N=V[1]+V[2]+V[3],U=j[1]+j[2]+j[3],N>U?1:N=y}function E(N){return Number.isInteger(N)}function T(){return!0}var I=/[^\\]\\Z/;function A(N){if(I.test(N))return!1;try{return new RegExp(N),!0}catch{return!1}}}),Fle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.formatLimitDefinition=void 0;var e=kF(),r=Ze(),n=r.operators,i={formatMaximum:{okStr:"<=",ok:n.LTE,fail:n.GT},formatMinimum:{okStr:">=",ok:n.GTE,fail:n.LT},formatExclusiveMaximum:{okStr:"<",ok:n.LT,fail:n.GTE},formatExclusiveMinimum:{okStr:">",ok:n.GT,fail:n.LTE}},s={message:({keyword:a,schemaCode:c})=>(0,r.str)`should be ${i[a].okStr} ${c}`,params:({keyword:a,schemaCode:c})=>(0,r._)`{comparison: ${i[a].okStr}, limit: ${c}}`};t.formatLimitDefinition={keyword:Object.keys(i),type:"string",schemaType:"string",$data:!0,error:s,code(a){let{gen:c,data:u,schemaCode:l,keyword:d,it:p}=a,{opts:f,self:m}=p;if(!f.validateFormats)return;let h=new e.KeywordCxt(p,m.RULES.all.format.definition,"format");h.$data?g():v();function g(){let b=c.scopeValue("formats",{ref:m.formats,code:f.code.formats}),y=c.const("fmt",(0,r._)`${b}[${h.schemaCode}]`);a.fail$data((0,r.or)((0,r._)`typeof ${y} != "object"`,(0,r._)`${y} instanceof RegExp`,(0,r._)`typeof ${y}.compare != "function"`,S(y)))}function v(){let b=h.schema,y=m.formats[b];if(!y||y===!0)return;if(typeof y!="object"||y instanceof RegExp||typeof y.compare!="function")throw new Error(`"${d}": format "${b}" does not define "compare" function`);let x=c.scopeValue("formats",{key:b,ref:y,code:f.code.formats?(0,r._)`${f.code.formats}${(0,r.getProperty)(b)}`:void 0});a.fail$data(S(x))}function S(b){return(0,r._)`${b}.compare(${u}, ${l}) ${i[d].fail} 0`}},dependencies:["format"]};var o=a=>(a.addKeyword(t.formatLimitDefinition),a);t.default=o}),qle=ne((t,e)=>{Object.defineProperty(t,"__esModule",{value:!0});var r=Ule(),n=Fle(),i=Ze(),s=new i.Name("fullFormats"),o=new i.Name("fastFormats"),a=(u,l={keywords:!0})=>{if(Array.isArray(l))return c(u,l,r.fullFormats,s),u;let[d,p]=l.mode==="fast"?[r.fastFormats,o]:[r.fullFormats,s],f=l.formats||r.formatNames;return c(u,f,d,p),l.keywords&&(0,n.default)(u),u};a.get=(u,l="full")=>{let p=(l==="fast"?r.fastFormats:r.fullFormats)[u];if(!p)throw new Error(`Unknown format "${u}"`);return p};function c(u,l,d,p){var f,m;(f=(m=u.opts.code).formats)!==null&&f!==void 0||(m.formats=(0,i._)`require("ajv-formats/dist/formats").${p}`);for(let h of l)u.addFormat(h,d[h])}e.exports=t=a,Object.defineProperty(t,"__esModule",{value:!0}),t.default=a}),Hle=50;function IF(t=Hle){let e=new AbortController;return(0,$F.setMaxListeners)(t,e.signal),e}var Zle=typeof global=="object"&&global&&global.Object===Object&&global,Ble=Zle,Gle=typeof self=="object"&&self&&self.Object===Object&&self,Wle=Ble||Gle||Function("return this")(),D$=Wle,Vle=D$.Symbol,jv=Vle,PF=Object.prototype,Kle=PF.hasOwnProperty,Jle=PF.toString,Ap=jv?jv.toStringTag:void 0;function Xle(t){var e=Kle.call(t,Ap),r=t[Ap];try{t[Ap]=void 0;var n=!0}catch{}var i=Jle.call(t);return n&&(e?t[Ap]=r:delete t[Ap]),i}var Yle=Xle,Qle=Object.prototype,ede=Qle.toString;function tde(t){return ede.call(t)}var rde=tde,nde="[object Null]",ide="[object Undefined]",F6=jv?jv.toStringTag:void 0;function sde(t){return t==null?t===void 0?ide:nde:F6&&F6 in Object(t)?Yle(t):rde(t)}var ode=sde;function ade(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var AF=ade,cde="[object AsyncFunction]",ude="[object Function]",lde="[object GeneratorFunction]",dde="[object Proxy]";function pde(t){if(!AF(t))return!1;var e=ode(t);return e==ude||e==lde||e==cde||e==dde}var fde=pde,mde=D$["__core-js_shared__"],a$=mde,q6=(function(){var t=/[^.]+$/.exec(a$&&a$.keys&&a$.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""})();function hde(t){return!!q6&&q6 in t}var gde=hde,vde=Function.prototype,yde=vde.toString;function _de(t){if(t!=null){try{return yde.call(t)}catch{}try{return t+""}catch{}}return""}var bde=_de,Sde=/[\\^$.*+?()[\]{}|]/g,xde=/^\[object .+?Constructor\]$/,wde=Function.prototype,Ede=Object.prototype,kde=wde.toString,Tde=Ede.hasOwnProperty,$de=RegExp("^"+kde.call(Tde).replace(Sde,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Ide(t){if(!AF(t)||gde(t))return!1;var e=fde(t)?$de:xde;return e.test(bde(t))}var Rde=Ide;function Ode(t,e){return t?.[e]}var Cde=Ode;function Pde(t,e){var r=Cde(t,e);return Rde(r)?r:void 0}var NF=Pde,Ade=NF(Object,"create"),Dp=Ade;function Nde(){this.__data__=Dp?Dp(null):{},this.size=0}var Mde=Nde;function Dde(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var jde=Dde,zde="__lodash_hash_undefined__",Lde=Object.prototype,Ude=Lde.hasOwnProperty;function Fde(t){var e=this.__data__;if(Dp){var r=e[t];return r===zde?void 0:r}return Ude.call(e,t)?e[t]:void 0}var qde=Fde,Hde=Object.prototype,Zde=Hde.hasOwnProperty;function Bde(t){var e=this.__data__;return Dp?e[t]!==void 0:Zde.call(e,t)}var Gde=Bde,Wde="__lodash_hash_undefined__";function Vde(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=Dp&&e===void 0?Wde:e,this}var Kde=Vde;function Ru(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e-1}var cpe=ape;function upe(t,e){var r=this.__data__,n=Wv(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}var lpe=upe;function Ou(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{if(!t||t.trim()==="")return null;let e=t.split(",").map(s=>s.trim()).filter(Boolean);if(e.length===0)return null;let r=e.some(s=>s.startsWith("!")),n=e.some(s=>!s.startsWith("!"));if(r&&n)return null;let i=e.map(s=>s.replace(/^!/,"").toLowerCase());return{include:r?[]:i,exclude:r?i:[],isExclusive:r}});function Ope(t){let e=[],r=t.match(/^MCP server ["']([^"']+)["']/);if(r&&r[1])e.push("mcp"),e.push(r[1].toLowerCase());else{let s=t.match(/^([^:[]+):/);s&&s[1]&&e.push(s[1].trim().toLowerCase())}let n=t.match(/^\[([^\]]+)]/);n&&n[1]&&e.push(n[1].trim().toLowerCase()),t.toLowerCase().includes("statsig event:")&&e.push("statsig");let i=t.match(/:\s*([^:]+?)(?:\s+(?:type|mode|status|event))?:/);if(i&&i[1]){let s=i[1].trim().toLowerCase();s.length<30&&!s.includes(" ")&&e.push(s)}return Array.from(new Set(e))}function Cpe(t,e){return e?t.length===0?!1:e.isExclusive?!t.some(r=>e.exclude.includes(r)):t.some(r=>e.include.includes(r)):!0}function Ppe(t,e){if(!e)return!0;let r=Ope(t);return Cpe(r,e)}function zF(){return process.env.CLAUDE_CONFIG_DIR??(0,DF.join)((0,jF.homedir)(),".claude")}function B6(t){if(!t)return!1;if(typeof t=="boolean")return t;let e=t.toLowerCase().trim();return["1","true","yes","on"].includes(e)}var c$=15e4,Rv=3e4;function qF(t){return{name:t,default:Rv,validate:e=>{if(!e)return{effective:Rv,status:"valid"};let r=parseInt(e,10);return isNaN(r)||r<=0?{effective:Rv,status:"invalid",message:`Invalid value "${e}" (using default: ${Rv})`}:r>c$?{effective:c$,status:"capped",message:`Capped from ${r} to ${c$}`}:{effective:r,status:"valid"}}}}var Ape=qF("BASH_MAX_OUTPUT_LENGTH"),mDe=qF("TASK_MAX_OUTPUT_LENGTH"),Npe={name:"CLAUDE_CODE_MAX_OUTPUT_TOKENS",default:32e3,validate:t=>{if(!t)return{effective:32e3,status:"valid"};let n=parseInt(t,10);return isNaN(n)||n<=0?{effective:32e3,status:"invalid",message:`Invalid value "${t}" (using default: 32000)`}:n>64e3?{effective:64e3,status:"capped",message:`Capped from ${n} to 64000`}:{effective:n,status:"valid"}}};function Mpe(){let t="";return typeof process<"u"&&typeof process.cwd=="function"&&(t=(0,UF.realpathSync)((0,LF.cwd)())),{originalCwd:t,totalCostUSD:0,totalAPIDuration:0,totalAPIDurationWithoutRetries:0,totalToolDuration:0,startTime:Date.now(),lastInteractionTime:Date.now(),totalLinesAdded:0,totalLinesRemoved:0,hasUnknownModelCost:!1,cwd:t,modelUsage:{},mainLoopModelOverride:void 0,initialMainLoopModel:null,modelStrings:null,isInteractive:!1,clientType:"cli",sessionIngressToken:void 0,oauthTokenFromFd:void 0,apiKeyFromFd:void 0,flagSettingsPath:void 0,allowedSettingSources:["userSettings","projectSettings","localSettings","flagSettings","policySettings"],meter:null,sessionCounter:null,locCounter:null,prCounter:null,commitCounter:null,costCounter:null,tokenCounter:null,codeEditToolDecisionCounter:null,activeTimeCounter:null,sessionId:(0,FF.randomUUID)(),loggerProvider:null,eventLogger:null,meterProvider:null,tracerProvider:null,agentColorMap:new Map,agentColorIndex:0,envVarValidators:[Ape,Npe],lastAPIRequest:null,inMemoryErrorLog:[],inlinePlugins:[],sessionBypassPermissionsMode:!1,sessionPersistenceDisabled:!1,hasExitedPlanMode:!1,needsPlanModeExitAttachment:!1,hasExitedDelegateMode:!1,needsDelegateModeExitAttachment:!1,lspRecommendationShownThisSession:!1,initJsonSchema:null,registeredHooks:null,planSlugCache:new Map,teleportedSessionInfo:null,invokedSkills:new Map,slowOperations:[],sdkBetas:void 0}}var Dpe=Mpe();function jpe(){return Dpe.sessionId}function zpe({writeFn:t,flushIntervalMs:e=1e3,maxBufferSize:r=100,immediateMode:n=!1}){let i=[],s=null;function o(){s&&(clearTimeout(s),s=null)}function a(){i.length!==0&&(t(i.join("")),i=[],o())}function c(){s||(s=setTimeout(a,e))}return{write(u){if(n){t(u);return}i.push(u),c(),i.length>=r&&a()},flush:a,dispose(){a()}}}var G6=new Set;function Lpe(t){return G6.add(t),()=>G6.delete(t)}var HF=1/0;function Upe(t){return t===null?"null":t===void 0?"undefined":Array.isArray(t)?`Array[${t.length}]`:typeof t=="object"?`Object{${Object.keys(t).length} keys}`:typeof t=="string"?`string(${t.length} chars)`:typeof t}function ZF(t,e){let r=performance.now();try{return e()}finally{let n=performance.now()-r;n>HF&&(Ps(`[SLOW OPERATION DETECTED] ${t} (${n.toFixed(1)}ms)`),void 0)}}function Xi(t,e,r){let n=Upe(t);return ZF(`JSON.stringify(${n})`,()=>JSON.stringify(t,e,r))}var BF=(t,e)=>{let r=typeof t=="string"?t.length:0;return ZF(`JSON.parse(${r} chars)`,()=>JSON.parse(t,e))},Fpe=Jp(()=>B6(process.env.DEBUG)||B6(process.env.DEBUG_SDK)||process.argv.includes("--debug")||process.argv.includes("-d")||GF()||process.argv.some(t=>t.startsWith("--debug="))),qpe=Jp(()=>{let t=process.argv.find(r=>r.startsWith("--debug="));if(!t)return null;let e=t.substring(8);return Rpe(e)}),GF=Jp(()=>process.argv.includes("--debug-to-stderr")||process.argv.includes("-d2e"));function Hpe(t){if(typeof process>"u"||typeof process.versions>"u"||typeof process.versions.node>"u")return!1;let e=qpe();return Ppe(t,e)}var Zpe=!1,Ov=null;function Bpe(){return Ov||(Ov=zpe({writeFn:t=>{let e=WF();As().existsSync((0,_a.dirname)(e))||As().mkdirSync((0,_a.dirname)(e)),As().appendFileSync(e,t),Gpe()},flushIntervalMs:1e3,maxBufferSize:100,immediateMode:Fpe()}),Lpe(async()=>Ov?.dispose())),Ov}function Ps(t,{level:e}={level:"debug"}){if(!Hpe(t))return;Zpe&&t.includes(` -`)&&(t=Xi(t));let n=`${new Date().toISOString()} [${e.toUpperCase()}] ${t.trim()} -`;if(GF()){Ipe(n);return}Bpe().write(n)}function WF(){return process.env.CLAUDE_CODE_DEBUG_LOGS_DIR??(0,_a.join)(zF(),"debug",`${jpe()}.txt`)}var Gpe=Jp(()=>{if(process.argv[2]!=="--ripgrep")try{let t=WF(),e=(0,_a.dirname)(t),r=(0,_a.join)(e,"latest");if(As().existsSync(e)||As().mkdirSync(e),As().existsSync(r))try{As().unlinkSync(r)}catch{}As().symlinkSync(t,r)}catch{}});function er(t,e){let r=performance.now();try{return e()}finally{let n=performance.now()-r;n>HF&&(Ps(`[SLOW OPERATION DETECTED] fs.${t} (${n.toFixed(1)}ms)`),`${t}`,void 0)}}var Wpe={cwd(){return process.cwd()},existsSync(t){return er(`existsSync(${t})`,()=>$e.existsSync(t))},async stat(t){return(0,CF.stat)(t)},statSync(t){return er(`statSync(${t})`,()=>$e.statSync(t))},lstatSync(t){return er(`lstatSync(${t})`,()=>$e.lstatSync(t))},readFileSync(t,e){return er(`readFileSync(${t})`,()=>$e.readFileSync(t,{encoding:e.encoding}))},readFileBytesSync(t){return er(`readFileBytesSync(${t})`,()=>$e.readFileSync(t))},readSync(t,e){return er(`readSync(${t}, ${e.length} bytes)`,()=>{let r;try{r=$e.openSync(t,"r");let n=Buffer.alloc(e.length),i=$e.readSync(r,n,0,e.length,0);return{buffer:n,bytesRead:i}}finally{r&&$e.closeSync(r)}})},appendFileSync(t,e,r){return er(`appendFileSync(${t}, ${e.length} chars)`,()=>{if(!$e.existsSync(t)&&r?.mode!==void 0){let n=$e.openSync(t,"a",r.mode);try{$e.appendFileSync(n,e)}finally{$e.closeSync(n)}}else $e.appendFileSync(t,e)})},copyFileSync(t,e){return er(`copyFileSync(${t} \u2192 ${e})`,()=>$e.copyFileSync(t,e))},unlinkSync(t){return er(`unlinkSync(${t})`,()=>$e.unlinkSync(t))},renameSync(t,e){return er(`renameSync(${t} \u2192 ${e})`,()=>$e.renameSync(t,e))},linkSync(t,e){return er(`linkSync(${t} \u2192 ${e})`,()=>$e.linkSync(t,e))},symlinkSync(t,e){return er(`symlinkSync(${t} \u2192 ${e})`,()=>$e.symlinkSync(t,e))},readlinkSync(t){return er(`readlinkSync(${t})`,()=>$e.readlinkSync(t))},realpathSync(t){return er(`realpathSync(${t})`,()=>$e.realpathSync(t))},mkdirSync(t,e){return er(`mkdirSync(${t})`,()=>{if(!$e.existsSync(t)){let r={recursive:!0};e?.mode!==void 0&&(r.mode=e.mode),$e.mkdirSync(t,r)}})},readdirSync(t){return er(`readdirSync(${t})`,()=>$e.readdirSync(t,{withFileTypes:!0}))},readdirStringSync(t){return er(`readdirStringSync(${t})`,()=>$e.readdirSync(t))},isDirEmptySync(t){return er(`isDirEmptySync(${t})`,()=>this.readdirSync(t).length===0)},rmdirSync(t){return er(`rmdirSync(${t})`,()=>$e.rmdirSync(t))},rmSync(t,e){return er(`rmSync(${t})`,()=>$e.rmSync(t,e))},createWriteStream(t){return $e.createWriteStream(t)}},Vpe=Wpe;function As(){return Vpe}var ya=class extends Error{};function VF(){return process.versions.bun!==void 0}var Cv=null,W6=!1;function Kpe(){if(W6)return Cv;if(W6=!0,!process.env.DEBUG_CLAUDE_AGENT_SDK)return null;let t=(0,m$.join)(zF(),"debug");return Cv=(0,m$.join)(t,`sdk-${(0,KF.randomUUID)()}.txt`),(0,Pu.existsSync)(t)||(0,Pu.mkdirSync)(t,{recursive:!0}),process.stderr.write(`SDK debug logs: ${Cv} -`),Cv}function va(t){let e=Kpe();if(!e)return;let n=`${new Date().toISOString()} ${t} -`;(0,Pu.appendFileSync)(e,n)}function Jpe(t,e){let r={...t};if(e){let n={sandbox:e};if(r.settings)try{n={...BF(r.settings),sandbox:e}}catch{}r.settings=Xi(n)}return r}var h$=class{options;process;processStdin;processStdout;ready=!1;abortController;exitError;exitListeners=[];processExitHandler;abortHandler;constructor(e){this.options=e,this.abortController=e.abortController||IF(),this.initialize()}getDefaultExecutable(){return VF()?"bun":"node"}spawnLocalProcess(e){let{command:r,args:n,cwd:i,env:s,signal:o}=e,a=s.DEBUG_CLAUDE_AGENT_SDK||this.options.stderr?"pipe":"ignore",c=(0,RF.spawn)(r,n,{cwd:i,stdio:["pipe","pipe",a],signal:o,env:s,windowsHide:!0});return(s.DEBUG_CLAUDE_AGENT_SDK||this.options.stderr)&&c.stderr.on("data",l=>{let d=l.toString();va(d),this.options.stderr&&this.options.stderr(d)}),{stdin:c.stdin,stdout:c.stdout,get killed(){return c.killed},get exitCode(){return c.exitCode},kill:c.kill.bind(c),on:c.on.bind(c),once:c.once.bind(c),off:c.off.bind(c)}}initialize(){try{let{additionalDirectories:e=[],betas:r,cwd:n,executable:i=this.getDefaultExecutable(),executableArgs:s=[],extraArgs:o={},pathToClaudeCodeExecutable:a,env:c={...process.env},maxThinkingTokens:u,maxTurns:l,maxBudgetUsd:d,model:p,fallbackModel:f,jsonSchema:m,permissionMode:h,allowDangerouslySkipPermissions:g,permissionPromptToolName:v,continueConversation:S,resume:b,settingSources:y,allowedTools:x=[],disallowedTools:w=[],tools:E,mcpServers:T,strictMcpConfig:I,canUseTool:A,includePartialMessages:N,plugins:U,sandbox:V}=this.options,j=["--output-format","stream-json","--verbose","--input-format","stream-json"];if(u!==void 0&&j.push("--max-thinking-tokens",u.toString()),l&&j.push("--max-turns",l.toString()),d!==void 0&&j.push("--max-budget-usd",d.toString()),p&&j.push("--model",p),r&&r.length>0&&j.push("--betas",r.join(",")),m&&j.push("--json-schema",Xi(m)),c.DEBUG_CLAUDE_AGENT_SDK&&j.push("--debug-to-stderr"),A){if(v)throw new Error("canUseTool callback cannot be used with permissionPromptToolName. Please use one or the other.");j.push("--permission-prompt-tool","stdio")}else v&&j.push("--permission-prompt-tool",v);if(S&&j.push("--continue"),b&&j.push("--resume",b),x.length>0&&j.push("--allowedTools",x.join(",")),w.length>0&&j.push("--disallowedTools",w.join(",")),E!==void 0&&(Array.isArray(E)?E.length===0?j.push("--tools",""):j.push("--tools",E.join(",")):j.push("--tools","default")),T&&Object.keys(T).length>0&&j.push("--mcp-config",Xi({mcpServers:T})),y&&j.push("--setting-sources",y.join(",")),I&&j.push("--strict-mcp-config"),h&&j.push("--permission-mode",h),g&&j.push("--allow-dangerously-skip-permissions"),f){if(p&&f===p)throw new Error("Fallback model cannot be the same as the main model. Please specify a different model for fallbackModel option.");j.push("--fallback-model",f)}N&&j.push("--include-partial-messages");for(let C of e)j.push("--add-dir",C);if(U&&U.length>0)for(let C of U)if(C.type==="local")j.push("--plugin-dir",C.path);else throw new Error(`Unsupported plugin type: ${C.type}`);this.options.forkSession&&j.push("--fork-session"),this.options.resumeSessionAt&&j.push("--resume-session-at",this.options.resumeSessionAt),this.options.persistSession===!1&&j.push("--no-session-persistence");let ae=Jpe(o??{},V);for(let[C,H]of Object.entries(ae))H===null?j.push(`--${C}`):j.push(`--${C}`,H);c.CLAUDE_CODE_ENTRYPOINT||(c.CLAUDE_CODE_ENTRYPOINT="sdk-ts"),delete c.NODE_OPTIONS,c.DEBUG_CLAUDE_AGENT_SDK?c.DEBUG="1":delete c.DEBUG;let Me=Xpe(a),ze=Me?a:i,Et=Me?[...s,...j]:[...s,a,...j],Ge={command:ze,args:Et,cwd:n,env:c,signal:this.abortController.signal};if(this.options.spawnClaudeCodeProcess)va(`Spawning Claude Code (custom): ${ze} ${Et.join(" ")}`),this.process=this.options.spawnClaudeCodeProcess(Ge);else{if(!As().existsSync(a)){let H=Me?`Claude Code native binary not found at ${a}. Please ensure Claude Code is installed via native installer or specify a valid path with options.pathToClaudeCodeExecutable.`:`Claude Code executable not found at ${a}. Is options.pathToClaudeCodeExecutable set?`;throw new ReferenceError(H)}va(`Spawning Claude Code: ${ze} ${Et.join(" ")}`),this.process=this.spawnLocalProcess(Ge)}this.processStdin=this.process.stdin,this.processStdout=this.process.stdout;let K=()=>{this.process&&!this.process.killed&&this.process.kill("SIGTERM")};this.processExitHandler=K,this.abortHandler=K,process.on("exit",this.processExitHandler),this.abortController.signal.addEventListener("abort",this.abortHandler),this.process.on("error",C=>{this.ready=!1,this.abortController.signal.aborted?this.exitError=new ya("Claude Code process aborted by user"):(this.exitError=new Error(`Failed to spawn Claude Code process: ${C.message}`),va(this.exitError.message))}),this.process.on("exit",(C,H)=>{if(this.ready=!1,this.abortController.signal.aborted)this.exitError=new ya("Claude Code process aborted by user");else{let M=this.getProcessExitError(C,H);M&&(this.exitError=M,va(M.message))}}),this.ready=!0}catch(e){throw this.ready=!1,e}}getProcessExitError(e,r){if(e!==0&&e!==null)return new Error(`Claude Code process exited with code ${e}`);if(r)return new Error(`Claude Code process terminated by signal ${r}`)}write(e){if(this.abortController.signal.aborted)throw new ya("Operation aborted");if(!this.ready||!this.processStdin)throw new Error("ProcessTransport is not ready for writing");if(this.process?.killed||this.process?.exitCode!==null)throw new Error("Cannot write to terminated process");if(this.exitError)throw new Error(`Cannot write to process that exited with error: ${this.exitError.message}`);va(`[ProcessTransport] Writing to stdin: ${e.substring(0,100)}`);try{this.processStdin.write(e)||va("[ProcessTransport] Write buffer full, data queued")}catch(r){throw this.ready=!1,new Error(`Failed to write to process stdin: ${r.message}`)}}close(){this.processStdin&&(this.processStdin.end(),this.processStdin=void 0),this.abortHandler&&(this.abortController.signal.removeEventListener("abort",this.abortHandler),this.abortHandler=void 0);for(let{handler:e}of this.exitListeners)this.process?.off("exit",e);this.exitListeners=[],this.process&&!this.process.killed&&(this.process.kill("SIGTERM"),setTimeout(()=>{this.process&&!this.process.killed&&this.process.kill("SIGKILL")},5e3)),this.ready=!1,this.processExitHandler&&(process.off("exit",this.processExitHandler),this.processExitHandler=void 0)}isReady(){return this.ready}async*readMessages(){if(!this.processStdout)throw new Error("ProcessTransport output stream not available");let e=(0,OF.createInterface)({input:this.processStdout});try{for await(let r of e)r.trim()&&(yield BF(r));await this.waitForExit()}catch(r){throw r}finally{e.close()}}endInput(){this.processStdin&&this.processStdin.end()}getInputStream(){return this.processStdin}onExit(e){if(!this.process)return()=>{};let r=(n,i)=>{let s=this.getProcessExitError(n,i);e(s)};return this.process.on("exit",r),this.exitListeners.push({callback:e,handler:r}),()=>{this.process&&this.process.off("exit",r);let n=this.exitListeners.findIndex(i=>i.handler===r);n!==-1&&this.exitListeners.splice(n,1)}}async waitForExit(){if(!this.process){if(this.exitError)throw this.exitError;return}if(this.process.exitCode!==null||this.process.killed){if(this.exitError)throw this.exitError;return}return new Promise((e,r)=>{let n=(s,o)=>{if(this.abortController.signal.aborted){r(new ya("Operation aborted"));return}let a=this.getProcessExitError(s,o);a?r(a):e()};this.process.once("exit",n);let i=s=>{this.process.off("exit",n),r(s)};this.process.once("error",i),this.process.once("exit",()=>{this.process.off("error",i)})})}};function Xpe(t){return![".js",".mjs",".tsx",".ts",".jsx"].some(r=>t.endsWith(r))}var g$=class{returned;queue=[];readResolve;readReject;isDone=!1;hasError;started=!1;constructor(e){this.returned=e}[Symbol.asyncIterator](){if(this.started)throw new Error("Stream can only be iterated once");return this.started=!0,this}next(){return this.queue.length>0?Promise.resolve({done:!1,value:this.queue.shift()}):this.isDone?Promise.resolve({done:!0,value:void 0}):this.hasError?Promise.reject(this.hasError):new Promise((e,r)=>{this.readResolve=e,this.readReject=r})}enqueue(e){if(this.readResolve){let r=this.readResolve;this.readResolve=void 0,this.readReject=void 0,r({done:!1,value:e})}else this.queue.push(e)}done(){if(this.isDone=!0,this.readResolve){let e=this.readResolve;this.readResolve=void 0,this.readReject=void 0,e({done:!0,value:void 0})}}error(e){if(this.hasError=e,this.readReject){let r=this.readReject;this.readResolve=void 0,this.readReject=void 0,r(e)}}return(){return this.isDone=!0,this.returned&&this.returned(),Promise.resolve({done:!0,value:void 0})}},v$=class{sendMcpMessage;isClosed=!1;constructor(e){this.sendMcpMessage=e}onclose;onerror;onmessage;async start(){}async send(e){if(this.isClosed)throw new Error("Transport is closed");this.sendMcpMessage(e)}async close(){this.isClosed||(this.isClosed=!0,this.onclose?.())}},y$=class{transport;isSingleUserTurn;canUseTool;hooks;abortController;jsonSchema;initConfig;pendingControlResponses=new Map;cleanupPerformed=!1;sdkMessages;inputStream=new g$;initialization;cancelControllers=new Map;hookCallbacks=new Map;nextCallbackId=0;sdkMcpTransports=new Map;sdkMcpServerInstances=new Map;pendingMcpResponses=new Map;firstResultReceivedResolve;firstResultReceived=!1;hasBidirectionalNeeds(){return this.sdkMcpTransports.size>0||this.hooks!==void 0&&Object.keys(this.hooks).length>0||this.canUseTool!==void 0}constructor(e,r,n,i,s,o=new Map,a,c){this.transport=e,this.isSingleUserTurn=r,this.canUseTool=n,this.hooks=i,this.abortController=s,this.jsonSchema=a,this.initConfig=c;for(let[u,l]of o)this.connectSdkMcpServer(u,l);this.sdkMessages=this.readSdkMessages(),this.readMessages(),this.initialization=this.initialize(),this.initialization.catch(()=>{})}setError(e){this.inputStream.error(e)}cleanup(e){if(!this.cleanupPerformed){this.cleanupPerformed=!0;try{this.transport.close(),this.pendingControlResponses.clear(),this.pendingMcpResponses.clear(),this.cancelControllers.clear(),this.hookCallbacks.clear();for(let r of this.sdkMcpTransports.values())try{r.close()}catch{}this.sdkMcpTransports.clear(),e?this.inputStream.error(e):this.inputStream.done()}catch{}}}next(...[e]){return this.sdkMessages.next(e)}return(e){return this.sdkMessages.return(e)}throw(e){return this.sdkMessages.throw(e)}[Symbol.asyncIterator](){return this.sdkMessages}[Symbol.asyncDispose](){return this.sdkMessages[Symbol.asyncDispose]()}async readMessages(){try{for await(let e of this.transport.readMessages()){if(e.type==="control_response"){let r=this.pendingControlResponses.get(e.response.request_id);r&&r(e.response);continue}else if(e.type==="control_request"){this.handleControlRequest(e);continue}else if(e.type==="control_cancel_request"){this.handleControlCancelRequest(e);continue}else if(e.type==="keep_alive")continue;e.type==="result"&&(this.firstResultReceived=!0,this.firstResultReceivedResolve&&this.firstResultReceivedResolve(),this.isSingleUserTurn&&(Ps("[Query.readMessages] First result received for single-turn query, closing stdin"),this.transport.endInput())),this.inputStream.enqueue(e)}this.firstResultReceivedResolve&&this.firstResultReceivedResolve(),this.inputStream.done(),this.cleanup()}catch(e){this.firstResultReceivedResolve&&this.firstResultReceivedResolve(),this.inputStream.error(e),this.cleanup(e)}}async handleControlRequest(e){let r=new AbortController;this.cancelControllers.set(e.request_id,r);try{let n=await this.processControlRequest(e,r.signal),i={type:"control_response",response:{subtype:"success",request_id:e.request_id,response:n}};await Promise.resolve(this.transport.write(Xi(i)+` -`))}catch(n){let i={type:"control_response",response:{subtype:"error",request_id:e.request_id,error:n.message||String(n)}};await Promise.resolve(this.transport.write(Xi(i)+` -`))}finally{this.cancelControllers.delete(e.request_id)}}handleControlCancelRequest(e){let r=this.cancelControllers.get(e.request_id);r&&(r.abort(),this.cancelControllers.delete(e.request_id))}async processControlRequest(e,r){if(e.request.subtype==="can_use_tool"){if(!this.canUseTool)throw new Error("canUseTool callback is not provided.");return{...await this.canUseTool(e.request.tool_name,e.request.input,{signal:r,suggestions:e.request.permission_suggestions,blockedPath:e.request.blocked_path,decisionReason:e.request.decision_reason,toolUseID:e.request.tool_use_id,agentID:e.request.agent_id}),toolUseID:e.request.tool_use_id}}else{if(e.request.subtype==="hook_callback")return await this.handleHookCallbacks(e.request.callback_id,e.request.input,e.request.tool_use_id,r);if(e.request.subtype==="mcp_message"){let n=e.request,i=this.sdkMcpTransports.get(n.server_name);if(!i)throw new Error(`SDK MCP server not found: ${n.server_name}`);return"method"in n.message&&"id"in n.message&&n.message.id!==null?{mcp_response:await this.handleMcpControlRequest(n.server_name,n,i)}:(i.onmessage&&i.onmessage(n.message),{mcp_response:{jsonrpc:"2.0",result:{},id:0}})}}throw new Error("Unsupported control request subtype: "+e.request.subtype)}async*readSdkMessages(){for await(let e of this.inputStream)yield e}async initialize(){let e;if(this.hooks){e={};for(let[s,o]of Object.entries(this.hooks))o.length>0&&(e[s]=o.map(a=>{let c=[];for(let u of a.hooks){let l=`hook_${this.nextCallbackId++}`;this.hookCallbacks.set(l,u),c.push(l)}return{matcher:a.matcher,hookCallbackIds:c,timeout:a.timeout}}))}let r=this.sdkMcpTransports.size>0?Array.from(this.sdkMcpTransports.keys()):void 0,n={subtype:"initialize",hooks:e,sdkMcpServers:r,jsonSchema:this.jsonSchema,systemPrompt:this.initConfig?.systemPrompt,appendSystemPrompt:this.initConfig?.appendSystemPrompt,agents:this.initConfig?.agents};return(await this.request(n)).response}async interrupt(){await this.request({subtype:"interrupt"})}async setPermissionMode(e){await this.request({subtype:"set_permission_mode",mode:e})}async setModel(e){await this.request({subtype:"set_model",model:e})}async setMaxThinkingTokens(e){await this.request({subtype:"set_max_thinking_tokens",max_thinking_tokens:e})}async rewindFiles(e,r){return(await this.request({subtype:"rewind_files",user_message_id:e,dry_run:r?.dryRun})).response}async processPendingPermissionRequests(e){for(let r of e)r.request.subtype==="can_use_tool"&&this.handleControlRequest(r).catch(()=>{})}request(e){let r=Math.random().toString(36).substring(2,15),n={request_id:r,type:"control_request",request:e};return new Promise((i,s)=>{this.pendingControlResponses.set(r,o=>{o.subtype==="success"?i(o):(s(new Error(o.error)),o.pending_permission_requests&&this.processPendingPermissionRequests(o.pending_permission_requests))}),Promise.resolve(this.transport.write(Xi(n)+` -`))})}async supportedCommands(){return(await this.initialization).commands}async supportedModels(){return(await this.initialization).models}async mcpServerStatus(){return(await this.request({subtype:"mcp_status"})).response.mcpServers}async setMcpServers(e){let r={},n={};for(let[c,u]of Object.entries(e))u.type==="sdk"&&"instance"in u?r[c]=u.instance:n[c]=u;let i=new Set(this.sdkMcpServerInstances.keys()),s=new Set(Object.keys(r));for(let c of i)s.has(c)||await this.disconnectSdkMcpServer(c);for(let[c,u]of Object.entries(r))i.has(c)||this.connectSdkMcpServer(c,u);let o={};for(let c of Object.keys(r))o[c]={type:"sdk",name:c};return(await this.request({subtype:"mcp_set_servers",servers:{...n,...o}})).response}async accountInfo(){return(await this.initialization).account}async streamInput(e){Ps("[Query.streamInput] Starting to process input stream");try{let r=0;for await(let n of e){if(r++,Ps(`[Query.streamInput] Processing message ${r}: ${n.type}`),this.abortController?.signal.aborted)break;await Promise.resolve(this.transport.write(Xi(n)+` -`))}Ps(`[Query.streamInput] Finished processing ${r} messages from input stream`),r>0&&this.hasBidirectionalNeeds()&&(Ps("[Query.streamInput] Has bidirectional needs, waiting for first result"),await this.waitForFirstResult()),Ps("[Query] Calling transport.endInput() to close stdin to CLI process"),this.transport.endInput()}catch(r){if(!(r instanceof ya))throw r}}waitForFirstResult(){return this.firstResultReceived?(Ps("[Query.waitForFirstResult] Result already received, returning immediately"),Promise.resolve()):new Promise(e=>{if(this.abortController?.signal.aborted){e();return}this.abortController?.signal.addEventListener("abort",()=>e(),{once:!0}),this.firstResultReceivedResolve=e})}handleHookCallbacks(e,r,n,i){let s=this.hookCallbacks.get(e);if(!s)throw new Error(`No hook callback found for ID: ${e}`);return s(r,n,{signal:i})}connectSdkMcpServer(e,r){let n=new v$(i=>this.sendMcpServerMessageToCli(e,i));this.sdkMcpTransports.set(e,n),this.sdkMcpServerInstances.set(e,r),r.connect(n)}async disconnectSdkMcpServer(e){let r=this.sdkMcpTransports.get(e);r&&(await r.close(),this.sdkMcpTransports.delete(e)),this.sdkMcpServerInstances.delete(e)}sendMcpServerMessageToCli(e,r){if("id"in r&&r.id!==null&&r.id!==void 0){let i=`${e}:${r.id}`,s=this.pendingMcpResponses.get(i);if(s){s.resolve(r),this.pendingMcpResponses.delete(i);return}}let n={type:"control_request",request_id:(0,JF.randomUUID)(),request:{subtype:"mcp_message",server_name:e,message:r}};this.transport.write(Xi(n)+` -`)}handleMcpControlRequest(e,r,n){let i="id"in r.message?r.message.id:null,s=`${e}:${i}`;return new Promise((o,a)=>{let c=()=>{this.pendingMcpResponses.delete(s)},u=d=>{c(),o(d)},l=d=>{c(),a(d)};if(this.pendingMcpResponses.set(s,{resolve:u,reject:l}),n.onmessage)n.onmessage(r.message);else{c(),a(new Error("No message handler registered"));return}})}};var ot;(function(t){t.assertEqual=i=>{};function e(i){}t.assertIs=e;function r(i){throw new Error}t.assertNever=r,t.arrayToEnum=i=>{let s={};for(let o of i)s[o]=o;return s},t.getValidEnumValues=i=>{let s=t.objectKeys(i).filter(a=>typeof i[i[a]]!="number"),o={};for(let a of s)o[a]=i[a];return t.objectValues(o)},t.objectValues=i=>t.objectKeys(i).map(function(s){return i[s]}),t.objectKeys=typeof Object.keys=="function"?i=>Object.keys(i):i=>{let s=[];for(let o in i)Object.prototype.hasOwnProperty.call(i,o)&&s.push(o);return s},t.find=(i,s)=>{for(let o of i)if(s(o))return o},t.isInteger=typeof Number.isInteger=="function"?i=>Number.isInteger(i):i=>typeof i=="number"&&Number.isFinite(i)&&Math.floor(i)===i;function n(i,s=" | "){return i.map(o=>typeof o=="string"?`'${o}'`:o).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(i,s)=>typeof s=="bigint"?s.toString():s})(ot||(ot={}));var V6;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(V6||(V6={}));var oe=ot.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),yo=t=>{switch(typeof t){case"undefined":return oe.undefined;case"string":return oe.string;case"number":return Number.isNaN(t)?oe.nan:oe.number;case"boolean":return oe.boolean;case"function":return oe.function;case"bigint":return oe.bigint;case"symbol":return oe.symbol;case"object":return Array.isArray(t)?oe.array:t===null?oe.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?oe.promise:typeof Map<"u"&&t instanceof Map?oe.map:typeof Set<"u"&&t instanceof Set?oe.set:typeof Date<"u"&&t instanceof Date?oe.date:oe.object;default:return oe.unknown}},W=ot.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),Kn=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},i=s=>{for(let o of s.issues)if(o.code==="invalid_union")o.unionErrors.map(i);else if(o.code==="invalid_return_type")i(o.returnTypeError);else if(o.code==="invalid_arguments")i(o.argumentsError);else if(o.path.length===0)n._errors.push(r(o));else{let a=n,c=0;for(;cr.message){let r={},n=[];for(let i of this.issues)if(i.path.length>0){let s=i.path[0];r[s]=r[s]||[],r[s].push(e(i))}else n.push(e(i));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};Kn.create=t=>new Kn(t);var Ype=(t,e)=>{let r;switch(t.code){case W.invalid_type:t.received===oe.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case W.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,ot.jsonStringifyReplacer)}`;break;case W.unrecognized_keys:r=`Unrecognized key(s) in object: ${ot.joinValues(t.keys,", ")}`;break;case W.invalid_union:r="Invalid input";break;case W.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${ot.joinValues(t.options)}`;break;case W.invalid_enum_value:r=`Invalid enum value. Expected ${ot.joinValues(t.options)}, received '${t.received}'`;break;case W.invalid_arguments:r="Invalid function arguments";break;case W.invalid_return_type:r="Invalid function return type";break;case W.invalid_date:r="Invalid date";break;case W.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:ot.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case W.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case W.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case W.custom:r="Invalid input";break;case W.invalid_intersection_types:r="Intersection results could not be merged";break;case W.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case W.not_finite:r="Number must be finite";break;default:r=e.defaultError,ot.assertNever(t)}return{message:r}},jp=Ype,Qpe=jp;function _$(){return Qpe}var b$=t=>{let{data:e,path:r,errorMaps:n,issueData:i}=t,s=[...r,...i.path||[]],o={...i,path:s};if(i.message!==void 0)return{...i,path:s,message:i.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(o,{data:e,defaultError:a}).message;return{...i,path:s,message:a}};function te(t,e){let r=_$(),n=b$({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===jp?void 0:jp].filter(i=>!!i)});t.common.issues.push(n)}var en=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let i of r){if(i.status==="aborted")return ke;i.status==="dirty"&&e.dirty(),n.push(i.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let i of r){let s=await i.key,o=await i.value;n.push({key:s,value:o})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let i of r){let{key:s,value:o}=i;if(s.status==="aborted"||o.status==="aborted")return ke;s.status==="dirty"&&e.dirty(),o.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof o.value<"u"||i.alwaysSet)&&(n[s.value]=o.value)}return{status:e.value,value:n}}},ke=Object.freeze({status:"aborted"}),Np=t=>({status:"dirty",value:t}),gn=t=>({status:"valid",value:t}),K6=t=>t.status==="aborted",J6=t=>t.status==="dirty",hu=t=>t.status==="valid",zv=t=>typeof Promise<"u"&&t instanceof Promise,pe;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(pe||(pe={}));var Jn=class{constructor(e,r,n,i){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=i}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},X6=(t,e)=>{if(hu(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new Kn(t.common.issues);return this._error=r,this._error}}};function Ne(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:i}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:i}:{errorMap:(o,a)=>{let{message:c}=t;return o.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:o.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:i}}var Be=class{get description(){return this._def.description}_getType(e){return yo(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:yo(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new en,ctx:{common:e.parent.common,data:e.data,parsedType:yo(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(zv(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:yo(e)},i=this._parseSync({data:e,path:n.path,parent:n});return X6(n,i)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:yo(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return hu(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>hu(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:yo(e)},i=this._parse({data:e,path:n.path,parent:n}),s=await(zv(i)?i:Promise.resolve(i));return X6(n,s)}refine(e,r){let n=i=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(i):r;return this._refinement((i,s)=>{let o=e(i),a=()=>s.addIssue({code:W.custom,...n(i)});return typeof Promise<"u"&&o instanceof Promise?o.then(c=>c?!0:(a(),!1)):o?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,i)=>e(n)?!0:(i.addIssue(typeof r=="function"?r(n,i):r),!1))}_refinement(e){return new Si({schema:this,typeName:Te.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return bi.create(this,this._def)}nullable(){return Ms.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return So.create(this)}promise(){return ba.create(this,this._def)}or(e){return _u.create([this,e],this._def)}and(e){return bu.create(this,e,this._def)}transform(e){return new Si({...Ne(this._def),schema:this,typeName:Te.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new ku({...Ne(this._def),innerType:this,defaultValue:r,typeName:Te.ZodDefault})}brand(){return new Lv({typeName:Te.ZodBranded,type:this,...Ne(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Tu({...Ne(this._def),innerType:this,catchValue:r,typeName:Te.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Uv.create(this,e)}readonly(){return $u.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},efe=/^c[^\s-]{8,}$/i,tfe=/^[0-9a-z]+$/,rfe=/^[0-9A-HJKMNP-TV-Z]{26}$/i,nfe=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,ife=/^[a-z0-9_-]{21}$/i,sfe=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,ofe=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,afe=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,cfe="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",u$,ufe=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,lfe=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,dfe=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,pfe=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,ffe=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,mfe=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,XF="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",hfe=new RegExp(`^${XF}$`);function YF(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function gfe(t){return new RegExp(`^${YF(t)}$`)}function vfe(t){let e=`${XF}T${YF(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function yfe(t,e){return!!((e==="v4"||!e)&&ufe.test(t)||(e==="v6"||!e)&&dfe.test(t))}function _fe(t,e){if(!sfe.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),i=JSON.parse(atob(n));return!(typeof i!="object"||i===null||"typ"in i&&i?.typ!=="JWT"||!i.alg||e&&i.alg!==e)}catch{return!1}}function bfe(t,e){return!!((e==="v4"||!e)&&lfe.test(t)||(e==="v6"||!e)&&pfe.test(t))}var gu=class t extends Be{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==oe.string){let s=this._getOrReturnCtx(e);return te(s,{code:W.invalid_type,expected:oe.string,received:s.parsedType}),ke}let n=new en,i;for(let s of this._def.checks)if(s.kind==="min")e.data.lengths.value&&(i=this._getOrReturnCtx(e,i),te(i,{code:W.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let o=e.data.length>s.value,a=e.data.lengthe.test(i),{validation:r,code:W.invalid_string,...pe.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...pe.errToObj(e)})}url(e){return this._addCheck({kind:"url",...pe.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...pe.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...pe.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...pe.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...pe.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...pe.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...pe.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...pe.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...pe.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...pe.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...pe.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...pe.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...pe.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...pe.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...pe.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...pe.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...pe.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...pe.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...pe.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...pe.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...pe.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...pe.errToObj(r)})}nonempty(e){return this.min(1,pe.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew gu({checks:[],typeName:Te.ZodString,coerce:t?.coerce??!1,...Ne(t)});function Sfe(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,i=r>n?r:n,s=Number.parseInt(t.toFixed(i).replace(".","")),o=Number.parseInt(e.toFixed(i).replace(".",""));return s%o/10**i}var zp=class t extends Be{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==oe.number){let s=this._getOrReturnCtx(e);return te(s,{code:W.invalid_type,expected:oe.number,received:s.parsedType}),ke}let n,i=new en;for(let s of this._def.checks)s.kind==="int"?ot.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),te(n,{code:W.invalid_type,expected:"integer",received:"float",message:s.message}),i.dirty()):s.kind==="min"?(s.inclusive?e.datas.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),te(n,{code:W.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),i.dirty()):s.kind==="multipleOf"?Sfe(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),te(n,{code:W.not_multiple_of,multipleOf:s.value,message:s.message}),i.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),te(n,{code:W.not_finite,message:s.message}),i.dirty()):ot.assertNever(s);return{status:i.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,pe.toString(r))}gt(e,r){return this.setLimit("min",e,!1,pe.toString(r))}lte(e,r){return this.setLimit("max",e,!0,pe.toString(r))}lt(e,r){return this.setLimit("max",e,!1,pe.toString(r))}setLimit(e,r,n,i){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:pe.toString(i)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:pe.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:pe.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:pe.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:pe.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:pe.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:pe.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:pe.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:pe.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:pe.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuee.kind==="int"||e.kind==="multipleOf"&&ot.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.valuenew zp({checks:[],typeName:Te.ZodNumber,coerce:t?.coerce||!1,...Ne(t)});var Lp=class t extends Be{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==oe.bigint)return this._getInvalidInput(e);let n,i=new en;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.datas.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),te(n,{code:W.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),i.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),te(n,{code:W.not_multiple_of,multipleOf:s.value,message:s.message}),i.dirty()):ot.assertNever(s);return{status:i.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return te(r,{code:W.invalid_type,expected:oe.bigint,received:r.parsedType}),ke}gte(e,r){return this.setLimit("min",e,!0,pe.toString(r))}gt(e,r){return this.setLimit("min",e,!1,pe.toString(r))}lte(e,r){return this.setLimit("max",e,!0,pe.toString(r))}lt(e,r){return this.setLimit("max",e,!1,pe.toString(r))}setLimit(e,r,n,i){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:pe.toString(i)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:pe.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:pe.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:pe.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:pe.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:pe.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew Lp({checks:[],typeName:Te.ZodBigInt,coerce:t?.coerce??!1,...Ne(t)});var Up=class extends Be{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==oe.boolean){let n=this._getOrReturnCtx(e);return te(n,{code:W.invalid_type,expected:oe.boolean,received:n.parsedType}),ke}return gn(e.data)}};Up.create=t=>new Up({typeName:Te.ZodBoolean,coerce:t?.coerce||!1,...Ne(t)});var Fp=class t extends Be{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==oe.date){let s=this._getOrReturnCtx(e);return te(s,{code:W.invalid_type,expected:oe.date,received:s.parsedType}),ke}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return te(s,{code:W.invalid_date}),ke}let n=new en,i;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()s.value&&(i=this._getOrReturnCtx(e,i),te(i,{code:W.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):ot.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:pe.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:pe.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew Fp({checks:[],coerce:t?.coerce||!1,typeName:Te.ZodDate,...Ne(t)});var qp=class extends Be{_parse(e){if(this._getType(e)!==oe.symbol){let n=this._getOrReturnCtx(e);return te(n,{code:W.invalid_type,expected:oe.symbol,received:n.parsedType}),ke}return gn(e.data)}};qp.create=t=>new qp({typeName:Te.ZodSymbol,...Ne(t)});var vu=class extends Be{_parse(e){if(this._getType(e)!==oe.undefined){let n=this._getOrReturnCtx(e);return te(n,{code:W.invalid_type,expected:oe.undefined,received:n.parsedType}),ke}return gn(e.data)}};vu.create=t=>new vu({typeName:Te.ZodUndefined,...Ne(t)});var yu=class extends Be{_parse(e){if(this._getType(e)!==oe.null){let n=this._getOrReturnCtx(e);return te(n,{code:W.invalid_type,expected:oe.null,received:n.parsedType}),ke}return gn(e.data)}};yu.create=t=>new yu({typeName:Te.ZodNull,...Ne(t)});var Hp=class extends Be{constructor(){super(...arguments),this._any=!0}_parse(e){return gn(e.data)}};Hp.create=t=>new Hp({typeName:Te.ZodAny,...Ne(t)});var bo=class extends Be{constructor(){super(...arguments),this._unknown=!0}_parse(e){return gn(e.data)}};bo.create=t=>new bo({typeName:Te.ZodUnknown,...Ne(t)});var Qi=class extends Be{_parse(e){let r=this._getOrReturnCtx(e);return te(r,{code:W.invalid_type,expected:oe.never,received:r.parsedType}),ke}};Qi.create=t=>new Qi({typeName:Te.ZodNever,...Ne(t)});var Zp=class extends Be{_parse(e){if(this._getType(e)!==oe.undefined){let n=this._getOrReturnCtx(e);return te(n,{code:W.invalid_type,expected:oe.void,received:n.parsedType}),ke}return gn(e.data)}};Zp.create=t=>new Zp({typeName:Te.ZodVoid,...Ne(t)});var So=class t extends Be{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),i=this._def;if(r.parsedType!==oe.array)return te(r,{code:W.invalid_type,expected:oe.array,received:r.parsedType}),ke;if(i.exactLength!==null){let o=r.data.length>i.exactLength.value,a=r.data.lengthi.maxLength.value&&(te(r,{code:W.too_big,maximum:i.maxLength.value,type:"array",inclusive:!0,exact:!1,message:i.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((o,a)=>i.type._parseAsync(new Jn(r,o,r.path,a)))).then(o=>en.mergeArray(n,o));let s=[...r.data].map((o,a)=>i.type._parseSync(new Jn(r,o,r.path,a)));return en.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:pe.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:pe.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:pe.toString(r)}})}nonempty(e){return this.min(1,e)}};So.create=(t,e)=>new So({type:t,minLength:null,maxLength:null,exactLength:null,typeName:Te.ZodArray,...Ne(e)});function pu(t){if(t instanceof On){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=bi.create(pu(n))}return new On({...t._def,shape:()=>e})}else return t instanceof So?new So({...t._def,type:pu(t.element)}):t instanceof bi?bi.create(pu(t.unwrap())):t instanceof Ms?Ms.create(pu(t.unwrap())):t instanceof Ns?Ns.create(t.items.map(e=>pu(e))):t}var On=class t extends Be{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=ot.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==oe.object){let u=this._getOrReturnCtx(e);return te(u,{code:W.invalid_type,expected:oe.object,received:u.parsedType}),ke}let{status:n,ctx:i}=this._processInputParams(e),{shape:s,keys:o}=this._getCached(),a=[];if(!(this._def.catchall instanceof Qi&&this._def.unknownKeys==="strip"))for(let u in i.data)o.includes(u)||a.push(u);let c=[];for(let u of o){let l=s[u],d=i.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new Jn(i,d,i.path,u)),alwaysSet:u in i.data})}if(this._def.catchall instanceof Qi){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:i.data[l]}});else if(u==="strict")a.length>0&&(te(i,{code:W.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=i.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new Jn(i,d,i.path,l)),alwaysSet:l in i.data})}}return i.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,p=await l.value;u.push({key:d,value:p,alwaysSet:l.alwaysSet})}return u}).then(u=>en.mergeObjectSync(n,u)):en.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return pe.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let i=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:pe.errToObj(e).message??i}:{message:i}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:Te.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of ot.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of ot.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return pu(this)}partial(e){let r={};for(let n of ot.objectKeys(this.shape)){let i=this.shape[n];e&&!e[n]?r[n]=i:r[n]=i.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of ot.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof bi;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return QF(ot.objectKeys(this.shape))}};On.create=(t,e)=>new On({shape:()=>t,unknownKeys:"strip",catchall:Qi.create(),typeName:Te.ZodObject,...Ne(e)});On.strictCreate=(t,e)=>new On({shape:()=>t,unknownKeys:"strict",catchall:Qi.create(),typeName:Te.ZodObject,...Ne(e)});On.lazycreate=(t,e)=>new On({shape:t,unknownKeys:"strip",catchall:Qi.create(),typeName:Te.ZodObject,...Ne(e)});var _u=class extends Be{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function i(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let o=s.map(a=>new Kn(a.ctx.common.issues));return te(r,{code:W.invalid_union,unionErrors:o}),ke}if(r.common.async)return Promise.all(n.map(async s=>{let o={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:o}),ctx:o}})).then(i);{let s,o=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!s&&(s={result:l,ctx:u}),u.common.issues.length&&o.push(u.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let a=o.map(c=>new Kn(c));return te(r,{code:W.invalid_union,unionErrors:a}),ke}}get options(){return this._def.options}};_u.create=(t,e)=>new _u({options:t,typeName:Te.ZodUnion,...Ne(e)});var Cs=t=>t instanceof Su?Cs(t.schema):t instanceof Si?Cs(t.innerType()):t instanceof xu?[t.value]:t instanceof wu?t.options:t instanceof Eu?ot.objectValues(t.enum):t instanceof ku?Cs(t._def.innerType):t instanceof vu?[void 0]:t instanceof yu?[null]:t instanceof bi?[void 0,...Cs(t.unwrap())]:t instanceof Ms?[null,...Cs(t.unwrap())]:t instanceof Lv||t instanceof $u?Cs(t.unwrap()):t instanceof Tu?Cs(t._def.innerType):[],S$=class t extends Be{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==oe.object)return te(r,{code:W.invalid_type,expected:oe.object,received:r.parsedType}),ke;let n=this.discriminator,i=r.data[n],s=this.optionsMap.get(i);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(te(r,{code:W.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),ke)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let i=new Map;for(let s of r){let o=Cs(s.shape[e]);if(!o.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of o){if(i.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);i.set(a,s)}}return new t({typeName:Te.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:i,...Ne(n)})}};function x$(t,e){let r=yo(t),n=yo(e);if(t===e)return{valid:!0,data:t};if(r===oe.object&&n===oe.object){let i=ot.objectKeys(e),s=ot.objectKeys(t).filter(a=>i.indexOf(a)!==-1),o={...t,...e};for(let a of s){let c=x$(t[a],e[a]);if(!c.valid)return{valid:!1};o[a]=c.data}return{valid:!0,data:o}}else if(r===oe.array&&n===oe.array){if(t.length!==e.length)return{valid:!1};let i=[];for(let s=0;s{if(K6(s)||K6(o))return ke;let a=x$(s.value,o.value);return a.valid?((J6(s)||J6(o))&&r.dirty(),{status:r.value,value:a.data}):(te(n,{code:W.invalid_intersection_types}),ke)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,o])=>i(s,o)):i(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};bu.create=(t,e,r)=>new bu({left:t,right:e,typeName:Te.ZodIntersection,...Ne(r)});var Ns=class t extends Be{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==oe.array)return te(n,{code:W.invalid_type,expected:oe.array,received:n.parsedType}),ke;if(n.data.lengththis._def.items.length&&(te(n,{code:W.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((o,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new Jn(n,o,n.path,a)):null}).filter(o=>!!o);return n.common.async?Promise.all(s).then(o=>en.mergeArray(r,o)):en.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Ns.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Ns({items:t,typeName:Te.ZodTuple,rest:null,...Ne(e)})};var w$=class t extends Be{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==oe.object)return te(n,{code:W.invalid_type,expected:oe.object,received:n.parsedType}),ke;let i=[],s=this._def.keyType,o=this._def.valueType;for(let a in n.data)i.push({key:s._parse(new Jn(n,a,n.path,a)),value:o._parse(new Jn(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?en.mergeObjectAsync(r,i):en.mergeObjectSync(r,i)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof Be?new t({keyType:e,valueType:r,typeName:Te.ZodRecord,...Ne(n)}):new t({keyType:gu.create(),valueType:e,typeName:Te.ZodRecord,...Ne(r)})}},Bp=class extends Be{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==oe.map)return te(n,{code:W.invalid_type,expected:oe.map,received:n.parsedType}),ke;let i=this._def.keyType,s=this._def.valueType,o=[...n.data.entries()].map(([a,c],u)=>({key:i._parse(new Jn(n,a,n.path,[u,"key"])),value:s._parse(new Jn(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of o){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return ke;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of o){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return ke;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};Bp.create=(t,e,r)=>new Bp({valueType:e,keyType:t,typeName:Te.ZodMap,...Ne(r)});var Gp=class t extends Be{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==oe.set)return te(n,{code:W.invalid_type,expected:oe.set,received:n.parsedType}),ke;let i=this._def;i.minSize!==null&&n.data.sizei.maxSize.value&&(te(n,{code:W.too_big,maximum:i.maxSize.value,type:"set",inclusive:!0,exact:!1,message:i.maxSize.message}),r.dirty());let s=this._def.valueType;function o(c){let u=new Set;for(let l of c){if(l.status==="aborted")return ke;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new Jn(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>o(c)):o(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:pe.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:pe.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};Gp.create=(t,e)=>new Gp({valueType:t,minSize:null,maxSize:null,typeName:Te.ZodSet,...Ne(e)});var E$=class t extends Be{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==oe.function)return te(r,{code:W.invalid_type,expected:oe.function,received:r.parsedType}),ke;function n(a,c){return b$({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,_$(),jp].filter(u=>!!u),issueData:{code:W.invalid_arguments,argumentsError:c}})}function i(a,c){return b$({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,_$(),jp].filter(u=>!!u),issueData:{code:W.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},o=r.data;if(this._def.returns instanceof ba){let a=this;return gn(async function(...c){let u=new Kn([]),l=await a._def.args.parseAsync(c,s).catch(f=>{throw u.addIssue(n(c,f)),u}),d=await Reflect.apply(o,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(f=>{throw u.addIssue(i(d,f)),u})})}else{let a=this;return gn(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Kn([n(c,u.error)]);let l=Reflect.apply(o,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Kn([i(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Ns.create(e).rest(bo.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||Ns.create([]).rest(bo.create()),returns:r||bo.create(),typeName:Te.ZodFunction,...Ne(n)})}},Su=class extends Be{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Su.create=(t,e)=>new Su({getter:t,typeName:Te.ZodLazy,...Ne(e)});var xu=class extends Be{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return te(r,{received:r.data,code:W.invalid_literal,expected:this._def.value}),ke}return{status:"valid",value:e.data}}get value(){return this._def.value}};xu.create=(t,e)=>new xu({value:t,typeName:Te.ZodLiteral,...Ne(e)});function QF(t,e){return new wu({values:t,typeName:Te.ZodEnum,...Ne(e)})}var wu=class t extends Be{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return te(r,{expected:ot.joinValues(n),received:r.parsedType,code:W.invalid_type}),ke}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return te(r,{received:r.data,code:W.invalid_enum_value,options:n}),ke}return gn(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};wu.create=QF;var Eu=class extends Be{_parse(e){let r=ot.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==oe.string&&n.parsedType!==oe.number){let i=ot.objectValues(r);return te(n,{expected:ot.joinValues(i),received:n.parsedType,code:W.invalid_type}),ke}if(this._cache||(this._cache=new Set(ot.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let i=ot.objectValues(r);return te(n,{received:n.data,code:W.invalid_enum_value,options:i}),ke}return gn(e.data)}get enum(){return this._def.values}};Eu.create=(t,e)=>new Eu({values:t,typeName:Te.ZodNativeEnum,...Ne(e)});var ba=class extends Be{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==oe.promise&&r.common.async===!1)return te(r,{code:W.invalid_type,expected:oe.promise,received:r.parsedType}),ke;let n=r.parsedType===oe.promise?r.data:Promise.resolve(r.data);return gn(n.then(i=>this._def.type.parseAsync(i,{path:r.path,errorMap:r.common.contextualErrorMap})))}};ba.create=(t,e)=>new ba({type:t,typeName:Te.ZodPromise,...Ne(e)});var Si=class extends Be{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===Te.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),i=this._def.effect||null,s={addIssue:o=>{te(n,o),o.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),i.type==="preprocess"){let o=i.transform(n.data,s);if(n.common.async)return Promise.resolve(o).then(async a=>{if(r.value==="aborted")return ke;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?ke:c.status==="dirty"||r.value==="dirty"?Np(c.value):c});{if(r.value==="aborted")return ke;let a=this._def.schema._parseSync({data:o,path:n.path,parent:n});return a.status==="aborted"?ke:a.status==="dirty"||r.value==="dirty"?Np(a.value):a}}if(i.type==="refinement"){let o=a=>{let c=i.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?ke:(a.status==="dirty"&&r.dirty(),o(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?ke:(a.status==="dirty"&&r.dirty(),o(a.value).then(()=>({status:r.value,value:a.value}))))}if(i.type==="transform")if(n.common.async===!1){let o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!hu(o))return ke;let a=i.transform(o.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>hu(o)?Promise.resolve(i.transform(o.value,s)).then(a=>({status:r.value,value:a})):ke);ot.assertNever(i)}};Si.create=(t,e,r)=>new Si({schema:t,typeName:Te.ZodEffects,effect:e,...Ne(r)});Si.createWithPreprocess=(t,e,r)=>new Si({schema:e,effect:{type:"preprocess",transform:t},typeName:Te.ZodEffects,...Ne(r)});var bi=class extends Be{_parse(e){return this._getType(e)===oe.undefined?gn(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};bi.create=(t,e)=>new bi({innerType:t,typeName:Te.ZodOptional,...Ne(e)});var Ms=class extends Be{_parse(e){return this._getType(e)===oe.null?gn(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ms.create=(t,e)=>new Ms({innerType:t,typeName:Te.ZodNullable,...Ne(e)});var ku=class extends Be{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===oe.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};ku.create=(t,e)=>new ku({innerType:t,typeName:Te.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Ne(e)});var Tu=class extends Be{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},i=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return zv(i)?i.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Kn(n.common.issues)},input:n.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new Kn(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Tu.create=(t,e)=>new Tu({innerType:t,typeName:Te.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Ne(e)});var Wp=class extends Be{_parse(e){if(this._getType(e)!==oe.nan){let n=this._getOrReturnCtx(e);return te(n,{code:W.invalid_type,expected:oe.nan,received:n.parsedType}),ke}return{status:"valid",value:e.data}}};Wp.create=t=>new Wp({typeName:Te.ZodNaN,...Ne(t)});var Lv=class extends Be{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},Uv=class t extends Be{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?ke:s.status==="dirty"?(r.dirty(),Np(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let i=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?ke:i.status==="dirty"?(r.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:Te.ZodPipeline})}},$u=class extends Be{_parse(e){let r=this._def.innerType._parse(e),n=i=>(hu(i)&&(i.value=Object.freeze(i.value)),i);return zv(r)?r.then(i=>n(i)):n(r)}unwrap(){return this._def.innerType}};$u.create=(t,e)=>new $u({innerType:t,typeName:Te.ZodReadonly,...Ne(e)});var hDe={object:On.lazycreate},Te;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(Te||(Te={}));var gDe=gu.create,vDe=zp.create,yDe=Wp.create,_De=Lp.create,bDe=Up.create,SDe=Fp.create,xDe=qp.create,wDe=vu.create,EDe=yu.create,kDe=Hp.create,TDe=bo.create,$De=Qi.create,IDe=Zp.create,RDe=So.create,ODe=On.create,CDe=On.strictCreate,PDe=_u.create,ADe=S$.create,NDe=bu.create,MDe=Ns.create,DDe=w$.create,jDe=Bp.create,zDe=Gp.create,LDe=E$.create,UDe=Su.create,FDe=xu.create,qDe=wu.create,HDe=Eu.create,ZDe=ba.create,BDe=Si.create,GDe=bi.create,WDe=Ms.create,VDe=Si.createWithPreprocess,KDe=Uv.create,JDe=Object.freeze({status:"aborted"});function q(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in o.prototype)l in a||Object.defineProperty(a,l,{value:o.prototype[l].bind(a)});a._zod.constr=o,a._zod.def=c}let i=r?.Parent??Object;class s extends i{}Object.defineProperty(s,"name",{value:t});function o(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(o,"init",{value:n}),Object.defineProperty(o,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(o,"name",{value:t}),o}var Sa=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},k$={};function Ds(t){return t&&Object.assign(k$,t),k$}var At={};yF(At,{unwrapMessage:()=>Mp,stringifyPrimitive:()=>U$,required:()=>Ufe,randomString:()=>Rfe,propertyKeyTypes:()=>iq,promiseAllObject:()=>Ife,primitiveTypes:()=>Pfe,prefixIssues:()=>_o,pick:()=>Mfe,partial:()=>Lfe,optionalKeys:()=>sq,omit:()=>Dfe,numKeys:()=>Ofe,nullish:()=>Jv,normalizeParams:()=>xe,merge:()=>zfe,jsonStringifyReplacer:()=>tq,joinValues:()=>T$,issue:()=>aq,isPlainObject:()=>Kp,isObject:()=>Vp,getSizableOrigin:()=>Ffe,getParsedType:()=>Cfe,getLengthableOrigin:()=>Yv,getEnumValues:()=>eq,getElementAtPath:()=>$fe,floatSafeRemainder:()=>rq,finalizeIssue:()=>js,extend:()=>jfe,escapeRegex:()=>Au,esc:()=>fu,defineLazy:()=>Nt,createTransparentProxy:()=>Afe,clone:()=>wo,cleanRegex:()=>Xv,cleanEnum:()=>qfe,captureStackTrace:()=>L$,cached:()=>Kv,assignProp:()=>z$,assertNotEqual:()=>wfe,assertNever:()=>kfe,assertIs:()=>Efe,assertEqual:()=>xfe,assert:()=>Tfe,allowsEval:()=>nq,aborted:()=>mu,NUMBER_FORMAT_RANGES:()=>oq,Class:()=>$$,BIGINT_FORMAT_RANGES:()=>Nfe});function xfe(t){return t}function wfe(t){return t}function Efe(t){}function kfe(t){throw new Error}function Tfe(t){}function eq(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,i])=>e.indexOf(+n)===-1).map(([n,i])=>i)}function T$(t,e="|"){return t.map(r=>U$(r)).join(e)}function tq(t,e){return typeof e=="bigint"?e.toString():e}function Kv(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Jv(t){return t==null}function Xv(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function rq(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,i=r>n?r:n,s=Number.parseInt(t.toFixed(i).replace(".","")),o=Number.parseInt(e.toFixed(i).replace(".",""));return s%o/10**i}function Nt(t,e,r){Object.defineProperty(t,e,{get(){{let i=r();return t[e]=i,i}throw new Error("cached value already set")},set(i){Object.defineProperty(t,e,{value:i})},configurable:!0})}function z$(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function $fe(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function Ife(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let i={};for(let s=0;s{};function Vp(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var nq=Kv(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function Kp(t){if(Vp(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(Vp(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function Ofe(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var Cfe=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},iq=new Set(["string","number","symbol"]),Pfe=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Au(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function wo(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function xe(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function Afe(t){let e;return new Proxy({},{get(r,n,i){return e??(e=t()),Reflect.get(e,n,i)},set(r,n,i,s){return e??(e=t()),Reflect.set(e,n,i,s)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,i){return e??(e=t()),Reflect.defineProperty(e,n,i)}})}function U$(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function sq(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var oq={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},Nfe={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Mfe(t,e){let r={},n=t._zod.def;for(let i in e){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);e[i]&&(r[i]=n.shape[i])}return wo(t,{...t._zod.def,shape:r,checks:[]})}function Dfe(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let i in e){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);e[i]&&delete r[i]}return wo(t,{...t._zod.def,shape:r,checks:[]})}function jfe(t,e){if(!Kp(e))throw new Error("Invalid input to extend: expected a plain object");let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return z$(this,"shape",n),n},checks:[]};return wo(t,r)}function zfe(t,e){return wo(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return z$(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function Lfe(t,e,r){let n=e._zod.def.shape,i={...n};if(r)for(let s in r){if(!(s in n))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(i[s]=t?new t({type:"optional",innerType:n[s]}):n[s])}else for(let s in n)i[s]=t?new t({type:"optional",innerType:n[s]}):n[s];return wo(e,{...e._zod.def,shape:i,checks:[]})}function Ufe(t,e,r){let n=e._zod.def.shape,i={...n};if(r)for(let s in r){if(!(s in i))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(i[s]=new t({type:"nonoptional",innerType:n[s]}))}else for(let s in n)i[s]=new t({type:"nonoptional",innerType:n[s]});return wo(e,{...e._zod.def,shape:i,checks:[]})}function mu(t,e=0){for(let r=e;r{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function Mp(t){return typeof t=="string"?t:t?.message}function js(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let i=Mp(t.inst?._zod.def?.error?.(t))??Mp(e?.error?.(t))??Mp(r.customError?.(t))??Mp(r.localeError?.(t))??"Invalid input";n.message=i}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Ffe(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Yv(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function aq(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function qfe(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var $$=class{constructor(...e){}},cq=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),Object.defineProperty(t,"message",{get(){return JSON.stringify(e,tq,2)},enumerable:!0})},uq=q("$ZodError",cq),lq=q("$ZodError",cq,{Parent:Error});function Hfe(t,e=r=>r.message){let r={},n=[];for(let i of t.issues)i.path.length>0?(r[i.path[0]]=r[i.path[0]]||[],r[i.path[0]].push(e(i))):n.push(e(i));return{formErrors:n,fieldErrors:r}}function Zfe(t,e){let r=e||function(s){return s.message},n={_errors:[]},i=s=>{for(let o of s.issues)if(o.code==="invalid_union"&&o.errors.length)o.errors.map(a=>i({issues:a}));else if(o.code==="invalid_key")i({issues:o.issues});else if(o.code==="invalid_element")i({issues:o.issues});else if(o.path.length===0)n._errors.push(r(o));else{let a=n,c=0;for(;c(e,r,n,i)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},o=e._zod.run({value:r,issues:[]},s);if(o instanceof Promise)throw new Sa;if(o.issues.length){let a=new(i?.Err??t)(o.issues.map(c=>js(c,s,Ds())));throw L$(a,i?.callee),a}return o.value};var Gfe=t=>async(e,r,n,i)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},o=e._zod.run({value:r,issues:[]},s);if(o instanceof Promise&&(o=await o),o.issues.length){let a=new(i?.Err??t)(o.issues.map(c=>js(c,s,Ds())));throw L$(a,i?.callee),a}return o.value};var dq=t=>(e,r,n)=>{let i=n?{...n,async:!1}:{async:!1},s=e._zod.run({value:r,issues:[]},i);if(s instanceof Promise)throw new Sa;return s.issues.length?{success:!1,error:new(t??uq)(s.issues.map(o=>js(o,i,Ds())))}:{success:!0,data:s.value}},Wfe=dq(lq),pq=t=>async(e,r,n)=>{let i=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},i);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(o=>js(o,i,Ds())))}:{success:!0,data:s.value}},Vfe=pq(lq),Kfe=/^[cC][^\s-]{8,}$/,Jfe=/^[0-9a-z]+$/,Xfe=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Yfe=/^[0-9a-vA-V]{20}$/,Qfe=/^[A-Za-z0-9]{27}$/,eme=/^[a-zA-Z0-9_-]{21}$/,tme=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,rme=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Y6=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/,nme=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,ime="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function sme(){return new RegExp(ime,"u")}var ome=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ame=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,cme=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,ume=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,lme=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,fq=/^[A-Za-z0-9_-]*$/,dme=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,pme=/^\+(?:[0-9]){6,14}[0-9]$/,mq="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",fme=new RegExp(`^${mq}$`);function hq(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function mme(t){return new RegExp(`^${hq(t)}$`)}function hme(t){let e=hq({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-]\\d{2}:\\d{2})");let n=`${e}(?:${r.join("|")})`;return new RegExp(`^${mq}T(?:${n})$`)}var gme=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},vme=/^\d+$/,yme=/^-?\d+(?:\.\d+)?/i,_me=/true|false/i,bme=/null/i,Sme=/^[^A-Z]*$/,xme=/^[^a-z]*$/,vn=q("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),gq={number:"number",bigint:"bigint",object:"date"},vq=q("$ZodCheckLessThan",(t,e)=>{vn.init(t,e);let r=gq[typeof e.value];t._zod.onattach.push(n=>{let i=n._zod.bag,s=(e.inclusive?i.maximum:i.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value{(e.inclusive?n.value<=e.value:n.value{vn.init(t,e);let r=gq[typeof e.value];t._zod.onattach.push(n=>{let i=n._zod.bag,s=(e.inclusive?i.minimum:i.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>s&&(e.inclusive?i.minimum=e.value:i.exclusiveMinimum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value>=e.value:n.value>e.value)||n.issues.push({origin:r,code:"too_small",minimum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),wme=q("$ZodCheckMultipleOf",(t,e)=>{vn.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):rq(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),Eme=q("$ZodCheckNumberFormat",(t,e)=>{vn.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[i,s]=oq[e.format];t._zod.onattach.push(o=>{let a=o._zod.bag;a.format=e.format,a.minimum=i,a.maximum=s,r&&(a.pattern=vme)}),t._zod.check=o=>{let a=o.value;if(r){if(!Number.isInteger(a)){o.issues.push({expected:n,format:e.format,code:"invalid_type",input:a,inst:t});return}if(!Number.isSafeInteger(a)){a>0?o.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort}):o.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort});return}}as&&o.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inst:t})}}),kme=q("$ZodCheckMaxLength",(t,e)=>{vn.init(t,e),t._zod.when=r=>{let n=r.value;return!Jv(n)&&n.length!==void 0},t._zod.onattach.push(r=>{let n=r._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum{let n=r.value;if(n.length<=e.maximum)return;let s=Yv(n);r.issues.push({origin:s,code:"too_big",maximum:e.maximum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),Tme=q("$ZodCheckMinLength",(t,e)=>{vn.init(t,e),t._zod.when=r=>{let n=r.value;return!Jv(n)&&n.length!==void 0},t._zod.onattach.push(r=>{let n=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>n&&(r._zod.bag.minimum=e.minimum)}),t._zod.check=r=>{let n=r.value;if(n.length>=e.minimum)return;let s=Yv(n);r.issues.push({origin:s,code:"too_small",minimum:e.minimum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),$me=q("$ZodCheckLengthEquals",(t,e)=>{vn.init(t,e),t._zod.when=r=>{let n=r.value;return!Jv(n)&&n.length!==void 0},t._zod.onattach.push(r=>{let n=r._zod.bag;n.minimum=e.length,n.maximum=e.length,n.length=e.length}),t._zod.check=r=>{let n=r.value,i=n.length;if(i===e.length)return;let s=Yv(n),o=i>e.length;r.issues.push({origin:s,...o?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:r.value,inst:t,continue:!e.abort})}}),Qv=q("$ZodCheckStringFormat",(t,e)=>{var r,n;vn.init(t,e),t._zod.onattach.push(i=>{let s=i._zod.bag;s.format=e.format,e.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=i=>{e.pattern.lastIndex=0,!e.pattern.test(i.value)&&i.issues.push({origin:"string",code:"invalid_format",format:e.format,input:i.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),Ime=q("$ZodCheckRegex",(t,e)=>{Qv.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),Rme=q("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Sme),Qv.init(t,e)}),Ome=q("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=xme),Qv.init(t,e)}),Cme=q("$ZodCheckIncludes",(t,e)=>{vn.init(t,e);let r=Au(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(i=>{let s=i._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=i=>{i.value.includes(e.includes,e.position)||i.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:i.value,inst:t,continue:!e.abort})}}),Pme=q("$ZodCheckStartsWith",(t,e)=>{vn.init(t,e);let r=new RegExp(`^${Au(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let i=n._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),Ame=q("$ZodCheckEndsWith",(t,e)=>{vn.init(t,e);let r=new RegExp(`.*${Au(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let i=n._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}}),Nme=q("$ZodCheckOverwrite",(t,e)=>{vn.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}}),I$=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(` + deps: ${l}}`};var i={keyword:"dependencies",type:"object",schemaType:"object",error:t.error,code(c){let[u,l]=s(c);o(c,u),a(c,l)}};function s({schema:c}){let u={},l={};for(let d in c){if(d==="__proto__")continue;let p=Array.isArray(c[d])?u:l;p[d]=c[d]}return[u,l]}function o(c,u=c.schema){let{gen:l,data:d,it:p}=c;if(Object.keys(u).length===0)return;let f=l.let("missing");for(let m in u){let h=u[m];if(h.length===0)continue;let g=(0,n.propertyInData)(l,d,m,p.opts.ownProperties);c.setParams({property:m,depsCount:h.length,deps:h.join(", ")}),p.allErrors?l.if(g,()=>{for(let v of h)(0,n.checkReportMissingProp)(c,v)}):(l.if((0,e._)`${g} && (${(0,n.checkMissingProp)(c,h,f)})`),(0,n.reportMissingProp)(c,f),l.else())}}t.validatePropertyDeps=o;function a(c,u=c.schema){let{gen:l,data:d,keyword:p,it:f}=c,m=l.name("valid");for(let h in u)(0,r.alwaysValidSchema)(f,u[h])||(l.if((0,n.propertyInData)(l,d,h,f.opts.ownProperties),()=>{let g=c.subschema({keyword:p,schemaProp:h},m);c.mergeValidEvaluated(g,m)},()=>l.var(m,!0)),c.ok(m))}t.validateSchemaDeps=a,t.default=i}),Zle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=ct(),n={message:"property name must be valid",params:({params:s})=>(0,e._)`{propertyName: ${s.propertyName}}`},i={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:n,code(s){let{gen:o,schema:a,data:c,it:u}=s;if((0,r.alwaysValidSchema)(u,a))return;let l=o.name("valid");o.forIn("key",c,d=>{s.setParams({propertyName:d}),s.subschema({keyword:"propertyNames",data:d,dataTypes:["string"],propertyName:d,compositeRule:!0},l),o.if((0,e.not)(l),()=>{s.error(!0),u.allErrors||o.break()})}),s.ok(l)}};t.default=i}),GF=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=$i(),r=Ze(),n=Po(),i=ct(),s={message:"must NOT have additional properties",params:({params:a})=>(0,r._)`{additionalProperty: ${a.additionalProperty}}`},o={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:s,code(a){let{gen:c,schema:u,parentSchema:l,data:d,errsCount:p,it:f}=a;if(!p)throw new Error("ajv implementation error");let{allErrors:m,opts:h}=f;if(f.props=!0,h.removeAdditional!=="all"&&(0,i.alwaysValidSchema)(f,u))return;let g=(0,e.allSchemaProperties)(l.properties),v=(0,e.allSchemaProperties)(l.patternProperties);y(),a.ok((0,r._)`${p} === ${n.default.errors}`);function y(){c.forIn("key",d,E=>{!g.length&&!v.length?x(E):c.if(b(E),()=>x(E))})}function b(E){let T;if(g.length>8){let I=(0,i.schemaRefOrVal)(f,l.properties,"properties");T=(0,e.isOwnProperty)(c,I,E)}else g.length?T=(0,r.or)(...g.map(I=>(0,r._)`${E} === ${I}`)):T=r.nil;return v.length&&(T=(0,r.or)(T,...v.map(I=>(0,r._)`${(0,e.usePattern)(a,I)}.test(${E})`))),(0,r.not)(T)}function S(E){c.code((0,r._)`delete ${d}[${E}]`)}function x(E){if(h.removeAdditional==="all"||h.removeAdditional&&u===!1){S(E);return}if(u===!1){a.setParams({additionalProperty:E}),a.error(),m||c.break();return}if(typeof u=="object"&&!(0,i.alwaysValidSchema)(f,u)){let T=c.name("valid");h.removeAdditional==="failing"?(w(E,T,!1),c.if((0,r.not)(T),()=>{a.reset(),S(E)})):(w(E,T),m||c.if((0,r.not)(T),()=>c.break()))}}function w(E,T,I){let A={keyword:"additionalProperties",dataProp:E,dataPropType:i.Type.Str};I===!1&&Object.assign(A,{compositeRule:!0,createErrors:!1,allErrors:!1}),a.subschema(A,T)}}};t.default=o}),Ble=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=ty(),r=$i(),n=ct(),i=GF(),s={keyword:"properties",type:"object",schemaType:"object",code(o){let{gen:a,schema:c,parentSchema:u,data:l,it:d}=o;d.opts.removeAdditional==="all"&&u.additionalProperties===void 0&&i.default.code(new e.KeywordCxt(d,i.default,"additionalProperties"));let p=(0,r.allSchemaProperties)(c);for(let v of p)d.definedProperties.add(v);d.opts.unevaluated&&p.length&&d.props!==!0&&(d.props=n.mergeEvaluated.props(a,(0,n.toHash)(p),d.props));let f=p.filter(v=>!(0,n.alwaysValidSchema)(d,c[v]));if(f.length===0)return;let m=a.name("valid");for(let v of f)h(v)?g(v):(a.if((0,r.propertyInData)(a,l,v,d.opts.ownProperties)),g(v),d.allErrors||a.else().var(m,!0),a.endIf()),o.it.definedProperties.add(v),o.ok(m);function h(v){return d.opts.useDefaults&&!d.compositeRule&&c[v].default!==void 0}function g(v){o.subschema({keyword:"properties",schemaProp:v,dataProp:v},m)}}};t.default=s}),Gle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=$i(),r=Ze(),n=ct(),i=ct(),s={keyword:"patternProperties",type:"object",schemaType:"object",code(o){let{gen:a,schema:c,data:u,parentSchema:l,it:d}=o,{opts:p}=d,f=(0,e.allSchemaProperties)(c),m=f.filter(x=>(0,n.alwaysValidSchema)(d,c[x]));if(f.length===0||m.length===f.length&&(!d.opts.unevaluated||d.props===!0))return;let h=p.strictSchema&&!p.allowMatchingProperties&&l.properties,g=a.name("valid");d.props!==!0&&!(d.props instanceof r.Name)&&(d.props=(0,i.evaluatedPropsToName)(a,d.props));let{props:v}=d;y();function y(){for(let x of f)h&&b(x),d.allErrors?S(x):(a.var(g,!0),S(x),a.if(g))}function b(x){for(let w in h)new RegExp(x).test(w)&&(0,n.checkStrictMode)(d,`property ${w} matches pattern ${x} (use allowMatchingProperties)`)}function S(x){a.forIn("key",u,w=>{a.if((0,r._)`${(0,e.usePattern)(o,x)}.test(${w})`,()=>{let E=m.includes(x);E||o.subschema({keyword:"patternProperties",schemaProp:x,dataProp:w,dataPropType:i.Type.Str},g),d.opts.unevaluated&&v!==!0?a.assign((0,r._)`${v}[${w}]`,!0):!E&&!d.allErrors&&a.if((0,r.not)(g),()=>a.break())})})}}};t.default=s}),Wle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=ct(),r={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(n){let{gen:i,schema:s,it:o}=n;if((0,e.alwaysValidSchema)(o,s)){n.fail();return}let a=i.name("valid");n.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},a),n.failResult(a,()=>n.reset(),()=>n.error())},error:{message:"must NOT be valid"}};t.default=r}),Vle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=$i(),r={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:e.validateUnion,error:{message:"must match a schema in anyOf"}};t.default=r}),Kle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=ct(),n={message:"must match exactly one schema in oneOf",params:({params:s})=>(0,e._)`{passingSchemas: ${s.passing}}`},i={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:n,code(s){let{gen:o,schema:a,parentSchema:c,it:u}=s;if(!Array.isArray(a))throw new Error("ajv implementation error");if(u.opts.discriminator&&c.discriminator)return;let l=a,d=o.let("valid",!1),p=o.let("passing",null),f=o.name("_valid");s.setParams({passing:p}),o.block(m),s.result(d,()=>s.reset(),()=>s.error(!0));function m(){l.forEach((h,g)=>{let v;(0,r.alwaysValidSchema)(u,h)?o.var(f,!0):v=s.subschema({keyword:"oneOf",schemaProp:g,compositeRule:!0},f),g>0&&o.if((0,e._)`${f} && ${d}`).assign(d,!1).assign(p,(0,e._)`[${p}, ${g}]`).else(),o.if(f,()=>{o.assign(d,!0),o.assign(p,g),v&&s.mergeEvaluated(v,e.Name)})})}}};t.default=i}),Jle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=ct(),r={keyword:"allOf",schemaType:"array",code(n){let{gen:i,schema:s,it:o}=n;if(!Array.isArray(s))throw new Error("ajv implementation error");let a=i.name("valid");s.forEach((c,u)=>{if((0,e.alwaysValidSchema)(o,c))return;let l=n.subschema({keyword:"allOf",schemaProp:u},a);n.ok(a),n.mergeEvaluated(l)})}};t.default=r}),Xle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=ct(),n={message:({params:o})=>(0,e.str)`must match "${o.ifClause}" schema`,params:({params:o})=>(0,e._)`{failingKeyword: ${o.ifClause}}`},i={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:n,code(o){let{gen:a,parentSchema:c,it:u}=o;c.then===void 0&&c.else===void 0&&(0,r.checkStrictMode)(u,'"if" without "then" and "else" is ignored');let l=s(u,"then"),d=s(u,"else");if(!l&&!d)return;let p=a.let("valid",!0),f=a.name("_valid");if(m(),o.reset(),l&&d){let g=a.let("ifClause");o.setParams({ifClause:g}),a.if(f,h("then",g),h("else",g))}else l?a.if(f,h("then")):a.if((0,e.not)(f),h("else"));o.pass(p,()=>o.error(!0));function m(){let g=o.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},f);o.mergeEvaluated(g)}function h(g,v){return()=>{let y=o.subschema({keyword:g},f);a.assign(p,f),o.mergeValidEvaluated(y,p),v?a.assign(v,(0,e._)`${g}`):o.setParams({ifClause:g})}}}};function s(o,a){let c=o.schema[a];return c!==void 0&&!(0,r.alwaysValidSchema)(o,c)}t.default=i}),Yle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=ct(),r={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:n,parentSchema:i,it:s}){i.if===void 0&&(0,e.checkStrictMode)(s,`"${n}" without "if" is ignored`)}};t.default=r}),Qle=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=ZF(),r=Ule(),n=BF(),i=Fle(),s=qle(),o=Hle(),a=Zle(),c=GF(),u=Ble(),l=Gle(),d=Wle(),p=Vle(),f=Kle(),m=Jle(),h=Xle(),g=Yle();function v(y=!1){let b=[d.default,p.default,f.default,m.default,h.default,g.default,a.default,c.default,o.default,u.default,l.default];return y?b.push(r.default,i.default):b.push(e.default,n.default),b.push(s.default),b}t.default=v}),ede=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r={message:({schemaCode:i})=>(0,e.str)`must match format "${i}"`,params:({schemaCode:i})=>(0,e._)`{format: ${i}}`},n={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:r,code(i,s){let{gen:o,data:a,$data:c,schema:u,schemaCode:l,it:d}=i,{opts:p,errSchemaPath:f,schemaEnv:m,self:h}=d;if(!p.validateFormats)return;c?g():v();function g(){let y=o.scopeValue("formats",{ref:h.formats,code:p.code.formats}),b=o.const("fDef",(0,e._)`${y}[${l}]`),S=o.let("fType"),x=o.let("format");o.if((0,e._)`typeof ${b} == "object" && !(${b} instanceof RegExp)`,()=>o.assign(S,(0,e._)`${b}.type || "string"`).assign(x,(0,e._)`${b}.validate`),()=>o.assign(S,(0,e._)`"string"`).assign(x,b)),i.fail$data((0,e.or)(w(),E()));function w(){return p.strictSchema===!1?e.nil:(0,e._)`${l} && !${x}`}function E(){let T=m.$async?(0,e._)`(${b}.async ? await ${x}(${a}) : ${x}(${a}))`:(0,e._)`${x}(${a})`,I=(0,e._)`(typeof ${x} == "function" ? ${T} : ${x}.test(${a}))`;return(0,e._)`${x} && ${x} !== true && ${S} === ${s} && !${I}`}}function v(){let y=h.formats[u];if(!y){w();return}if(y===!0)return;let[b,S,x]=E(y);b===s&&i.pass(T());function w(){if(p.strictSchema===!1){h.logger.warn(I());return}throw new Error(I());function I(){return`unknown format "${u}" ignored in schema at path "${f}"`}}function E(I){let A=I instanceof RegExp?(0,e.regexpCode)(I):p.code.formats?(0,e._)`${p.code.formats}${(0,e.getProperty)(u)}`:void 0,N=o.scopeValue("formats",{key:u,ref:I,code:A});return typeof I=="object"&&!(I instanceof RegExp)?[I.type||"string",I.validate,(0,e._)`${N}.validate`]:["string",I,N]}function T(){if(typeof y=="object"&&!(y instanceof RegExp)&&y.async){if(!m.$async)throw new Error("async format in sync schema");return(0,e._)`await ${x}(${a})`}return typeof S=="function"?(0,e._)`${x}(${a})`:(0,e._)`${x}.test(${a})`}}}};t.default=n}),tde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=ede(),r=[e.default];t.default=r}),rde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.contentVocabulary=t.metadataVocabulary=void 0,t.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"],t.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]}),nde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=$le(),r=Lle(),n=Qle(),i=tde(),s=rde(),o=[e.default,r.default,(0,n.default)(),i.default,s.metadataVocabulary,s.contentVocabulary];t.default=o}),ide=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DiscrError=void 0;var e;(function(r){r.Tag="tag",r.Mapping="mapping"})(e||(t.DiscrError=e={}))}),sde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0});var e=Ze(),r=ide(),n=Y$(),i=ry(),s=ct(),o={message:({params:{discrError:c,tagName:u}})=>c===r.DiscrError.Tag?`tag "${u}" must be string`:`value of tag "${u}" must be in oneOf`,params:({params:{discrError:c,tag:u,tagName:l}})=>(0,e._)`{error: ${c}, tag: ${l}, tagValue: ${u}}`},a={keyword:"discriminator",type:"object",schemaType:"object",error:o,code(c){let{gen:u,data:l,schema:d,parentSchema:p,it:f}=c,{oneOf:m}=p;if(!f.opts.discriminator)throw new Error("discriminator: requires discriminator option");let h=d.propertyName;if(typeof h!="string")throw new Error("discriminator: requires propertyName");if(d.mapping)throw new Error("discriminator: mapping is not supported");if(!m)throw new Error("discriminator: requires oneOf keyword");let g=u.let("valid",!1),v=u.const("tag",(0,e._)`${l}${(0,e.getProperty)(h)}`);u.if((0,e._)`typeof ${v} == "string"`,()=>y(),()=>c.error(!1,{discrError:r.DiscrError.Tag,tag:v,tagName:h})),c.ok(g);function y(){let x=S();u.if(!1);for(let w in x)u.elseIf((0,e._)`${v} === ${w}`),u.assign(g,b(x[w]));u.else(),c.error(!1,{discrError:r.DiscrError.Mapping,tag:v,tagName:h}),u.endIf()}function b(x){let w=u.name("valid"),E=c.subschema({keyword:"oneOf",schemaProp:x},w);return c.mergeEvaluated(E,e.Name),w}function S(){var x;let w={},E=I(p),T=!0;for(let U=0;U{e.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}}),WF=ne((t,e)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.MissingRefError=t.ValidationError=t.CodeGen=t.Name=t.nil=t.stringify=t.str=t._=t.KeywordCxt=t.Ajv=void 0;var r=Ele(),n=nde(),i=sde(),s=ode(),o=["/properties"],a="http://json-schema.org/draft-07/schema";class c extends r.default{_addVocabularies(){super._addVocabularies(),n.default.forEach(m=>this.addVocabulary(m)),this.opts.discriminator&&this.addKeyword(i.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let m=this.opts.$data?this.$dataMetaSchema(s,o):s;this.addMetaSchema(m,a,!1),this.refs["http://json-schema.org/schema"]=a}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(a)?a:void 0)}}t.Ajv=c,e.exports=t=c,e.exports.Ajv=c,Object.defineProperty(t,"__esModule",{value:!0}),t.default=c;var u=ty();Object.defineProperty(t,"KeywordCxt",{enumerable:!0,get:function(){return u.KeywordCxt}});var l=Ze();Object.defineProperty(t,"_",{enumerable:!0,get:function(){return l._}}),Object.defineProperty(t,"str",{enumerable:!0,get:function(){return l.str}}),Object.defineProperty(t,"stringify",{enumerable:!0,get:function(){return l.stringify}}),Object.defineProperty(t,"nil",{enumerable:!0,get:function(){return l.nil}}),Object.defineProperty(t,"Name",{enumerable:!0,get:function(){return l.Name}}),Object.defineProperty(t,"CodeGen",{enumerable:!0,get:function(){return l.CodeGen}});var d=X$();Object.defineProperty(t,"ValidationError",{enumerable:!0,get:function(){return d.default}});var p=ry();Object.defineProperty(t,"MissingRefError",{enumerable:!0,get:function(){return p.default}})}),ade=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.formatNames=t.fastFormats=t.fullFormats=void 0;function e(N,U){return{validate:N,compare:U}}t.fullFormats={date:e(s,o),time:e(c(!0),u),"date-time":e(p(!0),f),"iso-time":e(c(),l),"iso-date-time":e(p(),m),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:v,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:A,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:b,int32:{type:"number",validate:w},int64:{type:"number",validate:E},float:{type:"number",validate:T},double:{type:"number",validate:T},password:!0,binary:!0},t.fastFormats={...t.fullFormats,date:e(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,o),time:e(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,u),"date-time":e(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,f),"iso-time":e(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,l),"iso-date-time":e(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,m),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i},t.formatNames=Object.keys(t.fullFormats);function r(N){return N%4===0&&(N%100!==0||N%400===0)}var n=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,i=[0,31,28,31,30,31,30,31,31,30,31,30,31];function s(N){let U=n.exec(N);if(!U)return!1;let V=+U[1],j=+U[2],ae=+U[3];return j>=1&&j<=12&&ae>=1&&ae<=(j===2&&r(V)?29:i[j])}function o(N,U){if(N&&U)return N>U?1:N23||C>59||N&&!kt)return!1;if(ae<=23&&Me<=59&&Le<60)return!0;let H=Me-C*Ge,M=ae-K*Ge-(H<0?1:0);return(M===23||M===-1)&&(H===59||H===-1)&&Le<61}}function u(N,U){if(!(N&&U))return;let V=new Date("2020-01-01T"+N).valueOf(),j=new Date("2020-01-01T"+U).valueOf();if(V&&j)return V-j}function l(N,U){if(!(N&&U))return;let V=a.exec(N),j=a.exec(U);if(V&&j)return N=V[1]+V[2]+V[3],U=j[1]+j[2]+j[3],N>U?1:N=S}function E(N){return Number.isInteger(N)}function T(){return!0}var I=/[^\\]\\Z/;function A(N){if(I.test(N))return!1;try{return new RegExp(N),!0}catch{return!1}}}),cde=ne(t=>{Object.defineProperty(t,"__esModule",{value:!0}),t.formatLimitDefinition=void 0;var e=WF(),r=Ze(),n=r.operators,i={formatMaximum:{okStr:"<=",ok:n.LTE,fail:n.GT},formatMinimum:{okStr:">=",ok:n.GTE,fail:n.LT},formatExclusiveMaximum:{okStr:"<",ok:n.LT,fail:n.GTE},formatExclusiveMinimum:{okStr:">",ok:n.GT,fail:n.LTE}},s={message:({keyword:a,schemaCode:c})=>(0,r.str)`should be ${i[a].okStr} ${c}`,params:({keyword:a,schemaCode:c})=>(0,r._)`{comparison: ${i[a].okStr}, limit: ${c}}`};t.formatLimitDefinition={keyword:Object.keys(i),type:"string",schemaType:"string",$data:!0,error:s,code(a){let{gen:c,data:u,schemaCode:l,keyword:d,it:p}=a,{opts:f,self:m}=p;if(!f.validateFormats)return;let h=new e.KeywordCxt(p,m.RULES.all.format.definition,"format");h.$data?g():v();function g(){let b=c.scopeValue("formats",{ref:m.formats,code:f.code.formats}),S=c.const("fmt",(0,r._)`${b}[${h.schemaCode}]`);a.fail$data((0,r.or)((0,r._)`typeof ${S} != "object"`,(0,r._)`${S} instanceof RegExp`,(0,r._)`typeof ${S}.compare != "function"`,y(S)))}function v(){let b=h.schema,S=m.formats[b];if(!S||S===!0)return;if(typeof S!="object"||S instanceof RegExp||typeof S.compare!="function")throw new Error(`"${d}": format "${b}" does not define "compare" function`);let x=c.scopeValue("formats",{key:b,ref:S,code:f.code.formats?(0,r._)`${f.code.formats}${(0,r.getProperty)(b)}`:void 0});a.fail$data(y(x))}function y(b){return(0,r._)`${b}.compare(${u}, ${l}) ${i[d].fail} 0`}},dependencies:["format"]};var o=a=>(a.addKeyword(t.formatLimitDefinition),a);t.default=o}),ude=ne((t,e)=>{Object.defineProperty(t,"__esModule",{value:!0});var r=ade(),n=cde(),i=Ze(),s=new i.Name("fullFormats"),o=new i.Name("fastFormats"),a=(u,l={keywords:!0})=>{if(Array.isArray(l))return c(u,l,r.fullFormats,s),u;let[d,p]=l.mode==="fast"?[r.fastFormats,o]:[r.fullFormats,s],f=l.formats||r.formatNames;return c(u,f,d,p),l.keywords&&(0,n.default)(u),u};a.get=(u,l="full")=>{let p=(l==="fast"?r.fastFormats:r.fullFormats)[u];if(!p)throw new Error(`Unknown format "${u}"`);return p};function c(u,l,d,p){var f,m;(f=(m=u.opts.code).formats)!==null&&f!==void 0||(m.formats=(0,i._)`require("ajv-formats/dist/formats").${p}`);for(let h of l)u.addFormat(h,d[h])}e.exports=t=a,Object.defineProperty(t,"__esModule",{value:!0}),t.default=a}),lde=50;function JF(t=lde){let e=new AbortController;return(0,KF.setMaxListeners)(t,e.signal),e}var dde=typeof global=="object"&&global&&global.Object===Object&&global,pde=dde,fde=typeof self=="object"&&self&&self.Object===Object&&self,mde=pde||fde||Function("return this")(),eI=mde,hde=eI.Symbol,Wv=hde,eq=Object.prototype,gde=eq.hasOwnProperty,vde=eq.toString,Vp=Wv?Wv.toStringTag:void 0;function yde(t){var e=gde.call(t,Vp),r=t[Vp];try{t[Vp]=void 0;var n=!0}catch{}var i=vde.call(t);return n&&(e?t[Vp]=r:delete t[Vp]),i}var _de=yde,bde=Object.prototype,Sde=bde.toString;function xde(t){return Sde.call(t)}var wde=xde,Ede="[object Null]",kde="[object Undefined]",uF=Wv?Wv.toStringTag:void 0;function Tde(t){return t==null?t===void 0?kde:Ede:uF&&uF in Object(t)?_de(t):wde(t)}var $de=Tde;function Ide(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}var tq=Ide,Rde="[object AsyncFunction]",Ode="[object Function]",Cde="[object GeneratorFunction]",Pde="[object Proxy]";function Ade(t){if(!tq(t))return!1;var e=$de(t);return e==Ode||e==Cde||e==Rde||e==Pde}var Nde=Ade,Mde=eI["__core-js_shared__"],k$=Mde,lF=(function(){var t=/[^.]+$/.exec(k$&&k$.keys&&k$.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""})();function Dde(t){return!!lF&&lF in t}var jde=Dde,zde=Function.prototype,Lde=zde.toString;function Ude(t){if(t!=null){try{return Lde.call(t)}catch{}try{return t+""}catch{}}return""}var Fde=Ude,qde=/[\\^$.*+?()[\]{}|]/g,Hde=/^\[object .+?Constructor\]$/,Zde=Function.prototype,Bde=Object.prototype,Gde=Zde.toString,Wde=Bde.hasOwnProperty,Vde=RegExp("^"+Gde.call(Wde).replace(qde,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Kde(t){if(!tq(t)||jde(t))return!1;var e=Nde(t)?Vde:Hde;return e.test(Fde(t))}var Jde=Kde;function Xde(t,e){return t?.[e]}var Yde=Xde;function Qde(t,e){var r=Yde(t,e);return Jde(r)?r:void 0}var rq=Qde,epe=rq(Object,"create"),Xp=epe;function tpe(){this.__data__=Xp?Xp(null):{},this.size=0}var rpe=tpe;function npe(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}var ipe=npe,spe="__lodash_hash_undefined__",ope=Object.prototype,ape=ope.hasOwnProperty;function cpe(t){var e=this.__data__;if(Xp){var r=e[t];return r===spe?void 0:r}return ape.call(e,t)?e[t]:void 0}var upe=cpe,lpe=Object.prototype,dpe=lpe.hasOwnProperty;function ppe(t){var e=this.__data__;return Xp?e[t]!==void 0:dpe.call(e,t)}var fpe=ppe,mpe="__lodash_hash_undefined__";function hpe(t,e){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=Xp&&e===void 0?mpe:e,this}var gpe=hpe;function Fu(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e-1}var Rpe=Ipe;function Ope(t,e){var r=this.__data__,n=ny(r,t);return n<0?(++this.size,r.push([t,e])):r[n][1]=e,this}var Cpe=Ope;function qu(t){var e=-1,r=t==null?0:t.length;for(this.clear();++e{if(!t||t.trim()==="")return null;let e=t.split(",").map(s=>s.trim()).filter(Boolean);if(e.length===0)return null;let r=e.some(s=>s.startsWith("!")),n=e.some(s=>!s.startsWith("!"));if(r&&n)return null;let i=e.map(s=>s.replace(/^!/,"").toLowerCase());return{include:r?[]:i,exclude:r?i:[],isExclusive:r}});function Xpe(t){let e=[],r=t.match(/^MCP server ["']([^"']+)["']/);if(r&&r[1])e.push("mcp"),e.push(r[1].toLowerCase());else{let s=t.match(/^([^:[]+):/);s&&s[1]&&e.push(s[1].trim().toLowerCase())}let n=t.match(/^\[([^\]]+)]/);n&&n[1]&&e.push(n[1].trim().toLowerCase()),t.toLowerCase().includes("statsig event:")&&e.push("statsig");let i=t.match(/:\s*([^:]+?)(?:\s+(?:type|mode|status|event))?:/);if(i&&i[1]){let s=i[1].trim().toLowerCase();s.length<30&&!s.includes(" ")&&e.push(s)}return Array.from(new Set(e))}function Ype(t,e){return e?t.length===0?!1:e.isExclusive?!t.some(r=>e.exclude.includes(r)):t.some(r=>e.include.includes(r)):!0}function Qpe(t,e){if(!e)return!0;let r=Xpe(t);return Ype(r,e)}function oq(){return process.env.CLAUDE_CONFIG_DIR??(0,iq.join)((0,sq.homedir)(),".claude")}function fF(t){if(!t)return!1;if(typeof t=="boolean")return t;let e=t.toLowerCase().trim();return["1","true","yes","on"].includes(e)}var T$=15e4,Lv=3e4;function lq(t){return{name:t,default:Lv,validate:e=>{if(!e)return{effective:Lv,status:"valid"};let r=parseInt(e,10);return isNaN(r)||r<=0?{effective:Lv,status:"invalid",message:`Invalid value "${e}" (using default: ${Lv})`}:r>T$?{effective:T$,status:"capped",message:`Capped from ${r} to ${T$}`}:{effective:r,status:"valid"}}}}var efe=lq("BASH_MAX_OUTPUT_LENGTH"),rje=lq("TASK_MAX_OUTPUT_LENGTH"),tfe={name:"CLAUDE_CODE_MAX_OUTPUT_TOKENS",default:32e3,validate:t=>{if(!t)return{effective:32e3,status:"valid"};let n=parseInt(t,10);return isNaN(n)||n<=0?{effective:32e3,status:"invalid",message:`Invalid value "${t}" (using default: 32000)`}:n>64e3?{effective:64e3,status:"capped",message:`Capped from ${n} to 64000`}:{effective:n,status:"valid"}}};function rfe(){let t="";return typeof process<"u"&&typeof process.cwd=="function"&&(t=(0,cq.realpathSync)((0,aq.cwd)())),{originalCwd:t,totalCostUSD:0,totalAPIDuration:0,totalAPIDurationWithoutRetries:0,totalToolDuration:0,startTime:Date.now(),lastInteractionTime:Date.now(),totalLinesAdded:0,totalLinesRemoved:0,hasUnknownModelCost:!1,cwd:t,modelUsage:{},mainLoopModelOverride:void 0,initialMainLoopModel:null,modelStrings:null,isInteractive:!1,clientType:"cli",sessionIngressToken:void 0,oauthTokenFromFd:void 0,apiKeyFromFd:void 0,flagSettingsPath:void 0,allowedSettingSources:["userSettings","projectSettings","localSettings","flagSettings","policySettings"],meter:null,sessionCounter:null,locCounter:null,prCounter:null,commitCounter:null,costCounter:null,tokenCounter:null,codeEditToolDecisionCounter:null,activeTimeCounter:null,sessionId:(0,uq.randomUUID)(),loggerProvider:null,eventLogger:null,meterProvider:null,tracerProvider:null,agentColorMap:new Map,agentColorIndex:0,envVarValidators:[efe,tfe],lastAPIRequest:null,inMemoryErrorLog:[],inlinePlugins:[],sessionBypassPermissionsMode:!1,sessionPersistenceDisabled:!1,hasExitedPlanMode:!1,needsPlanModeExitAttachment:!1,hasExitedDelegateMode:!1,needsDelegateModeExitAttachment:!1,lspRecommendationShownThisSession:!1,initJsonSchema:null,registeredHooks:null,planSlugCache:new Map,teleportedSessionInfo:null,invokedSkills:new Map,slowOperations:[],sdkBetas:void 0}}var nfe=rfe();function ife(){return nfe.sessionId}function sfe({writeFn:t,flushIntervalMs:e=1e3,maxBufferSize:r=100,immediateMode:n=!1}){let i=[],s=null;function o(){s&&(clearTimeout(s),s=null)}function a(){i.length!==0&&(t(i.join("")),i=[],o())}function c(){s||(s=setTimeout(a,e))}return{write(u){if(n){t(u);return}i.push(u),c(),i.length>=r&&a()},flush:a,dispose(){a()}}}var mF=new Set;function ofe(t){return mF.add(t),()=>mF.delete(t)}var dq=1/0;function afe(t){return t===null?"null":t===void 0?"undefined":Array.isArray(t)?`Array[${t.length}]`:typeof t=="object"?`Object{${Object.keys(t).length} keys}`:typeof t=="string"?`string(${t.length} chars)`:typeof t}function pq(t,e){let r=performance.now();try{return e()}finally{let n=performance.now()-r;n>dq&&(Ls(`[SLOW OPERATION DETECTED] ${t} (${n.toFixed(1)}ms)`),void 0)}}function ns(t,e,r){let n=afe(t);return pq(`JSON.stringify(${n})`,()=>JSON.stringify(t,e,r))}var fq=(t,e)=>{let r=typeof t=="string"?t.length:0;return pq(`JSON.parse(${r} chars)`,()=>JSON.parse(t,e))},cfe=pf(()=>fF(process.env.DEBUG)||fF(process.env.DEBUG_SDK)||process.argv.includes("--debug")||process.argv.includes("-d")||mq()||process.argv.some(t=>t.startsWith("--debug="))),ufe=pf(()=>{let t=process.argv.find(r=>r.startsWith("--debug="));if(!t)return null;let e=t.substring(8);return Jpe(e)}),mq=pf(()=>process.argv.includes("--debug-to-stderr")||process.argv.includes("-d2e"));function lfe(t){if(typeof process>"u"||typeof process.versions>"u"||typeof process.versions.node>"u")return!1;let e=ufe();return Qpe(t,e)}var dfe=!1,Uv=null;function pfe(){return Uv||(Uv=sfe({writeFn:t=>{let e=hq();Us().existsSync((0,Ia.dirname)(e))||Us().mkdirSync((0,Ia.dirname)(e)),Us().appendFileSync(e,t),ffe()},flushIntervalMs:1e3,maxBufferSize:100,immediateMode:cfe()}),ofe(async()=>Uv?.dispose())),Uv}function Ls(t,{level:e}={level:"debug"}){if(!lfe(t))return;dfe&&t.includes(` +`)&&(t=ns(t));let n=`${new Date().toISOString()} [${e.toUpperCase()}] ${t.trim()} +`;if(mq()){Kpe(n);return}pfe().write(n)}function hq(){return process.env.CLAUDE_CODE_DEBUG_LOGS_DIR??(0,Ia.join)(oq(),"debug",`${ife()}.txt`)}var ffe=pf(()=>{if(process.argv[2]!=="--ripgrep")try{let t=hq(),e=(0,Ia.dirname)(t),r=(0,Ia.join)(e,"latest");if(Us().existsSync(e)||Us().mkdirSync(e),Us().existsSync(r))try{Us().unlinkSync(r)}catch{}Us().symlinkSync(t,r)}catch{}});function nr(t,e){let r=performance.now();try{return e()}finally{let n=performance.now()-r;n>dq&&(Ls(`[SLOW OPERATION DETECTED] fs.${t} (${n.toFixed(1)}ms)`),`${t}`,void 0)}}var mfe={cwd(){return process.cwd()},existsSync(t){return nr(`existsSync(${t})`,()=>Re.existsSync(t))},async stat(t){return(0,QF.stat)(t)},statSync(t){return nr(`statSync(${t})`,()=>Re.statSync(t))},lstatSync(t){return nr(`lstatSync(${t})`,()=>Re.lstatSync(t))},readFileSync(t,e){return nr(`readFileSync(${t})`,()=>Re.readFileSync(t,{encoding:e.encoding}))},readFileBytesSync(t){return nr(`readFileBytesSync(${t})`,()=>Re.readFileSync(t))},readSync(t,e){return nr(`readSync(${t}, ${e.length} bytes)`,()=>{let r;try{r=Re.openSync(t,"r");let n=Buffer.alloc(e.length),i=Re.readSync(r,n,0,e.length,0);return{buffer:n,bytesRead:i}}finally{r&&Re.closeSync(r)}})},appendFileSync(t,e,r){return nr(`appendFileSync(${t}, ${e.length} chars)`,()=>{if(!Re.existsSync(t)&&r?.mode!==void 0){let n=Re.openSync(t,"a",r.mode);try{Re.appendFileSync(n,e)}finally{Re.closeSync(n)}}else Re.appendFileSync(t,e)})},copyFileSync(t,e){return nr(`copyFileSync(${t} \u2192 ${e})`,()=>Re.copyFileSync(t,e))},unlinkSync(t){return nr(`unlinkSync(${t})`,()=>Re.unlinkSync(t))},renameSync(t,e){return nr(`renameSync(${t} \u2192 ${e})`,()=>Re.renameSync(t,e))},linkSync(t,e){return nr(`linkSync(${t} \u2192 ${e})`,()=>Re.linkSync(t,e))},symlinkSync(t,e){return nr(`symlinkSync(${t} \u2192 ${e})`,()=>Re.symlinkSync(t,e))},readlinkSync(t){return nr(`readlinkSync(${t})`,()=>Re.readlinkSync(t))},realpathSync(t){return nr(`realpathSync(${t})`,()=>Re.realpathSync(t))},mkdirSync(t,e){return nr(`mkdirSync(${t})`,()=>{if(!Re.existsSync(t)){let r={recursive:!0};e?.mode!==void 0&&(r.mode=e.mode),Re.mkdirSync(t,r)}})},readdirSync(t){return nr(`readdirSync(${t})`,()=>Re.readdirSync(t,{withFileTypes:!0}))},readdirStringSync(t){return nr(`readdirStringSync(${t})`,()=>Re.readdirSync(t))},isDirEmptySync(t){return nr(`isDirEmptySync(${t})`,()=>this.readdirSync(t).length===0)},rmdirSync(t){return nr(`rmdirSync(${t})`,()=>Re.rmdirSync(t))},rmSync(t,e){return nr(`rmSync(${t})`,()=>Re.rmSync(t,e))},createWriteStream(t){return Re.createWriteStream(t)}},hfe=mfe;function Us(){return hfe}var $a=class extends Error{};function gq(){return process.versions.bun!==void 0}var Fv=null,hF=!1;function gfe(){if(hF)return Fv;if(hF=!0,!process.env.DEBUG_CLAUDE_AGENT_SDK)return null;let t=(0,P$.join)(oq(),"debug");return Fv=(0,P$.join)(t,`sdk-${(0,vq.randomUUID)()}.txt`),(0,Zu.existsSync)(t)||(0,Zu.mkdirSync)(t,{recursive:!0}),process.stderr.write(`SDK debug logs: ${Fv} +`),Fv}function Ta(t){let e=gfe();if(!e)return;let n=`${new Date().toISOString()} ${t} +`;(0,Zu.appendFileSync)(e,n)}function vfe(t,e){let r={...t};if(e){let n={sandbox:e};if(r.settings)try{n={...fq(r.settings),sandbox:e}}catch{}r.settings=ns(n)}return r}var A$=class{options;process;processStdin;processStdout;ready=!1;abortController;exitError;exitListeners=[];processExitHandler;abortHandler;constructor(e){this.options=e,this.abortController=e.abortController||JF(),this.initialize()}getDefaultExecutable(){return gq()?"bun":"node"}spawnLocalProcess(e){let{command:r,args:n,cwd:i,env:s,signal:o}=e,a=s.DEBUG_CLAUDE_AGENT_SDK||this.options.stderr?"pipe":"ignore",c=(0,XF.spawn)(r,n,{cwd:i,stdio:["pipe","pipe",a],signal:o,env:s,windowsHide:!0});return(s.DEBUG_CLAUDE_AGENT_SDK||this.options.stderr)&&c.stderr.on("data",l=>{let d=l.toString();Ta(d),this.options.stderr&&this.options.stderr(d)}),{stdin:c.stdin,stdout:c.stdout,get killed(){return c.killed},get exitCode(){return c.exitCode},kill:c.kill.bind(c),on:c.on.bind(c),once:c.once.bind(c),off:c.off.bind(c)}}initialize(){try{let{additionalDirectories:e=[],betas:r,cwd:n,executable:i=this.getDefaultExecutable(),executableArgs:s=[],extraArgs:o={},pathToClaudeCodeExecutable:a,env:c={...process.env},maxThinkingTokens:u,maxTurns:l,maxBudgetUsd:d,model:p,fallbackModel:f,jsonSchema:m,permissionMode:h,allowDangerouslySkipPermissions:g,permissionPromptToolName:v,continueConversation:y,resume:b,settingSources:S,allowedTools:x=[],disallowedTools:w=[],tools:E,mcpServers:T,strictMcpConfig:I,canUseTool:A,includePartialMessages:N,plugins:U,sandbox:V}=this.options,j=["--output-format","stream-json","--verbose","--input-format","stream-json"];if(u!==void 0&&j.push("--max-thinking-tokens",u.toString()),l&&j.push("--max-turns",l.toString()),d!==void 0&&j.push("--max-budget-usd",d.toString()),p&&j.push("--model",p),r&&r.length>0&&j.push("--betas",r.join(",")),m&&j.push("--json-schema",ns(m)),c.DEBUG_CLAUDE_AGENT_SDK&&j.push("--debug-to-stderr"),A){if(v)throw new Error("canUseTool callback cannot be used with permissionPromptToolName. Please use one or the other.");j.push("--permission-prompt-tool","stdio")}else v&&j.push("--permission-prompt-tool",v);if(y&&j.push("--continue"),b&&j.push("--resume",b),x.length>0&&j.push("--allowedTools",x.join(",")),w.length>0&&j.push("--disallowedTools",w.join(",")),E!==void 0&&(Array.isArray(E)?E.length===0?j.push("--tools",""):j.push("--tools",E.join(",")):j.push("--tools","default")),T&&Object.keys(T).length>0&&j.push("--mcp-config",ns({mcpServers:T})),S&&j.push("--setting-sources",S.join(",")),I&&j.push("--strict-mcp-config"),h&&j.push("--permission-mode",h),g&&j.push("--allow-dangerously-skip-permissions"),f){if(p&&f===p)throw new Error("Fallback model cannot be the same as the main model. Please specify a different model for fallbackModel option.");j.push("--fallback-model",f)}N&&j.push("--include-partial-messages");for(let C of e)j.push("--add-dir",C);if(U&&U.length>0)for(let C of U)if(C.type==="local")j.push("--plugin-dir",C.path);else throw new Error(`Unsupported plugin type: ${C.type}`);this.options.forkSession&&j.push("--fork-session"),this.options.resumeSessionAt&&j.push("--resume-session-at",this.options.resumeSessionAt),this.options.persistSession===!1&&j.push("--no-session-persistence");let ae=vfe(o??{},V);for(let[C,H]of Object.entries(ae))H===null?j.push(`--${C}`):j.push(`--${C}`,H);c.CLAUDE_CODE_ENTRYPOINT||(c.CLAUDE_CODE_ENTRYPOINT="sdk-ts"),delete c.NODE_OPTIONS,c.DEBUG_CLAUDE_AGENT_SDK?c.DEBUG="1":delete c.DEBUG;let Me=yfe(a),Le=Me?a:i,kt=Me?[...s,...j]:[...s,a,...j],Ge={command:Le,args:kt,cwd:n,env:c,signal:this.abortController.signal};if(this.options.spawnClaudeCodeProcess)Ta(`Spawning Claude Code (custom): ${Le} ${kt.join(" ")}`),this.process=this.options.spawnClaudeCodeProcess(Ge);else{if(!Us().existsSync(a)){let H=Me?`Claude Code native binary not found at ${a}. Please ensure Claude Code is installed via native installer or specify a valid path with options.pathToClaudeCodeExecutable.`:`Claude Code executable not found at ${a}. Is options.pathToClaudeCodeExecutable set?`;throw new ReferenceError(H)}Ta(`Spawning Claude Code: ${Le} ${kt.join(" ")}`),this.process=this.spawnLocalProcess(Ge)}this.processStdin=this.process.stdin,this.processStdout=this.process.stdout;let K=()=>{this.process&&!this.process.killed&&this.process.kill("SIGTERM")};this.processExitHandler=K,this.abortHandler=K,process.on("exit",this.processExitHandler),this.abortController.signal.addEventListener("abort",this.abortHandler),this.process.on("error",C=>{this.ready=!1,this.abortController.signal.aborted?this.exitError=new $a("Claude Code process aborted by user"):(this.exitError=new Error(`Failed to spawn Claude Code process: ${C.message}`),Ta(this.exitError.message))}),this.process.on("exit",(C,H)=>{if(this.ready=!1,this.abortController.signal.aborted)this.exitError=new $a("Claude Code process aborted by user");else{let M=this.getProcessExitError(C,H);M&&(this.exitError=M,Ta(M.message))}}),this.ready=!0}catch(e){throw this.ready=!1,e}}getProcessExitError(e,r){if(e!==0&&e!==null)return new Error(`Claude Code process exited with code ${e}`);if(r)return new Error(`Claude Code process terminated by signal ${r}`)}write(e){if(this.abortController.signal.aborted)throw new $a("Operation aborted");if(!this.ready||!this.processStdin)throw new Error("ProcessTransport is not ready for writing");if(this.process?.killed||this.process?.exitCode!==null)throw new Error("Cannot write to terminated process");if(this.exitError)throw new Error(`Cannot write to process that exited with error: ${this.exitError.message}`);Ta(`[ProcessTransport] Writing to stdin: ${e.substring(0,100)}`);try{this.processStdin.write(e)||Ta("[ProcessTransport] Write buffer full, data queued")}catch(r){throw this.ready=!1,new Error(`Failed to write to process stdin: ${r.message}`)}}close(){this.processStdin&&(this.processStdin.end(),this.processStdin=void 0),this.abortHandler&&(this.abortController.signal.removeEventListener("abort",this.abortHandler),this.abortHandler=void 0);for(let{handler:e}of this.exitListeners)this.process?.off("exit",e);this.exitListeners=[],this.process&&!this.process.killed&&(this.process.kill("SIGTERM"),setTimeout(()=>{this.process&&!this.process.killed&&this.process.kill("SIGKILL")},5e3)),this.ready=!1,this.processExitHandler&&(process.off("exit",this.processExitHandler),this.processExitHandler=void 0)}isReady(){return this.ready}async*readMessages(){if(!this.processStdout)throw new Error("ProcessTransport output stream not available");let e=(0,YF.createInterface)({input:this.processStdout});try{for await(let r of e)r.trim()&&(yield fq(r));await this.waitForExit()}catch(r){throw r}finally{e.close()}}endInput(){this.processStdin&&this.processStdin.end()}getInputStream(){return this.processStdin}onExit(e){if(!this.process)return()=>{};let r=(n,i)=>{let s=this.getProcessExitError(n,i);e(s)};return this.process.on("exit",r),this.exitListeners.push({callback:e,handler:r}),()=>{this.process&&this.process.off("exit",r);let n=this.exitListeners.findIndex(i=>i.handler===r);n!==-1&&this.exitListeners.splice(n,1)}}async waitForExit(){if(!this.process){if(this.exitError)throw this.exitError;return}if(this.process.exitCode!==null||this.process.killed){if(this.exitError)throw this.exitError;return}return new Promise((e,r)=>{let n=(s,o)=>{if(this.abortController.signal.aborted){r(new $a("Operation aborted"));return}let a=this.getProcessExitError(s,o);a?r(a):e()};this.process.once("exit",n);let i=s=>{this.process.off("exit",n),r(s)};this.process.once("error",i),this.process.once("exit",()=>{this.process.off("error",i)})})}};function yfe(t){return![".js",".mjs",".tsx",".ts",".jsx"].some(r=>t.endsWith(r))}var N$=class{returned;queue=[];readResolve;readReject;isDone=!1;hasError;started=!1;constructor(e){this.returned=e}[Symbol.asyncIterator](){if(this.started)throw new Error("Stream can only be iterated once");return this.started=!0,this}next(){return this.queue.length>0?Promise.resolve({done:!1,value:this.queue.shift()}):this.isDone?Promise.resolve({done:!0,value:void 0}):this.hasError?Promise.reject(this.hasError):new Promise((e,r)=>{this.readResolve=e,this.readReject=r})}enqueue(e){if(this.readResolve){let r=this.readResolve;this.readResolve=void 0,this.readReject=void 0,r({done:!1,value:e})}else this.queue.push(e)}done(){if(this.isDone=!0,this.readResolve){let e=this.readResolve;this.readResolve=void 0,this.readReject=void 0,e({done:!0,value:void 0})}}error(e){if(this.hasError=e,this.readReject){let r=this.readReject;this.readResolve=void 0,this.readReject=void 0,r(e)}}return(){return this.isDone=!0,this.returned&&this.returned(),Promise.resolve({done:!0,value:void 0})}},M$=class{sendMcpMessage;isClosed=!1;constructor(e){this.sendMcpMessage=e}onclose;onerror;onmessage;async start(){}async send(e){if(this.isClosed)throw new Error("Transport is closed");this.sendMcpMessage(e)}async close(){this.isClosed||(this.isClosed=!0,this.onclose?.())}},D$=class{transport;isSingleUserTurn;canUseTool;hooks;abortController;jsonSchema;initConfig;pendingControlResponses=new Map;cleanupPerformed=!1;sdkMessages;inputStream=new N$;initialization;cancelControllers=new Map;hookCallbacks=new Map;nextCallbackId=0;sdkMcpTransports=new Map;sdkMcpServerInstances=new Map;pendingMcpResponses=new Map;firstResultReceivedResolve;firstResultReceived=!1;hasBidirectionalNeeds(){return this.sdkMcpTransports.size>0||this.hooks!==void 0&&Object.keys(this.hooks).length>0||this.canUseTool!==void 0}constructor(e,r,n,i,s,o=new Map,a,c){this.transport=e,this.isSingleUserTurn=r,this.canUseTool=n,this.hooks=i,this.abortController=s,this.jsonSchema=a,this.initConfig=c;for(let[u,l]of o)this.connectSdkMcpServer(u,l);this.sdkMessages=this.readSdkMessages(),this.readMessages(),this.initialization=this.initialize(),this.initialization.catch(()=>{})}setError(e){this.inputStream.error(e)}cleanup(e){if(!this.cleanupPerformed){this.cleanupPerformed=!0;try{this.transport.close(),this.pendingControlResponses.clear(),this.pendingMcpResponses.clear(),this.cancelControllers.clear(),this.hookCallbacks.clear();for(let r of this.sdkMcpTransports.values())try{r.close()}catch{}this.sdkMcpTransports.clear(),e?this.inputStream.error(e):this.inputStream.done()}catch{}}}next(...[e]){return this.sdkMessages.next(e)}return(e){return this.sdkMessages.return(e)}throw(e){return this.sdkMessages.throw(e)}[Symbol.asyncIterator](){return this.sdkMessages}[Symbol.asyncDispose](){return this.sdkMessages[Symbol.asyncDispose]()}async readMessages(){try{for await(let e of this.transport.readMessages()){if(e.type==="control_response"){let r=this.pendingControlResponses.get(e.response.request_id);r&&r(e.response);continue}else if(e.type==="control_request"){this.handleControlRequest(e);continue}else if(e.type==="control_cancel_request"){this.handleControlCancelRequest(e);continue}else if(e.type==="keep_alive")continue;e.type==="result"&&(this.firstResultReceived=!0,this.firstResultReceivedResolve&&this.firstResultReceivedResolve(),this.isSingleUserTurn&&(Ls("[Query.readMessages] First result received for single-turn query, closing stdin"),this.transport.endInput())),this.inputStream.enqueue(e)}this.firstResultReceivedResolve&&this.firstResultReceivedResolve(),this.inputStream.done(),this.cleanup()}catch(e){this.firstResultReceivedResolve&&this.firstResultReceivedResolve(),this.inputStream.error(e),this.cleanup(e)}}async handleControlRequest(e){let r=new AbortController;this.cancelControllers.set(e.request_id,r);try{let n=await this.processControlRequest(e,r.signal),i={type:"control_response",response:{subtype:"success",request_id:e.request_id,response:n}};await Promise.resolve(this.transport.write(ns(i)+` +`))}catch(n){let i={type:"control_response",response:{subtype:"error",request_id:e.request_id,error:n.message||String(n)}};await Promise.resolve(this.transport.write(ns(i)+` +`))}finally{this.cancelControllers.delete(e.request_id)}}handleControlCancelRequest(e){let r=this.cancelControllers.get(e.request_id);r&&(r.abort(),this.cancelControllers.delete(e.request_id))}async processControlRequest(e,r){if(e.request.subtype==="can_use_tool"){if(!this.canUseTool)throw new Error("canUseTool callback is not provided.");return{...await this.canUseTool(e.request.tool_name,e.request.input,{signal:r,suggestions:e.request.permission_suggestions,blockedPath:e.request.blocked_path,decisionReason:e.request.decision_reason,toolUseID:e.request.tool_use_id,agentID:e.request.agent_id}),toolUseID:e.request.tool_use_id}}else{if(e.request.subtype==="hook_callback")return await this.handleHookCallbacks(e.request.callback_id,e.request.input,e.request.tool_use_id,r);if(e.request.subtype==="mcp_message"){let n=e.request,i=this.sdkMcpTransports.get(n.server_name);if(!i)throw new Error(`SDK MCP server not found: ${n.server_name}`);return"method"in n.message&&"id"in n.message&&n.message.id!==null?{mcp_response:await this.handleMcpControlRequest(n.server_name,n,i)}:(i.onmessage&&i.onmessage(n.message),{mcp_response:{jsonrpc:"2.0",result:{},id:0}})}}throw new Error("Unsupported control request subtype: "+e.request.subtype)}async*readSdkMessages(){for await(let e of this.inputStream)yield e}async initialize(){let e;if(this.hooks){e={};for(let[s,o]of Object.entries(this.hooks))o.length>0&&(e[s]=o.map(a=>{let c=[];for(let u of a.hooks){let l=`hook_${this.nextCallbackId++}`;this.hookCallbacks.set(l,u),c.push(l)}return{matcher:a.matcher,hookCallbackIds:c,timeout:a.timeout}}))}let r=this.sdkMcpTransports.size>0?Array.from(this.sdkMcpTransports.keys()):void 0,n={subtype:"initialize",hooks:e,sdkMcpServers:r,jsonSchema:this.jsonSchema,systemPrompt:this.initConfig?.systemPrompt,appendSystemPrompt:this.initConfig?.appendSystemPrompt,agents:this.initConfig?.agents};return(await this.request(n)).response}async interrupt(){await this.request({subtype:"interrupt"})}async setPermissionMode(e){await this.request({subtype:"set_permission_mode",mode:e})}async setModel(e){await this.request({subtype:"set_model",model:e})}async setMaxThinkingTokens(e){await this.request({subtype:"set_max_thinking_tokens",max_thinking_tokens:e})}async rewindFiles(e,r){return(await this.request({subtype:"rewind_files",user_message_id:e,dry_run:r?.dryRun})).response}async processPendingPermissionRequests(e){for(let r of e)r.request.subtype==="can_use_tool"&&this.handleControlRequest(r).catch(()=>{})}request(e){let r=Math.random().toString(36).substring(2,15),n={request_id:r,type:"control_request",request:e};return new Promise((i,s)=>{this.pendingControlResponses.set(r,o=>{o.subtype==="success"?i(o):(s(new Error(o.error)),o.pending_permission_requests&&this.processPendingPermissionRequests(o.pending_permission_requests))}),Promise.resolve(this.transport.write(ns(n)+` +`))})}async supportedCommands(){return(await this.initialization).commands}async supportedModels(){return(await this.initialization).models}async mcpServerStatus(){return(await this.request({subtype:"mcp_status"})).response.mcpServers}async setMcpServers(e){let r={},n={};for(let[c,u]of Object.entries(e))u.type==="sdk"&&"instance"in u?r[c]=u.instance:n[c]=u;let i=new Set(this.sdkMcpServerInstances.keys()),s=new Set(Object.keys(r));for(let c of i)s.has(c)||await this.disconnectSdkMcpServer(c);for(let[c,u]of Object.entries(r))i.has(c)||this.connectSdkMcpServer(c,u);let o={};for(let c of Object.keys(r))o[c]={type:"sdk",name:c};return(await this.request({subtype:"mcp_set_servers",servers:{...n,...o}})).response}async accountInfo(){return(await this.initialization).account}async streamInput(e){Ls("[Query.streamInput] Starting to process input stream");try{let r=0;for await(let n of e){if(r++,Ls(`[Query.streamInput] Processing message ${r}: ${n.type}`),this.abortController?.signal.aborted)break;await Promise.resolve(this.transport.write(ns(n)+` +`))}Ls(`[Query.streamInput] Finished processing ${r} messages from input stream`),r>0&&this.hasBidirectionalNeeds()&&(Ls("[Query.streamInput] Has bidirectional needs, waiting for first result"),await this.waitForFirstResult()),Ls("[Query] Calling transport.endInput() to close stdin to CLI process"),this.transport.endInput()}catch(r){if(!(r instanceof $a))throw r}}waitForFirstResult(){return this.firstResultReceived?(Ls("[Query.waitForFirstResult] Result already received, returning immediately"),Promise.resolve()):new Promise(e=>{if(this.abortController?.signal.aborted){e();return}this.abortController?.signal.addEventListener("abort",()=>e(),{once:!0}),this.firstResultReceivedResolve=e})}handleHookCallbacks(e,r,n,i){let s=this.hookCallbacks.get(e);if(!s)throw new Error(`No hook callback found for ID: ${e}`);return s(r,n,{signal:i})}connectSdkMcpServer(e,r){let n=new M$(i=>this.sendMcpServerMessageToCli(e,i));this.sdkMcpTransports.set(e,n),this.sdkMcpServerInstances.set(e,r),r.connect(n)}async disconnectSdkMcpServer(e){let r=this.sdkMcpTransports.get(e);r&&(await r.close(),this.sdkMcpTransports.delete(e)),this.sdkMcpServerInstances.delete(e)}sendMcpServerMessageToCli(e,r){if("id"in r&&r.id!==null&&r.id!==void 0){let i=`${e}:${r.id}`,s=this.pendingMcpResponses.get(i);if(s){s.resolve(r),this.pendingMcpResponses.delete(i);return}}let n={type:"control_request",request_id:(0,yq.randomUUID)(),request:{subtype:"mcp_message",server_name:e,message:r}};this.transport.write(ns(n)+` +`)}handleMcpControlRequest(e,r,n){let i="id"in r.message?r.message.id:null,s=`${e}:${i}`;return new Promise((o,a)=>{let c=()=>{this.pendingMcpResponses.delete(s)},u=d=>{c(),o(d)},l=d=>{c(),a(d)};if(this.pendingMcpResponses.set(s,{resolve:u,reject:l}),n.onmessage)n.onmessage(r.message);else{c(),a(new Error("No message handler registered"));return}})}};var ot;(function(t){t.assertEqual=i=>{};function e(i){}t.assertIs=e;function r(i){throw new Error}t.assertNever=r,t.arrayToEnum=i=>{let s={};for(let o of i)s[o]=o;return s},t.getValidEnumValues=i=>{let s=t.objectKeys(i).filter(a=>typeof i[i[a]]!="number"),o={};for(let a of s)o[a]=i[a];return t.objectValues(o)},t.objectValues=i=>t.objectKeys(i).map(function(s){return i[s]}),t.objectKeys=typeof Object.keys=="function"?i=>Object.keys(i):i=>{let s=[];for(let o in i)Object.prototype.hasOwnProperty.call(i,o)&&s.push(o);return s},t.find=(i,s)=>{for(let o of i)if(s(o))return o},t.isInteger=typeof Number.isInteger=="function"?i=>Number.isInteger(i):i=>typeof i=="number"&&Number.isFinite(i)&&Math.floor(i)===i;function n(i,s=" | "){return i.map(o=>typeof o=="string"?`'${o}'`:o).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(i,s)=>typeof s=="bigint"?s.toString():s})(ot||(ot={}));var gF;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(gF||(gF={}));var oe=ot.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Io=t=>{switch(typeof t){case"undefined":return oe.undefined;case"string":return oe.string;case"number":return Number.isNaN(t)?oe.nan:oe.number;case"boolean":return oe.boolean;case"function":return oe.function;case"bigint":return oe.bigint;case"symbol":return oe.symbol;case"object":return Array.isArray(t)?oe.array:t===null?oe.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?oe.promise:typeof Map<"u"&&t instanceof Map?oe.map:typeof Set<"u"&&t instanceof Set?oe.set:typeof Date<"u"&&t instanceof Date?oe.date:oe.object;default:return oe.unknown}},W=ot.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),Qn=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},i=s=>{for(let o of s.issues)if(o.code==="invalid_union")o.unionErrors.map(i);else if(o.code==="invalid_return_type")i(o.returnTypeError);else if(o.code==="invalid_arguments")i(o.argumentsError);else if(o.path.length===0)n._errors.push(r(o));else{let a=n,c=0;for(;cr.message){let r={},n=[];for(let i of this.issues)if(i.path.length>0){let s=i.path[0];r[s]=r[s]||[],r[s].push(e(i))}else n.push(e(i));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};Qn.create=t=>new Qn(t);var _fe=(t,e)=>{let r;switch(t.code){case W.invalid_type:t.received===oe.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case W.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,ot.jsonStringifyReplacer)}`;break;case W.unrecognized_keys:r=`Unrecognized key(s) in object: ${ot.joinValues(t.keys,", ")}`;break;case W.invalid_union:r="Invalid input";break;case W.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${ot.joinValues(t.options)}`;break;case W.invalid_enum_value:r=`Invalid enum value. Expected ${ot.joinValues(t.options)}, received '${t.received}'`;break;case W.invalid_arguments:r="Invalid function arguments";break;case W.invalid_return_type:r="Invalid function return type";break;case W.invalid_date:r="Invalid date";break;case W.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:ot.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case W.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case W.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case W.custom:r="Invalid input";break;case W.invalid_intersection_types:r="Intersection results could not be merged";break;case W.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case W.not_finite:r="Number must be finite";break;default:r=e.defaultError,ot.assertNever(t)}return{message:r}},Yp=_fe,bfe=Yp;function j$(){return bfe}var z$=t=>{let{data:e,path:r,errorMaps:n,issueData:i}=t,s=[...r,...i.path||[]],o={...i,path:s};if(i.message!==void 0)return{...i,path:s,message:i.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(o,{data:e,defaultError:a}).message;return{...i,path:s,message:a}};function te(t,e){let r=j$(),n=z$({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Yp?void 0:Yp].filter(i=>!!i)});t.common.issues.push(n)}var rn=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let i of r){if(i.status==="aborted")return Te;i.status==="dirty"&&e.dirty(),n.push(i.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let i of r){let s=await i.key,o=await i.value;n.push({key:s,value:o})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let i of r){let{key:s,value:o}=i;if(s.status==="aborted"||o.status==="aborted")return Te;s.status==="dirty"&&e.dirty(),o.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof o.value<"u"||i.alwaysSet)&&(n[s.value]=o.value)}return{status:e.value,value:n}}},Te=Object.freeze({status:"aborted"}),Kp=t=>({status:"dirty",value:t}),_n=t=>({status:"valid",value:t}),vF=t=>t.status==="aborted",yF=t=>t.status==="dirty",$u=t=>t.status==="valid",Vv=t=>typeof Promise<"u"&&t instanceof Promise,pe;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(pe||(pe={}));var ei=class{constructor(e,r,n,i){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=i}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},_F=(t,e)=>{if($u(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new Qn(t.common.issues);return this._error=r,this._error}}};function Ne(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:i}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:i}:{errorMap:(o,a)=>{let{message:c}=t;return o.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:o.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:i}}var Be=class{get description(){return this._def.description}_getType(e){return Io(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Io(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new rn,ctx:{common:e.parent.common,data:e.data,parsedType:Io(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Vv(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Io(e)},i=this._parseSync({data:e,path:n.path,parent:n});return _F(n,i)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Io(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return $u(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>$u(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Io(e)},i=this._parse({data:e,path:n.path,parent:n}),s=await(Vv(i)?i:Promise.resolve(i));return _F(n,s)}refine(e,r){let n=i=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(i):r;return this._refinement((i,s)=>{let o=e(i),a=()=>s.addIssue({code:W.custom,...n(i)});return typeof Promise<"u"&&o instanceof Promise?o.then(c=>c?!0:(a(),!1)):o?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,i)=>e(n)?!0:(i.addIssue(typeof r=="function"?r(n,i):r),!1))}_refinement(e){return new ki({schema:this,typeName:$e.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return Ei.create(this,this._def)}nullable(){return qs.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Co.create(this)}promise(){return Ra.create(this,this._def)}or(e){return Cu.create([this,e],this._def)}and(e){return Pu.create(this,e,this._def)}transform(e){return new ki({...Ne(this._def),schema:this,typeName:$e.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new ju({...Ne(this._def),innerType:this,defaultValue:r,typeName:$e.ZodDefault})}brand(){return new Kv({typeName:$e.ZodBranded,type:this,...Ne(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new zu({...Ne(this._def),innerType:this,catchValue:r,typeName:$e.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Jv.create(this,e)}readonly(){return Lu.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Sfe=/^c[^\s-]{8,}$/i,xfe=/^[0-9a-z]+$/,wfe=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Efe=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,kfe=/^[a-z0-9_-]{21}$/i,Tfe=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,$fe=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Ife=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Rfe="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",$$,Ofe=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Cfe=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,Pfe=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,Afe=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Nfe=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Mfe=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,_q="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Dfe=new RegExp(`^${_q}$`);function bq(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function jfe(t){return new RegExp(`^${bq(t)}$`)}function zfe(t){let e=`${_q}T${bq(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function Lfe(t,e){return!!((e==="v4"||!e)&&Ofe.test(t)||(e==="v6"||!e)&&Pfe.test(t))}function Ufe(t,e){if(!Tfe.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),i=JSON.parse(atob(n));return!(typeof i!="object"||i===null||"typ"in i&&i?.typ!=="JWT"||!i.alg||e&&i.alg!==e)}catch{return!1}}function Ffe(t,e){return!!((e==="v4"||!e)&&Cfe.test(t)||(e==="v6"||!e)&&Afe.test(t))}var Iu=class t extends Be{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==oe.string){let s=this._getOrReturnCtx(e);return te(s,{code:W.invalid_type,expected:oe.string,received:s.parsedType}),Te}let n=new rn,i;for(let s of this._def.checks)if(s.kind==="min")e.data.lengths.value&&(i=this._getOrReturnCtx(e,i),te(i,{code:W.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let o=e.data.length>s.value,a=e.data.lengthe.test(i),{validation:r,code:W.invalid_string,...pe.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...pe.errToObj(e)})}url(e){return this._addCheck({kind:"url",...pe.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...pe.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...pe.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...pe.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...pe.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...pe.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...pe.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...pe.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...pe.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...pe.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...pe.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...pe.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...pe.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...pe.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...pe.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...pe.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...pe.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...pe.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...pe.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...pe.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...pe.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...pe.errToObj(r)})}nonempty(e){return this.min(1,pe.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew Iu({checks:[],typeName:$e.ZodString,coerce:t?.coerce??!1,...Ne(t)});function qfe(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,i=r>n?r:n,s=Number.parseInt(t.toFixed(i).replace(".","")),o=Number.parseInt(e.toFixed(i).replace(".",""));return s%o/10**i}var Qp=class t extends Be{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==oe.number){let s=this._getOrReturnCtx(e);return te(s,{code:W.invalid_type,expected:oe.number,received:s.parsedType}),Te}let n,i=new rn;for(let s of this._def.checks)s.kind==="int"?ot.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),te(n,{code:W.invalid_type,expected:"integer",received:"float",message:s.message}),i.dirty()):s.kind==="min"?(s.inclusive?e.datas.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),te(n,{code:W.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),i.dirty()):s.kind==="multipleOf"?qfe(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),te(n,{code:W.not_multiple_of,multipleOf:s.value,message:s.message}),i.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),te(n,{code:W.not_finite,message:s.message}),i.dirty()):ot.assertNever(s);return{status:i.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,pe.toString(r))}gt(e,r){return this.setLimit("min",e,!1,pe.toString(r))}lte(e,r){return this.setLimit("max",e,!0,pe.toString(r))}lt(e,r){return this.setLimit("max",e,!1,pe.toString(r))}setLimit(e,r,n,i){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:pe.toString(i)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:pe.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:pe.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:pe.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:pe.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:pe.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:pe.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:pe.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:pe.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:pe.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuee.kind==="int"||e.kind==="multipleOf"&&ot.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.valuenew Qp({checks:[],typeName:$e.ZodNumber,coerce:t?.coerce||!1,...Ne(t)});var ef=class t extends Be{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==oe.bigint)return this._getInvalidInput(e);let n,i=new rn;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.datas.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),te(n,{code:W.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),i.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),te(n,{code:W.not_multiple_of,multipleOf:s.value,message:s.message}),i.dirty()):ot.assertNever(s);return{status:i.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return te(r,{code:W.invalid_type,expected:oe.bigint,received:r.parsedType}),Te}gte(e,r){return this.setLimit("min",e,!0,pe.toString(r))}gt(e,r){return this.setLimit("min",e,!1,pe.toString(r))}lte(e,r){return this.setLimit("max",e,!0,pe.toString(r))}lt(e,r){return this.setLimit("max",e,!1,pe.toString(r))}setLimit(e,r,n,i){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:pe.toString(i)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:pe.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:pe.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:pe.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:pe.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:pe.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew ef({checks:[],typeName:$e.ZodBigInt,coerce:t?.coerce??!1,...Ne(t)});var tf=class extends Be{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==oe.boolean){let n=this._getOrReturnCtx(e);return te(n,{code:W.invalid_type,expected:oe.boolean,received:n.parsedType}),Te}return _n(e.data)}};tf.create=t=>new tf({typeName:$e.ZodBoolean,coerce:t?.coerce||!1,...Ne(t)});var rf=class t extends Be{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==oe.date){let s=this._getOrReturnCtx(e);return te(s,{code:W.invalid_type,expected:oe.date,received:s.parsedType}),Te}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return te(s,{code:W.invalid_date}),Te}let n=new rn,i;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()s.value&&(i=this._getOrReturnCtx(e,i),te(i,{code:W.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):ot.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:pe.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:pe.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.valuenew rf({checks:[],coerce:t?.coerce||!1,typeName:$e.ZodDate,...Ne(t)});var nf=class extends Be{_parse(e){if(this._getType(e)!==oe.symbol){let n=this._getOrReturnCtx(e);return te(n,{code:W.invalid_type,expected:oe.symbol,received:n.parsedType}),Te}return _n(e.data)}};nf.create=t=>new nf({typeName:$e.ZodSymbol,...Ne(t)});var Ru=class extends Be{_parse(e){if(this._getType(e)!==oe.undefined){let n=this._getOrReturnCtx(e);return te(n,{code:W.invalid_type,expected:oe.undefined,received:n.parsedType}),Te}return _n(e.data)}};Ru.create=t=>new Ru({typeName:$e.ZodUndefined,...Ne(t)});var Ou=class extends Be{_parse(e){if(this._getType(e)!==oe.null){let n=this._getOrReturnCtx(e);return te(n,{code:W.invalid_type,expected:oe.null,received:n.parsedType}),Te}return _n(e.data)}};Ou.create=t=>new Ou({typeName:$e.ZodNull,...Ne(t)});var sf=class extends Be{constructor(){super(...arguments),this._any=!0}_parse(e){return _n(e.data)}};sf.create=t=>new sf({typeName:$e.ZodAny,...Ne(t)});var Oo=class extends Be{constructor(){super(...arguments),this._unknown=!0}_parse(e){return _n(e.data)}};Oo.create=t=>new Oo({typeName:$e.ZodUnknown,...Ne(t)});var ss=class extends Be{_parse(e){let r=this._getOrReturnCtx(e);return te(r,{code:W.invalid_type,expected:oe.never,received:r.parsedType}),Te}};ss.create=t=>new ss({typeName:$e.ZodNever,...Ne(t)});var of=class extends Be{_parse(e){if(this._getType(e)!==oe.undefined){let n=this._getOrReturnCtx(e);return te(n,{code:W.invalid_type,expected:oe.void,received:n.parsedType}),Te}return _n(e.data)}};of.create=t=>new of({typeName:$e.ZodVoid,...Ne(t)});var Co=class t extends Be{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),i=this._def;if(r.parsedType!==oe.array)return te(r,{code:W.invalid_type,expected:oe.array,received:r.parsedType}),Te;if(i.exactLength!==null){let o=r.data.length>i.exactLength.value,a=r.data.lengthi.maxLength.value&&(te(r,{code:W.too_big,maximum:i.maxLength.value,type:"array",inclusive:!0,exact:!1,message:i.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((o,a)=>i.type._parseAsync(new ei(r,o,r.path,a)))).then(o=>rn.mergeArray(n,o));let s=[...r.data].map((o,a)=>i.type._parseSync(new ei(r,o,r.path,a)));return rn.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:pe.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:pe.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:pe.toString(r)}})}nonempty(e){return this.min(1,e)}};Co.create=(t,e)=>new Co({type:t,minLength:null,maxLength:null,exactLength:null,typeName:$e.ZodArray,...Ne(e)});function Eu(t){if(t instanceof Nn){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Ei.create(Eu(n))}return new Nn({...t._def,shape:()=>e})}else return t instanceof Co?new Co({...t._def,type:Eu(t.element)}):t instanceof Ei?Ei.create(Eu(t.unwrap())):t instanceof qs?qs.create(Eu(t.unwrap())):t instanceof Fs?Fs.create(t.items.map(e=>Eu(e))):t}var Nn=class t extends Be{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=ot.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==oe.object){let u=this._getOrReturnCtx(e);return te(u,{code:W.invalid_type,expected:oe.object,received:u.parsedType}),Te}let{status:n,ctx:i}=this._processInputParams(e),{shape:s,keys:o}=this._getCached(),a=[];if(!(this._def.catchall instanceof ss&&this._def.unknownKeys==="strip"))for(let u in i.data)o.includes(u)||a.push(u);let c=[];for(let u of o){let l=s[u],d=i.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new ei(i,d,i.path,u)),alwaysSet:u in i.data})}if(this._def.catchall instanceof ss){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:i.data[l]}});else if(u==="strict")a.length>0&&(te(i,{code:W.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=i.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new ei(i,d,i.path,l)),alwaysSet:l in i.data})}}return i.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,p=await l.value;u.push({key:d,value:p,alwaysSet:l.alwaysSet})}return u}).then(u=>rn.mergeObjectSync(n,u)):rn.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return pe.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let i=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:pe.errToObj(e).message??i}:{message:i}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:$e.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of ot.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of ot.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return Eu(this)}partial(e){let r={};for(let n of ot.objectKeys(this.shape)){let i=this.shape[n];e&&!e[n]?r[n]=i:r[n]=i.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of ot.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Ei;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return Sq(ot.objectKeys(this.shape))}};Nn.create=(t,e)=>new Nn({shape:()=>t,unknownKeys:"strip",catchall:ss.create(),typeName:$e.ZodObject,...Ne(e)});Nn.strictCreate=(t,e)=>new Nn({shape:()=>t,unknownKeys:"strict",catchall:ss.create(),typeName:$e.ZodObject,...Ne(e)});Nn.lazycreate=(t,e)=>new Nn({shape:t,unknownKeys:"strip",catchall:ss.create(),typeName:$e.ZodObject,...Ne(e)});var Cu=class extends Be{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function i(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let o=s.map(a=>new Qn(a.ctx.common.issues));return te(r,{code:W.invalid_union,unionErrors:o}),Te}if(r.common.async)return Promise.all(n.map(async s=>{let o={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:o}),ctx:o}})).then(i);{let s,o=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!s&&(s={result:l,ctx:u}),u.common.issues.length&&o.push(u.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let a=o.map(c=>new Qn(c));return te(r,{code:W.invalid_union,unionErrors:a}),Te}}get options(){return this._def.options}};Cu.create=(t,e)=>new Cu({options:t,typeName:$e.ZodUnion,...Ne(e)});var zs=t=>t instanceof Au?zs(t.schema):t instanceof ki?zs(t.innerType()):t instanceof Nu?[t.value]:t instanceof Mu?t.options:t instanceof Du?ot.objectValues(t.enum):t instanceof ju?zs(t._def.innerType):t instanceof Ru?[void 0]:t instanceof Ou?[null]:t instanceof Ei?[void 0,...zs(t.unwrap())]:t instanceof qs?[null,...zs(t.unwrap())]:t instanceof Kv||t instanceof Lu?zs(t.unwrap()):t instanceof zu?zs(t._def.innerType):[],L$=class t extends Be{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==oe.object)return te(r,{code:W.invalid_type,expected:oe.object,received:r.parsedType}),Te;let n=this.discriminator,i=r.data[n],s=this.optionsMap.get(i);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(te(r,{code:W.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),Te)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let i=new Map;for(let s of r){let o=zs(s.shape[e]);if(!o.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of o){if(i.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);i.set(a,s)}}return new t({typeName:$e.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:i,...Ne(n)})}};function U$(t,e){let r=Io(t),n=Io(e);if(t===e)return{valid:!0,data:t};if(r===oe.object&&n===oe.object){let i=ot.objectKeys(e),s=ot.objectKeys(t).filter(a=>i.indexOf(a)!==-1),o={...t,...e};for(let a of s){let c=U$(t[a],e[a]);if(!c.valid)return{valid:!1};o[a]=c.data}return{valid:!0,data:o}}else if(r===oe.array&&n===oe.array){if(t.length!==e.length)return{valid:!1};let i=[];for(let s=0;s{if(vF(s)||vF(o))return Te;let a=U$(s.value,o.value);return a.valid?((yF(s)||yF(o))&&r.dirty(),{status:r.value,value:a.data}):(te(n,{code:W.invalid_intersection_types}),Te)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,o])=>i(s,o)):i(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};Pu.create=(t,e,r)=>new Pu({left:t,right:e,typeName:$e.ZodIntersection,...Ne(r)});var Fs=class t extends Be{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==oe.array)return te(n,{code:W.invalid_type,expected:oe.array,received:n.parsedType}),Te;if(n.data.lengththis._def.items.length&&(te(n,{code:W.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((o,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new ei(n,o,n.path,a)):null}).filter(o=>!!o);return n.common.async?Promise.all(s).then(o=>rn.mergeArray(r,o)):rn.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Fs.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Fs({items:t,typeName:$e.ZodTuple,rest:null,...Ne(e)})};var F$=class t extends Be{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==oe.object)return te(n,{code:W.invalid_type,expected:oe.object,received:n.parsedType}),Te;let i=[],s=this._def.keyType,o=this._def.valueType;for(let a in n.data)i.push({key:s._parse(new ei(n,a,n.path,a)),value:o._parse(new ei(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?rn.mergeObjectAsync(r,i):rn.mergeObjectSync(r,i)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof Be?new t({keyType:e,valueType:r,typeName:$e.ZodRecord,...Ne(n)}):new t({keyType:Iu.create(),valueType:e,typeName:$e.ZodRecord,...Ne(r)})}},af=class extends Be{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==oe.map)return te(n,{code:W.invalid_type,expected:oe.map,received:n.parsedType}),Te;let i=this._def.keyType,s=this._def.valueType,o=[...n.data.entries()].map(([a,c],u)=>({key:i._parse(new ei(n,a,n.path,[u,"key"])),value:s._parse(new ei(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of o){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return Te;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of o){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return Te;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};af.create=(t,e,r)=>new af({valueType:e,keyType:t,typeName:$e.ZodMap,...Ne(r)});var cf=class t extends Be{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==oe.set)return te(n,{code:W.invalid_type,expected:oe.set,received:n.parsedType}),Te;let i=this._def;i.minSize!==null&&n.data.sizei.maxSize.value&&(te(n,{code:W.too_big,maximum:i.maxSize.value,type:"set",inclusive:!0,exact:!1,message:i.maxSize.message}),r.dirty());let s=this._def.valueType;function o(c){let u=new Set;for(let l of c){if(l.status==="aborted")return Te;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new ei(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>o(c)):o(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:pe.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:pe.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};cf.create=(t,e)=>new cf({valueType:t,minSize:null,maxSize:null,typeName:$e.ZodSet,...Ne(e)});var q$=class t extends Be{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==oe.function)return te(r,{code:W.invalid_type,expected:oe.function,received:r.parsedType}),Te;function n(a,c){return z$({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,j$(),Yp].filter(u=>!!u),issueData:{code:W.invalid_arguments,argumentsError:c}})}function i(a,c){return z$({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,j$(),Yp].filter(u=>!!u),issueData:{code:W.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},o=r.data;if(this._def.returns instanceof Ra){let a=this;return _n(async function(...c){let u=new Qn([]),l=await a._def.args.parseAsync(c,s).catch(f=>{throw u.addIssue(n(c,f)),u}),d=await Reflect.apply(o,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(f=>{throw u.addIssue(i(d,f)),u})})}else{let a=this;return _n(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Qn([n(c,u.error)]);let l=Reflect.apply(o,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Qn([i(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Fs.create(e).rest(Oo.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||Fs.create([]).rest(Oo.create()),returns:r||Oo.create(),typeName:$e.ZodFunction,...Ne(n)})}},Au=class extends Be{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Au.create=(t,e)=>new Au({getter:t,typeName:$e.ZodLazy,...Ne(e)});var Nu=class extends Be{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return te(r,{received:r.data,code:W.invalid_literal,expected:this._def.value}),Te}return{status:"valid",value:e.data}}get value(){return this._def.value}};Nu.create=(t,e)=>new Nu({value:t,typeName:$e.ZodLiteral,...Ne(e)});function Sq(t,e){return new Mu({values:t,typeName:$e.ZodEnum,...Ne(e)})}var Mu=class t extends Be{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return te(r,{expected:ot.joinValues(n),received:r.parsedType,code:W.invalid_type}),Te}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return te(r,{received:r.data,code:W.invalid_enum_value,options:n}),Te}return _n(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};Mu.create=Sq;var Du=class extends Be{_parse(e){let r=ot.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==oe.string&&n.parsedType!==oe.number){let i=ot.objectValues(r);return te(n,{expected:ot.joinValues(i),received:n.parsedType,code:W.invalid_type}),Te}if(this._cache||(this._cache=new Set(ot.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let i=ot.objectValues(r);return te(n,{received:n.data,code:W.invalid_enum_value,options:i}),Te}return _n(e.data)}get enum(){return this._def.values}};Du.create=(t,e)=>new Du({values:t,typeName:$e.ZodNativeEnum,...Ne(e)});var Ra=class extends Be{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==oe.promise&&r.common.async===!1)return te(r,{code:W.invalid_type,expected:oe.promise,received:r.parsedType}),Te;let n=r.parsedType===oe.promise?r.data:Promise.resolve(r.data);return _n(n.then(i=>this._def.type.parseAsync(i,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Ra.create=(t,e)=>new Ra({type:t,typeName:$e.ZodPromise,...Ne(e)});var ki=class extends Be{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===$e.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),i=this._def.effect||null,s={addIssue:o=>{te(n,o),o.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),i.type==="preprocess"){let o=i.transform(n.data,s);if(n.common.async)return Promise.resolve(o).then(async a=>{if(r.value==="aborted")return Te;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?Te:c.status==="dirty"||r.value==="dirty"?Kp(c.value):c});{if(r.value==="aborted")return Te;let a=this._def.schema._parseSync({data:o,path:n.path,parent:n});return a.status==="aborted"?Te:a.status==="dirty"||r.value==="dirty"?Kp(a.value):a}}if(i.type==="refinement"){let o=a=>{let c=i.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?Te:(a.status==="dirty"&&r.dirty(),o(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?Te:(a.status==="dirty"&&r.dirty(),o(a.value).then(()=>({status:r.value,value:a.value}))))}if(i.type==="transform")if(n.common.async===!1){let o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!$u(o))return Te;let a=i.transform(o.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>$u(o)?Promise.resolve(i.transform(o.value,s)).then(a=>({status:r.value,value:a})):Te);ot.assertNever(i)}};ki.create=(t,e,r)=>new ki({schema:t,typeName:$e.ZodEffects,effect:e,...Ne(r)});ki.createWithPreprocess=(t,e,r)=>new ki({schema:e,effect:{type:"preprocess",transform:t},typeName:$e.ZodEffects,...Ne(r)});var Ei=class extends Be{_parse(e){return this._getType(e)===oe.undefined?_n(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ei.create=(t,e)=>new Ei({innerType:t,typeName:$e.ZodOptional,...Ne(e)});var qs=class extends Be{_parse(e){return this._getType(e)===oe.null?_n(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};qs.create=(t,e)=>new qs({innerType:t,typeName:$e.ZodNullable,...Ne(e)});var ju=class extends Be{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===oe.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};ju.create=(t,e)=>new ju({innerType:t,typeName:$e.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Ne(e)});var zu=class extends Be{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},i=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Vv(i)?i.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Qn(n.common.issues)},input:n.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new Qn(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};zu.create=(t,e)=>new zu({innerType:t,typeName:$e.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Ne(e)});var uf=class extends Be{_parse(e){if(this._getType(e)!==oe.nan){let n=this._getOrReturnCtx(e);return te(n,{code:W.invalid_type,expected:oe.nan,received:n.parsedType}),Te}return{status:"valid",value:e.data}}};uf.create=t=>new uf({typeName:$e.ZodNaN,...Ne(t)});var Kv=class extends Be{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},Jv=class t extends Be{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?Te:s.status==="dirty"?(r.dirty(),Kp(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let i=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?Te:i.status==="dirty"?(r.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:$e.ZodPipeline})}},Lu=class extends Be{_parse(e){let r=this._def.innerType._parse(e),n=i=>($u(i)&&(i.value=Object.freeze(i.value)),i);return Vv(r)?r.then(i=>n(i)):n(r)}unwrap(){return this._def.innerType}};Lu.create=(t,e)=>new Lu({innerType:t,typeName:$e.ZodReadonly,...Ne(e)});var nje={object:Nn.lazycreate},$e;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})($e||($e={}));var ije=Iu.create,sje=Qp.create,oje=uf.create,aje=ef.create,cje=tf.create,uje=rf.create,lje=nf.create,dje=Ru.create,pje=Ou.create,fje=sf.create,mje=Oo.create,hje=ss.create,gje=of.create,vje=Co.create,yje=Nn.create,_je=Nn.strictCreate,bje=Cu.create,Sje=L$.create,xje=Pu.create,wje=Fs.create,Eje=F$.create,kje=af.create,Tje=cf.create,$je=q$.create,Ije=Au.create,Rje=Nu.create,Oje=Mu.create,Cje=Du.create,Pje=Ra.create,Aje=ki.create,Nje=Ei.create,Mje=qs.create,Dje=ki.createWithPreprocess,jje=Jv.create,zje=Object.freeze({status:"aborted"});function q(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in o.prototype)l in a||Object.defineProperty(a,l,{value:o.prototype[l].bind(a)});a._zod.constr=o,a._zod.def=c}let i=r?.Parent??Object;class s extends i{}Object.defineProperty(s,"name",{value:t});function o(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(o,"init",{value:n}),Object.defineProperty(o,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(o,"name",{value:t}),o}var Oa=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},H$={};function Hs(t){return t&&Object.assign(H$,t),H$}var Dt={};UF(Dt,{unwrapMessage:()=>Jp,stringifyPrimitive:()=>iI,required:()=>ame,randomString:()=>Jfe,propertyKeyTypes:()=>Tq,promiseAllObject:()=>Kfe,primitiveTypes:()=>Qfe,prefixIssues:()=>Ro,pick:()=>rme,partial:()=>ome,optionalKeys:()=>$q,omit:()=>nme,numKeys:()=>Xfe,nullish:()=>oy,normalizeParams:()=>xe,merge:()=>sme,jsonStringifyReplacer:()=>wq,joinValues:()=>Z$,issue:()=>Rq,isPlainObject:()=>df,isObject:()=>lf,getSizableOrigin:()=>cme,getParsedType:()=>Yfe,getLengthableOrigin:()=>cy,getEnumValues:()=>xq,getElementAtPath:()=>Vfe,floatSafeRemainder:()=>Eq,finalizeIssue:()=>Zs,extend:()=>ime,escapeRegex:()=>Bu,esc:()=>ku,defineLazy:()=>jt,createTransparentProxy:()=>eme,clone:()=>Ao,cleanRegex:()=>ay,cleanEnum:()=>ume,captureStackTrace:()=>nI,cached:()=>sy,assignProp:()=>rI,assertNotEqual:()=>Zfe,assertNever:()=>Gfe,assertIs:()=>Bfe,assertEqual:()=>Hfe,assert:()=>Wfe,allowsEval:()=>kq,aborted:()=>Tu,NUMBER_FORMAT_RANGES:()=>Iq,Class:()=>B$,BIGINT_FORMAT_RANGES:()=>tme});function Hfe(t){return t}function Zfe(t){return t}function Bfe(t){}function Gfe(t){throw new Error}function Wfe(t){}function xq(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,i])=>e.indexOf(+n)===-1).map(([n,i])=>i)}function Z$(t,e="|"){return t.map(r=>iI(r)).join(e)}function wq(t,e){return typeof e=="bigint"?e.toString():e}function sy(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function oy(t){return t==null}function ay(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Eq(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,i=r>n?r:n,s=Number.parseInt(t.toFixed(i).replace(".","")),o=Number.parseInt(e.toFixed(i).replace(".",""));return s%o/10**i}function jt(t,e,r){Object.defineProperty(t,e,{get(){{let i=r();return t[e]=i,i}throw new Error("cached value already set")},set(i){Object.defineProperty(t,e,{value:i})},configurable:!0})}function rI(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Vfe(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function Kfe(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let i={};for(let s=0;s{};function lf(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var kq=sy(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function df(t){if(lf(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(lf(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function Xfe(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var Yfe=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},Tq=new Set(["string","number","symbol"]),Qfe=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Bu(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Ao(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function xe(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function eme(t){let e;return new Proxy({},{get(r,n,i){return e??(e=t()),Reflect.get(e,n,i)},set(r,n,i,s){return e??(e=t()),Reflect.set(e,n,i,s)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,i){return e??(e=t()),Reflect.defineProperty(e,n,i)}})}function iI(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function $q(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Iq={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},tme={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function rme(t,e){let r={},n=t._zod.def;for(let i in e){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);e[i]&&(r[i]=n.shape[i])}return Ao(t,{...t._zod.def,shape:r,checks:[]})}function nme(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let i in e){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);e[i]&&delete r[i]}return Ao(t,{...t._zod.def,shape:r,checks:[]})}function ime(t,e){if(!df(e))throw new Error("Invalid input to extend: expected a plain object");let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return rI(this,"shape",n),n},checks:[]};return Ao(t,r)}function sme(t,e){return Ao(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return rI(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function ome(t,e,r){let n=e._zod.def.shape,i={...n};if(r)for(let s in r){if(!(s in n))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(i[s]=t?new t({type:"optional",innerType:n[s]}):n[s])}else for(let s in n)i[s]=t?new t({type:"optional",innerType:n[s]}):n[s];return Ao(e,{...e._zod.def,shape:i,checks:[]})}function ame(t,e,r){let n=e._zod.def.shape,i={...n};if(r)for(let s in r){if(!(s in i))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(i[s]=new t({type:"nonoptional",innerType:n[s]}))}else for(let s in n)i[s]=new t({type:"nonoptional",innerType:n[s]});return Ao(e,{...e._zod.def,shape:i,checks:[]})}function Tu(t,e=0){for(let r=e;r{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function Jp(t){return typeof t=="string"?t:t?.message}function Zs(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let i=Jp(t.inst?._zod.def?.error?.(t))??Jp(e?.error?.(t))??Jp(r.customError?.(t))??Jp(r.localeError?.(t))??"Invalid input";n.message=i}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function cme(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function cy(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Rq(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function ume(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var B$=class{constructor(...e){}},Oq=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),Object.defineProperty(t,"message",{get(){return JSON.stringify(e,wq,2)},enumerable:!0})},Cq=q("$ZodError",Oq),Pq=q("$ZodError",Oq,{Parent:Error});function lme(t,e=r=>r.message){let r={},n=[];for(let i of t.issues)i.path.length>0?(r[i.path[0]]=r[i.path[0]]||[],r[i.path[0]].push(e(i))):n.push(e(i));return{formErrors:n,fieldErrors:r}}function dme(t,e){let r=e||function(s){return s.message},n={_errors:[]},i=s=>{for(let o of s.issues)if(o.code==="invalid_union"&&o.errors.length)o.errors.map(a=>i({issues:a}));else if(o.code==="invalid_key")i({issues:o.issues});else if(o.code==="invalid_element")i({issues:o.issues});else if(o.path.length===0)n._errors.push(r(o));else{let a=n,c=0;for(;c(e,r,n,i)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},o=e._zod.run({value:r,issues:[]},s);if(o instanceof Promise)throw new Oa;if(o.issues.length){let a=new(i?.Err??t)(o.issues.map(c=>Zs(c,s,Hs())));throw nI(a,i?.callee),a}return o.value};var fme=t=>async(e,r,n,i)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},o=e._zod.run({value:r,issues:[]},s);if(o instanceof Promise&&(o=await o),o.issues.length){let a=new(i?.Err??t)(o.issues.map(c=>Zs(c,s,Hs())));throw nI(a,i?.callee),a}return o.value};var Aq=t=>(e,r,n)=>{let i=n?{...n,async:!1}:{async:!1},s=e._zod.run({value:r,issues:[]},i);if(s instanceof Promise)throw new Oa;return s.issues.length?{success:!1,error:new(t??Cq)(s.issues.map(o=>Zs(o,i,Hs())))}:{success:!0,data:s.value}},mme=Aq(Pq),Nq=t=>async(e,r,n)=>{let i=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},i);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(o=>Zs(o,i,Hs())))}:{success:!0,data:s.value}},hme=Nq(Pq),gme=/^[cC][^\s-]{8,}$/,vme=/^[0-9a-z]+$/,yme=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,_me=/^[0-9a-vA-V]{20}$/,bme=/^[A-Za-z0-9]{27}$/,Sme=/^[a-zA-Z0-9_-]{21}$/,xme=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,wme=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,bF=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/,Eme=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,kme="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Tme(){return new RegExp(kme,"u")}var $me=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Ime=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,Rme=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Ome=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Cme=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Mq=/^[A-Za-z0-9_-]*$/,Pme=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,Ame=/^\+(?:[0-9]){6,14}[0-9]$/,Dq="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",Nme=new RegExp(`^${Dq}$`);function jq(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Mme(t){return new RegExp(`^${jq(t)}$`)}function Dme(t){let e=jq({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-]\\d{2}:\\d{2})");let n=`${e}(?:${r.join("|")})`;return new RegExp(`^${Dq}T(?:${n})$`)}var jme=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},zme=/^\d+$/,Lme=/^-?\d+(?:\.\d+)?/i,Ume=/true|false/i,Fme=/null/i,qme=/^[^A-Z]*$/,Hme=/^[^a-z]*$/,bn=q("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),zq={number:"number",bigint:"bigint",object:"date"},Lq=q("$ZodCheckLessThan",(t,e)=>{bn.init(t,e);let r=zq[typeof e.value];t._zod.onattach.push(n=>{let i=n._zod.bag,s=(e.inclusive?i.maximum:i.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value{(e.inclusive?n.value<=e.value:n.value{bn.init(t,e);let r=zq[typeof e.value];t._zod.onattach.push(n=>{let i=n._zod.bag,s=(e.inclusive?i.minimum:i.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>s&&(e.inclusive?i.minimum=e.value:i.exclusiveMinimum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value>=e.value:n.value>e.value)||n.issues.push({origin:r,code:"too_small",minimum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Zme=q("$ZodCheckMultipleOf",(t,e)=>{bn.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):Eq(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),Bme=q("$ZodCheckNumberFormat",(t,e)=>{bn.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[i,s]=Iq[e.format];t._zod.onattach.push(o=>{let a=o._zod.bag;a.format=e.format,a.minimum=i,a.maximum=s,r&&(a.pattern=zme)}),t._zod.check=o=>{let a=o.value;if(r){if(!Number.isInteger(a)){o.issues.push({expected:n,format:e.format,code:"invalid_type",input:a,inst:t});return}if(!Number.isSafeInteger(a)){a>0?o.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort}):o.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort});return}}as&&o.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inst:t})}}),Gme=q("$ZodCheckMaxLength",(t,e)=>{bn.init(t,e),t._zod.when=r=>{let n=r.value;return!oy(n)&&n.length!==void 0},t._zod.onattach.push(r=>{let n=r._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum{let n=r.value;if(n.length<=e.maximum)return;let s=cy(n);r.issues.push({origin:s,code:"too_big",maximum:e.maximum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),Wme=q("$ZodCheckMinLength",(t,e)=>{bn.init(t,e),t._zod.when=r=>{let n=r.value;return!oy(n)&&n.length!==void 0},t._zod.onattach.push(r=>{let n=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>n&&(r._zod.bag.minimum=e.minimum)}),t._zod.check=r=>{let n=r.value;if(n.length>=e.minimum)return;let s=cy(n);r.issues.push({origin:s,code:"too_small",minimum:e.minimum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),Vme=q("$ZodCheckLengthEquals",(t,e)=>{bn.init(t,e),t._zod.when=r=>{let n=r.value;return!oy(n)&&n.length!==void 0},t._zod.onattach.push(r=>{let n=r._zod.bag;n.minimum=e.length,n.maximum=e.length,n.length=e.length}),t._zod.check=r=>{let n=r.value,i=n.length;if(i===e.length)return;let s=cy(n),o=i>e.length;r.issues.push({origin:s,...o?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:r.value,inst:t,continue:!e.abort})}}),uy=q("$ZodCheckStringFormat",(t,e)=>{var r,n;bn.init(t,e),t._zod.onattach.push(i=>{let s=i._zod.bag;s.format=e.format,e.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=i=>{e.pattern.lastIndex=0,!e.pattern.test(i.value)&&i.issues.push({origin:"string",code:"invalid_format",format:e.format,input:i.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),Kme=q("$ZodCheckRegex",(t,e)=>{uy.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),Jme=q("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=qme),uy.init(t,e)}),Xme=q("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Hme),uy.init(t,e)}),Yme=q("$ZodCheckIncludes",(t,e)=>{bn.init(t,e);let r=Bu(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(i=>{let s=i._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=i=>{i.value.includes(e.includes,e.position)||i.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:i.value,inst:t,continue:!e.abort})}}),Qme=q("$ZodCheckStartsWith",(t,e)=>{bn.init(t,e);let r=new RegExp(`^${Bu(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let i=n._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),ehe=q("$ZodCheckEndsWith",(t,e)=>{bn.init(t,e);let r=new RegExp(`.*${Bu(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let i=n._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}}),the=q("$ZodCheckOverwrite",(t,e)=>{bn.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}}),G$=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(` `).filter(o=>o),i=Math.min(...n.map(o=>o.length-o.trimStart().length)),s=n.map(o=>o.slice(i)).map(o=>" ".repeat(this.indent*2)+o);for(let o of s)this.content.push(o)}compile(){let e=Function,r=this?.args,i=[...(this?.content??[""]).map(s=>` ${s}`)];return new e(...r,i.join(` -`))}},Mme={major:4,minor:0,patch:0},Mt=q("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Mme;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let i of n)for(let s of i._zod.onattach)s(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let i=(s,o,a)=>{let c=mu(s),u;for(let l of o){if(l._zod.when){if(!l._zod.when(s))continue}else if(c)continue;let d=s.issues.length,p=l._zod.check(s);if(p instanceof Promise&&a?.async===!1)throw new Sa;if(u||p instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await p,s.issues.length!==d&&(c||(c=mu(s,d)))});else{if(s.issues.length===d)continue;c||(c=mu(s,d))}}return u?u.then(()=>s):s};t._zod.run=(s,o)=>{let a=t._zod.parse(s,o);if(a instanceof Promise){if(o.async===!1)throw new Sa;return a.then(c=>i(c,n,o))}return i(a,n,o)}}t["~standard"]={validate:i=>{try{let s=Wfe(t,i);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Vfe(t,i).then(o=>o.success?{value:o.data}:{issues:o.error?.issues})}},vendor:"zod",version:1}}),F$=q("$ZodString",(t,e)=>{Mt.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??gme(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),Ut=q("$ZodStringFormat",(t,e)=>{Qv.init(t,e),F$.init(t,e)}),Dme=q("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=rme),Ut.init(t,e)}),jme=q("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=Y6(n))}else e.pattern??(e.pattern=Y6());Ut.init(t,e)}),zme=q("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=nme),Ut.init(t,e)}),Lme=q("$ZodURL",(t,e)=>{Ut.init(t,e),t._zod.check=r=>{try{let n=r.value,i=new URL(n),s=i.href;e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(i.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:dme.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:r.value,inst:t,continue:!e.abort})),!n.endsWith("/")&&s.endsWith("/")?r.value=s.slice(0,-1):r.value=s;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),Ume=q("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=sme()),Ut.init(t,e)}),Fme=q("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=eme),Ut.init(t,e)}),qme=q("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Kfe),Ut.init(t,e)}),Hme=q("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Jfe),Ut.init(t,e)}),Zme=q("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Xfe),Ut.init(t,e)}),Bme=q("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Yfe),Ut.init(t,e)}),Gme=q("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Qfe),Ut.init(t,e)}),Wme=q("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=hme(e)),Ut.init(t,e)}),Vme=q("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=fme),Ut.init(t,e)}),Kme=q("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=mme(e)),Ut.init(t,e)}),Jme=q("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=tme),Ut.init(t,e)}),Xme=q("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=ome),Ut.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),Yme=q("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=ame),Ut.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv6"}),t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),Qme=q("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=cme),Ut.init(t,e)}),ehe=q("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=ume),Ut.init(t,e),t._zod.check=r=>{let[n,i]=r.value.split("/");try{if(!i)throw new Error;let s=Number(i);if(`${s}`!==i)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function _q(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var the=q("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=lme),Ut.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{_q(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function rhe(t){if(!fq.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return _q(r)}var nhe=q("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=fq),Ut.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{rhe(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),ihe=q("$ZodE164",(t,e)=>{e.pattern??(e.pattern=pme),Ut.init(t,e)});function she(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let i=JSON.parse(atob(n));return!("typ"in i&&i?.typ!=="JWT"||!i.alg||e&&(!("alg"in i)||i.alg!==e))}catch{return!1}}var ohe=q("$ZodJWT",(t,e)=>{Ut.init(t,e),t._zod.check=r=>{she(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),bq=q("$ZodNumber",(t,e)=>{Mt.init(t,e),t._zod.pattern=t._zod.bag.pattern??yme,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let i=r.value;if(typeof i=="number"&&!Number.isNaN(i)&&Number.isFinite(i))return r;let s=typeof i=="number"?Number.isNaN(i)?"NaN":Number.isFinite(i)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:i,inst:t,...s?{received:s}:{}}),r}}),ahe=q("$ZodNumber",(t,e)=>{Eme.init(t,e),bq.init(t,e)}),che=q("$ZodBoolean",(t,e)=>{Mt.init(t,e),t._zod.pattern=_me,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let i=r.value;return typeof i=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:t}),r}}),uhe=q("$ZodNull",(t,e)=>{Mt.init(t,e),t._zod.pattern=bme,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let i=r.value;return i===null||r.issues.push({expected:"null",code:"invalid_type",input:i,inst:t}),r}}),lhe=q("$ZodUnknown",(t,e)=>{Mt.init(t,e),t._zod.parse=r=>r}),dhe=q("$ZodNever",(t,e)=>{Mt.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function Q6(t,e,r){t.issues.length&&e.issues.push(..._o(r,t.issues)),e.value[r]=t.value}var phe=q("$ZodArray",(t,e)=>{Mt.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;if(!Array.isArray(i))return r.issues.push({expected:"array",code:"invalid_type",input:i,inst:t}),r;r.value=Array(i.length);let s=[];for(let o=0;oQ6(u,r,o))):Q6(c,r,o)}return s.length?Promise.all(s).then(()=>r):r}});function Pv(t,e,r){t.issues.length&&e.issues.push(..._o(r,t.issues)),e.value[r]=t.value}function eF(t,e,r,n){t.issues.length?n[r]===void 0?r in n?e.value[r]=void 0:e.value[r]=t.value:e.issues.push(..._o(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var fhe=q("$ZodObject",(t,e)=>{Mt.init(t,e);let r=Kv(()=>{let d=Object.keys(e.shape);for(let f of d)if(!(e.shape[f]instanceof Mt))throw new Error(`Invalid element at key "${f}": expected a Zod schema`);let p=sq(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(p)}});Nt(t._zod,"propValues",()=>{let d=e.shape,p={};for(let f in d){let m=d[f]._zod;if(m.values){p[f]??(p[f]=new Set);for(let h of m.values)p[f].add(h)}}return p});let n=d=>{let p=new I$(["shape","payload","ctx"]),f=r.value,m=S=>{let b=fu(S);return`shape[${b}]._zod.run({ value: input[${b}], issues: [] }, ctx)`};p.write("const input = payload.value;");let h=Object.create(null),g=0;for(let S of f.keys)h[S]=`key_${g++}`;p.write("const newResult = {}");for(let S of f.keys)if(f.optionalKeys.has(S)){let b=h[S];p.write(`const ${b} = ${m(S)};`);let y=fu(S);p.write(` +`))}},rhe={major:4,minor:0,patch:0},zt=q("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=rhe;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let i of n)for(let s of i._zod.onattach)s(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let i=(s,o,a)=>{let c=Tu(s),u;for(let l of o){if(l._zod.when){if(!l._zod.when(s))continue}else if(c)continue;let d=s.issues.length,p=l._zod.check(s);if(p instanceof Promise&&a?.async===!1)throw new Oa;if(u||p instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await p,s.issues.length!==d&&(c||(c=Tu(s,d)))});else{if(s.issues.length===d)continue;c||(c=Tu(s,d))}}return u?u.then(()=>s):s};t._zod.run=(s,o)=>{let a=t._zod.parse(s,o);if(a instanceof Promise){if(o.async===!1)throw new Oa;return a.then(c=>i(c,n,o))}return i(a,n,o)}}t["~standard"]={validate:i=>{try{let s=mme(t,i);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return hme(t,i).then(o=>o.success?{value:o.data}:{issues:o.error?.issues})}},vendor:"zod",version:1}}),sI=q("$ZodString",(t,e)=>{zt.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??jme(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),Ut=q("$ZodStringFormat",(t,e)=>{uy.init(t,e),sI.init(t,e)}),nhe=q("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=wme),Ut.init(t,e)}),ihe=q("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=bF(n))}else e.pattern??(e.pattern=bF());Ut.init(t,e)}),she=q("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Eme),Ut.init(t,e)}),ohe=q("$ZodURL",(t,e)=>{Ut.init(t,e),t._zod.check=r=>{try{let n=r.value,i=new URL(n),s=i.href;e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(i.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:Pme.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:r.value,inst:t,continue:!e.abort})),!n.endsWith("/")&&s.endsWith("/")?r.value=s.slice(0,-1):r.value=s;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),ahe=q("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Tme()),Ut.init(t,e)}),che=q("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Sme),Ut.init(t,e)}),uhe=q("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=gme),Ut.init(t,e)}),lhe=q("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=vme),Ut.init(t,e)}),dhe=q("$ZodULID",(t,e)=>{e.pattern??(e.pattern=yme),Ut.init(t,e)}),phe=q("$ZodXID",(t,e)=>{e.pattern??(e.pattern=_me),Ut.init(t,e)}),fhe=q("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=bme),Ut.init(t,e)}),mhe=q("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Dme(e)),Ut.init(t,e)}),hhe=q("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Nme),Ut.init(t,e)}),ghe=q("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Mme(e)),Ut.init(t,e)}),vhe=q("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=xme),Ut.init(t,e)}),yhe=q("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=$me),Ut.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),_he=q("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Ime),Ut.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv6"}),t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),bhe=q("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Rme),Ut.init(t,e)}),She=q("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Ome),Ut.init(t,e),t._zod.check=r=>{let[n,i]=r.value.split("/");try{if(!i)throw new Error;let s=Number(i);if(`${s}`!==i)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function Fq(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var xhe=q("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Cme),Ut.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Fq(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function whe(t){if(!Mq.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Fq(r)}var Ehe=q("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Mq),Ut.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{whe(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),khe=q("$ZodE164",(t,e)=>{e.pattern??(e.pattern=Ame),Ut.init(t,e)});function The(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let i=JSON.parse(atob(n));return!("typ"in i&&i?.typ!=="JWT"||!i.alg||e&&(!("alg"in i)||i.alg!==e))}catch{return!1}}var $he=q("$ZodJWT",(t,e)=>{Ut.init(t,e),t._zod.check=r=>{The(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),qq=q("$ZodNumber",(t,e)=>{zt.init(t,e),t._zod.pattern=t._zod.bag.pattern??Lme,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let i=r.value;if(typeof i=="number"&&!Number.isNaN(i)&&Number.isFinite(i))return r;let s=typeof i=="number"?Number.isNaN(i)?"NaN":Number.isFinite(i)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:i,inst:t,...s?{received:s}:{}}),r}}),Ihe=q("$ZodNumber",(t,e)=>{Bme.init(t,e),qq.init(t,e)}),Rhe=q("$ZodBoolean",(t,e)=>{zt.init(t,e),t._zod.pattern=Ume,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let i=r.value;return typeof i=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:t}),r}}),Ohe=q("$ZodNull",(t,e)=>{zt.init(t,e),t._zod.pattern=Fme,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let i=r.value;return i===null||r.issues.push({expected:"null",code:"invalid_type",input:i,inst:t}),r}}),Che=q("$ZodUnknown",(t,e)=>{zt.init(t,e),t._zod.parse=r=>r}),Phe=q("$ZodNever",(t,e)=>{zt.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function SF(t,e,r){t.issues.length&&e.issues.push(...Ro(r,t.issues)),e.value[r]=t.value}var Ahe=q("$ZodArray",(t,e)=>{zt.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;if(!Array.isArray(i))return r.issues.push({expected:"array",code:"invalid_type",input:i,inst:t}),r;r.value=Array(i.length);let s=[];for(let o=0;oSF(u,r,o))):SF(c,r,o)}return s.length?Promise.all(s).then(()=>r):r}});function qv(t,e,r){t.issues.length&&e.issues.push(...Ro(r,t.issues)),e.value[r]=t.value}function xF(t,e,r,n){t.issues.length?n[r]===void 0?r in n?e.value[r]=void 0:e.value[r]=t.value:e.issues.push(...Ro(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var Nhe=q("$ZodObject",(t,e)=>{zt.init(t,e);let r=sy(()=>{let d=Object.keys(e.shape);for(let f of d)if(!(e.shape[f]instanceof zt))throw new Error(`Invalid element at key "${f}": expected a Zod schema`);let p=$q(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(p)}});jt(t._zod,"propValues",()=>{let d=e.shape,p={};for(let f in d){let m=d[f]._zod;if(m.values){p[f]??(p[f]=new Set);for(let h of m.values)p[f].add(h)}}return p});let n=d=>{let p=new G$(["shape","payload","ctx"]),f=r.value,m=y=>{let b=ku(y);return`shape[${b}]._zod.run({ value: input[${b}], issues: [] }, ctx)`};p.write("const input = payload.value;");let h=Object.create(null),g=0;for(let y of f.keys)h[y]=`key_${g++}`;p.write("const newResult = {}");for(let y of f.keys)if(f.optionalKeys.has(y)){let b=h[y];p.write(`const ${b} = ${m(y)};`);let S=ku(y);p.write(` if (${b}.issues.length) { - if (input[${y}] === undefined) { - if (${y} in input) { - newResult[${y}] = undefined; + if (input[${S}] === undefined) { + if (${S} in input) { + newResult[${S}] = undefined; } } else { payload.issues = payload.issues.concat( ${b}.issues.map((iss) => ({ ...iss, - path: iss.path ? [${y}, ...iss.path] : [${y}], + path: iss.path ? [${S}, ...iss.path] : [${S}], })) ); } } else if (${b}.value === undefined) { - if (${y} in input) newResult[${y}] = undefined; + if (${S} in input) newResult[${S}] = undefined; } else { - newResult[${y}] = ${b}.value; + newResult[${S}] = ${b}.value; } - `)}else{let b=h[S];p.write(`const ${b} = ${m(S)};`),p.write(` + `)}else{let b=h[y];p.write(`const ${b} = ${m(y)};`),p.write(` if (${b}.issues.length) payload.issues = payload.issues.concat(${b}.issues.map(iss => ({ ...iss, - path: iss.path ? [${fu(S)}, ...iss.path] : [${fu(S)}] - })));`),p.write(`newResult[${fu(S)}] = ${b}.value`)}p.write("payload.value = newResult;"),p.write("return payload;");let v=p.compile();return(S,b)=>v(d,S,b)},i,s=Vp,o=!k$.jitless,c=o&&nq.value,u=e.catchall,l;t._zod.parse=(d,p)=>{l??(l=r.value);let f=d.value;if(!s(f))return d.issues.push({expected:"object",code:"invalid_type",input:f,inst:t}),d;let m=[];if(o&&c&&p?.async===!1&&p.jitless!==!0)i||(i=n(e.shape)),d=i(d,p);else{d.value={};let b=l.shape;for(let y of l.keys){let x=b[y],w=x._zod.run({value:f[y],issues:[]},p),E=x._zod.optin==="optional"&&x._zod.optout==="optional";w instanceof Promise?m.push(w.then(T=>E?eF(T,d,y,f):Pv(T,d,y))):E?eF(w,d,y,f):Pv(w,d,y)}}if(!u)return m.length?Promise.all(m).then(()=>d):d;let h=[],g=l.keySet,v=u._zod,S=v.def.type;for(let b of Object.keys(f)){if(g.has(b))continue;if(S==="never"){h.push(b);continue}let y=v.run({value:f[b],issues:[]},p);y instanceof Promise?m.push(y.then(x=>Pv(x,d,b))):Pv(y,d,b)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:f,inst:t}),m.length?Promise.all(m).then(()=>d):d}});function tF(t,e,r,n){for(let i of t)if(i.issues.length===0)return e.value=i.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(i=>i.issues.map(s=>js(s,n,Ds())))}),e}var Sq=q("$ZodUnion",(t,e)=>{Mt.init(t,e),Nt(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),Nt(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),Nt(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),Nt(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>Xv(n.source)).join("|")})$`)}}),t._zod.parse=(r,n)=>{let i=!1,s=[];for(let o of e.options){let a=o._zod.run({value:r.value,issues:[]},n);if(a instanceof Promise)s.push(a),i=!0;else{if(a.issues.length===0)return a;s.push(a)}}return i?Promise.all(s).then(o=>tF(o,r,t,n)):tF(s,r,t,n)}}),mhe=q("$ZodDiscriminatedUnion",(t,e)=>{Sq.init(t,e);let r=t._zod.parse;Nt(t._zod,"propValues",()=>{let i={};for(let s of e.options){let o=s._zod.propValues;if(!o||Object.keys(o).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(o)){i[a]||(i[a]=new Set);for(let u of c)i[a].add(u)}}return i});let n=Kv(()=>{let i=e.options,s=new Map;for(let o of i){let a=o._zod.propValues[e.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(o)}"`);for(let c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,o)}}return s});t._zod.parse=(i,s)=>{let o=i.value;if(!Vp(o))return i.issues.push({code:"invalid_type",expected:"object",input:o,inst:t}),i;let a=n.value.get(o?.[e.discriminator]);return a?a._zod.run(i,s):e.unionFallback?r(i,s):(i.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:o,path:[e.discriminator],inst:t}),i)}}),hhe=q("$ZodIntersection",(t,e)=>{Mt.init(t,e),t._zod.parse=(r,n)=>{let i=r.value,s=e.left._zod.run({value:i,issues:[]},n),o=e.right._zod.run({value:i,issues:[]},n);return s instanceof Promise||o instanceof Promise?Promise.all([s,o]).then(([c,u])=>rF(r,c,u)):rF(r,s,o)}});function R$(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(Kp(t)&&Kp(e)){let r=Object.keys(e),n=Object.keys(t).filter(s=>r.indexOf(s)!==-1),i={...t,...e};for(let s of n){let o=R$(t[s],e[s]);if(!o.valid)return{valid:!1,mergeErrorPath:[s,...o.mergeErrorPath]};i[s]=o.data}return{valid:!0,data:i}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n{Mt.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;if(!Kp(i))return r.issues.push({expected:"record",code:"invalid_type",input:i,inst:t}),r;let s=[];if(e.keyType._zod.values){let o=e.keyType._zod.values;r.value={};for(let c of o)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let u=e.valueType._zod.run({value:i[c],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(..._o(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(..._o(c,u.issues)),r.value[c]=u.value)}let a;for(let c in i)o.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:i,inst:t,keys:a})}else{r.value={};for(let o of Reflect.ownKeys(i)){if(o==="__proto__")continue;let a=e.keyType._zod.run({value:o,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>js(u,n,Ds())),input:o,path:[o],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:i[o],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(..._o(o,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(..._o(o,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}}),vhe=q("$ZodEnum",(t,e)=>{Mt.init(t,e);let r=eq(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>iq.has(typeof n)).map(n=>typeof n=="string"?Au(n):n.toString()).join("|")})$`),t._zod.parse=(n,i)=>{let s=n.value;return t._zod.values.has(s)||n.issues.push({code:"invalid_value",values:r,input:s,inst:t}),n}}),yhe=q("$ZodLiteral",(t,e)=>{Mt.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?Au(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,n)=>{let i=r.value;return t._zod.values.has(i)||r.issues.push({code:"invalid_value",values:e.values,input:i,inst:t}),r}}),_he=q("$ZodTransform",(t,e)=>{Mt.init(t,e),t._zod.parse=(r,n)=>{let i=e.transform(r.value,r);if(n.async)return(i instanceof Promise?i:Promise.resolve(i)).then(o=>(r.value=o,r));if(i instanceof Promise)throw new Sa;return r.value=i,r}}),bhe=q("$ZodOptional",(t,e)=>{Mt.init(t,e),t._zod.optin="optional",t._zod.optout="optional",Nt(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),Nt(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Xv(r.source)})?$`):void 0}),t._zod.parse=(r,n)=>e.innerType._zod.optin==="optional"?e.innerType._zod.run(r,n):r.value===void 0?r:e.innerType._zod.run(r,n)}),She=q("$ZodNullable",(t,e)=>{Mt.init(t,e),Nt(t._zod,"optin",()=>e.innerType._zod.optin),Nt(t._zod,"optout",()=>e.innerType._zod.optout),Nt(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Xv(r.source)}|null)$`):void 0}),Nt(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),xhe=q("$ZodDefault",(t,e)=>{Mt.init(t,e),t._zod.optin="optional",Nt(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>nF(s,e)):nF(i,e)}});function nF(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var whe=q("$ZodPrefault",(t,e)=>{Mt.init(t,e),t._zod.optin="optional",Nt(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),Ehe=q("$ZodNonOptional",(t,e)=>{Mt.init(t,e),Nt(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>iF(s,t)):iF(i,t)}});function iF(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}var khe=q("$ZodCatch",(t,e)=>{Mt.init(t,e),t._zod.optin="optional",Nt(t._zod,"optout",()=>e.innerType._zod.optout),Nt(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(o=>js(o,n,Ds()))},input:r.value}),r.issues=[]),r)):(r.value=i.value,i.issues.length&&(r.value=e.catchValue({...r,error:{issues:i.issues.map(s=>js(s,n,Ds()))},input:r.value}),r.issues=[]),r)}}),The=q("$ZodPipe",(t,e)=>{Mt.init(t,e),Nt(t._zod,"values",()=>e.in._zod.values),Nt(t._zod,"optin",()=>e.in._zod.optin),Nt(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let i=e.in._zod.run(r,n);return i instanceof Promise?i.then(s=>sF(s,e,n)):sF(i,e,n)}});function sF(t,e,r){return mu(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var $he=q("$ZodReadonly",(t,e)=>{Mt.init(t,e),Nt(t._zod,"propValues",()=>e.innerType._zod.propValues),Nt(t._zod,"values",()=>e.innerType._zod.values),Nt(t._zod,"optin",()=>e.innerType._zod.optin),Nt(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(oF):oF(i)}});function oF(t){return t.value=Object.freeze(t.value),t}var Ihe=q("$ZodCustom",(t,e)=>{vn.init(t,e),Mt.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,i=e.fn(n);if(i instanceof Promise)return i.then(s=>aF(s,r,n,t));aF(i,r,n,t)}});function aF(t,e,r,n){if(!t){let i={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(i.params=n._zod.def.params),e.issues.push(aq(i))}}var Rhe=t=>{let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"NaN":"number";case"object":{if(Array.isArray(t))return"array";if(t===null)return"null";if(Object.getPrototypeOf(t)!==Object.prototype&&t.constructor)return t.constructor.name}}return e},Ohe=()=>{let t={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"}};function e(n){return t[n]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Invalid input: expected ${n.expected}, received ${Rhe(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${U$(n.values[0])}`:`Invalid option: expected one of ${T$(n.values,"|")}`;case"too_big":{let i=n.inclusive?"<=":"<",s=e(n.origin);return s?`Too big: expected ${n.origin??"value"} to have ${i}${n.maximum.toString()} ${s.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${i}${n.maximum.toString()}`}case"too_small":{let i=n.inclusive?">=":">",s=e(n.origin);return s?`Too small: expected ${n.origin} to have ${i}${n.minimum.toString()} ${s.unit}`:`Too small: expected ${n.origin} to be ${i}${n.minimum.toString()}`}case"invalid_format":{let i=n;return i.format==="starts_with"?`Invalid string: must start with "${i.prefix}"`:i.format==="ends_with"?`Invalid string: must end with "${i.suffix}"`:i.format==="includes"?`Invalid string: must include "${i.includes}"`:i.format==="regex"?`Invalid string: must match pattern ${i.pattern}`:`Invalid ${r[i.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${T$(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function Che(){return{localeError:Ohe()}}var O$=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...r){let n=r[0];if(this._map.set(e,n),n&&typeof n=="object"&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}remove(e){return this._map.delete(e),this}get(e){let r=e._zod.parent;if(r){let n={...this.get(r)??{}};return delete n.id,{...n,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}};function Phe(){return new O$}var Av=Phe();function Ahe(t,e){return new t({type:"string",...xe(e)})}function Nhe(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...xe(e)})}function cF(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...xe(e)})}function Mhe(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...xe(e)})}function Dhe(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...xe(e)})}function jhe(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...xe(e)})}function zhe(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...xe(e)})}function Lhe(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...xe(e)})}function Uhe(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...xe(e)})}function Fhe(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...xe(e)})}function qhe(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...xe(e)})}function Hhe(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...xe(e)})}function Zhe(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...xe(e)})}function Bhe(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...xe(e)})}function Ghe(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...xe(e)})}function Whe(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...xe(e)})}function Vhe(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...xe(e)})}function Khe(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...xe(e)})}function Jhe(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...xe(e)})}function Xhe(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...xe(e)})}function Yhe(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...xe(e)})}function Qhe(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...xe(e)})}function ege(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...xe(e)})}function tge(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...xe(e)})}function rge(t,e){return new t({type:"string",format:"date",check:"string_format",...xe(e)})}function nge(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...xe(e)})}function ige(t,e){return new t({type:"string",format:"duration",check:"string_format",...xe(e)})}function sge(t,e){return new t({type:"number",checks:[],...xe(e)})}function oge(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...xe(e)})}function age(t,e){return new t({type:"boolean",...xe(e)})}function cge(t,e){return new t({type:"null",...xe(e)})}function uge(t){return new t({type:"unknown"})}function lge(t,e){return new t({type:"never",...xe(e)})}function uF(t,e){return new vq({check:"less_than",...xe(e),value:t,inclusive:!1})}function l$(t,e){return new vq({check:"less_than",...xe(e),value:t,inclusive:!0})}function lF(t,e){return new yq({check:"greater_than",...xe(e),value:t,inclusive:!1})}function d$(t,e){return new yq({check:"greater_than",...xe(e),value:t,inclusive:!0})}function dF(t,e){return new wme({check:"multiple_of",...xe(e),value:t})}function xq(t,e){return new kme({check:"max_length",...xe(e),maximum:t})}function Fv(t,e){return new Tme({check:"min_length",...xe(e),minimum:t})}function wq(t,e){return new $me({check:"length_equals",...xe(e),length:t})}function dge(t,e){return new Ime({check:"string_format",format:"regex",...xe(e),pattern:t})}function pge(t){return new Rme({check:"string_format",format:"lowercase",...xe(t)})}function fge(t){return new Ome({check:"string_format",format:"uppercase",...xe(t)})}function mge(t,e){return new Cme({check:"string_format",format:"includes",...xe(e),includes:t})}function hge(t,e){return new Pme({check:"string_format",format:"starts_with",...xe(e),prefix:t})}function gge(t,e){return new Ame({check:"string_format",format:"ends_with",...xe(e),suffix:t})}function Xp(t){return new Nme({check:"overwrite",tx:t})}function vge(t){return Xp(e=>e.normalize(t))}function yge(){return Xp(t=>t.trim())}function _ge(){return Xp(t=>t.toLowerCase())}function bge(){return Xp(t=>t.toUpperCase())}function Sge(t,e,r){return new t({type:"array",element:e,...xe(r)})}function xge(t,e,r){let n=xe(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function wge(t,e,r){return new t({type:"custom",check:"custom",fn:e,...xe(r)})}var Eq={};yF(Eq,{time:()=>Oq,duration:()=>Pq,datetime:()=>Tq,date:()=>Iq,ZodISOTime:()=>Rq,ZodISODuration:()=>Cq,ZodISODateTime:()=>kq,ZodISODate:()=>$q});var kq=q("ZodISODateTime",(t,e)=>{Wme.init(t,e),Gt.init(t,e)});function Tq(t){return tge(kq,t)}var $q=q("ZodISODate",(t,e)=>{Vme.init(t,e),Gt.init(t,e)});function Iq(t){return rge($q,t)}var Rq=q("ZodISOTime",(t,e)=>{Kme.init(t,e),Gt.init(t,e)});function Oq(t){return nge(Rq,t)}var Cq=q("ZodISODuration",(t,e)=>{Jme.init(t,e),Gt.init(t,e)});function Pq(t){return ige(Cq,t)}var Aq=(t,e)=>{uq.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Zfe(t,r)},flatten:{value:r=>Hfe(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},XDe=q("ZodError",Aq),ey=q("ZodError",Aq,{Parent:Error}),Ege=Bfe(ey),kge=Gfe(ey),Tge=dq(ey),$ge=pq(ey),Bt=q("ZodType",(t,e)=>(Mt.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>wo(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t),t.parse=(r,n)=>Ege(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Tge(t,r,n),t.parseAsync=async(r,n)=>kge(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>$ge(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(vve(r,n)),t.superRefine=r=>t.check(yve(r)),t.overwrite=r=>t.check(Xp(r)),t.optional=()=>he(t),t.nullable=()=>mF(t),t.nullish=()=>he(mF(t)),t.nonoptional=r=>uve(t,r),t.array=()=>nt(t),t.or=r=>Ft([t,r]),t.and=r=>q$(t,r),t.transform=r=>P$(t,Uq(r)),t.default=r=>ove(t,r),t.prefault=r=>cve(t,r),t.catch=r=>dve(t,r),t.pipe=r=>P$(t,r),t.readonly=()=>mve(t),t.describe=r=>{let n=t.clone();return Av.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Av.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Av.get(t);let n=t.clone();return Av.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),Nq=q("_ZodString",(t,e)=>{F$.init(t,e),Bt.init(t,e);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,t.regex=(...n)=>t.check(dge(...n)),t.includes=(...n)=>t.check(mge(...n)),t.startsWith=(...n)=>t.check(hge(...n)),t.endsWith=(...n)=>t.check(gge(...n)),t.min=(...n)=>t.check(Fv(...n)),t.max=(...n)=>t.check(xq(...n)),t.length=(...n)=>t.check(wq(...n)),t.nonempty=(...n)=>t.check(Fv(1,...n)),t.lowercase=n=>t.check(pge(n)),t.uppercase=n=>t.check(fge(n)),t.trim=()=>t.check(yge()),t.normalize=(...n)=>t.check(vge(...n)),t.toLowerCase=()=>t.check(_ge()),t.toUpperCase=()=>t.check(bge())}),Ige=q("ZodString",(t,e)=>{F$.init(t,e),Nq.init(t,e),t.email=r=>t.check(Nhe(Rge,r)),t.url=r=>t.check(Lhe(Oge,r)),t.jwt=r=>t.check(ege(Bge,r)),t.emoji=r=>t.check(Uhe(Cge,r)),t.guid=r=>t.check(cF(pF,r)),t.uuid=r=>t.check(Mhe(Nv,r)),t.uuidv4=r=>t.check(Dhe(Nv,r)),t.uuidv6=r=>t.check(jhe(Nv,r)),t.uuidv7=r=>t.check(zhe(Nv,r)),t.nanoid=r=>t.check(Fhe(Pge,r)),t.guid=r=>t.check(cF(pF,r)),t.cuid=r=>t.check(qhe(Age,r)),t.cuid2=r=>t.check(Hhe(Nge,r)),t.ulid=r=>t.check(Zhe(Mge,r)),t.base64=r=>t.check(Xhe(qge,r)),t.base64url=r=>t.check(Yhe(Hge,r)),t.xid=r=>t.check(Bhe(Dge,r)),t.ksuid=r=>t.check(Ghe(jge,r)),t.ipv4=r=>t.check(Whe(zge,r)),t.ipv6=r=>t.check(Vhe(Lge,r)),t.cidrv4=r=>t.check(Khe(Uge,r)),t.cidrv6=r=>t.check(Jhe(Fge,r)),t.e164=r=>t.check(Qhe(Zge,r)),t.datetime=r=>t.check(Tq(r)),t.date=r=>t.check(Iq(r)),t.time=r=>t.check(Oq(r)),t.duration=r=>t.check(Pq(r))});function L(t){return Ahe(Ige,t)}var Gt=q("ZodStringFormat",(t,e)=>{Ut.init(t,e),Nq.init(t,e)}),Rge=q("ZodEmail",(t,e)=>{zme.init(t,e),Gt.init(t,e)}),pF=q("ZodGUID",(t,e)=>{Dme.init(t,e),Gt.init(t,e)}),Nv=q("ZodUUID",(t,e)=>{jme.init(t,e),Gt.init(t,e)}),Oge=q("ZodURL",(t,e)=>{Lme.init(t,e),Gt.init(t,e)}),Cge=q("ZodEmoji",(t,e)=>{Ume.init(t,e),Gt.init(t,e)}),Pge=q("ZodNanoID",(t,e)=>{Fme.init(t,e),Gt.init(t,e)}),Age=q("ZodCUID",(t,e)=>{qme.init(t,e),Gt.init(t,e)}),Nge=q("ZodCUID2",(t,e)=>{Hme.init(t,e),Gt.init(t,e)}),Mge=q("ZodULID",(t,e)=>{Zme.init(t,e),Gt.init(t,e)}),Dge=q("ZodXID",(t,e)=>{Bme.init(t,e),Gt.init(t,e)}),jge=q("ZodKSUID",(t,e)=>{Gme.init(t,e),Gt.init(t,e)}),zge=q("ZodIPv4",(t,e)=>{Xme.init(t,e),Gt.init(t,e)}),Lge=q("ZodIPv6",(t,e)=>{Yme.init(t,e),Gt.init(t,e)}),Uge=q("ZodCIDRv4",(t,e)=>{Qme.init(t,e),Gt.init(t,e)}),Fge=q("ZodCIDRv6",(t,e)=>{ehe.init(t,e),Gt.init(t,e)}),qge=q("ZodBase64",(t,e)=>{the.init(t,e),Gt.init(t,e)}),Hge=q("ZodBase64URL",(t,e)=>{nhe.init(t,e),Gt.init(t,e)}),Zge=q("ZodE164",(t,e)=>{ihe.init(t,e),Gt.init(t,e)}),Bge=q("ZodJWT",(t,e)=>{ohe.init(t,e),Gt.init(t,e)}),Mq=q("ZodNumber",(t,e)=>{bq.init(t,e),Bt.init(t,e),t.gt=(n,i)=>t.check(lF(n,i)),t.gte=(n,i)=>t.check(d$(n,i)),t.min=(n,i)=>t.check(d$(n,i)),t.lt=(n,i)=>t.check(uF(n,i)),t.lte=(n,i)=>t.check(l$(n,i)),t.max=(n,i)=>t.check(l$(n,i)),t.int=n=>t.check(fF(n)),t.safe=n=>t.check(fF(n)),t.positive=n=>t.check(lF(0,n)),t.nonnegative=n=>t.check(d$(0,n)),t.negative=n=>t.check(uF(0,n)),t.nonpositive=n=>t.check(l$(0,n)),t.multipleOf=(n,i)=>t.check(dF(n,i)),t.step=(n,i)=>t.check(dF(n,i)),t.finite=()=>t;let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function Rt(t){return sge(Mq,t)}var Gge=q("ZodNumberFormat",(t,e)=>{ahe.init(t,e),Mq.init(t,e)});function fF(t){return oge(Gge,t)}var Wge=q("ZodBoolean",(t,e)=>{che.init(t,e),Bt.init(t,e)});function jr(t){return age(Wge,t)}var Vge=q("ZodNull",(t,e)=>{uhe.init(t,e),Bt.init(t,e)});function Dq(t){return cge(Vge,t)}var Kge=q("ZodUnknown",(t,e)=>{lhe.init(t,e),Bt.init(t,e)});function sr(){return uge(Kge)}var Jge=q("ZodNever",(t,e)=>{dhe.init(t,e),Bt.init(t,e)});function Xge(t){return lge(Jge,t)}var Yge=q("ZodArray",(t,e)=>{phe.init(t,e),Bt.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(Fv(r,n)),t.nonempty=r=>t.check(Fv(1,r)),t.max=(r,n)=>t.check(xq(r,n)),t.length=(r,n)=>t.check(wq(r,n)),t.unwrap=()=>t.element});function nt(t,e){return Sge(Yge,t,e)}var jq=q("ZodObject",(t,e)=>{fhe.init(t,e),Bt.init(t,e),At.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>zr(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:sr()}),t.loose=()=>t.clone({...t._zod.def,catchall:sr()}),t.strict=()=>t.clone({...t._zod.def,catchall:Xge()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>At.extend(t,r),t.merge=r=>At.merge(t,r),t.pick=r=>At.pick(t,r),t.omit=r=>At.omit(t,r),t.partial=(...r)=>At.partial(Fq,t,r[0]),t.required=(...r)=>At.required(qq,t,r[0])});function X(t,e){let r={type:"object",get shape(){return At.assignProp(this,"shape",{...t}),this.shape},...At.normalizeParams(e)};return new jq(r)}function xi(t,e){return new jq({type:"object",get shape(){return At.assignProp(this,"shape",{...t}),this.shape},catchall:sr(),...At.normalizeParams(e)})}var zq=q("ZodUnion",(t,e)=>{Sq.init(t,e),Bt.init(t,e),t.options=e.options});function Ft(t,e){return new zq({type:"union",options:t,...At.normalizeParams(e)})}var Qge=q("ZodDiscriminatedUnion",(t,e)=>{zq.init(t,e),mhe.init(t,e)});function Lq(t,e,r){return new Qge({type:"union",options:e,discriminator:t,...At.normalizeParams(r)})}var eve=q("ZodIntersection",(t,e)=>{hhe.init(t,e),Bt.init(t,e)});function q$(t,e){return new eve({type:"intersection",left:t,right:e})}var tve=q("ZodRecord",(t,e)=>{ghe.init(t,e),Bt.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function or(t,e,r){return new tve({type:"record",keyType:t,valueType:e,...At.normalizeParams(r)})}var C$=q("ZodEnum",(t,e)=>{vhe.init(t,e),Bt.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,i)=>{let s={};for(let o of n)if(r.has(o))s[o]=e.entries[o];else throw new Error(`Key ${o} not found in enum`);return new C$({...e,checks:[],...At.normalizeParams(i),entries:s})},t.exclude=(n,i)=>{let s={...e.entries};for(let o of n)if(r.has(o))delete s[o];else throw new Error(`Key ${o} not found in enum`);return new C$({...e,checks:[],...At.normalizeParams(i),entries:s})}});function zr(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new C$({type:"enum",entries:r,...At.normalizeParams(e)})}var rve=q("ZodLiteral",(t,e)=>{yhe.init(t,e),Bt.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function ge(t,e){return new rve({type:"literal",values:Array.isArray(t)?t:[t],...At.normalizeParams(e)})}var nve=q("ZodTransform",(t,e)=>{_he.init(t,e),Bt.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(At.issue(s,r.value,e));else{let o=s;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=t),o.continue??(o.continue=!0),r.issues.push(At.issue(o))}};let i=e.transform(r.value,r);return i instanceof Promise?i.then(s=>(r.value=s,r)):(r.value=i,r)}});function Uq(t){return new nve({type:"transform",transform:t})}var Fq=q("ZodOptional",(t,e)=>{bhe.init(t,e),Bt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function he(t){return new Fq({type:"optional",innerType:t})}var ive=q("ZodNullable",(t,e)=>{She.init(t,e),Bt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function mF(t){return new ive({type:"nullable",innerType:t})}var sve=q("ZodDefault",(t,e)=>{xhe.init(t,e),Bt.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function ove(t,e){return new sve({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var ave=q("ZodPrefault",(t,e)=>{whe.init(t,e),Bt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function cve(t,e){return new ave({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var qq=q("ZodNonOptional",(t,e)=>{Ehe.init(t,e),Bt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function uve(t,e){return new qq({type:"nonoptional",innerType:t,...At.normalizeParams(e)})}var lve=q("ZodCatch",(t,e)=>{khe.init(t,e),Bt.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function dve(t,e){return new lve({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var pve=q("ZodPipe",(t,e)=>{The.init(t,e),Bt.init(t,e),t.in=e.in,t.out=e.out});function P$(t,e){return new pve({type:"pipe",in:t,out:e})}var fve=q("ZodReadonly",(t,e)=>{$he.init(t,e),Bt.init(t,e)});function mve(t){return new fve({type:"readonly",innerType:t})}var Hq=q("ZodCustom",(t,e)=>{Ihe.init(t,e),Bt.init(t,e)});function hve(t,e){let r=new vn({check:"custom",...At.normalizeParams(e)});return r._zod.check=t,r}function gve(t,e){return xge(Hq,t??(()=>!0),e)}function vve(t,e={}){return wge(Hq,t,e)}function yve(t,e){let r=hve(n=>(n.addIssue=i=>{if(typeof i=="string")n.issues.push(At.issue(i,n.value,r._zod.def));else{let s=i;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=n.value),s.inst??(s.inst=r),s.continue??(s.continue=!r._zod.def.abort),n.issues.push(At.issue(s))}},t(n.value,n)),e);return r}function Zq(t,e){return P$(Uq(t),e)}Ds(Che());var H$="io.modelcontextprotocol/related-task",ty="2.0",Yi=gve(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Bq=Ft([L(),Rt().int()]),Gq=L(),_ve=xi({ttl:Ft([Rt(),Dq()]).optional(),pollInterval:Rt().optional()}),Z$=xi({taskId:L()}),bve=xi({progressToken:Bq.optional(),[H$]:Z$.optional()}),yn=xi({task:_ve.optional(),_meta:bve.optional()}),Tr=X({method:L(),params:yn.optional()}),xa=xi({_meta:X({[H$]:he(Z$)}).passthrough().optional()}),Xn=X({method:L(),params:xa.optional()}),Lr=xi({_meta:xi({[H$]:Z$.optional()}).optional()}),ry=Ft([L(),Rt().int()]),Sve=X({jsonrpc:ge(ty),id:ry,...Tr.shape}).strict();var xve=X({jsonrpc:ge(ty),...Xn.shape}).strict();var wve=X({jsonrpc:ge(ty),id:ry,result:Lr}).strict();var hF;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(hF||(hF={}));var Eve=X({jsonrpc:ge(ty),id:ry,error:X({code:Rt().int(),message:L(),data:he(sr())})}).strict();var YDe=Ft([Sve,xve,wve,Eve]),Wq=Lr.strict(),kve=xa.extend({requestId:ry,reason:L().optional()}),Vq=Xn.extend({method:ge("notifications/cancelled"),params:kve}),Tve=X({src:L(),mimeType:L().optional(),sizes:nt(L()).optional()}),Yp=X({icons:nt(Tve).optional()}),Iu=X({name:L(),title:L().optional()}),Kq=Iu.extend({...Iu.shape,...Yp.shape,version:L(),websiteUrl:L().optional()}),$ve=q$(X({applyDefaults:jr().optional()}),or(L(),sr())),Ive=Zq(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,q$(X({form:$ve.optional(),url:Yi.optional()}),or(L(),sr()).optional())),Rve=X({list:he(X({}).passthrough()),cancel:he(X({}).passthrough()),requests:he(X({sampling:he(X({createMessage:he(X({}).passthrough())}).passthrough()),elicitation:he(X({create:he(X({}).passthrough())}).passthrough())}).passthrough())}).passthrough(),Ove=X({list:he(X({}).passthrough()),cancel:he(X({}).passthrough()),requests:he(X({tools:he(X({call:he(X({}).passthrough())}).passthrough())}).passthrough())}).passthrough(),Cve=X({experimental:or(L(),Yi).optional(),sampling:X({context:Yi.optional(),tools:Yi.optional()}).optional(),elicitation:Ive.optional(),roots:X({listChanged:jr().optional()}).optional(),tasks:he(Rve)}),Pve=yn.extend({protocolVersion:L(),capabilities:Cve,clientInfo:Kq}),Ave=Tr.extend({method:ge("initialize"),params:Pve}),Nve=X({experimental:or(L(),Yi).optional(),logging:Yi.optional(),completions:Yi.optional(),prompts:he(X({listChanged:he(jr())})),resources:X({subscribe:jr().optional(),listChanged:jr().optional()}).optional(),tools:X({listChanged:jr().optional()}).optional(),tasks:he(Ove)}).passthrough(),Mve=Lr.extend({protocolVersion:L(),capabilities:Nve,serverInfo:Kq,instructions:L().optional()}),Dve=Xn.extend({method:ge("notifications/initialized")}),Jq=Tr.extend({method:ge("ping")}),jve=X({progress:Rt(),total:he(Rt()),message:he(L())}),zve=X({...xa.shape,...jve.shape,progressToken:Bq}),Xq=Xn.extend({method:ge("notifications/progress"),params:zve}),Lve=yn.extend({cursor:Gq.optional()}),Qp=Tr.extend({params:Lve.optional()}),ef=Lr.extend({nextCursor:he(Gq)}),tf=X({taskId:L(),status:zr(["working","input_required","completed","failed","cancelled"]),ttl:Ft([Rt(),Dq()]),createdAt:L(),lastUpdatedAt:L(),pollInterval:he(Rt()),statusMessage:he(L())}),Yq=Lr.extend({task:tf}),Uve=xa.merge(tf),Qq=Xn.extend({method:ge("notifications/tasks/status"),params:Uve}),e9=Tr.extend({method:ge("tasks/get"),params:yn.extend({taskId:L()})}),t9=Lr.merge(tf),r9=Tr.extend({method:ge("tasks/result"),params:yn.extend({taskId:L()})}),n9=Qp.extend({method:ge("tasks/list")}),i9=ef.extend({tasks:nt(tf)}),QDe=Tr.extend({method:ge("tasks/cancel"),params:yn.extend({taskId:L()})}),eje=Lr.merge(tf),s9=X({uri:L(),mimeType:he(L()),_meta:or(L(),sr()).optional()}),o9=s9.extend({text:L()}),B$=L().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),a9=s9.extend({blob:B$}),Nu=X({audience:nt(zr(["user","assistant"])).optional(),priority:Rt().min(0).max(1).optional(),lastModified:Eq.datetime({offset:!0}).optional()}),c9=X({...Iu.shape,...Yp.shape,uri:L(),description:he(L()),mimeType:he(L()),annotations:Nu.optional(),_meta:he(xi({}))}),Fve=X({...Iu.shape,...Yp.shape,uriTemplate:L(),description:he(L()),mimeType:he(L()),annotations:Nu.optional(),_meta:he(xi({}))}),qve=Qp.extend({method:ge("resources/list")}),Hve=ef.extend({resources:nt(c9)}),Zve=Qp.extend({method:ge("resources/templates/list")}),Bve=ef.extend({resourceTemplates:nt(Fve)}),G$=yn.extend({uri:L()}),Gve=G$,Wve=Tr.extend({method:ge("resources/read"),params:Gve}),Vve=Lr.extend({contents:nt(Ft([o9,a9]))}),Kve=Xn.extend({method:ge("notifications/resources/list_changed")}),Jve=G$,Xve=Tr.extend({method:ge("resources/subscribe"),params:Jve}),Yve=G$,Qve=Tr.extend({method:ge("resources/unsubscribe"),params:Yve}),eye=xa.extend({uri:L()}),tye=Xn.extend({method:ge("notifications/resources/updated"),params:eye}),rye=X({name:L(),description:he(L()),required:he(jr())}),nye=X({...Iu.shape,...Yp.shape,description:he(L()),arguments:he(nt(rye)),_meta:he(xi({}))}),iye=Qp.extend({method:ge("prompts/list")}),sye=ef.extend({prompts:nt(nye)}),oye=yn.extend({name:L(),arguments:or(L(),L()).optional()}),aye=Tr.extend({method:ge("prompts/get"),params:oye}),W$=X({type:ge("text"),text:L(),annotations:Nu.optional(),_meta:or(L(),sr()).optional()}),V$=X({type:ge("image"),data:B$,mimeType:L(),annotations:Nu.optional(),_meta:or(L(),sr()).optional()}),K$=X({type:ge("audio"),data:B$,mimeType:L(),annotations:Nu.optional(),_meta:or(L(),sr()).optional()}),cye=X({type:ge("tool_use"),name:L(),id:L(),input:X({}).passthrough(),_meta:he(X({}).passthrough())}).passthrough(),uye=X({type:ge("resource"),resource:Ft([o9,a9]),annotations:Nu.optional(),_meta:or(L(),sr()).optional()}),lye=c9.extend({type:ge("resource_link")}),J$=Ft([W$,V$,K$,lye,uye]),dye=X({role:zr(["user","assistant"]),content:J$}),pye=Lr.extend({description:he(L()),messages:nt(dye)}),fye=Xn.extend({method:ge("notifications/prompts/list_changed")}),mye=X({title:L().optional(),readOnlyHint:jr().optional(),destructiveHint:jr().optional(),idempotentHint:jr().optional(),openWorldHint:jr().optional()}),hye=X({taskSupport:zr(["required","optional","forbidden"]).optional()}),u9=X({...Iu.shape,...Yp.shape,description:L().optional(),inputSchema:X({type:ge("object"),properties:or(L(),Yi).optional(),required:nt(L()).optional()}).catchall(sr()),outputSchema:X({type:ge("object"),properties:or(L(),Yi).optional(),required:nt(L()).optional()}).catchall(sr()).optional(),annotations:he(mye),execution:he(hye),_meta:or(L(),sr()).optional()}),gye=Qp.extend({method:ge("tools/list")}),vye=ef.extend({tools:nt(u9)}),l9=Lr.extend({content:nt(J$).default([]),structuredContent:or(L(),sr()).optional(),isError:he(jr())}),tje=l9.or(Lr.extend({toolResult:sr()})),yye=yn.extend({name:L(),arguments:he(or(L(),sr()))}),_ye=Tr.extend({method:ge("tools/call"),params:yye}),bye=Xn.extend({method:ge("notifications/tools/list_changed")}),d9=zr(["debug","info","notice","warning","error","critical","alert","emergency"]),Sye=yn.extend({level:d9}),xye=Tr.extend({method:ge("logging/setLevel"),params:Sye}),wye=xa.extend({level:d9,logger:L().optional(),data:sr()}),Eye=Xn.extend({method:ge("notifications/message"),params:wye}),kye=X({name:L().optional()}),Tye=X({hints:he(nt(kye)),costPriority:he(Rt().min(0).max(1)),speedPriority:he(Rt().min(0).max(1)),intelligencePriority:he(Rt().min(0).max(1))}),$ye=X({mode:he(zr(["auto","required","none"]))}),Iye=X({type:ge("tool_result"),toolUseId:L().describe("The unique identifier for the corresponding tool call."),content:nt(J$).default([]),structuredContent:X({}).passthrough().optional(),isError:he(jr()),_meta:he(X({}).passthrough())}).passthrough(),Rye=Lq("type",[W$,V$,K$]),qv=Lq("type",[W$,V$,K$,cye,Iye]),Oye=X({role:zr(["user","assistant"]),content:Ft([qv,nt(qv)]),_meta:he(X({}).passthrough())}).passthrough(),Cye=yn.extend({messages:nt(Oye),modelPreferences:Tye.optional(),systemPrompt:L().optional(),includeContext:zr(["none","thisServer","allServers"]).optional(),temperature:Rt().optional(),maxTokens:Rt().int(),stopSequences:nt(L()).optional(),metadata:Yi.optional(),tools:he(nt(u9)),toolChoice:he($ye)}),Pye=Tr.extend({method:ge("sampling/createMessage"),params:Cye}),Aye=Lr.extend({model:L(),stopReason:he(zr(["endTurn","stopSequence","maxTokens"]).or(L())),role:zr(["user","assistant"]),content:Rye}),Nye=Lr.extend({model:L(),stopReason:he(zr(["endTurn","stopSequence","maxTokens","toolUse"]).or(L())),role:zr(["user","assistant"]),content:Ft([qv,nt(qv)])}),Mye=X({type:ge("boolean"),title:L().optional(),description:L().optional(),default:jr().optional()}),Dye=X({type:ge("string"),title:L().optional(),description:L().optional(),minLength:Rt().optional(),maxLength:Rt().optional(),format:zr(["email","uri","date","date-time"]).optional(),default:L().optional()}),jye=X({type:zr(["number","integer"]),title:L().optional(),description:L().optional(),minimum:Rt().optional(),maximum:Rt().optional(),default:Rt().optional()}),zye=X({type:ge("string"),title:L().optional(),description:L().optional(),enum:nt(L()),default:L().optional()}),Lye=X({type:ge("string"),title:L().optional(),description:L().optional(),oneOf:nt(X({const:L(),title:L()})),default:L().optional()}),Uye=X({type:ge("string"),title:L().optional(),description:L().optional(),enum:nt(L()),enumNames:nt(L()).optional(),default:L().optional()}),Fye=Ft([zye,Lye]),qye=X({type:ge("array"),title:L().optional(),description:L().optional(),minItems:Rt().optional(),maxItems:Rt().optional(),items:X({type:ge("string"),enum:nt(L())}),default:nt(L()).optional()}),Hye=X({type:ge("array"),title:L().optional(),description:L().optional(),minItems:Rt().optional(),maxItems:Rt().optional(),items:X({anyOf:nt(X({const:L(),title:L()}))}),default:nt(L()).optional()}),Zye=Ft([qye,Hye]),Bye=Ft([Uye,Fye,Zye]),Gye=Ft([Bye,Mye,Dye,jye]),Wye=yn.extend({mode:ge("form").optional(),message:L(),requestedSchema:X({type:ge("object"),properties:or(L(),Gye),required:nt(L()).optional()})}),Vye=yn.extend({mode:ge("url"),message:L(),elicitationId:L(),url:L().url()}),Kye=Ft([Wye,Vye]),Jye=Tr.extend({method:ge("elicitation/create"),params:Kye}),Xye=xa.extend({elicitationId:L()}),Yye=Xn.extend({method:ge("notifications/elicitation/complete"),params:Xye}),Qye=Lr.extend({action:zr(["accept","decline","cancel"]),content:Zq(t=>t===null?void 0:t,or(L(),Ft([L(),Rt(),jr(),nt(L())])).optional())}),e_e=X({type:ge("ref/resource"),uri:L()}),t_e=X({type:ge("ref/prompt"),name:L()}),r_e=yn.extend({ref:Ft([t_e,e_e]),argument:X({name:L(),value:L()}),context:X({arguments:or(L(),L()).optional()}).optional()}),n_e=Tr.extend({method:ge("completion/complete"),params:r_e});var i_e=Lr.extend({completion:xi({values:nt(L()).max(100),total:he(Rt().int()),hasMore:he(jr())})}),s_e=X({uri:L().startsWith("file://"),name:L().optional(),_meta:or(L(),sr()).optional()}),o_e=Tr.extend({method:ge("roots/list")}),a_e=Lr.extend({roots:nt(s_e)}),c_e=Xn.extend({method:ge("notifications/roots/list_changed")}),rje=Ft([Jq,Ave,n_e,xye,aye,iye,qve,Zve,Wve,Xve,Qve,_ye,gye,e9,r9,n9]),nje=Ft([Vq,Xq,Dve,c_e,Qq]),ije=Ft([Wq,Aye,Nye,Qye,a_e,t9,i9,Yq]),sje=Ft([Jq,Pye,Jye,o_e,e9,r9,n9]),oje=Ft([Vq,Xq,Eye,tye,Kve,bye,fye,Qq,Yye]),aje=Ft([Wq,Mve,i_e,pye,sye,Hve,Bve,Vve,l9,vye,t9,i9,Yq]);var cje=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");var uje=vF(kF(),1),lje=vF(qle(),1);var gF;(function(t){t.Completable="McpCompletable"})(gF||(gF={}));function p9({prompt:t,options:e}){let{systemPrompt:r,settingSources:n,sandbox:i,...s}=e??{},o,a;r===void 0?o="":typeof r=="string"?o=r:r.type==="preset"&&(a=r.append);let c=s.pathToClaudeCodeExecutable;if(!c){let J=(0,TF.fileURLToPath)(u_e.url),ue=(0,f$.join)(J,"..");c=(0,f$.join)(ue,"cli.js")}process.env.CLAUDE_AGENT_SDK_VERSION="0.1.77";let{abortController:u=IF(),additionalDirectories:l=[],agents:d,allowedTools:p=[],betas:f,canUseTool:m,continue:h,cwd:g,disallowedTools:v=[],tools:S,env:b,executable:y=VF()?"bun":"node",executableArgs:x=[],extraArgs:w={},fallbackModel:E,enableFileCheckpointing:T,forkSession:I,hooks:A,includePartialMessages:N,persistSession:U,maxThinkingTokens:V,maxTurns:j,maxBudgetUsd:ae,mcpServers:Me,model:ze,outputFormat:Et,permissionMode:Ge="default",allowDangerouslySkipPermissions:K=!1,permissionPromptToolName:C,plugins:H,resume:M,resumeSessionAt:k,stderr:R,strictMcpConfig:F}=s,le=Et?.type==="json_schema"?Et.schema:void 0,ce=b;if(ce||(ce={...process.env}),ce.CLAUDE_CODE_ENTRYPOINT||(ce.CLAUDE_CODE_ENTRYPOINT="sdk-ts"),T&&(ce.CLAUDE_CODE_ENABLE_SDK_FILE_CHECKPOINTING="true"),!c)throw new Error("pathToClaudeCodeExecutable is required");let Qe={},Xe=new Map;if(Me)for(let[J,ue]of Object.entries(Me))ue.type==="sdk"&&"instance"in ue?(Xe.set(J,ue.instance),Qe[J]={type:"sdk",name:J}):Qe[J]=ue;let qt=typeof t=="string",P=new h$({abortController:u,additionalDirectories:l,betas:f,cwd:g,executable:y,executableArgs:x,extraArgs:w,pathToClaudeCodeExecutable:c,env:ce,forkSession:I,stderr:R,maxThinkingTokens:V,maxTurns:j,maxBudgetUsd:ae,model:ze,fallbackModel:E,jsonSchema:le,permissionMode:Ge,allowDangerouslySkipPermissions:K,permissionPromptToolName:C,continueConversation:h,resume:M,resumeSessionAt:k,settingSources:n??[],allowedTools:p,disallowedTools:v,tools:S,mcpServers:Qe,strictMcpConfig:F,canUseTool:!!m,hooks:!!A,includePartialMessages:N,persistSession:U,plugins:H,sandbox:i,spawnClaudeCodeProcess:s.spawnClaudeCodeProcess}),D={systemPrompt:o,appendSystemPrompt:a,agents:d},Z=new y$(P,qt,m,A,u,Xe,le,D);return typeof t=="string"?P.write(Xi({type:"user",session_id:"",message:{role:"user",content:[{type:"text",text:t}]},parent_tool_use_id:null})+` -`):Z.streamInput(t),Z}var ny=class{dbManager;sessionManager;constructor(e,r){this.dbManager=e,this.sessionManager=r}async startSession(e,r){let n={lastCwd:void 0},i=this.findClaudeExecutable(),s=e.modelOverride||this.getModelId(),o=["Bash","Read","Write","Edit","Grep","Glob","WebFetch","WebSearch","Task","NotebookEdit","AskUserQuestion","TodoWrite"],a=this.createMessageGenerator(e,n),c=!!e.memorySessionId,u=c&&e.lastPromptNumber>1&&!e.forceInit;e.forceInit&&(_.info("SDK","forceInit flag set, starting fresh SDK session",{sessionDbId:e.sessionDbId,previousMemorySessionId:e.memorySessionId}),e.forceInit=!1);let l=Se.loadFromFile(jt),d=parseInt(l.CLAUDE_MEM_MAX_CONCURRENT_AGENTS,10)||2;await O6(d);let p=Ui(pM()),f=Xh();if(_.info("SDK","Starting SDK query",{sessionDbId:e.sessionDbId,contentSessionId:e.contentSessionId,memorySessionId:e.memorySessionId,hasRealMemorySessionId:c,shouldResume:u,resume_parameter:u?e.memorySessionId:"(none - fresh start)",lastPromptNumber:e.lastPromptNumber,authMethod:f}),e.lastPromptNumber>1)_.debug("SDK",`[ALIGNMENT] Resume Decision | contentSessionId=${e.contentSessionId} | memorySessionId=${e.memorySessionId} | prompt#=${e.lastPromptNumber} | hasRealMemorySessionId=${c} | shouldResume=${u} | resumeWith=${u?e.memorySessionId:"NONE"}`);else{let g=c;_.debug("SDK",`[ALIGNMENT] First Prompt (INIT) | contentSessionId=${e.contentSessionId} | prompt#=${e.lastPromptNumber} | hasStaleMemoryId=${g} | action=START_FRESH | Will capture new memorySessionId from SDK response`),g&&_.warn("SDK",`Skipping resume for INIT prompt despite existing memorySessionId=${e.memorySessionId} - SDK context was lost (worker restart or crash recovery)`)}Mr(Kh);let m=p9({prompt:a,options:{model:s,cwd:Kh,...u&&{resume:e.memorySessionId},disallowedTools:o,abortController:e.abortController,pathToClaudeCodeExecutable:i,spawnClaudeCodeProcess:C6(e.sessionDbId),env:p}});try{for await(let g of m){if(g.session_id&&g.session_id!==e.memorySessionId){let v=e.memorySessionId;e.memorySessionId=g.session_id,this.dbManager.getSessionStore().ensureMemorySessionIdRegistered(e.sessionDbId,g.session_id);let S=this.dbManager.getSessionStore().getSessionById(e.sessionDbId),b=S?.memory_session_id===g.session_id,y=v?`MEMORY_ID_CHANGED | sessionDbId=${e.sessionDbId} | from=${v} | to=${g.session_id} | dbVerified=${b}`:`MEMORY_ID_CAPTURED | sessionDbId=${e.sessionDbId} | memorySessionId=${g.session_id} | dbVerified=${b}`;_.info("SESSION",y,{sessionId:e.sessionDbId,memorySessionId:g.session_id,previousId:v}),b||_.error("SESSION",`MEMORY_ID_MISMATCH | sessionDbId=${e.sessionDbId} | expected=${g.session_id} | got=${S?.memory_session_id}`,{sessionId:e.sessionDbId}),_.debug("SDK",`[ALIGNMENT] ${v?"Updated":"Captured"} | contentSessionId=${e.contentSessionId} \u2192 memorySessionId=${g.session_id} | Future prompts will resume with this ID`)}if(g.type==="assistant"){let v=g.message.content,S=Array.isArray(v)?v.filter(T=>T.type==="text").map(T=>T.text).join(` -`):typeof v=="string"?v:"";if(S.includes("prompt is too long")||S.includes("context window")){_.error("SDK","Context overflow detected - terminating session"),e.abortController.abort();return}let b=S.length,y=e.cumulativeInputTokens+e.cumulativeOutputTokens,x=g.message.usage;x&&(e.cumulativeInputTokens+=x.input_tokens||0,e.cumulativeOutputTokens+=x.output_tokens||0,x.cache_creation_input_tokens&&(e.cumulativeInputTokens+=x.cache_creation_input_tokens),_.debug("SDK","Token usage captured",{sessionId:e.sessionDbId,inputTokens:x.input_tokens,outputTokens:x.output_tokens,cacheCreation:x.cache_creation_input_tokens||0,cacheRead:x.cache_read_input_tokens||0,cumulativeInput:e.cumulativeInputTokens,cumulativeOutput:e.cumulativeOutputTokens}));let w=e.cumulativeInputTokens+e.cumulativeOutputTokens-y,E=e.earliestPendingTimestamp;if(b>0){let T=b>100?S.substring(0,100)+"...":S;_.dataOut("SDK",`Response received (${b} chars)`,{sessionId:e.sessionDbId,promptNumber:e.lastPromptNumber},T)}if(typeof S=="string"&&S.includes("Prompt is too long"))throw new Error("Claude session context overflow: prompt is too long");if(typeof S=="string"&&S.includes("Invalid API key"))throw new Error("Invalid API key: check your API key configuration in ~/.claude-mem/settings.json or ~/.claude-mem/.env");await _i(S,e,this.dbManager,this.sessionManager,r,w,E,"SDK",n.lastCwd)}g.type==="result"&&g.subtype}}finally{let g=go(e.sessionDbId);g&&g.process.exitCode===null&&await vo(g,5e3)}let h=Date.now()-e.startTime;_.success("SDK","Agent completed",{sessionId:e.sessionDbId,duration:`${(h/1e3).toFixed(1)}s`})}async*createMessageGenerator(e,r){let n=He.getInstance().getActiveMode(),i=e.lastPromptNumber===1;_.info("SDK","Creating message generator",{sessionDbId:e.sessionDbId,contentSessionId:e.contentSessionId,lastPromptNumber:e.lastPromptNumber,isInitPrompt:i,promptType:i?"INIT":"CONTINUATION"});let s=i?au(e.project,e.contentSessionId,e.userPrompt,n):lu(e.userPrompt,e.lastPromptNumber,e.contentSessionId,n);e.conversationHistory.push({role:"user",content:s}),yield{type:"user",message:{role:"user",content:s},session_id:e.contentSessionId,parent_tool_use_id:null,isSynthetic:!0};for await(let o of this.sessionManager.getMessageIterator(e.sessionDbId))if(e.processingMessageIds.push(o._persistentId),o.cwd&&(r.lastCwd=o.cwd),o.type==="observation"){o.prompt_number!==void 0&&(e.lastPromptNumber=o.prompt_number);let a=cu({id:0,tool_name:o.tool_name,tool_input:JSON.stringify(o.tool_input),tool_output:JSON.stringify(o.tool_response),created_at_epoch:Date.now(),cwd:o.cwd});e.conversationHistory.push({role:"user",content:a}),yield{type:"user",message:{role:"user",content:a},session_id:e.contentSessionId,parent_tool_use_id:null,isSynthetic:!0}}else if(o.type==="summarize"){let a=uu({id:e.sessionDbId,memory_session_id:e.memorySessionId,project:e.project,user_prompt:e.userPrompt,last_assistant_message:o.last_assistant_message||""},n);e.conversationHistory.push({role:"user",content:a}),yield{type:"user",message:{role:"user",content:a},session_id:e.contentSessionId,parent_tool_use_id:null,isSynthetic:!0}}}findClaudeExecutable(){let e=Se.loadFromFile(jt);if(e.CLAUDE_CODE_PATH){let{existsSync:r}=require("fs");if(!r(e.CLAUDE_CODE_PATH))throw new Error(`CLAUDE_CODE_PATH is set to "${e.CLAUDE_CODE_PATH}" but the file does not exist.`);return e.CLAUDE_CODE_PATH}if(process.platform==="win32")try{return(0,X$.execSync)("where claude.cmd",{encoding:"utf8",windowsHide:!0,stdio:["ignore","pipe","ignore"]}),"claude.cmd"}catch{}try{let r=(0,X$.execSync)(process.platform==="win32"?"where claude":"which claude",{encoding:"utf8",windowsHide:!0,stdio:["ignore","pipe","ignore"]}).trim().split(` + path: iss.path ? [${ku(y)}, ...iss.path] : [${ku(y)}] + })));`),p.write(`newResult[${ku(y)}] = ${b}.value`)}p.write("payload.value = newResult;"),p.write("return payload;");let v=p.compile();return(y,b)=>v(d,y,b)},i,s=lf,o=!H$.jitless,c=o&&kq.value,u=e.catchall,l;t._zod.parse=(d,p)=>{l??(l=r.value);let f=d.value;if(!s(f))return d.issues.push({expected:"object",code:"invalid_type",input:f,inst:t}),d;let m=[];if(o&&c&&p?.async===!1&&p.jitless!==!0)i||(i=n(e.shape)),d=i(d,p);else{d.value={};let b=l.shape;for(let S of l.keys){let x=b[S],w=x._zod.run({value:f[S],issues:[]},p),E=x._zod.optin==="optional"&&x._zod.optout==="optional";w instanceof Promise?m.push(w.then(T=>E?xF(T,d,S,f):qv(T,d,S))):E?xF(w,d,S,f):qv(w,d,S)}}if(!u)return m.length?Promise.all(m).then(()=>d):d;let h=[],g=l.keySet,v=u._zod,y=v.def.type;for(let b of Object.keys(f)){if(g.has(b))continue;if(y==="never"){h.push(b);continue}let S=v.run({value:f[b],issues:[]},p);S instanceof Promise?m.push(S.then(x=>qv(x,d,b))):qv(S,d,b)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:f,inst:t}),m.length?Promise.all(m).then(()=>d):d}});function wF(t,e,r,n){for(let i of t)if(i.issues.length===0)return e.value=i.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(i=>i.issues.map(s=>Zs(s,n,Hs())))}),e}var Hq=q("$ZodUnion",(t,e)=>{zt.init(t,e),jt(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),jt(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),jt(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),jt(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>ay(n.source)).join("|")})$`)}}),t._zod.parse=(r,n)=>{let i=!1,s=[];for(let o of e.options){let a=o._zod.run({value:r.value,issues:[]},n);if(a instanceof Promise)s.push(a),i=!0;else{if(a.issues.length===0)return a;s.push(a)}}return i?Promise.all(s).then(o=>wF(o,r,t,n)):wF(s,r,t,n)}}),Mhe=q("$ZodDiscriminatedUnion",(t,e)=>{Hq.init(t,e);let r=t._zod.parse;jt(t._zod,"propValues",()=>{let i={};for(let s of e.options){let o=s._zod.propValues;if(!o||Object.keys(o).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(o)){i[a]||(i[a]=new Set);for(let u of c)i[a].add(u)}}return i});let n=sy(()=>{let i=e.options,s=new Map;for(let o of i){let a=o._zod.propValues[e.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(o)}"`);for(let c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,o)}}return s});t._zod.parse=(i,s)=>{let o=i.value;if(!lf(o))return i.issues.push({code:"invalid_type",expected:"object",input:o,inst:t}),i;let a=n.value.get(o?.[e.discriminator]);return a?a._zod.run(i,s):e.unionFallback?r(i,s):(i.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:o,path:[e.discriminator],inst:t}),i)}}),Dhe=q("$ZodIntersection",(t,e)=>{zt.init(t,e),t._zod.parse=(r,n)=>{let i=r.value,s=e.left._zod.run({value:i,issues:[]},n),o=e.right._zod.run({value:i,issues:[]},n);return s instanceof Promise||o instanceof Promise?Promise.all([s,o]).then(([c,u])=>EF(r,c,u)):EF(r,s,o)}});function W$(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(df(t)&&df(e)){let r=Object.keys(e),n=Object.keys(t).filter(s=>r.indexOf(s)!==-1),i={...t,...e};for(let s of n){let o=W$(t[s],e[s]);if(!o.valid)return{valid:!1,mergeErrorPath:[s,...o.mergeErrorPath]};i[s]=o.data}return{valid:!0,data:i}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n{zt.init(t,e),t._zod.parse=(r,n)=>{let i=r.value;if(!df(i))return r.issues.push({expected:"record",code:"invalid_type",input:i,inst:t}),r;let s=[];if(e.keyType._zod.values){let o=e.keyType._zod.values;r.value={};for(let c of o)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let u=e.valueType._zod.run({value:i[c],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...Ro(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Ro(c,u.issues)),r.value[c]=u.value)}let a;for(let c in i)o.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:i,inst:t,keys:a})}else{r.value={};for(let o of Reflect.ownKeys(i)){if(o==="__proto__")continue;let a=e.keyType._zod.run({value:o,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>Zs(u,n,Hs())),input:o,path:[o],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:i[o],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...Ro(o,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Ro(o,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}}),zhe=q("$ZodEnum",(t,e)=>{zt.init(t,e);let r=xq(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Tq.has(typeof n)).map(n=>typeof n=="string"?Bu(n):n.toString()).join("|")})$`),t._zod.parse=(n,i)=>{let s=n.value;return t._zod.values.has(s)||n.issues.push({code:"invalid_value",values:r,input:s,inst:t}),n}}),Lhe=q("$ZodLiteral",(t,e)=>{zt.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?Bu(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,n)=>{let i=r.value;return t._zod.values.has(i)||r.issues.push({code:"invalid_value",values:e.values,input:i,inst:t}),r}}),Uhe=q("$ZodTransform",(t,e)=>{zt.init(t,e),t._zod.parse=(r,n)=>{let i=e.transform(r.value,r);if(n.async)return(i instanceof Promise?i:Promise.resolve(i)).then(o=>(r.value=o,r));if(i instanceof Promise)throw new Oa;return r.value=i,r}}),Fhe=q("$ZodOptional",(t,e)=>{zt.init(t,e),t._zod.optin="optional",t._zod.optout="optional",jt(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),jt(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${ay(r.source)})?$`):void 0}),t._zod.parse=(r,n)=>e.innerType._zod.optin==="optional"?e.innerType._zod.run(r,n):r.value===void 0?r:e.innerType._zod.run(r,n)}),qhe=q("$ZodNullable",(t,e)=>{zt.init(t,e),jt(t._zod,"optin",()=>e.innerType._zod.optin),jt(t._zod,"optout",()=>e.innerType._zod.optout),jt(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${ay(r.source)}|null)$`):void 0}),jt(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),Hhe=q("$ZodDefault",(t,e)=>{zt.init(t,e),t._zod.optin="optional",jt(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>kF(s,e)):kF(i,e)}});function kF(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Zhe=q("$ZodPrefault",(t,e)=>{zt.init(t,e),t._zod.optin="optional",jt(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),Bhe=q("$ZodNonOptional",(t,e)=>{zt.init(t,e),jt(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>TF(s,t)):TF(i,t)}});function TF(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}var Ghe=q("$ZodCatch",(t,e)=>{zt.init(t,e),t._zod.optin="optional",jt(t._zod,"optout",()=>e.innerType._zod.optout),jt(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(o=>Zs(o,n,Hs()))},input:r.value}),r.issues=[]),r)):(r.value=i.value,i.issues.length&&(r.value=e.catchValue({...r,error:{issues:i.issues.map(s=>Zs(s,n,Hs()))},input:r.value}),r.issues=[]),r)}}),Whe=q("$ZodPipe",(t,e)=>{zt.init(t,e),jt(t._zod,"values",()=>e.in._zod.values),jt(t._zod,"optin",()=>e.in._zod.optin),jt(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let i=e.in._zod.run(r,n);return i instanceof Promise?i.then(s=>$F(s,e,n)):$F(i,e,n)}});function $F(t,e,r){return Tu(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Vhe=q("$ZodReadonly",(t,e)=>{zt.init(t,e),jt(t._zod,"propValues",()=>e.innerType._zod.propValues),jt(t._zod,"values",()=>e.innerType._zod.values),jt(t._zod,"optin",()=>e.innerType._zod.optin),jt(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let i=e.innerType._zod.run(r,n);return i instanceof Promise?i.then(IF):IF(i)}});function IF(t){return t.value=Object.freeze(t.value),t}var Khe=q("$ZodCustom",(t,e)=>{bn.init(t,e),zt.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,i=e.fn(n);if(i instanceof Promise)return i.then(s=>RF(s,r,n,t));RF(i,r,n,t)}});function RF(t,e,r,n){if(!t){let i={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(i.params=n._zod.def.params),e.issues.push(Rq(i))}}var Jhe=t=>{let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"NaN":"number";case"object":{if(Array.isArray(t))return"array";if(t===null)return"null";if(Object.getPrototypeOf(t)!==Object.prototype&&t.constructor)return t.constructor.name}}return e},Xhe=()=>{let t={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"}};function e(n){return t[n]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Invalid input: expected ${n.expected}, received ${Jhe(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${iI(n.values[0])}`:`Invalid option: expected one of ${Z$(n.values,"|")}`;case"too_big":{let i=n.inclusive?"<=":"<",s=e(n.origin);return s?`Too big: expected ${n.origin??"value"} to have ${i}${n.maximum.toString()} ${s.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${i}${n.maximum.toString()}`}case"too_small":{let i=n.inclusive?">=":">",s=e(n.origin);return s?`Too small: expected ${n.origin} to have ${i}${n.minimum.toString()} ${s.unit}`:`Too small: expected ${n.origin} to be ${i}${n.minimum.toString()}`}case"invalid_format":{let i=n;return i.format==="starts_with"?`Invalid string: must start with "${i.prefix}"`:i.format==="ends_with"?`Invalid string: must end with "${i.suffix}"`:i.format==="includes"?`Invalid string: must include "${i.includes}"`:i.format==="regex"?`Invalid string: must match pattern ${i.pattern}`:`Invalid ${r[i.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${Z$(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function Yhe(){return{localeError:Xhe()}}var V$=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...r){let n=r[0];if(this._map.set(e,n),n&&typeof n=="object"&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}remove(e){return this._map.delete(e),this}get(e){let r=e._zod.parent;if(r){let n={...this.get(r)??{}};return delete n.id,{...n,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}};function Qhe(){return new V$}var Hv=Qhe();function ege(t,e){return new t({type:"string",...xe(e)})}function tge(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...xe(e)})}function OF(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...xe(e)})}function rge(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...xe(e)})}function nge(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...xe(e)})}function ige(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...xe(e)})}function sge(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...xe(e)})}function oge(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...xe(e)})}function age(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...xe(e)})}function cge(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...xe(e)})}function uge(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...xe(e)})}function lge(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...xe(e)})}function dge(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...xe(e)})}function pge(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...xe(e)})}function fge(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...xe(e)})}function mge(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...xe(e)})}function hge(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...xe(e)})}function gge(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...xe(e)})}function vge(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...xe(e)})}function yge(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...xe(e)})}function _ge(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...xe(e)})}function bge(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...xe(e)})}function Sge(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...xe(e)})}function xge(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...xe(e)})}function wge(t,e){return new t({type:"string",format:"date",check:"string_format",...xe(e)})}function Ege(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...xe(e)})}function kge(t,e){return new t({type:"string",format:"duration",check:"string_format",...xe(e)})}function Tge(t,e){return new t({type:"number",checks:[],...xe(e)})}function $ge(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...xe(e)})}function Ige(t,e){return new t({type:"boolean",...xe(e)})}function Rge(t,e){return new t({type:"null",...xe(e)})}function Oge(t){return new t({type:"unknown"})}function Cge(t,e){return new t({type:"never",...xe(e)})}function CF(t,e){return new Lq({check:"less_than",...xe(e),value:t,inclusive:!1})}function I$(t,e){return new Lq({check:"less_than",...xe(e),value:t,inclusive:!0})}function PF(t,e){return new Uq({check:"greater_than",...xe(e),value:t,inclusive:!1})}function R$(t,e){return new Uq({check:"greater_than",...xe(e),value:t,inclusive:!0})}function AF(t,e){return new Zme({check:"multiple_of",...xe(e),value:t})}function Zq(t,e){return new Gme({check:"max_length",...xe(e),maximum:t})}function Xv(t,e){return new Wme({check:"min_length",...xe(e),minimum:t})}function Bq(t,e){return new Vme({check:"length_equals",...xe(e),length:t})}function Pge(t,e){return new Kme({check:"string_format",format:"regex",...xe(e),pattern:t})}function Age(t){return new Jme({check:"string_format",format:"lowercase",...xe(t)})}function Nge(t){return new Xme({check:"string_format",format:"uppercase",...xe(t)})}function Mge(t,e){return new Yme({check:"string_format",format:"includes",...xe(e),includes:t})}function Dge(t,e){return new Qme({check:"string_format",format:"starts_with",...xe(e),prefix:t})}function jge(t,e){return new ehe({check:"string_format",format:"ends_with",...xe(e),suffix:t})}function ff(t){return new the({check:"overwrite",tx:t})}function zge(t){return ff(e=>e.normalize(t))}function Lge(){return ff(t=>t.trim())}function Uge(){return ff(t=>t.toLowerCase())}function Fge(){return ff(t=>t.toUpperCase())}function qge(t,e,r){return new t({type:"array",element:e,...xe(r)})}function Hge(t,e,r){let n=xe(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Zge(t,e,r){return new t({type:"custom",check:"custom",fn:e,...xe(r)})}var Gq={};UF(Gq,{time:()=>Yq,duration:()=>e9,datetime:()=>Vq,date:()=>Jq,ZodISOTime:()=>Xq,ZodISODuration:()=>Qq,ZodISODateTime:()=>Wq,ZodISODate:()=>Kq});var Wq=q("ZodISODateTime",(t,e)=>{mhe.init(t,e),Wt.init(t,e)});function Vq(t){return xge(Wq,t)}var Kq=q("ZodISODate",(t,e)=>{hhe.init(t,e),Wt.init(t,e)});function Jq(t){return wge(Kq,t)}var Xq=q("ZodISOTime",(t,e)=>{ghe.init(t,e),Wt.init(t,e)});function Yq(t){return Ege(Xq,t)}var Qq=q("ZodISODuration",(t,e)=>{vhe.init(t,e),Wt.init(t,e)});function e9(t){return kge(Qq,t)}var t9=(t,e)=>{Cq.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>dme(t,r)},flatten:{value:r=>lme(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},Lje=q("ZodError",t9),ly=q("ZodError",t9,{Parent:Error}),Bge=pme(ly),Gge=fme(ly),Wge=Aq(ly),Vge=Nq(ly),Gt=q("ZodType",(t,e)=>(zt.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>Ao(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t),t.parse=(r,n)=>Bge(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Wge(t,r,n),t.parseAsync=async(r,n)=>Gge(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Vge(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(zve(r,n)),t.superRefine=r=>t.check(Lve(r)),t.overwrite=r=>t.check(ff(r)),t.optional=()=>he(t),t.nullable=()=>DF(t),t.nullish=()=>he(DF(t)),t.nonoptional=r=>Ove(t,r),t.array=()=>it(t),t.or=r=>Ft([t,r]),t.and=r=>oI(t,r),t.transform=r=>J$(t,c9(r)),t.default=r=>$ve(t,r),t.prefault=r=>Rve(t,r),t.catch=r=>Pve(t,r),t.pipe=r=>J$(t,r),t.readonly=()=>Mve(t),t.describe=r=>{let n=t.clone();return Hv.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Hv.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Hv.get(t);let n=t.clone();return Hv.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),r9=q("_ZodString",(t,e)=>{sI.init(t,e),Gt.init(t,e);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,t.regex=(...n)=>t.check(Pge(...n)),t.includes=(...n)=>t.check(Mge(...n)),t.startsWith=(...n)=>t.check(Dge(...n)),t.endsWith=(...n)=>t.check(jge(...n)),t.min=(...n)=>t.check(Xv(...n)),t.max=(...n)=>t.check(Zq(...n)),t.length=(...n)=>t.check(Bq(...n)),t.nonempty=(...n)=>t.check(Xv(1,...n)),t.lowercase=n=>t.check(Age(n)),t.uppercase=n=>t.check(Nge(n)),t.trim=()=>t.check(Lge()),t.normalize=(...n)=>t.check(zge(...n)),t.toLowerCase=()=>t.check(Uge()),t.toUpperCase=()=>t.check(Fge())}),Kge=q("ZodString",(t,e)=>{sI.init(t,e),r9.init(t,e),t.email=r=>t.check(tge(Jge,r)),t.url=r=>t.check(oge(Xge,r)),t.jwt=r=>t.check(Sge(pve,r)),t.emoji=r=>t.check(age(Yge,r)),t.guid=r=>t.check(OF(NF,r)),t.uuid=r=>t.check(rge(Zv,r)),t.uuidv4=r=>t.check(nge(Zv,r)),t.uuidv6=r=>t.check(ige(Zv,r)),t.uuidv7=r=>t.check(sge(Zv,r)),t.nanoid=r=>t.check(cge(Qge,r)),t.guid=r=>t.check(OF(NF,r)),t.cuid=r=>t.check(uge(eve,r)),t.cuid2=r=>t.check(lge(tve,r)),t.ulid=r=>t.check(dge(rve,r)),t.base64=r=>t.check(yge(uve,r)),t.base64url=r=>t.check(_ge(lve,r)),t.xid=r=>t.check(pge(nve,r)),t.ksuid=r=>t.check(fge(ive,r)),t.ipv4=r=>t.check(mge(sve,r)),t.ipv6=r=>t.check(hge(ove,r)),t.cidrv4=r=>t.check(gge(ave,r)),t.cidrv6=r=>t.check(vge(cve,r)),t.e164=r=>t.check(bge(dve,r)),t.datetime=r=>t.check(Vq(r)),t.date=r=>t.check(Jq(r)),t.time=r=>t.check(Yq(r)),t.duration=r=>t.check(e9(r))});function L(t){return ege(Kge,t)}var Wt=q("ZodStringFormat",(t,e)=>{Ut.init(t,e),r9.init(t,e)}),Jge=q("ZodEmail",(t,e)=>{she.init(t,e),Wt.init(t,e)}),NF=q("ZodGUID",(t,e)=>{nhe.init(t,e),Wt.init(t,e)}),Zv=q("ZodUUID",(t,e)=>{ihe.init(t,e),Wt.init(t,e)}),Xge=q("ZodURL",(t,e)=>{ohe.init(t,e),Wt.init(t,e)}),Yge=q("ZodEmoji",(t,e)=>{ahe.init(t,e),Wt.init(t,e)}),Qge=q("ZodNanoID",(t,e)=>{che.init(t,e),Wt.init(t,e)}),eve=q("ZodCUID",(t,e)=>{uhe.init(t,e),Wt.init(t,e)}),tve=q("ZodCUID2",(t,e)=>{lhe.init(t,e),Wt.init(t,e)}),rve=q("ZodULID",(t,e)=>{dhe.init(t,e),Wt.init(t,e)}),nve=q("ZodXID",(t,e)=>{phe.init(t,e),Wt.init(t,e)}),ive=q("ZodKSUID",(t,e)=>{fhe.init(t,e),Wt.init(t,e)}),sve=q("ZodIPv4",(t,e)=>{yhe.init(t,e),Wt.init(t,e)}),ove=q("ZodIPv6",(t,e)=>{_he.init(t,e),Wt.init(t,e)}),ave=q("ZodCIDRv4",(t,e)=>{bhe.init(t,e),Wt.init(t,e)}),cve=q("ZodCIDRv6",(t,e)=>{She.init(t,e),Wt.init(t,e)}),uve=q("ZodBase64",(t,e)=>{xhe.init(t,e),Wt.init(t,e)}),lve=q("ZodBase64URL",(t,e)=>{Ehe.init(t,e),Wt.init(t,e)}),dve=q("ZodE164",(t,e)=>{khe.init(t,e),Wt.init(t,e)}),pve=q("ZodJWT",(t,e)=>{$he.init(t,e),Wt.init(t,e)}),n9=q("ZodNumber",(t,e)=>{qq.init(t,e),Gt.init(t,e),t.gt=(n,i)=>t.check(PF(n,i)),t.gte=(n,i)=>t.check(R$(n,i)),t.min=(n,i)=>t.check(R$(n,i)),t.lt=(n,i)=>t.check(CF(n,i)),t.lte=(n,i)=>t.check(I$(n,i)),t.max=(n,i)=>t.check(I$(n,i)),t.int=n=>t.check(MF(n)),t.safe=n=>t.check(MF(n)),t.positive=n=>t.check(PF(0,n)),t.nonnegative=n=>t.check(R$(0,n)),t.negative=n=>t.check(CF(0,n)),t.nonpositive=n=>t.check(I$(0,n)),t.multipleOf=(n,i)=>t.check(AF(n,i)),t.step=(n,i)=>t.check(AF(n,i)),t.finite=()=>t;let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function Pt(t){return Tge(n9,t)}var fve=q("ZodNumberFormat",(t,e)=>{Ihe.init(t,e),n9.init(t,e)});function MF(t){return $ge(fve,t)}var mve=q("ZodBoolean",(t,e)=>{Rhe.init(t,e),Gt.init(t,e)});function Lr(t){return Ige(mve,t)}var hve=q("ZodNull",(t,e)=>{Ohe.init(t,e),Gt.init(t,e)});function i9(t){return Rge(hve,t)}var gve=q("ZodUnknown",(t,e)=>{Che.init(t,e),Gt.init(t,e)});function cr(){return Oge(gve)}var vve=q("ZodNever",(t,e)=>{Phe.init(t,e),Gt.init(t,e)});function yve(t){return Cge(vve,t)}var _ve=q("ZodArray",(t,e)=>{Ahe.init(t,e),Gt.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(Xv(r,n)),t.nonempty=r=>t.check(Xv(1,r)),t.max=(r,n)=>t.check(Zq(r,n)),t.length=(r,n)=>t.check(Bq(r,n)),t.unwrap=()=>t.element});function it(t,e){return qge(_ve,t,e)}var s9=q("ZodObject",(t,e)=>{Nhe.init(t,e),Gt.init(t,e),Dt.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Ur(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:cr()}),t.loose=()=>t.clone({...t._zod.def,catchall:cr()}),t.strict=()=>t.clone({...t._zod.def,catchall:yve()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>Dt.extend(t,r),t.merge=r=>Dt.merge(t,r),t.pick=r=>Dt.pick(t,r),t.omit=r=>Dt.omit(t,r),t.partial=(...r)=>Dt.partial(u9,t,r[0]),t.required=(...r)=>Dt.required(l9,t,r[0])});function X(t,e){let r={type:"object",get shape(){return Dt.assignProp(this,"shape",{...t}),this.shape},...Dt.normalizeParams(e)};return new s9(r)}function Ti(t,e){return new s9({type:"object",get shape(){return Dt.assignProp(this,"shape",{...t}),this.shape},catchall:cr(),...Dt.normalizeParams(e)})}var o9=q("ZodUnion",(t,e)=>{Hq.init(t,e),Gt.init(t,e),t.options=e.options});function Ft(t,e){return new o9({type:"union",options:t,...Dt.normalizeParams(e)})}var bve=q("ZodDiscriminatedUnion",(t,e)=>{o9.init(t,e),Mhe.init(t,e)});function a9(t,e,r){return new bve({type:"union",options:e,discriminator:t,...Dt.normalizeParams(r)})}var Sve=q("ZodIntersection",(t,e)=>{Dhe.init(t,e),Gt.init(t,e)});function oI(t,e){return new Sve({type:"intersection",left:t,right:e})}var xve=q("ZodRecord",(t,e)=>{jhe.init(t,e),Gt.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function ur(t,e,r){return new xve({type:"record",keyType:t,valueType:e,...Dt.normalizeParams(r)})}var K$=q("ZodEnum",(t,e)=>{zhe.init(t,e),Gt.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,i)=>{let s={};for(let o of n)if(r.has(o))s[o]=e.entries[o];else throw new Error(`Key ${o} not found in enum`);return new K$({...e,checks:[],...Dt.normalizeParams(i),entries:s})},t.exclude=(n,i)=>{let s={...e.entries};for(let o of n)if(r.has(o))delete s[o];else throw new Error(`Key ${o} not found in enum`);return new K$({...e,checks:[],...Dt.normalizeParams(i),entries:s})}});function Ur(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new K$({type:"enum",entries:r,...Dt.normalizeParams(e)})}var wve=q("ZodLiteral",(t,e)=>{Lhe.init(t,e),Gt.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function ge(t,e){return new wve({type:"literal",values:Array.isArray(t)?t:[t],...Dt.normalizeParams(e)})}var Eve=q("ZodTransform",(t,e)=>{Uhe.init(t,e),Gt.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(Dt.issue(s,r.value,e));else{let o=s;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=t),o.continue??(o.continue=!0),r.issues.push(Dt.issue(o))}};let i=e.transform(r.value,r);return i instanceof Promise?i.then(s=>(r.value=s,r)):(r.value=i,r)}});function c9(t){return new Eve({type:"transform",transform:t})}var u9=q("ZodOptional",(t,e)=>{Fhe.init(t,e),Gt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function he(t){return new u9({type:"optional",innerType:t})}var kve=q("ZodNullable",(t,e)=>{qhe.init(t,e),Gt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function DF(t){return new kve({type:"nullable",innerType:t})}var Tve=q("ZodDefault",(t,e)=>{Hhe.init(t,e),Gt.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function $ve(t,e){return new Tve({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Ive=q("ZodPrefault",(t,e)=>{Zhe.init(t,e),Gt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Rve(t,e){return new Ive({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var l9=q("ZodNonOptional",(t,e)=>{Bhe.init(t,e),Gt.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Ove(t,e){return new l9({type:"nonoptional",innerType:t,...Dt.normalizeParams(e)})}var Cve=q("ZodCatch",(t,e)=>{Ghe.init(t,e),Gt.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function Pve(t,e){return new Cve({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var Ave=q("ZodPipe",(t,e)=>{Whe.init(t,e),Gt.init(t,e),t.in=e.in,t.out=e.out});function J$(t,e){return new Ave({type:"pipe",in:t,out:e})}var Nve=q("ZodReadonly",(t,e)=>{Vhe.init(t,e),Gt.init(t,e)});function Mve(t){return new Nve({type:"readonly",innerType:t})}var d9=q("ZodCustom",(t,e)=>{Khe.init(t,e),Gt.init(t,e)});function Dve(t,e){let r=new bn({check:"custom",...Dt.normalizeParams(e)});return r._zod.check=t,r}function jve(t,e){return Hge(d9,t??(()=>!0),e)}function zve(t,e={}){return Zge(d9,t,e)}function Lve(t,e){let r=Dve(n=>(n.addIssue=i=>{if(typeof i=="string")n.issues.push(Dt.issue(i,n.value,r._zod.def));else{let s=i;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=n.value),s.inst??(s.inst=r),s.continue??(s.continue=!r._zod.def.abort),n.issues.push(Dt.issue(s))}},t(n.value,n)),e);return r}function p9(t,e){return J$(c9(t),e)}Hs(Yhe());var aI="io.modelcontextprotocol/related-task",dy="2.0",is=jve(t=>t!==null&&(typeof t=="object"||typeof t=="function")),f9=Ft([L(),Pt().int()]),m9=L(),Uve=Ti({ttl:Ft([Pt(),i9()]).optional(),pollInterval:Pt().optional()}),cI=Ti({taskId:L()}),Fve=Ti({progressToken:f9.optional(),[aI]:cI.optional()}),Sn=Ti({task:Uve.optional(),_meta:Fve.optional()}),Rr=X({method:L(),params:Sn.optional()}),Ca=Ti({_meta:X({[aI]:he(cI)}).passthrough().optional()}),ti=X({method:L(),params:Ca.optional()}),Fr=Ti({_meta:Ti({[aI]:cI.optional()}).optional()}),py=Ft([L(),Pt().int()]),qve=X({jsonrpc:ge(dy),id:py,...Rr.shape}).strict();var Hve=X({jsonrpc:ge(dy),...ti.shape}).strict();var Zve=X({jsonrpc:ge(dy),id:py,result:Fr}).strict();var jF;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(jF||(jF={}));var Bve=X({jsonrpc:ge(dy),id:py,error:X({code:Pt().int(),message:L(),data:he(cr())})}).strict();var Uje=Ft([qve,Hve,Zve,Bve]),h9=Fr.strict(),Gve=Ca.extend({requestId:py,reason:L().optional()}),g9=ti.extend({method:ge("notifications/cancelled"),params:Gve}),Wve=X({src:L(),mimeType:L().optional(),sizes:it(L()).optional()}),mf=X({icons:it(Wve).optional()}),Uu=X({name:L(),title:L().optional()}),v9=Uu.extend({...Uu.shape,...mf.shape,version:L(),websiteUrl:L().optional()}),Vve=oI(X({applyDefaults:Lr().optional()}),ur(L(),cr())),Kve=p9(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,oI(X({form:Vve.optional(),url:is.optional()}),ur(L(),cr()).optional())),Jve=X({list:he(X({}).passthrough()),cancel:he(X({}).passthrough()),requests:he(X({sampling:he(X({createMessage:he(X({}).passthrough())}).passthrough()),elicitation:he(X({create:he(X({}).passthrough())}).passthrough())}).passthrough())}).passthrough(),Xve=X({list:he(X({}).passthrough()),cancel:he(X({}).passthrough()),requests:he(X({tools:he(X({call:he(X({}).passthrough())}).passthrough())}).passthrough())}).passthrough(),Yve=X({experimental:ur(L(),is).optional(),sampling:X({context:is.optional(),tools:is.optional()}).optional(),elicitation:Kve.optional(),roots:X({listChanged:Lr().optional()}).optional(),tasks:he(Jve)}),Qve=Sn.extend({protocolVersion:L(),capabilities:Yve,clientInfo:v9}),eye=Rr.extend({method:ge("initialize"),params:Qve}),tye=X({experimental:ur(L(),is).optional(),logging:is.optional(),completions:is.optional(),prompts:he(X({listChanged:he(Lr())})),resources:X({subscribe:Lr().optional(),listChanged:Lr().optional()}).optional(),tools:X({listChanged:Lr().optional()}).optional(),tasks:he(Xve)}).passthrough(),rye=Fr.extend({protocolVersion:L(),capabilities:tye,serverInfo:v9,instructions:L().optional()}),nye=ti.extend({method:ge("notifications/initialized")}),y9=Rr.extend({method:ge("ping")}),iye=X({progress:Pt(),total:he(Pt()),message:he(L())}),sye=X({...Ca.shape,...iye.shape,progressToken:f9}),_9=ti.extend({method:ge("notifications/progress"),params:sye}),oye=Sn.extend({cursor:m9.optional()}),hf=Rr.extend({params:oye.optional()}),gf=Fr.extend({nextCursor:he(m9)}),vf=X({taskId:L(),status:Ur(["working","input_required","completed","failed","cancelled"]),ttl:Ft([Pt(),i9()]),createdAt:L(),lastUpdatedAt:L(),pollInterval:he(Pt()),statusMessage:he(L())}),b9=Fr.extend({task:vf}),aye=Ca.merge(vf),S9=ti.extend({method:ge("notifications/tasks/status"),params:aye}),x9=Rr.extend({method:ge("tasks/get"),params:Sn.extend({taskId:L()})}),w9=Fr.merge(vf),E9=Rr.extend({method:ge("tasks/result"),params:Sn.extend({taskId:L()})}),k9=hf.extend({method:ge("tasks/list")}),T9=gf.extend({tasks:it(vf)}),Fje=Rr.extend({method:ge("tasks/cancel"),params:Sn.extend({taskId:L()})}),qje=Fr.merge(vf),$9=X({uri:L(),mimeType:he(L()),_meta:ur(L(),cr()).optional()}),I9=$9.extend({text:L()}),uI=L().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),R9=$9.extend({blob:uI}),Gu=X({audience:it(Ur(["user","assistant"])).optional(),priority:Pt().min(0).max(1).optional(),lastModified:Gq.datetime({offset:!0}).optional()}),O9=X({...Uu.shape,...mf.shape,uri:L(),description:he(L()),mimeType:he(L()),annotations:Gu.optional(),_meta:he(Ti({}))}),cye=X({...Uu.shape,...mf.shape,uriTemplate:L(),description:he(L()),mimeType:he(L()),annotations:Gu.optional(),_meta:he(Ti({}))}),uye=hf.extend({method:ge("resources/list")}),lye=gf.extend({resources:it(O9)}),dye=hf.extend({method:ge("resources/templates/list")}),pye=gf.extend({resourceTemplates:it(cye)}),lI=Sn.extend({uri:L()}),fye=lI,mye=Rr.extend({method:ge("resources/read"),params:fye}),hye=Fr.extend({contents:it(Ft([I9,R9]))}),gye=ti.extend({method:ge("notifications/resources/list_changed")}),vye=lI,yye=Rr.extend({method:ge("resources/subscribe"),params:vye}),_ye=lI,bye=Rr.extend({method:ge("resources/unsubscribe"),params:_ye}),Sye=Ca.extend({uri:L()}),xye=ti.extend({method:ge("notifications/resources/updated"),params:Sye}),wye=X({name:L(),description:he(L()),required:he(Lr())}),Eye=X({...Uu.shape,...mf.shape,description:he(L()),arguments:he(it(wye)),_meta:he(Ti({}))}),kye=hf.extend({method:ge("prompts/list")}),Tye=gf.extend({prompts:it(Eye)}),$ye=Sn.extend({name:L(),arguments:ur(L(),L()).optional()}),Iye=Rr.extend({method:ge("prompts/get"),params:$ye}),dI=X({type:ge("text"),text:L(),annotations:Gu.optional(),_meta:ur(L(),cr()).optional()}),pI=X({type:ge("image"),data:uI,mimeType:L(),annotations:Gu.optional(),_meta:ur(L(),cr()).optional()}),fI=X({type:ge("audio"),data:uI,mimeType:L(),annotations:Gu.optional(),_meta:ur(L(),cr()).optional()}),Rye=X({type:ge("tool_use"),name:L(),id:L(),input:X({}).passthrough(),_meta:he(X({}).passthrough())}).passthrough(),Oye=X({type:ge("resource"),resource:Ft([I9,R9]),annotations:Gu.optional(),_meta:ur(L(),cr()).optional()}),Cye=O9.extend({type:ge("resource_link")}),mI=Ft([dI,pI,fI,Cye,Oye]),Pye=X({role:Ur(["user","assistant"]),content:mI}),Aye=Fr.extend({description:he(L()),messages:it(Pye)}),Nye=ti.extend({method:ge("notifications/prompts/list_changed")}),Mye=X({title:L().optional(),readOnlyHint:Lr().optional(),destructiveHint:Lr().optional(),idempotentHint:Lr().optional(),openWorldHint:Lr().optional()}),Dye=X({taskSupport:Ur(["required","optional","forbidden"]).optional()}),C9=X({...Uu.shape,...mf.shape,description:L().optional(),inputSchema:X({type:ge("object"),properties:ur(L(),is).optional(),required:it(L()).optional()}).catchall(cr()),outputSchema:X({type:ge("object"),properties:ur(L(),is).optional(),required:it(L()).optional()}).catchall(cr()).optional(),annotations:he(Mye),execution:he(Dye),_meta:ur(L(),cr()).optional()}),jye=hf.extend({method:ge("tools/list")}),zye=gf.extend({tools:it(C9)}),P9=Fr.extend({content:it(mI).default([]),structuredContent:ur(L(),cr()).optional(),isError:he(Lr())}),Hje=P9.or(Fr.extend({toolResult:cr()})),Lye=Sn.extend({name:L(),arguments:he(ur(L(),cr()))}),Uye=Rr.extend({method:ge("tools/call"),params:Lye}),Fye=ti.extend({method:ge("notifications/tools/list_changed")}),A9=Ur(["debug","info","notice","warning","error","critical","alert","emergency"]),qye=Sn.extend({level:A9}),Hye=Rr.extend({method:ge("logging/setLevel"),params:qye}),Zye=Ca.extend({level:A9,logger:L().optional(),data:cr()}),Bye=ti.extend({method:ge("notifications/message"),params:Zye}),Gye=X({name:L().optional()}),Wye=X({hints:he(it(Gye)),costPriority:he(Pt().min(0).max(1)),speedPriority:he(Pt().min(0).max(1)),intelligencePriority:he(Pt().min(0).max(1))}),Vye=X({mode:he(Ur(["auto","required","none"]))}),Kye=X({type:ge("tool_result"),toolUseId:L().describe("The unique identifier for the corresponding tool call."),content:it(mI).default([]),structuredContent:X({}).passthrough().optional(),isError:he(Lr()),_meta:he(X({}).passthrough())}).passthrough(),Jye=a9("type",[dI,pI,fI]),Yv=a9("type",[dI,pI,fI,Rye,Kye]),Xye=X({role:Ur(["user","assistant"]),content:Ft([Yv,it(Yv)]),_meta:he(X({}).passthrough())}).passthrough(),Yye=Sn.extend({messages:it(Xye),modelPreferences:Wye.optional(),systemPrompt:L().optional(),includeContext:Ur(["none","thisServer","allServers"]).optional(),temperature:Pt().optional(),maxTokens:Pt().int(),stopSequences:it(L()).optional(),metadata:is.optional(),tools:he(it(C9)),toolChoice:he(Vye)}),Qye=Rr.extend({method:ge("sampling/createMessage"),params:Yye}),e_e=Fr.extend({model:L(),stopReason:he(Ur(["endTurn","stopSequence","maxTokens"]).or(L())),role:Ur(["user","assistant"]),content:Jye}),t_e=Fr.extend({model:L(),stopReason:he(Ur(["endTurn","stopSequence","maxTokens","toolUse"]).or(L())),role:Ur(["user","assistant"]),content:Ft([Yv,it(Yv)])}),r_e=X({type:ge("boolean"),title:L().optional(),description:L().optional(),default:Lr().optional()}),n_e=X({type:ge("string"),title:L().optional(),description:L().optional(),minLength:Pt().optional(),maxLength:Pt().optional(),format:Ur(["email","uri","date","date-time"]).optional(),default:L().optional()}),i_e=X({type:Ur(["number","integer"]),title:L().optional(),description:L().optional(),minimum:Pt().optional(),maximum:Pt().optional(),default:Pt().optional()}),s_e=X({type:ge("string"),title:L().optional(),description:L().optional(),enum:it(L()),default:L().optional()}),o_e=X({type:ge("string"),title:L().optional(),description:L().optional(),oneOf:it(X({const:L(),title:L()})),default:L().optional()}),a_e=X({type:ge("string"),title:L().optional(),description:L().optional(),enum:it(L()),enumNames:it(L()).optional(),default:L().optional()}),c_e=Ft([s_e,o_e]),u_e=X({type:ge("array"),title:L().optional(),description:L().optional(),minItems:Pt().optional(),maxItems:Pt().optional(),items:X({type:ge("string"),enum:it(L())}),default:it(L()).optional()}),l_e=X({type:ge("array"),title:L().optional(),description:L().optional(),minItems:Pt().optional(),maxItems:Pt().optional(),items:X({anyOf:it(X({const:L(),title:L()}))}),default:it(L()).optional()}),d_e=Ft([u_e,l_e]),p_e=Ft([a_e,c_e,d_e]),f_e=Ft([p_e,r_e,n_e,i_e]),m_e=Sn.extend({mode:ge("form").optional(),message:L(),requestedSchema:X({type:ge("object"),properties:ur(L(),f_e),required:it(L()).optional()})}),h_e=Sn.extend({mode:ge("url"),message:L(),elicitationId:L(),url:L().url()}),g_e=Ft([m_e,h_e]),v_e=Rr.extend({method:ge("elicitation/create"),params:g_e}),y_e=Ca.extend({elicitationId:L()}),__e=ti.extend({method:ge("notifications/elicitation/complete"),params:y_e}),b_e=Fr.extend({action:Ur(["accept","decline","cancel"]),content:p9(t=>t===null?void 0:t,ur(L(),Ft([L(),Pt(),Lr(),it(L())])).optional())}),S_e=X({type:ge("ref/resource"),uri:L()}),x_e=X({type:ge("ref/prompt"),name:L()}),w_e=Sn.extend({ref:Ft([x_e,S_e]),argument:X({name:L(),value:L()}),context:X({arguments:ur(L(),L()).optional()}).optional()}),E_e=Rr.extend({method:ge("completion/complete"),params:w_e});var k_e=Fr.extend({completion:Ti({values:it(L()).max(100),total:he(Pt().int()),hasMore:he(Lr())})}),T_e=X({uri:L().startsWith("file://"),name:L().optional(),_meta:ur(L(),cr()).optional()}),$_e=Rr.extend({method:ge("roots/list")}),I_e=Fr.extend({roots:it(T_e)}),R_e=ti.extend({method:ge("notifications/roots/list_changed")}),Zje=Ft([y9,eye,E_e,Hye,Iye,kye,uye,dye,mye,yye,bye,Uye,jye,x9,E9,k9]),Bje=Ft([g9,_9,nye,R_e,S9]),Gje=Ft([h9,e_e,t_e,b_e,I_e,w9,T9,b9]),Wje=Ft([y9,Qye,v_e,$_e,x9,E9,k9]),Vje=Ft([g9,_9,Bye,xye,gye,Fye,Nye,S9,__e]),Kje=Ft([h9,rye,k_e,Aye,Tye,lye,pye,hye,P9,zye,w9,T9,b9]);var Jje=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");var Xje=LF(WF(),1),Yje=LF(ude(),1);var zF;(function(t){t.Completable="McpCompletable"})(zF||(zF={}));function N9({prompt:t,options:e}){let{systemPrompt:r,settingSources:n,sandbox:i,...s}=e??{},o,a;r===void 0?o="":typeof r=="string"?o=r:r.type==="preset"&&(a=r.append);let c=s.pathToClaudeCodeExecutable;if(!c){let J=(0,VF.fileURLToPath)(O_e.url),ue=(0,C$.join)(J,"..");c=(0,C$.join)(ue,"cli.js")}process.env.CLAUDE_AGENT_SDK_VERSION="0.1.77";let{abortController:u=JF(),additionalDirectories:l=[],agents:d,allowedTools:p=[],betas:f,canUseTool:m,continue:h,cwd:g,disallowedTools:v=[],tools:y,env:b,executable:S=gq()?"bun":"node",executableArgs:x=[],extraArgs:w={},fallbackModel:E,enableFileCheckpointing:T,forkSession:I,hooks:A,includePartialMessages:N,persistSession:U,maxThinkingTokens:V,maxTurns:j,maxBudgetUsd:ae,mcpServers:Me,model:Le,outputFormat:kt,permissionMode:Ge="default",allowDangerouslySkipPermissions:K=!1,permissionPromptToolName:C,plugins:H,resume:M,resumeSessionAt:k,stderr:R,strictMcpConfig:F}=s,le=kt?.type==="json_schema"?kt.schema:void 0,ce=b;if(ce||(ce={...process.env}),ce.CLAUDE_CODE_ENTRYPOINT||(ce.CLAUDE_CODE_ENTRYPOINT="sdk-ts"),T&&(ce.CLAUDE_CODE_ENABLE_SDK_FILE_CHECKPOINTING="true"),!c)throw new Error("pathToClaudeCodeExecutable is required");let Qe={},Xe=new Map;if(Me)for(let[J,ue]of Object.entries(Me))ue.type==="sdk"&&"instance"in ue?(Xe.set(J,ue.instance),Qe[J]={type:"sdk",name:J}):Qe[J]=ue;let qt=typeof t=="string",P=new A$({abortController:u,additionalDirectories:l,betas:f,cwd:g,executable:S,executableArgs:x,extraArgs:w,pathToClaudeCodeExecutable:c,env:ce,forkSession:I,stderr:R,maxThinkingTokens:V,maxTurns:j,maxBudgetUsd:ae,model:Le,fallbackModel:E,jsonSchema:le,permissionMode:Ge,allowDangerouslySkipPermissions:K,permissionPromptToolName:C,continueConversation:h,resume:M,resumeSessionAt:k,settingSources:n??[],allowedTools:p,disallowedTools:v,tools:y,mcpServers:Qe,strictMcpConfig:F,canUseTool:!!m,hooks:!!A,includePartialMessages:N,persistSession:U,plugins:H,sandbox:i,spawnClaudeCodeProcess:s.spawnClaudeCodeProcess}),D={systemPrompt:o,appendSystemPrompt:a,agents:d},Z=new D$(P,qt,m,A,u,Xe,le,D);return typeof t=="string"?P.write(ns({type:"user",session_id:"",message:{role:"user",content:[{type:"text",text:t}]},parent_tool_use_id:null})+` +`):Z.streamInput(t),Z}var fy=class{dbManager;sessionManager;constructor(e,r){this.dbManager=e,this.sessionManager=r}async startSession(e,r){let n={lastCwd:void 0},i=this.findClaudeExecutable(),s=e.modelOverride||this.getModelId(),o=["Bash","Read","Write","Edit","Grep","Glob","WebFetch","WebSearch","Task","NotebookEdit","AskUserQuestion","TodoWrite"],a=this.createMessageGenerator(e,n),c=!!e.memorySessionId,u=c&&e.lastPromptNumber>1&&!e.forceInit;e.forceInit&&(_.info("SDK","forceInit flag set, starting fresh SDK session",{sessionDbId:e.sessionDbId,previousMemorySessionId:e.memorySessionId}),e.forceInit=!1);let l=ve.loadFromFile(vt),d=parseInt(l.CLAUDE_MEM_MAX_CONCURRENT_AGENTS,10)||2;await V6(d);let p=Bi(DM()),f=dg();if(_.info("SDK","Starting SDK query",{sessionDbId:e.sessionDbId,contentSessionId:e.contentSessionId,memorySessionId:e.memorySessionId,hasRealMemorySessionId:c,shouldResume:u,resume_parameter:u?e.memorySessionId:"(none - fresh start)",lastPromptNumber:e.lastPromptNumber,authMethod:f}),e.lastPromptNumber>1)_.debug("SDK",`[ALIGNMENT] Resume Decision | contentSessionId=${e.contentSessionId} | memorySessionId=${e.memorySessionId} | prompt#=${e.lastPromptNumber} | hasRealMemorySessionId=${c} | shouldResume=${u} | resumeWith=${u?e.memorySessionId:"NONE"}`);else{let g=c;_.debug("SDK",`[ALIGNMENT] First Prompt (INIT) | contentSessionId=${e.contentSessionId} | prompt#=${e.lastPromptNumber} | hasStaleMemoryId=${g} | action=START_FRESH | Will capture new memorySessionId from SDK response`),g&&_.warn("SDK",`Skipping resume for INIT prompt despite existing memorySessionId=${e.memorySessionId} - SDK context was lost (worker restart or crash recovery)`)}jr(ug);let m=N9({prompt:a,options:{model:s,cwd:ug,...u&&{resume:e.memorySessionId},disallowedTools:o,abortController:e.abortController,pathToClaudeCodeExecutable:i,spawnClaudeCodeProcess:K6(e.sessionDbId),env:p}});try{for await(let g of m){if(g.session_id&&g.session_id!==e.memorySessionId){let v=e.memorySessionId;e.memorySessionId=g.session_id,this.dbManager.getSessionStore().ensureMemorySessionIdRegistered(e.sessionDbId,g.session_id);let y=this.dbManager.getSessionStore().getSessionById(e.sessionDbId),b=y?.memory_session_id===g.session_id,S=v?`MEMORY_ID_CHANGED | sessionDbId=${e.sessionDbId} | from=${v} | to=${g.session_id} | dbVerified=${b}`:`MEMORY_ID_CAPTURED | sessionDbId=${e.sessionDbId} | memorySessionId=${g.session_id} | dbVerified=${b}`;_.info("SESSION",S,{sessionId:e.sessionDbId,memorySessionId:g.session_id,previousId:v}),b||_.error("SESSION",`MEMORY_ID_MISMATCH | sessionDbId=${e.sessionDbId} | expected=${g.session_id} | got=${y?.memory_session_id}`,{sessionId:e.sessionDbId}),_.debug("SDK",`[ALIGNMENT] ${v?"Updated":"Captured"} | contentSessionId=${e.contentSessionId} \u2192 memorySessionId=${g.session_id} | Future prompts will resume with this ID`)}if(g.type==="assistant"){let v=g.message.content,y=Array.isArray(v)?v.filter(T=>T.type==="text").map(T=>T.text).join(` +`):typeof v=="string"?v:"";if(y.includes("prompt is too long")||y.includes("context window")){_.error("SDK","Context overflow detected - terminating session"),e.abortController.abort();return}let b=y.length,S=e.cumulativeInputTokens+e.cumulativeOutputTokens,x=g.message.usage;x&&(e.cumulativeInputTokens+=x.input_tokens||0,e.cumulativeOutputTokens+=x.output_tokens||0,x.cache_creation_input_tokens&&(e.cumulativeInputTokens+=x.cache_creation_input_tokens),_.debug("SDK","Token usage captured",{sessionId:e.sessionDbId,inputTokens:x.input_tokens,outputTokens:x.output_tokens,cacheCreation:x.cache_creation_input_tokens||0,cacheRead:x.cache_read_input_tokens||0,cumulativeInput:e.cumulativeInputTokens,cumulativeOutput:e.cumulativeOutputTokens}));let w=e.cumulativeInputTokens+e.cumulativeOutputTokens-S,E=e.earliestPendingTimestamp;if(b>0){let T=b>100?y.substring(0,100)+"...":y;_.dataOut("SDK",`Response received (${b} chars)`,{sessionId:e.sessionDbId,promptNumber:e.lastPromptNumber},T)}if(typeof y=="string"&&y.includes("Prompt is too long"))throw new Error("Claude session context overflow: prompt is too long");if(typeof y=="string"&&y.includes("Invalid API key"))throw new Error("Invalid API key: check your API key configuration in ~/.claude-mem/settings.json or ~/.claude-mem/.env");await wi(y,e,this.dbManager,this.sessionManager,r,w,E,"SDK",n.lastCwd,s)}g.type==="result"&&g.subtype}}finally{let g=To(e.sessionDbId);g&&g.process.exitCode===null&&await $o(g,5e3)}let h=Date.now()-e.startTime;_.success("SDK","Agent completed",{sessionId:e.sessionDbId,duration:`${(h/1e3).toFixed(1)}s`})}async*createMessageGenerator(e,r){let n=He.getInstance().getActiveMode(),i=e.lastPromptNumber===1;_.info("SDK","Creating message generator",{sessionDbId:e.sessionDbId,contentSessionId:e.contentSessionId,lastPromptNumber:e.lastPromptNumber,isInitPrompt:i,promptType:i?"INIT":"CONTINUATION"});let s=i?bu(e.project,e.contentSessionId,e.userPrompt,n):wu(e.userPrompt,e.lastPromptNumber,e.contentSessionId,n);e.conversationHistory.push({role:"user",content:s}),yield{type:"user",message:{role:"user",content:s},session_id:e.contentSessionId,parent_tool_use_id:null,isSynthetic:!0};for await(let o of this.sessionManager.getMessageIterator(e.sessionDbId))if(e.processingMessageIds.push(o._persistentId),o.cwd&&(r.lastCwd=o.cwd),o.type==="observation"){o.prompt_number!==void 0&&(e.lastPromptNumber=o.prompt_number);let a=Su({id:0,tool_name:o.tool_name,tool_input:JSON.stringify(o.tool_input),tool_output:JSON.stringify(o.tool_response),created_at_epoch:Date.now(),cwd:o.cwd});e.conversationHistory.push({role:"user",content:a}),yield{type:"user",message:{role:"user",content:a},session_id:e.contentSessionId,parent_tool_use_id:null,isSynthetic:!0}}else if(o.type==="summarize"){let a=xu({id:e.sessionDbId,memory_session_id:e.memorySessionId,project:e.project,user_prompt:e.userPrompt,last_assistant_message:o.last_assistant_message||""},n);e.conversationHistory.push({role:"user",content:a}),yield{type:"user",message:{role:"user",content:a},session_id:e.contentSessionId,parent_tool_use_id:null,isSynthetic:!0}}}findClaudeExecutable(){let e=ve.loadFromFile(vt);if(e.CLAUDE_CODE_PATH){let{existsSync:r}=require("fs");if(!r(e.CLAUDE_CODE_PATH))throw new Error(`CLAUDE_CODE_PATH is set to "${e.CLAUDE_CODE_PATH}" but the file does not exist.`);return e.CLAUDE_CODE_PATH}if(process.platform==="win32")try{return(0,hI.execSync)("where claude.cmd",{encoding:"utf8",windowsHide:!0,stdio:["ignore","pipe","ignore"]}),"claude.cmd"}catch{}try{let r=(0,hI.execSync)(process.platform==="win32"?"where claude":"which claude",{encoding:"utf8",windowsHide:!0,stdio:["ignore","pipe","ignore"]}).trim().split(` `)[0].trim();if(r)return r}catch(r){_.debug("SDK","Claude executable auto-detection failed",{},r)}throw new Error(`Claude executable not found. Please either: 1. Add "claude" to your system PATH, or -2. Set CLAUDE_CODE_PATH in ~/.claude-mem/settings.json`)}getModelId(){let e=m9.default.join((0,f9.homedir)(),".claude-mem","settings.json");return Se.loadFromFile(e).CLAUDE_MEM_MODEL}};var sy=Pe(require("path"),1),oy=require("os");re();rr();Qr();var l_e="https://generativelanguage.googleapis.com/v1/models",d_e={"gemini-2.5-flash-lite":10,"gemini-2.5-flash":10,"gemini-2.5-pro":5,"gemini-2.0-flash":15,"gemini-2.0-flash-lite":30,"gemini-3-flash":10,"gemini-3-flash-preview":5},h9=0;async function p_e(t,e){if(!e)return;let r=d_e[t]||5,n=Math.ceil(6e4/r)+100,s=Date.now()-h9;if(ssetTimeout(a,o))}h9=Date.now()}var iy=class{dbManager;sessionManager;fallbackAgent=null;constructor(e,r){this.dbManager=e,this.sessionManager=r}setFallbackAgent(e){this.fallbackAgent=e}async startSession(e,r){try{let{apiKey:n,model:i,rateLimitingEnabled:s}=this.getGeminiConfig();if(!n)throw new Error("Gemini API key not configured. Set CLAUDE_MEM_GEMINI_API_KEY in settings or GEMINI_API_KEY environment variable.");if(!e.memorySessionId){let d=`gemini-${e.contentSessionId}-${Date.now()}`;e.memorySessionId=d,this.dbManager.getSessionStore().updateMemorySessionId(e.sessionDbId,d),_.info("SESSION",`MEMORY_ID_GENERATED | sessionDbId=${e.sessionDbId} | provider=Gemini`)}let o=He.getInstance().getActiveMode(),a=e.lastPromptNumber===1?au(e.project,e.contentSessionId,e.userPrompt,o):lu(e.userPrompt,e.lastPromptNumber,e.contentSessionId,o);e.conversationHistory.push({role:"user",content:a});let c=await this.queryGeminiMultiTurn(e.conversationHistory,n,i,s);if(c.content){e.conversationHistory.push({role:"assistant",content:c.content});let d=c.tokensUsed||0;e.cumulativeInputTokens+=Math.floor(d*.7),e.cumulativeOutputTokens+=Math.floor(d*.3),await _i(c.content,e,this.dbManager,this.sessionManager,r,d,null,"Gemini")}else _.error("SDK","Empty Gemini init response - session may lack context",{sessionId:e.sessionDbId,model:i});let u;for await(let d of this.sessionManager.getMessageIterator(e.sessionDbId)){e.processingMessageIds.push(d._persistentId),d.cwd&&(u=d.cwd);let p=e.earliestPendingTimestamp;if(d.type==="observation"){if(d.prompt_number!==void 0&&(e.lastPromptNumber=d.prompt_number),!e.memorySessionId)throw new Error("Cannot process observations: memorySessionId not yet captured. This session may need to be reinitialized.");let f=cu({id:0,tool_name:d.tool_name,tool_input:JSON.stringify(d.tool_input),tool_output:JSON.stringify(d.tool_response),created_at_epoch:p??Date.now(),cwd:d.cwd});e.conversationHistory.push({role:"user",content:f});let m=await this.queryGeminiMultiTurn(e.conversationHistory,n,i,s),h=0;m.content&&(e.conversationHistory.push({role:"assistant",content:m.content}),h=m.tokensUsed||0,e.cumulativeInputTokens+=Math.floor(h*.7),e.cumulativeOutputTokens+=Math.floor(h*.3)),m.content?await _i(m.content,e,this.dbManager,this.sessionManager,r,h,p,"Gemini",u):_.warn("SDK","Empty Gemini observation response, skipping processing to preserve message",{sessionId:e.sessionDbId,messageId:e.processingMessageIds[e.processingMessageIds.length-1]})}else if(d.type==="summarize"){if(!e.memorySessionId)throw new Error("Cannot process summary: memorySessionId not yet captured. This session may need to be reinitialized.");let f=uu({id:e.sessionDbId,memory_session_id:e.memorySessionId,project:e.project,user_prompt:e.userPrompt,last_assistant_message:d.last_assistant_message||""},o);e.conversationHistory.push({role:"user",content:f});let m=await this.queryGeminiMultiTurn(e.conversationHistory,n,i,s),h=0;m.content&&(e.conversationHistory.push({role:"assistant",content:m.content}),h=m.tokensUsed||0,e.cumulativeInputTokens+=Math.floor(h*.7),e.cumulativeOutputTokens+=Math.floor(h*.3)),m.content?await _i(m.content,e,this.dbManager,this.sessionManager,r,h,p,"Gemini",u):_.warn("SDK","Empty Gemini summary response, skipping processing to preserve message",{sessionId:e.sessionDbId,messageId:e.processingMessageIds[e.processingMessageIds.length-1]})}}let l=Date.now()-e.startTime;_.success("SDK","Gemini agent completed",{sessionId:e.sessionDbId,duration:`${(l/1e3).toFixed(1)}s`,historyLength:e.conversationHistory.length})}catch(n){if(Pp(n))throw _.warn("SDK","Gemini agent aborted",{sessionId:e.sessionDbId}),n;if(Cp(n)&&this.fallbackAgent)return _.warn("SDK","Gemini API failed, falling back to Claude SDK",{sessionDbId:e.sessionDbId,error:n instanceof Error?n.message:String(n),historyLength:e.conversationHistory.length}),this.fallbackAgent.startSession(e,r);throw _.failure("SDK","Gemini agent error",{sessionDbId:e.sessionDbId},n),n}}conversationToGeminiContents(e){return e.map(r=>({role:r.role==="assistant"?"model":"user",parts:[{text:r.content}]}))}async queryGeminiMultiTurn(e,r,n,i){let s=this.conversationToGeminiContents(e),o=e.reduce((p,f)=>p+f.content.length,0);_.debug("SDK",`Querying Gemini multi-turn (${n})`,{turns:e.length,totalChars:o});let a=`${l_e}/${n}:generateContent?key=${r}`;await p_e(n,i);let c=await fetch(a,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contents:s,generationConfig:{temperature:.3,maxOutputTokens:4096}})});if(!c.ok){let p=await c.text();throw new Error(`Gemini API error: ${c.status} - ${p}`)}let u=await c.json();if(!u.candidates?.[0]?.content?.parts?.[0]?.text)return _.error("SDK","Empty response from Gemini"),{content:""};let l=u.candidates[0].content.parts[0].text,d=u.usageMetadata?.totalTokenCount;return{content:l,tokensUsed:d}}getGeminiConfig(){let e=sy.default.join((0,oy.homedir)(),".claude-mem","settings.json"),r=Se.loadFromFile(e),n=r.CLAUDE_MEM_GEMINI_API_KEY||Rc("GEMINI_API_KEY")||"",i="gemini-2.5-flash",s=r.CLAUDE_MEM_GEMINI_MODEL||i,o=["gemini-2.5-flash-lite","gemini-2.5-flash","gemini-2.5-pro","gemini-2.0-flash","gemini-2.0-flash-lite","gemini-3-flash","gemini-3-flash-preview"],a;o.includes(s)?a=s:(_.warn("SDK",`Invalid Gemini model "${s}", falling back to ${i}`,{configured:s,validModels:o}),a=i);let c=r.CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED!=="false";return{apiKey:n,model:a,rateLimitingEnabled:c}}};function wa(){let t=sy.default.join((0,oy.homedir)(),".claude-mem","settings.json");return!!(Se.loadFromFile(t).CLAUDE_MEM_GEMINI_API_KEY||Rc("GEMINI_API_KEY"))}function Mu(){let t=sy.default.join((0,oy.homedir)(),".claude-mem","settings.json");return Se.loadFromFile(t).CLAUDE_MEM_PROVIDER==="gemini"}rr();zt();re();Qr();var f_e="https://openrouter.ai/api/v1/chat/completions",m_e=20,h_e=1e5,g_e=4,ay=class{dbManager;sessionManager;fallbackAgent=null;constructor(e,r){this.dbManager=e,this.sessionManager=r}setFallbackAgent(e){this.fallbackAgent=e}async startSession(e,r){try{let{apiKey:n,model:i,siteUrl:s,appName:o}=this.getOpenRouterConfig();if(!n)throw new Error("OpenRouter API key not configured. Set CLAUDE_MEM_OPENROUTER_API_KEY in settings or OPENROUTER_API_KEY environment variable.");if(!e.memorySessionId){let p=`openrouter-${e.contentSessionId}-${Date.now()}`;e.memorySessionId=p,this.dbManager.getSessionStore().updateMemorySessionId(e.sessionDbId,p),_.info("SESSION",`MEMORY_ID_GENERATED | sessionDbId=${e.sessionDbId} | provider=OpenRouter`)}let a=He.getInstance().getActiveMode(),c=e.lastPromptNumber===1?au(e.project,e.contentSessionId,e.userPrompt,a):lu(e.userPrompt,e.lastPromptNumber,e.contentSessionId,a);e.conversationHistory.push({role:"user",content:c});let u=await this.queryOpenRouterMultiTurn(e.conversationHistory,n,i,s,o);if(u.content){let p=u.tokensUsed||0;e.cumulativeInputTokens+=Math.floor(p*.7),e.cumulativeOutputTokens+=Math.floor(p*.3),await _i(u.content,e,this.dbManager,this.sessionManager,r,p,null,"OpenRouter",void 0)}else _.error("SDK","Empty OpenRouter init response - session may lack context",{sessionId:e.sessionDbId,model:i});let l;for await(let p of this.sessionManager.getMessageIterator(e.sessionDbId)){e.processingMessageIds.push(p._persistentId),p.cwd&&(l=p.cwd);let f=e.earliestPendingTimestamp;if(p.type==="observation"){if(p.prompt_number!==void 0&&(e.lastPromptNumber=p.prompt_number),!e.memorySessionId)throw new Error("Cannot process observations: memorySessionId not yet captured. This session may need to be reinitialized.");let m=cu({id:0,tool_name:p.tool_name,tool_input:JSON.stringify(p.tool_input),tool_output:JSON.stringify(p.tool_response),created_at_epoch:f??Date.now(),cwd:p.cwd});e.conversationHistory.push({role:"user",content:m});let h=await this.queryOpenRouterMultiTurn(e.conversationHistory,n,i,s,o),g=0;h.content&&(g=h.tokensUsed||0,e.cumulativeInputTokens+=Math.floor(g*.7),e.cumulativeOutputTokens+=Math.floor(g*.3)),await _i(h.content||"",e,this.dbManager,this.sessionManager,r,g,f,"OpenRouter",l)}else if(p.type==="summarize"){if(!e.memorySessionId)throw new Error("Cannot process summary: memorySessionId not yet captured. This session may need to be reinitialized.");let m=uu({id:e.sessionDbId,memory_session_id:e.memorySessionId,project:e.project,user_prompt:e.userPrompt,last_assistant_message:p.last_assistant_message||""},a);e.conversationHistory.push({role:"user",content:m});let h=await this.queryOpenRouterMultiTurn(e.conversationHistory,n,i,s,o),g=0;h.content&&(g=h.tokensUsed||0,e.cumulativeInputTokens+=Math.floor(g*.7),e.cumulativeOutputTokens+=Math.floor(g*.3)),await _i(h.content||"",e,this.dbManager,this.sessionManager,r,g,f,"OpenRouter",l)}}let d=Date.now()-e.startTime;_.success("SDK","OpenRouter agent completed",{sessionId:e.sessionDbId,duration:`${(d/1e3).toFixed(1)}s`,historyLength:e.conversationHistory.length,model:i})}catch(n){if(Pp(n))throw _.warn("SDK","OpenRouter agent aborted",{sessionId:e.sessionDbId}),n;if(Cp(n)&&this.fallbackAgent)return _.warn("SDK","OpenRouter API failed, falling back to Claude SDK",{sessionDbId:e.sessionDbId,error:n instanceof Error?n.message:String(n),historyLength:e.conversationHistory.length}),this.fallbackAgent.startSession(e,r);throw _.failure("SDK","OpenRouter agent error",{sessionDbId:e.sessionDbId},n),n}}estimateTokens(e){return Math.ceil(e.length/g_e)}truncateHistory(e){let r=Se.loadFromFile(jt),n=parseInt(r.CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES)||m_e,i=parseInt(r.CLAUDE_MEM_OPENROUTER_MAX_TOKENS)||h_e;if(e.length<=n&&e.reduce((c,u)=>c+this.estimateTokens(u.content),0)<=i)return e;let s=[],o=0;for(let a=e.length-1;a>=0;a--){let c=e[a],u=this.estimateTokens(c.content);if(s.length>=n||o+u>i){_.warn("SDK","Context window truncated to prevent runaway costs",{originalMessages:e.length,keptMessages:s.length,droppedMessages:a+1,estimatedTokens:o,tokenLimit:i});break}s.unshift(c),o+=u}return s}conversationToOpenAIMessages(e){return e.map(r=>({role:r.role==="assistant"?"assistant":"user",content:r.content}))}async queryOpenRouterMultiTurn(e,r,n,i,s){let o=this.truncateHistory(e),a=this.conversationToOpenAIMessages(o),c=o.reduce((m,h)=>m+h.content.length,0),u=this.estimateTokens(o.map(m=>m.content).join(""));_.debug("SDK",`Querying OpenRouter multi-turn (${n})`,{turns:o.length,totalChars:c,estimatedTokens:u});let l=await fetch(f_e,{method:"POST",headers:{Authorization:`Bearer ${r}`,"HTTP-Referer":i||"https://github.com/thedotmack/claude-mem","X-Title":s||"claude-mem","Content-Type":"application/json"},body:JSON.stringify({model:n,messages:a,temperature:.3,max_tokens:4096})});if(!l.ok){let m=await l.text();throw new Error(`OpenRouter API error: ${l.status} - ${m}`)}let d=await l.json();if(d.error)throw new Error(`OpenRouter API error: ${d.error.code} - ${d.error.message}`);if(!d.choices?.[0]?.message?.content)return _.error("SDK","Empty response from OpenRouter"),{content:""};let p=d.choices[0].message.content,f=d.usage?.total_tokens;if(f){let m=d.usage?.prompt_tokens||0,h=d.usage?.completion_tokens||0,g=m/1e6*3+h/1e6*15;_.info("SDK","OpenRouter API usage",{model:n,inputTokens:m,outputTokens:h,totalTokens:f,estimatedCostUSD:g.toFixed(4),messagesInContext:o.length}),f>5e4&&_.warn("SDK","High token usage detected - consider reducing context",{totalTokens:f,estimatedCost:g.toFixed(4)})}return{content:p,tokensUsed:f}}getOpenRouterConfig(){let e=jt,r=Se.loadFromFile(e),n=r.CLAUDE_MEM_OPENROUTER_API_KEY||Rc("OPENROUTER_API_KEY")||"",i=r.CLAUDE_MEM_OPENROUTER_MODEL||"xiaomi/mimo-v2-flash:free",s=r.CLAUDE_MEM_OPENROUTER_SITE_URL||"",o=r.CLAUDE_MEM_OPENROUTER_APP_NAME||"claude-mem";return{apiKey:n,model:i,siteUrl:s,appName:o}}};function Ea(){let t=jt;return!!(Se.loadFromFile(t).CLAUDE_MEM_OPENROUTER_API_KEY||Rc("OPENROUTER_API_KEY"))}function Du(){let t=jt;return Se.loadFromFile(t).CLAUDE_MEM_PROVIDER==="openrouter"}re();var cy=class{dbManager;constructor(e){this.dbManager=e}stripProjectPath(e,r){let n=`/${r}/`,i=e.indexOf(n);return i!==-1?e.substring(i+n.length):e}stripProjectPaths(e,r){if(!e)return e;try{let i=JSON.parse(e).map(s=>this.stripProjectPath(s,r));return JSON.stringify(i)}catch(n){return _.debug("WORKER","File paths is plain string, using as-is",{},n),e}}sanitizeObservation(e){return{...e,files_read:this.stripProjectPaths(e.files_read,e.project),files_modified:this.stripProjectPaths(e.files_modified,e.project)}}getObservations(e,r,n){let i=this.paginate("observations","id, memory_session_id, project, type, title, subtitle, narrative, text, facts, concepts, files_read, files_modified, prompt_number, created_at, created_at_epoch",e,r,n);return{...i,items:i.items.map(s=>this.sanitizeObservation(s))}}getSummaries(e,r,n){let i=this.dbManager.getSessionStore().db,s=` +2. Set CLAUDE_CODE_PATH in ~/.claude-mem/settings.json`)}getModelId(){let e=D9.default.join((0,M9.homedir)(),".claude-mem","settings.json");return ve.loadFromFile(e).CLAUDE_MEM_MODEL}};var hy=Pe(require("path"),1),gy=require("os");re();tr();It();js();tn();var C_e="https://generativelanguage.googleapis.com/v1/models",P_e={"gemini-2.5-flash-lite":10,"gemini-2.5-flash":10,"gemini-2.5-pro":5,"gemini-2.0-flash":15,"gemini-2.0-flash-lite":30,"gemini-3-flash":10,"gemini-3-flash-preview":5},j9=0,A_e=20,N_e=1e5;async function M_e(t,e){if(!e)return;let r=P_e[t]||5,n=Math.ceil(6e4/r)+100,s=Date.now()-j9;if(ssetTimeout(a,o))}j9=Date.now()}var my=class{dbManager;sessionManager;fallbackAgent=null;constructor(e,r){this.dbManager=e,this.sessionManager=r}setFallbackAgent(e){this.fallbackAgent=e}async startSession(e,r){try{let{apiKey:n,model:i,rateLimitingEnabled:s}=this.getGeminiConfig();if(!n)throw new Error("Gemini API key not configured. Set CLAUDE_MEM_GEMINI_API_KEY in settings or GEMINI_API_KEY environment variable.");if(!e.memorySessionId){let d=`gemini-${e.contentSessionId}-${Date.now()}`;e.memorySessionId=d,this.dbManager.getSessionStore().updateMemorySessionId(e.sessionDbId,d),_.info("SESSION",`MEMORY_ID_GENERATED | sessionDbId=${e.sessionDbId} | provider=Gemini`)}let o=He.getInstance().getActiveMode(),a=e.lastPromptNumber===1?bu(e.project,e.contentSessionId,e.userPrompt,o):wu(e.userPrompt,e.lastPromptNumber,e.contentSessionId,o);e.conversationHistory.push({role:"user",content:a});let c=await this.queryGeminiMultiTurn(e.conversationHistory,n,i,s);if(c.content){e.conversationHistory.push({role:"assistant",content:c.content});let d=c.tokensUsed||0;e.cumulativeInputTokens+=Math.floor(d*.7),e.cumulativeOutputTokens+=Math.floor(d*.3),await wi(c.content,e,this.dbManager,this.sessionManager,r,d,null,"Gemini",void 0,i)}else _.error("SDK","Empty Gemini init response - session may lack context",{sessionId:e.sessionDbId,model:i});let u;for await(let d of this.sessionManager.getMessageIterator(e.sessionDbId)){e.processingMessageIds.push(d._persistentId),d.cwd&&(u=d.cwd);let p=e.earliestPendingTimestamp;if(d.type==="observation"){if(d.prompt_number!==void 0&&(e.lastPromptNumber=d.prompt_number),!e.memorySessionId)throw new Error("Cannot process observations: memorySessionId not yet captured. This session may need to be reinitialized.");let f=Su({id:0,tool_name:d.tool_name,tool_input:JSON.stringify(d.tool_input),tool_output:JSON.stringify(d.tool_response),created_at_epoch:p??Date.now(),cwd:d.cwd});e.conversationHistory.push({role:"user",content:f});let m=await this.queryGeminiMultiTurn(e.conversationHistory,n,i,s),h=0;m.content&&(e.conversationHistory.push({role:"assistant",content:m.content}),h=m.tokensUsed||0,e.cumulativeInputTokens+=Math.floor(h*.7),e.cumulativeOutputTokens+=Math.floor(h*.3)),m.content?await wi(m.content,e,this.dbManager,this.sessionManager,r,h,p,"Gemini",u,i):_.warn("SDK","Empty Gemini observation response, skipping processing to preserve message",{sessionId:e.sessionDbId,messageId:e.processingMessageIds[e.processingMessageIds.length-1]})}else if(d.type==="summarize"){if(!e.memorySessionId)throw new Error("Cannot process summary: memorySessionId not yet captured. This session may need to be reinitialized.");let f=xu({id:e.sessionDbId,memory_session_id:e.memorySessionId,project:e.project,user_prompt:e.userPrompt,last_assistant_message:d.last_assistant_message||""},o);e.conversationHistory.push({role:"user",content:f});let m=await this.queryGeminiMultiTurn(e.conversationHistory,n,i,s),h=0;m.content&&(e.conversationHistory.push({role:"assistant",content:m.content}),h=m.tokensUsed||0,e.cumulativeInputTokens+=Math.floor(h*.7),e.cumulativeOutputTokens+=Math.floor(h*.3)),m.content?await wi(m.content,e,this.dbManager,this.sessionManager,r,h,p,"Gemini",u,i):_.warn("SDK","Empty Gemini summary response, skipping processing to preserve message",{sessionId:e.sessionDbId,messageId:e.processingMessageIds[e.processingMessageIds.length-1]})}}let l=Date.now()-e.startTime;_.success("SDK","Gemini agent completed",{sessionId:e.sessionDbId,duration:`${(l/1e3).toFixed(1)}s`,historyLength:e.conversationHistory.length})}catch(n){if(Wp(n))throw _.warn("SDK","Gemini agent aborted",{sessionId:e.sessionDbId}),n;if(Gp(n)&&this.fallbackAgent)return _.warn("SDK","Gemini API failed, falling back to Claude SDK",{sessionDbId:e.sessionDbId,error:n instanceof Error?n.message:String(n),historyLength:e.conversationHistory.length}),this.fallbackAgent.startSession(e,r);throw _.failure("SDK","Gemini agent error",{sessionDbId:e.sessionDbId},n),n}}truncateHistory(e){let r=ve.loadFromFile(vt),n=parseInt(r.CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES)||A_e,i=parseInt(r.CLAUDE_MEM_GEMINI_MAX_TOKENS)||N_e;if(e.length<=n&&e.reduce((c,u)=>c+Ms(u.content),0)<=i)return e;let s=[],o=0;for(let a=e.length-1;a>=0;a--){let c=e[a],u=Ms(c.content);if(s.length>0&&(s.length>=n||o+u>i)){_.warn("SDK","Context window truncated to prevent runaway costs",{originalMessages:e.length,keptMessages:s.length,droppedMessages:a+1,estimatedTokens:o,tokenLimit:i});break}s.unshift(c),o+=u}return s}conversationToGeminiContents(e){return e.map(r=>({role:r.role==="assistant"?"model":"user",parts:[{text:r.content}]}))}async queryGeminiMultiTurn(e,r,n,i){let s=this.truncateHistory(e),o=this.conversationToGeminiContents(s),a=s.reduce((f,m)=>f+m.content.length,0);_.debug("SDK",`Querying Gemini multi-turn (${n})`,{turns:s.length,totalTurns:e.length,totalChars:a});let c=`${C_e}/${n}:generateContent?key=${r}`;await M_e(n,i);let u=await fetch(c,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contents:o,generationConfig:{temperature:.3,maxOutputTokens:4096}})});if(!u.ok){let f=await u.text();throw new Error(`Gemini API error: ${u.status} - ${f}`)}let l=await u.json();if(!l.candidates?.[0]?.content?.parts?.[0]?.text)return _.error("SDK","Empty response from Gemini"),{content:""};let d=l.candidates[0].content.parts[0].text,p=l.usageMetadata?.totalTokenCount;return{content:d,tokensUsed:p}}getGeminiConfig(){let e=hy.default.join((0,gy.homedir)(),".claude-mem","settings.json"),r=ve.loadFromFile(e),n=r.CLAUDE_MEM_GEMINI_API_KEY||Lc("GEMINI_API_KEY")||"",i="gemini-2.5-flash",s=r.CLAUDE_MEM_GEMINI_MODEL||i,o=["gemini-2.5-flash-lite","gemini-2.5-flash","gemini-2.5-pro","gemini-2.0-flash","gemini-2.0-flash-lite","gemini-3-flash","gemini-3-flash-preview"],a;o.includes(s)?a=s:(_.warn("SDK",`Invalid Gemini model "${s}", falling back to ${i}`,{configured:s,validModels:o}),a=i);let c=r.CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED!=="false";return{apiKey:n,model:a,rateLimitingEnabled:c}}};function Pa(){let t=hy.default.join((0,gy.homedir)(),".claude-mem","settings.json");return!!(ve.loadFromFile(t).CLAUDE_MEM_GEMINI_API_KEY||Lc("GEMINI_API_KEY"))}function Wu(){let t=hy.default.join((0,gy.homedir)(),".claude-mem","settings.json");return ve.loadFromFile(t).CLAUDE_MEM_PROVIDER==="gemini"}tr();It();re();tn();var D_e="https://openrouter.ai/api/v1/chat/completions",j_e=20,z_e=1e5,L_e=4,vy=class{dbManager;sessionManager;fallbackAgent=null;constructor(e,r){this.dbManager=e,this.sessionManager=r}setFallbackAgent(e){this.fallbackAgent=e}async startSession(e,r){try{let{apiKey:n,model:i,siteUrl:s,appName:o}=this.getOpenRouterConfig();if(!n)throw new Error("OpenRouter API key not configured. Set CLAUDE_MEM_OPENROUTER_API_KEY in settings or OPENROUTER_API_KEY environment variable.");if(!e.memorySessionId){let p=`openrouter-${e.contentSessionId}-${Date.now()}`;e.memorySessionId=p,this.dbManager.getSessionStore().updateMemorySessionId(e.sessionDbId,p),_.info("SESSION",`MEMORY_ID_GENERATED | sessionDbId=${e.sessionDbId} | provider=OpenRouter`)}let a=He.getInstance().getActiveMode(),c=e.lastPromptNumber===1?bu(e.project,e.contentSessionId,e.userPrompt,a):wu(e.userPrompt,e.lastPromptNumber,e.contentSessionId,a);e.conversationHistory.push({role:"user",content:c});let u=await this.queryOpenRouterMultiTurn(e.conversationHistory,n,i,s,o);if(u.content){let p=u.tokensUsed||0;e.cumulativeInputTokens+=Math.floor(p*.7),e.cumulativeOutputTokens+=Math.floor(p*.3),await wi(u.content,e,this.dbManager,this.sessionManager,r,p,null,"OpenRouter",void 0,i)}else _.error("SDK","Empty OpenRouter init response - session may lack context",{sessionId:e.sessionDbId,model:i});let l;for await(let p of this.sessionManager.getMessageIterator(e.sessionDbId)){e.processingMessageIds.push(p._persistentId),p.cwd&&(l=p.cwd);let f=e.earliestPendingTimestamp;if(p.type==="observation"){if(p.prompt_number!==void 0&&(e.lastPromptNumber=p.prompt_number),!e.memorySessionId)throw new Error("Cannot process observations: memorySessionId not yet captured. This session may need to be reinitialized.");let m=Su({id:0,tool_name:p.tool_name,tool_input:JSON.stringify(p.tool_input),tool_output:JSON.stringify(p.tool_response),created_at_epoch:f??Date.now(),cwd:p.cwd});e.conversationHistory.push({role:"user",content:m});let h=await this.queryOpenRouterMultiTurn(e.conversationHistory,n,i,s,o),g=0;h.content&&(g=h.tokensUsed||0,e.cumulativeInputTokens+=Math.floor(g*.7),e.cumulativeOutputTokens+=Math.floor(g*.3)),await wi(h.content||"",e,this.dbManager,this.sessionManager,r,g,f,"OpenRouter",l,i)}else if(p.type==="summarize"){if(!e.memorySessionId)throw new Error("Cannot process summary: memorySessionId not yet captured. This session may need to be reinitialized.");let m=xu({id:e.sessionDbId,memory_session_id:e.memorySessionId,project:e.project,user_prompt:e.userPrompt,last_assistant_message:p.last_assistant_message||""},a);e.conversationHistory.push({role:"user",content:m});let h=await this.queryOpenRouterMultiTurn(e.conversationHistory,n,i,s,o),g=0;h.content&&(g=h.tokensUsed||0,e.cumulativeInputTokens+=Math.floor(g*.7),e.cumulativeOutputTokens+=Math.floor(g*.3)),await wi(h.content||"",e,this.dbManager,this.sessionManager,r,g,f,"OpenRouter",l,i)}}let d=Date.now()-e.startTime;_.success("SDK","OpenRouter agent completed",{sessionId:e.sessionDbId,duration:`${(d/1e3).toFixed(1)}s`,historyLength:e.conversationHistory.length,model:i})}catch(n){if(Wp(n))throw _.warn("SDK","OpenRouter agent aborted",{sessionId:e.sessionDbId}),n;if(Gp(n)&&this.fallbackAgent)return _.warn("SDK","OpenRouter API failed, falling back to Claude SDK",{sessionDbId:e.sessionDbId,error:n instanceof Error?n.message:String(n),historyLength:e.conversationHistory.length}),this.fallbackAgent.startSession(e,r);throw _.failure("SDK","OpenRouter agent error",{sessionDbId:e.sessionDbId},n),n}}estimateTokens(e){return Math.ceil(e.length/L_e)}truncateHistory(e){let r=ve.loadFromFile(vt),n=parseInt(r.CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES)||j_e,i=parseInt(r.CLAUDE_MEM_OPENROUTER_MAX_TOKENS)||z_e;if(e.length<=n&&e.reduce((c,u)=>c+this.estimateTokens(u.content),0)<=i)return e;let s=[],o=0;for(let a=e.length-1;a>=0;a--){let c=e[a],u=this.estimateTokens(c.content);if(s.length>=n||o+u>i){_.warn("SDK","Context window truncated to prevent runaway costs",{originalMessages:e.length,keptMessages:s.length,droppedMessages:a+1,estimatedTokens:o,tokenLimit:i});break}s.unshift(c),o+=u}return s}conversationToOpenAIMessages(e){return e.map(r=>({role:r.role==="assistant"?"assistant":"user",content:r.content}))}async queryOpenRouterMultiTurn(e,r,n,i,s){let o=this.truncateHistory(e),a=this.conversationToOpenAIMessages(o),c=o.reduce((m,h)=>m+h.content.length,0),u=this.estimateTokens(o.map(m=>m.content).join(""));_.debug("SDK",`Querying OpenRouter multi-turn (${n})`,{turns:o.length,totalChars:c,estimatedTokens:u});let l=await fetch(D_e,{method:"POST",headers:{Authorization:`Bearer ${r}`,"HTTP-Referer":i||"https://github.com/thedotmack/claude-mem","X-Title":s||"claude-mem","Content-Type":"application/json"},body:JSON.stringify({model:n,messages:a,temperature:.3,max_tokens:4096})});if(!l.ok){let m=await l.text();throw new Error(`OpenRouter API error: ${l.status} - ${m}`)}let d=await l.json();if(d.error)throw new Error(`OpenRouter API error: ${d.error.code} - ${d.error.message}`);if(!d.choices?.[0]?.message?.content)return _.error("SDK","Empty response from OpenRouter"),{content:""};let p=d.choices[0].message.content,f=d.usage?.total_tokens;if(f){let m=d.usage?.prompt_tokens||0,h=d.usage?.completion_tokens||0,g=m/1e6*3+h/1e6*15;_.info("SDK","OpenRouter API usage",{model:n,inputTokens:m,outputTokens:h,totalTokens:f,estimatedCostUSD:g.toFixed(4),messagesInContext:o.length}),f>5e4&&_.warn("SDK","High token usage detected - consider reducing context",{totalTokens:f,estimatedCost:g.toFixed(4)})}return{content:p,tokensUsed:f}}getOpenRouterConfig(){let e=vt,r=ve.loadFromFile(e),n=r.CLAUDE_MEM_OPENROUTER_API_KEY||Lc("OPENROUTER_API_KEY")||"",i=r.CLAUDE_MEM_OPENROUTER_MODEL||"xiaomi/mimo-v2-flash:free",s=r.CLAUDE_MEM_OPENROUTER_SITE_URL||"",o=r.CLAUDE_MEM_OPENROUTER_APP_NAME||"claude-mem";return{apiKey:n,model:i,siteUrl:s,appName:o}}};function Aa(){let t=vt;return!!(ve.loadFromFile(t).CLAUDE_MEM_OPENROUTER_API_KEY||Lc("OPENROUTER_API_KEY"))}function Vu(){let t=vt;return ve.loadFromFile(t).CLAUDE_MEM_PROVIDER==="openrouter"}re();var yy=class{dbManager;constructor(e){this.dbManager=e}stripProjectPath(e,r){let n=`/${r}/`,i=e.indexOf(n);return i!==-1?e.substring(i+n.length):e}stripProjectPaths(e,r){if(!e)return e;try{let i=JSON.parse(e).map(s=>this.stripProjectPath(s,r));return JSON.stringify(i)}catch(n){return _.debug("WORKER","File paths is plain string, using as-is",{},n),e}}sanitizeObservation(e){return{...e,files_read:this.stripProjectPaths(e.files_read,e.project),files_modified:this.stripProjectPaths(e.files_modified,e.project)}}getObservations(e,r,n,i){let s=this.dbManager.getSessionStore().db,o=` + SELECT + o.id, + o.memory_session_id, + o.project, + COALESCE(s.platform_source, 'claude') as platform_source, + o.type, + o.title, + o.subtitle, + o.narrative, + o.text, + o.facts, + o.concepts, + o.files_read, + o.files_modified, + o.prompt_number, + o.created_at, + o.created_at_epoch + FROM observations o + LEFT JOIN sdk_sessions s ON o.memory_session_id = s.memory_session_id + `,a=[],c=[];n&&(c.push("o.project = ?"),a.push(n)),i&&(c.push("COALESCE(s.platform_source, 'claude') = ?"),a.push(i)),c.length>0&&(o+=` WHERE ${c.join(" AND ")}`),o+=" ORDER BY o.created_at_epoch DESC LIMIT ? OFFSET ?",a.push(r+1,e);let u=s.prepare(o).all(...a),l={items:u.slice(0,r),hasMore:u.length>r,offset:e,limit:r};return{...l,items:l.items.map(d=>this.sanitizeObservation(d))}}getSummaries(e,r,n,i){let s=this.dbManager.getSessionStore().db,o=` SELECT ss.id, s.content_session_id as session_id, + COALESCE(s.platform_source, 'claude') as platform_source, ss.request, ss.investigated, ss.learned, @@ -1398,17 +1526,25 @@ ${n}`}function Pue(t,e){let r=Zt.default.resolve(t);if(r.includes("/.git/")||r.i ss.created_at_epoch FROM session_summaries ss JOIN sdk_sessions s ON ss.memory_session_id = s.memory_session_id - `,o=[];n&&(s+=" WHERE ss.project = ?",o.push(n)),s+=" ORDER BY ss.created_at_epoch DESC LIMIT ? OFFSET ?",o.push(r+1,e);let c=i.prepare(s).all(...o);return{items:c.slice(0,r),hasMore:c.length>r,offset:e,limit:r}}getPrompts(e,r,n){let i=this.dbManager.getSessionStore().db,s=` - SELECT up.id, up.content_session_id, s.project, up.prompt_number, up.prompt_text, up.created_at, up.created_at_epoch + `,a=[],c=[];n&&(c.push("ss.project = ?"),a.push(n)),i&&(c.push("COALESCE(s.platform_source, 'claude') = ?"),a.push(i)),c.length>0&&(o+=` WHERE ${c.join(" AND ")}`),o+=" ORDER BY ss.created_at_epoch DESC LIMIT ? OFFSET ?",a.push(r+1,e);let l=s.prepare(o).all(...a);return{items:l.slice(0,r),hasMore:l.length>r,offset:e,limit:r}}getPrompts(e,r,n,i){let s=this.dbManager.getSessionStore().db,o=` + SELECT + up.id, + up.content_session_id, + s.project, + COALESCE(s.platform_source, 'claude') as platform_source, + up.prompt_number, + up.prompt_text, + up.created_at, + up.created_at_epoch FROM user_prompts up JOIN sdk_sessions s ON up.content_session_id = s.content_session_id - `,o=[];n&&(s+=" WHERE s.project = ?",o.push(n)),s+=" ORDER BY up.created_at_epoch DESC LIMIT ? OFFSET ?",o.push(r+1,e);let c=i.prepare(s).all(...o);return{items:c.slice(0,r),hasMore:c.length>r,offset:e,limit:r}}paginate(e,r,n,i,s){let o=this.dbManager.getSessionStore().db,a=`SELECT ${r} FROM ${e}`,c=[];s&&(a+=" WHERE project = ?",c.push(s)),a+=" ORDER BY created_at_epoch DESC LIMIT ? OFFSET ?",c.push(i+1,n);let l=o.prepare(a).all(...c);return{items:l.slice(0,i),hasMore:l.length>i,offset:n,limit:i}}};re();var uy=class{dbManager;defaultSettings={sidebarOpen:!0,selectedProject:null,theme:"system"};constructor(e){this.dbManager=e}getSettings(){let e=this.dbManager.getSessionStore().db;try{let n=e.prepare("SELECT key, value FROM viewer_settings").all(),i={...this.defaultSettings};for(let s of n){let o=s.key;o in i&&(i[o]=JSON.parse(s.value))}return i}catch(r){return _.debug("WORKER","Failed to load settings, using defaults",{},r),{...this.defaultSettings}}}updateSettings(e){let n=this.dbManager.getSessionStore().db.prepare(` + `,a=[],c=[];n&&(c.push("s.project = ?"),a.push(n)),i&&(c.push("COALESCE(s.platform_source, 'claude') = ?"),a.push(i)),c.length>0&&(o+=` WHERE ${c.join(" AND ")}`),o+=" ORDER BY up.created_at_epoch DESC LIMIT ? OFFSET ?",a.push(r+1,e);let l=s.prepare(o).all(...a);return{items:l.slice(0,r),hasMore:l.length>r,offset:e,limit:r}}paginate(e,r,n,i,s){let o=this.dbManager.getSessionStore().db,a=`SELECT ${r} FROM ${e}`,c=[];s&&(a+=" WHERE project = ?",c.push(s)),a+=" ORDER BY created_at_epoch DESC LIMIT ? OFFSET ?",c.push(i+1,n);let l=o.prepare(a).all(...c);return{items:l.slice(0,i),hasMore:l.length>i,offset:n,limit:i}}};re();var _y=class{dbManager;defaultSettings={sidebarOpen:!0,selectedProject:null,theme:"system"};constructor(e){this.dbManager=e}getSettings(){let e=this.dbManager.getSessionStore().db;try{let n=e.prepare("SELECT key, value FROM viewer_settings").all(),i={...this.defaultSettings};for(let s of n){let o=s.key;o in i&&(i[o]=JSON.parse(s.value))}return i}catch(r){return _.debug("WORKER","Failed to load settings, using defaults",{},r),{...this.defaultSettings}}}updateSettings(e){let n=this.dbManager.getSessionStore().db.prepare(` INSERT OR REPLACE INTO viewer_settings (key, value) VALUES (?, ?) - `);for(let[i,s]of Object.entries(e))n.run(i,JSON.stringify(s));return this.getSettings()}};var g9=require("path");re();ga();Qr();var zs=class{emptyResult(e){return{results:{observations:[],sessions:[],prompts:[]},usedChroma:e==="chroma"||e==="hybrid",fellBack:!1,strategy:e}}};var Dt={RECENCY_WINDOW_DAYS:90,RECENCY_WINDOW_MS:7776e6,DEFAULT_LIMIT:20,CHROMA_BATCH_SIZE:100};re();var rf=class extends zs{constructor(r,n){super();this.chromaSync=r;this.sessionStore=n}name="chroma";canHandle(r){return!!r.query&&!!this.chromaSync}async search(r){let{query:n,searchType:i="all",obsType:s,concepts:o,files:a,limit:c=Dt.DEFAULT_LIMIT,project:u,orderBy:l="date_desc"}=r;if(!n)return this.emptyResult("chroma");let d=i==="all"||i==="observations",p=i==="all"||i==="sessions",f=i==="all"||i==="prompts",m=[],h=[],g=[];try{let v=this.buildWhereFilter(i,u);_.debug("SEARCH","ChromaSearchStrategy: Querying Chroma",{query:n,searchType:i});let S=await this.chromaSync.queryChroma(n,Dt.CHROMA_BATCH_SIZE,v);if(_.debug("SEARCH","ChromaSearchStrategy: Chroma returned matches",{matchCount:S.ids.length}),S.ids.length===0)return{results:{observations:[],sessions:[],prompts:[]},usedChroma:!0,fellBack:!1,strategy:"chroma"};let b=this.filterByRecency(S);_.debug("SEARCH","ChromaSearchStrategy: Filtered by recency",{count:b.length});let y=this.categorizeByDocType(b,{searchObservations:d,searchSessions:p,searchPrompts:f});if(y.obsIds.length>0){let x={type:s,concepts:o,files:a,orderBy:l,limit:c,project:u};m=this.sessionStore.getObservationsByIds(y.obsIds,x)}return y.sessionIds.length>0&&(h=this.sessionStore.getSessionSummariesByIds(y.sessionIds,{orderBy:l,limit:c,project:u})),y.promptIds.length>0&&(g=this.sessionStore.getUserPromptsByIds(y.promptIds,{orderBy:l,limit:c,project:u})),_.debug("SEARCH","ChromaSearchStrategy: Hydrated results",{observations:m.length,sessions:h.length,prompts:g.length}),{results:{observations:m,sessions:h,prompts:g},usedChroma:!0,fellBack:!1,strategy:"chroma"}}catch(v){return _.error("SEARCH","ChromaSearchStrategy: Search failed",{},v),{results:{observations:[],sessions:[],prompts:[]},usedChroma:!1,fellBack:!1,strategy:"chroma"}}}buildWhereFilter(r,n){let i;switch(r){case"observations":i={doc_type:"observation"};break;case"sessions":i={doc_type:"session_summary"};break;case"prompts":i={doc_type:"user_prompt"};break;default:i=void 0}if(n){let s={project:n};return i?{$and:[i,s]}:s}return i}filterByRecency(r){let n=Date.now()-Dt.RECENCY_WINDOW_MS,i=new Map;for(let s of r.metadatas)s?.sqlite_id!==void 0&&!i.has(s.sqlite_id)&&i.set(s.sqlite_id,s);return r.ids.map(s=>({id:s,meta:i.get(s)})).filter(s=>s.meta&&s.meta.created_at_epoch>n)}categorizeByDocType(r,n){let i=[],s=[],o=[];for(let a of r){let c=a.meta?.doc_type;c==="observation"&&n.searchObservations?i.push(a.id):c==="session_summary"&&n.searchSessions?s.push(a.id):c==="user_prompt"&&n.searchPrompts&&o.push(a.id)}return{obsIds:i,sessionIds:s,promptIds:o}}};re();var nf=class extends zs{constructor(r){super();this.sessionSearch=r}name="sqlite";canHandle(r){return!r.query||r.strategyHint==="sqlite"}async search(r){let{searchType:n="all",obsType:i,concepts:s,files:o,limit:a=Dt.DEFAULT_LIMIT,offset:c=0,project:u,dateRange:l,orderBy:d="date_desc"}=r,p=n==="all"||n==="observations",f=n==="all"||n==="sessions",m=n==="all"||n==="prompts",h=[],g=[],v=[],S={limit:a,offset:c,orderBy:d,project:u,dateRange:l};_.debug("SEARCH","SQLiteSearchStrategy: Filter-only query",{searchType:n,hasDateRange:!!l,hasProject:!!u});try{if(p){let b={...S,type:i,concepts:s,files:o};h=this.sessionSearch.searchObservations(void 0,b)}return f&&(g=this.sessionSearch.searchSessions(void 0,S)),m&&(v=this.sessionSearch.searchUserPrompts(void 0,S)),_.debug("SEARCH","SQLiteSearchStrategy: Results",{observations:h.length,sessions:g.length,prompts:v.length}),{results:{observations:h,sessions:g,prompts:v},usedChroma:!1,fellBack:!1,strategy:"sqlite"}}catch(b){return _.error("SEARCH","SQLiteSearchStrategy: Search failed",{},b),this.emptyResult("sqlite")}}findByConcept(r,n){let{limit:i=Dt.DEFAULT_LIMIT,project:s,dateRange:o,orderBy:a="date_desc"}=n;return this.sessionSearch.findByConcept(r,{limit:i,project:s,dateRange:o,orderBy:a})}findByType(r,n){let{limit:i=Dt.DEFAULT_LIMIT,project:s,dateRange:o,orderBy:a="date_desc"}=n;return this.sessionSearch.findByType(r,{limit:i,project:s,dateRange:o,orderBy:a})}findByFile(r,n){let{limit:i=Dt.DEFAULT_LIMIT,project:s,dateRange:o,orderBy:a="date_desc"}=n;return this.sessionSearch.findByFile(r,{limit:i,project:s,dateRange:o,orderBy:a})}};re();var sf=class extends zs{constructor(r,n,i){super();this.chromaSync=r;this.sessionStore=n;this.sessionSearch=i}name="hybrid";canHandle(r){return!!this.chromaSync&&(!!r.concepts||!!r.files||!!r.type&&!!r.query||r.strategyHint==="hybrid")}async search(r){let{query:n,limit:i=Dt.DEFAULT_LIMIT,project:s}=r;return n?this.emptyResult("hybrid"):this.emptyResult("hybrid")}async findByConcept(r,n){let{limit:i=Dt.DEFAULT_LIMIT,project:s,dateRange:o,orderBy:a}=n,c={limit:i,project:s,dateRange:o,orderBy:a};try{_.debug("SEARCH","HybridSearchStrategy: findByConcept",{concept:r});let u=this.sessionSearch.findByConcept(r,c);if(_.debug("SEARCH","HybridSearchStrategy: Found metadata matches",{count:u.length}),u.length===0)return this.emptyResult("hybrid");let l=u.map(f=>f.id),d=await this.chromaSync.queryChroma(r,Math.min(l.length,Dt.CHROMA_BATCH_SIZE)),p=this.intersectWithRanking(l,d.ids);if(_.debug("SEARCH","HybridSearchStrategy: Ranked by semantic relevance",{count:p.length}),p.length>0){let f=this.sessionStore.getObservationsByIds(p,{limit:i});return f.sort((m,h)=>p.indexOf(m.id)-p.indexOf(h.id)),{results:{observations:f,sessions:[],prompts:[]},usedChroma:!0,fellBack:!1,strategy:"hybrid"}}return this.emptyResult("hybrid")}catch(u){return _.error("SEARCH","HybridSearchStrategy: findByConcept failed",{},u),{results:{observations:this.sessionSearch.findByConcept(r,c),sessions:[],prompts:[]},usedChroma:!1,fellBack:!0,strategy:"hybrid"}}}async findByType(r,n){let{limit:i=Dt.DEFAULT_LIMIT,project:s,dateRange:o,orderBy:a}=n,c={limit:i,project:s,dateRange:o,orderBy:a},u=Array.isArray(r)?r.join(", "):r;try{_.debug("SEARCH","HybridSearchStrategy: findByType",{type:u});let l=this.sessionSearch.findByType(r,c);if(_.debug("SEARCH","HybridSearchStrategy: Found metadata matches",{count:l.length}),l.length===0)return this.emptyResult("hybrid");let d=l.map(m=>m.id),p=await this.chromaSync.queryChroma(u,Math.min(d.length,Dt.CHROMA_BATCH_SIZE)),f=this.intersectWithRanking(d,p.ids);if(_.debug("SEARCH","HybridSearchStrategy: Ranked by semantic relevance",{count:f.length}),f.length>0){let m=this.sessionStore.getObservationsByIds(f,{limit:i});return m.sort((h,g)=>f.indexOf(h.id)-f.indexOf(g.id)),{results:{observations:m,sessions:[],prompts:[]},usedChroma:!0,fellBack:!1,strategy:"hybrid"}}return this.emptyResult("hybrid")}catch(l){return _.error("SEARCH","HybridSearchStrategy: findByType failed",{},l),{results:{observations:this.sessionSearch.findByType(r,c),sessions:[],prompts:[]},usedChroma:!1,fellBack:!0,strategy:"hybrid"}}}async findByFile(r,n){let{limit:i=Dt.DEFAULT_LIMIT,project:s,dateRange:o,orderBy:a}=n,c={limit:i,project:s,dateRange:o,orderBy:a};try{_.debug("SEARCH","HybridSearchStrategy: findByFile",{filePath:r});let u=this.sessionSearch.findByFile(r,c);_.debug("SEARCH","HybridSearchStrategy: Found file matches",{observations:u.observations.length,sessions:u.sessions.length});let l=u.sessions;if(u.observations.length===0)return{observations:[],sessions:l,usedChroma:!1};let d=u.observations.map(m=>m.id),p=await this.chromaSync.queryChroma(r,Math.min(d.length,Dt.CHROMA_BATCH_SIZE)),f=this.intersectWithRanking(d,p.ids);if(_.debug("SEARCH","HybridSearchStrategy: Ranked observations",{count:f.length}),f.length>0){let m=this.sessionStore.getObservationsByIds(f,{limit:i});return m.sort((h,g)=>f.indexOf(h.id)-f.indexOf(g.id)),{observations:m,sessions:l,usedChroma:!0}}return{observations:[],sessions:l,usedChroma:!1}}catch(u){_.error("SEARCH","HybridSearchStrategy: findByFile failed",{},u);let l=this.sessionSearch.findByFile(r,c);return{observations:l.observations,sessions:l.sessions,usedChroma:!1}}}intersectWithRanking(r,n){let i=new Set(r),s=[];for(let o of n)i.has(o)&&!s.includes(o)&&s.push(o);return s}};Qr();ga();var v_e=4,of=class{formatSearchResults(e,r,n=!1){let i=e.observations.length+e.sessions.length+e.prompts.length;if(i===0)return n?this.formatChromaFailureMessage():`No results found matching "${r}"`;let s=this.combineResults(e);s.sort((u,l)=>l.epoch-u.epoch);let o=process.cwd(),a=Os(s,u=>u.created_at),c=[];c.push(`Found ${i} result(s) matching "${r}" (${e.observations.length} obs, ${e.sessions.length} sessions, ${e.prompts.length} prompts)`),c.push("");for(let[u,l]of a){c.push(`### ${u}`),c.push("");let d=new Map;for(let p of l){let f="General";if(p.type==="observation"){let m=p.data;f=vi(m.files_modified,o,m.files_read)}d.has(f)||d.set(f,[]),d.get(f).push(p)}for(let[p,f]of d){c.push(`**${p}**`),c.push(this.formatSearchTableHeader());let m="";for(let h of f)if(h.type==="observation"){let g=this.formatObservationSearchRow(h.data,m);c.push(g.row),m=g.time}else if(h.type==="session"){let g=this.formatSessionSearchRow(h.data,m);c.push(g.row),m=g.time}else{let g=this.formatPromptSearchRow(h.data,m);c.push(g.row),m=g.time}c.push("")}}return c.join(` + `);for(let[i,s]of Object.entries(e))n.run(i,JSON.stringify(s));return this.getSettings()}};var z9=require("path");re();js();tn();var Bs=class{emptyResult(e){return{results:{observations:[],sessions:[],prompts:[]},usedChroma:e==="chroma"||e==="hybrid",fellBack:!1,strategy:e}}};var Lt={RECENCY_WINDOW_DAYS:90,RECENCY_WINDOW_MS:7776e6,DEFAULT_LIMIT:20,CHROMA_BATCH_SIZE:100};re();var yf=class extends Bs{constructor(r,n){super();this.chromaSync=r;this.sessionStore=n}name="chroma";canHandle(r){return!!r.query&&!!this.chromaSync}async search(r){let{query:n,searchType:i="all",obsType:s,concepts:o,files:a,limit:c=Lt.DEFAULT_LIMIT,project:u,orderBy:l="date_desc"}=r;if(!n)return this.emptyResult("chroma");let d=i==="all"||i==="observations",p=i==="all"||i==="sessions",f=i==="all"||i==="prompts",m=[],h=[],g=[];try{let v=this.buildWhereFilter(i,u);_.debug("SEARCH","ChromaSearchStrategy: Querying Chroma",{query:n,searchType:i});let y=await this.chromaSync.queryChroma(n,Lt.CHROMA_BATCH_SIZE,v);if(_.debug("SEARCH","ChromaSearchStrategy: Chroma returned matches",{matchCount:y.ids.length}),y.ids.length===0)return{results:{observations:[],sessions:[],prompts:[]},usedChroma:!0,fellBack:!1,strategy:"chroma"};let b=this.filterByRecency(y);_.debug("SEARCH","ChromaSearchStrategy: Filtered by recency",{count:b.length});let S=this.categorizeByDocType(b,{searchObservations:d,searchSessions:p,searchPrompts:f});if(S.obsIds.length>0){let x={type:s,concepts:o,files:a,orderBy:l,limit:c,project:u};m=this.sessionStore.getObservationsByIds(S.obsIds,x)}return S.sessionIds.length>0&&(h=this.sessionStore.getSessionSummariesByIds(S.sessionIds,{orderBy:l,limit:c,project:u})),S.promptIds.length>0&&(g=this.sessionStore.getUserPromptsByIds(S.promptIds,{orderBy:l,limit:c,project:u})),_.debug("SEARCH","ChromaSearchStrategy: Hydrated results",{observations:m.length,sessions:h.length,prompts:g.length}),{results:{observations:m,sessions:h,prompts:g},usedChroma:!0,fellBack:!1,strategy:"chroma"}}catch(v){return _.error("SEARCH","ChromaSearchStrategy: Search failed",{},v),{results:{observations:[],sessions:[],prompts:[]},usedChroma:!1,fellBack:!1,strategy:"chroma"}}}buildWhereFilter(r,n){let i;switch(r){case"observations":i={doc_type:"observation"};break;case"sessions":i={doc_type:"session_summary"};break;case"prompts":i={doc_type:"user_prompt"};break;default:i=void 0}if(n){let s={project:n};return i?{$and:[i,s]}:s}return i}filterByRecency(r){let n=Date.now()-Lt.RECENCY_WINDOW_MS,i=new Map;for(let s of r.metadatas)s?.sqlite_id!==void 0&&!i.has(s.sqlite_id)&&i.set(s.sqlite_id,s);return r.ids.map(s=>({id:s,meta:i.get(s)})).filter(s=>s.meta&&s.meta.created_at_epoch>n)}categorizeByDocType(r,n){let i=[],s=[],o=[];for(let a of r){let c=a.meta?.doc_type;c==="observation"&&n.searchObservations?i.push(a.id):c==="session_summary"&&n.searchSessions?s.push(a.id):c==="user_prompt"&&n.searchPrompts&&o.push(a.id)}return{obsIds:i,sessionIds:s,promptIds:o}}};re();var _f=class extends Bs{constructor(r){super();this.sessionSearch=r}name="sqlite";canHandle(r){return!r.query||r.strategyHint==="sqlite"}async search(r){let{searchType:n="all",obsType:i,concepts:s,files:o,limit:a=Lt.DEFAULT_LIMIT,offset:c=0,project:u,dateRange:l,orderBy:d="date_desc"}=r,p=n==="all"||n==="observations",f=n==="all"||n==="sessions",m=n==="all"||n==="prompts",h=[],g=[],v=[],y={limit:a,offset:c,orderBy:d,project:u,dateRange:l};_.debug("SEARCH","SQLiteSearchStrategy: Filter-only query",{searchType:n,hasDateRange:!!l,hasProject:!!u});try{if(p){let b={...y,type:i,concepts:s,files:o};h=this.sessionSearch.searchObservations(void 0,b)}return f&&(g=this.sessionSearch.searchSessions(void 0,y)),m&&(v=this.sessionSearch.searchUserPrompts(void 0,y)),_.debug("SEARCH","SQLiteSearchStrategy: Results",{observations:h.length,sessions:g.length,prompts:v.length}),{results:{observations:h,sessions:g,prompts:v},usedChroma:!1,fellBack:!1,strategy:"sqlite"}}catch(b){return _.error("SEARCH","SQLiteSearchStrategy: Search failed",{},b),this.emptyResult("sqlite")}}findByConcept(r,n){let{limit:i=Lt.DEFAULT_LIMIT,project:s,dateRange:o,orderBy:a="date_desc"}=n;return this.sessionSearch.findByConcept(r,{limit:i,project:s,dateRange:o,orderBy:a})}findByType(r,n){let{limit:i=Lt.DEFAULT_LIMIT,project:s,dateRange:o,orderBy:a="date_desc"}=n;return this.sessionSearch.findByType(r,{limit:i,project:s,dateRange:o,orderBy:a})}findByFile(r,n){let{limit:i=Lt.DEFAULT_LIMIT,project:s,dateRange:o,orderBy:a="date_desc"}=n;return this.sessionSearch.findByFile(r,{limit:i,project:s,dateRange:o,orderBy:a})}};re();var bf=class extends Bs{constructor(r,n,i){super();this.chromaSync=r;this.sessionStore=n;this.sessionSearch=i}name="hybrid";canHandle(r){return!!this.chromaSync&&(!!r.concepts||!!r.files||!!r.type&&!!r.query||r.strategyHint==="hybrid")}async search(r){let{query:n,limit:i=Lt.DEFAULT_LIMIT,project:s}=r;return n?this.emptyResult("hybrid"):this.emptyResult("hybrid")}async findByConcept(r,n){let{limit:i=Lt.DEFAULT_LIMIT,project:s,dateRange:o,orderBy:a}=n,c={limit:i,project:s,dateRange:o,orderBy:a};try{_.debug("SEARCH","HybridSearchStrategy: findByConcept",{concept:r});let u=this.sessionSearch.findByConcept(r,c);if(_.debug("SEARCH","HybridSearchStrategy: Found metadata matches",{count:u.length}),u.length===0)return this.emptyResult("hybrid");let l=u.map(f=>f.id),d=await this.chromaSync.queryChroma(r,Math.min(l.length,Lt.CHROMA_BATCH_SIZE)),p=this.intersectWithRanking(l,d.ids);if(_.debug("SEARCH","HybridSearchStrategy: Ranked by semantic relevance",{count:p.length}),p.length>0){let f=this.sessionStore.getObservationsByIds(p,{limit:i});return f.sort((m,h)=>p.indexOf(m.id)-p.indexOf(h.id)),{results:{observations:f,sessions:[],prompts:[]},usedChroma:!0,fellBack:!1,strategy:"hybrid"}}return this.emptyResult("hybrid")}catch(u){return _.error("SEARCH","HybridSearchStrategy: findByConcept failed",{},u),{results:{observations:this.sessionSearch.findByConcept(r,c),sessions:[],prompts:[]},usedChroma:!1,fellBack:!0,strategy:"hybrid"}}}async findByType(r,n){let{limit:i=Lt.DEFAULT_LIMIT,project:s,dateRange:o,orderBy:a}=n,c={limit:i,project:s,dateRange:o,orderBy:a},u=Array.isArray(r)?r.join(", "):r;try{_.debug("SEARCH","HybridSearchStrategy: findByType",{type:u});let l=this.sessionSearch.findByType(r,c);if(_.debug("SEARCH","HybridSearchStrategy: Found metadata matches",{count:l.length}),l.length===0)return this.emptyResult("hybrid");let d=l.map(m=>m.id),p=await this.chromaSync.queryChroma(u,Math.min(d.length,Lt.CHROMA_BATCH_SIZE)),f=this.intersectWithRanking(d,p.ids);if(_.debug("SEARCH","HybridSearchStrategy: Ranked by semantic relevance",{count:f.length}),f.length>0){let m=this.sessionStore.getObservationsByIds(f,{limit:i});return m.sort((h,g)=>f.indexOf(h.id)-f.indexOf(g.id)),{results:{observations:m,sessions:[],prompts:[]},usedChroma:!0,fellBack:!1,strategy:"hybrid"}}return this.emptyResult("hybrid")}catch(l){return _.error("SEARCH","HybridSearchStrategy: findByType failed",{},l),{results:{observations:this.sessionSearch.findByType(r,c),sessions:[],prompts:[]},usedChroma:!1,fellBack:!0,strategy:"hybrid"}}}async findByFile(r,n){let{limit:i=Lt.DEFAULT_LIMIT,project:s,dateRange:o,orderBy:a}=n,c={limit:i,project:s,dateRange:o,orderBy:a};try{_.debug("SEARCH","HybridSearchStrategy: findByFile",{filePath:r});let u=this.sessionSearch.findByFile(r,c);_.debug("SEARCH","HybridSearchStrategy: Found file matches",{observations:u.observations.length,sessions:u.sessions.length});let l=u.sessions;if(u.observations.length===0)return{observations:[],sessions:l,usedChroma:!1};let d=u.observations.map(m=>m.id),p=await this.chromaSync.queryChroma(r,Math.min(d.length,Lt.CHROMA_BATCH_SIZE)),f=this.intersectWithRanking(d,p.ids);if(_.debug("SEARCH","HybridSearchStrategy: Ranked observations",{count:f.length}),f.length>0){let m=this.sessionStore.getObservationsByIds(f,{limit:i});return m.sort((h,g)=>f.indexOf(h.id)-f.indexOf(g.id)),{observations:m,sessions:l,usedChroma:!0}}return{observations:[],sessions:l,usedChroma:!1}}catch(u){_.error("SEARCH","HybridSearchStrategy: findByFile failed",{},u);let l=this.sessionSearch.findByFile(r,c);return{observations:l.observations,sessions:l.sessions,usedChroma:!1}}}intersectWithRanking(r,n){let i=new Set(r),s=[];for(let o of n)i.has(o)&&!s.includes(o)&&s.push(o);return s}};tn();js();var U_e=4,Sf=class{formatSearchResults(e,r,n=!1){let i=e.observations.length+e.sessions.length+e.prompts.length;if(i===0)return n?this.formatChromaFailureMessage():`No results found matching "${r}"`;let s=this.combineResults(e);s.sort((u,l)=>l.epoch-u.epoch);let o=process.cwd(),a=Ds(s,u=>u.created_at),c=[];c.push(`Found ${i} result(s) matching "${r}" (${e.observations.length} obs, ${e.sessions.length} sessions, ${e.prompts.length} prompts)`),c.push("");for(let[u,l]of a){c.push(`### ${u}`),c.push("");let d=new Map;for(let p of l){let f="General";if(p.type==="observation"){let m=p.data;f=Si(m.files_modified,o,m.files_read)}d.has(f)||d.set(f,[]),d.get(f).push(p)}for(let[p,f]of d){c.push(`**${p}**`),c.push(this.formatSearchTableHeader());let m="";for(let h of f)if(h.type==="observation"){let g=this.formatObservationSearchRow(h.data,m);c.push(g.row),m=g.time}else if(h.type==="session"){let g=this.formatSessionSearchRow(h.data,m);c.push(g.row),m=g.time}else{let g=this.formatPromptSearchRow(h.data,m);c.push(g.row),m=g.time}c.push("")}}return c.join(` `)}combineResults(e){return[...e.observations.map(r=>({type:"observation",data:r,epoch:r.created_at_epoch,created_at:r.created_at})),...e.sessions.map(r=>({type:"session",data:r,epoch:r.created_at_epoch,created_at:r.created_at})),...e.prompts.map(r=>({type:"prompt",data:r,epoch:r.created_at_epoch,created_at:r.created_at}))]}formatSearchTableHeader(){return`| ID | Time | T | Title | Read | |----|------|---|-------|------|`}formatTableHeader(){return`| ID | Time | T | Title | Read | Work | -|-----|------|---|-------|------|------|`}formatObservationSearchRow(e,r){let n=`#${e.id}`,i=pr(e.created_at_epoch),s=He.getInstance().getTypeIcon(e.type),o=e.title||"Untitled",a=this.estimateReadTokens(e);return{row:`| ${n} | ${i===r?'"':i} | ${s} | ${o} | ~${a} |`,time:i}}formatSessionSearchRow(e,r){let n=`#S${e.id}`,i=pr(e.created_at_epoch),s="\u{1F3AF}",o=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return{row:`| ${n} | ${i===r?'"':i} | ${s} | ${o} | - |`,time:i}}formatPromptSearchRow(e,r){let n=`#P${e.id}`,i=pr(e.created_at_epoch),s="\u{1F4AC}",o=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return{row:`| ${n} | ${i===r?'"':i} | ${s} | ${o} | - |`,time:i}}formatObservationIndex(e,r){let n=`#${e.id}`,i=pr(e.created_at_epoch),s=He.getInstance().getTypeIcon(e.type),o=e.title||"Untitled",a=this.estimateReadTokens(e),c=He.getInstance().getWorkEmoji(e.type),u=e.discovery_tokens||0,l=u>0?`${c} ${u}`:"-";return`| ${n} | ${i} | ${s} | ${o} | ~${a} | ${l} |`}formatSessionIndex(e,r){let n=`#S${e.id}`,i=pr(e.created_at_epoch),s="\u{1F3AF}",o=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return`| ${n} | ${i} | ${s} | ${o} | - | - |`}formatPromptIndex(e,r){let n=`#P${e.id}`,i=pr(e.created_at_epoch),s="\u{1F4AC}",o=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return`| ${n} | ${i} | ${s} | ${o} | - | - |`}estimateReadTokens(e){let r=(e.title?.length||0)+(e.subtitle?.length||0)+(e.narrative?.length||0)+(e.facts?.length||0);return Math.ceil(r/v_e)}formatChromaFailureMessage(){return`Vector search failed - semantic search unavailable. +|-----|------|---|-------|------|------|`}formatObservationSearchRow(e,r){let n=`#${e.id}`,i=hr(e.created_at_epoch),s=He.getInstance().getTypeIcon(e.type),o=e.title||"Untitled",a=this.estimateReadTokens(e);return{row:`| ${n} | ${i===r?'"':i} | ${s} | ${o} | ~${a} |`,time:i}}formatSessionSearchRow(e,r){let n=`#S${e.id}`,i=hr(e.created_at_epoch),s="\u{1F3AF}",o=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return{row:`| ${n} | ${i===r?'"':i} | ${s} | ${o} | - |`,time:i}}formatPromptSearchRow(e,r){let n=`#P${e.id}`,i=hr(e.created_at_epoch),s="\u{1F4AC}",o=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return{row:`| ${n} | ${i===r?'"':i} | ${s} | ${o} | - |`,time:i}}formatObservationIndex(e,r){let n=`#${e.id}`,i=hr(e.created_at_epoch),s=He.getInstance().getTypeIcon(e.type),o=e.title||"Untitled",a=this.estimateReadTokens(e),c=He.getInstance().getWorkEmoji(e.type),u=e.discovery_tokens||0,l=u>0?`${c} ${u}`:"-";return`| ${n} | ${i} | ${s} | ${o} | ~${a} | ${l} |`}formatSessionIndex(e,r){let n=`#S${e.id}`,i=hr(e.created_at_epoch),s="\u{1F3AF}",o=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return`| ${n} | ${i} | ${s} | ${o} | - | - |`}formatPromptIndex(e,r){let n=`#P${e.id}`,i=hr(e.created_at_epoch),s="\u{1F4AC}",o=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return`| ${n} | ${i} | ${s} | ${o} | - | - |`}estimateReadTokens(e){let r=(e.title?.length||0)+(e.subtitle?.length||0)+(e.narrative?.length||0)+(e.facts?.length||0);return Math.ceil(r/U_e)}formatChromaFailureMessage(){return`Vector search failed - semantic search unavailable. To enable semantic search: 1. Install uv: https://docs.astral.sh/uv/getting-started/installation/ @@ -1424,15 +1560,15 @@ Search Strategy: Tips: - Filter by type: obs_type="bugfix,feature" - Filter by date: dateStart="2025-01-01" -- Sort: orderBy="date_desc" or "date_asc"`}};Qr();ga();var ka=class{buildTimeline(e){let r=[...e.observations.map(n=>({type:"observation",data:n,epoch:n.created_at_epoch})),...e.sessions.map(n=>({type:"session",data:n,epoch:n.created_at_epoch})),...e.prompts.map(n=>({type:"prompt",data:n,epoch:n.created_at_epoch}))];return r.sort((n,i)=>n.epoch-i.epoch),r}filterByDepth(e,r,n,i,s){if(e.length===0)return e;let o=this.findAnchorIndex(e,r,n);if(o===-1)return e;let a=Math.max(0,o-i),c=Math.min(e.length,o+s+1);return e.slice(a,c)}findAnchorIndex(e,r,n){if(typeof r=="number")return e.findIndex(s=>s.type==="observation"&&s.data.id===r);if(typeof r=="string"&&r.startsWith("S")){let s=parseInt(r.slice(1),10);return e.findIndex(o=>o.type==="session"&&o.data.id===s)}let i=e.findIndex(s=>s.epoch>=n);return i===-1?e.length-1:i}formatTimeline(e,r,n={}){let{query:i,depthBefore:s,depthAfter:o,cwd:a=process.cwd()}=n;if(e.length===0)return i?`Found observation matching "${i}", but no timeline context available.`:"No timeline items found";let c=[];if(i&&r){let d=e.find(f=>f.type==="observation"&&f.data.id===r),p=d?d.data.title||"Untitled":"Unknown";c.push(`# Timeline for query: "${i}"`),c.push(`**Anchor:** Observation #${r} - ${p}`)}else r?c.push(`# Timeline around anchor: ${r}`):c.push("# Timeline");s!==void 0&&o!==void 0?c.push(`**Window:** ${s} records before -> ${o} records after | **Items:** ${e.length}`):c.push(`**Items:** ${e.length}`),c.push("");let u=this.groupByDay(e),l=this.sortDaysChronologically(u);for(let[d,p]of l){c.push(`### ${d}`),c.push("");let f=null,m="",h=!1;for(let g of p){let v=this.isAnchorItem(g,r);if(g.type==="session"){h&&(c.push(""),h=!1,f=null,m="");let S=g.data,b=S.request||"Session summary",y=v?" <- **ANCHOR**":"";c.push(`**\u{1F3AF} #S${S.id}** ${b} (${Rn(g.epoch)})${y}`),c.push("")}else if(g.type==="prompt"){h&&(c.push(""),h=!1,f=null,m="");let S=g.data,b=S.prompt_text.length>100?S.prompt_text.substring(0,100)+"...":S.prompt_text;c.push(`**\u{1F4AC} User Prompt #${S.prompt_number}** (${Rn(g.epoch)})`),c.push(`> ${b}`),c.push("")}else if(g.type==="observation"){let S=g.data,b=vi(S.files_modified,a,S.files_read);b!==f&&(h&&c.push(""),c.push(`**${b}**`),c.push("| ID | Time | T | Title | Tokens |"),c.push("|----|------|---|-------|--------|"),f=b,h=!0,m="");let y=He.getInstance().getTypeIcon(S.type),x=pr(g.epoch),w=S.title||"Untitled",E=du(S.narrative),I=x!==m?x:'"';m=x;let A=v?" <- **ANCHOR**":"";c.push(`| #${S.id} | ${I} | ${y} | ${w}${A} | ~${E} |`)}}h&&c.push("")}return c.join(` -`)}groupByDay(e){let r=new Map;for(let n of e){let i=Rs(n.epoch);r.has(i)||r.set(i,[]),r.get(i).push(n)}return r}sortDaysChronologically(e){return Array.from(e.entries()).sort((r,n)=>{let i=new Date(r[0]).getTime(),s=new Date(n[0]).getTime();return i-s})}isAnchorItem(e,r){return r===null?!1:typeof r=="number"&&e.type==="observation"?e.data.id===r:typeof r=="string"&&r.startsWith("S")&&e.type==="session"?`S${e.data.id}`===r:!1}};re();var af=class{constructor(e,r,n){this.sessionSearch=e;this.sessionStore=r;this.chromaSync=n;this.sqliteStrategy=new nf(e),n&&(this.chromaStrategy=new rf(n,r),this.hybridStrategy=new sf(n,r,e)),this.resultFormatter=new of,this.timelineBuilder=new ka}chromaStrategy=null;sqliteStrategy;hybridStrategy=null;resultFormatter;timelineBuilder;async search(e){let r=this.normalizeParams(e);return await this.executeWithFallback(r)}async executeWithFallback(e){if(!e.query)return _.debug("SEARCH","Orchestrator: Filter-only query, using SQLite",{}),await this.sqliteStrategy.search(e);if(this.chromaStrategy){_.debug("SEARCH","Orchestrator: Using Chroma semantic search",{});let r=await this.chromaStrategy.search(e);return r.usedChroma?r:(_.debug("SEARCH","Orchestrator: Chroma failed, falling back to SQLite",{}),{...await this.sqliteStrategy.search({...e,query:void 0}),fellBack:!0})}return _.debug("SEARCH","Orchestrator: Chroma not available",{}),{results:{observations:[],sessions:[],prompts:[]},usedChroma:!1,fellBack:!1,strategy:"sqlite"}}async findByConcept(e,r){let n=this.normalizeParams(r);return this.hybridStrategy?await this.hybridStrategy.findByConcept(e,n):{results:{observations:this.sqliteStrategy.findByConcept(e,n),sessions:[],prompts:[]},usedChroma:!1,fellBack:!1,strategy:"sqlite"}}async findByType(e,r){let n=this.normalizeParams(r);return this.hybridStrategy?await this.hybridStrategy.findByType(e,n):{results:{observations:this.sqliteStrategy.findByType(e,n),sessions:[],prompts:[]},usedChroma:!1,fellBack:!1,strategy:"sqlite"}}async findByFile(e,r){let n=this.normalizeParams(r);return this.hybridStrategy?await this.hybridStrategy.findByFile(e,n):{...this.sqliteStrategy.findByFile(e,n),usedChroma:!1}}getTimeline(e,r,n,i,s){let o=this.timelineBuilder.buildTimeline(e);return this.timelineBuilder.filterByDepth(o,r,n,i,s)}formatTimeline(e,r,n={}){return this.timelineBuilder.formatTimeline(e,r,n)}formatSearchResults(e,r,n=!1){return this.resultFormatter.formatSearchResults(e,r,n)}getFormatter(){return this.resultFormatter}getTimelineBuilder(){return this.timelineBuilder}normalizeParams(e){let r={...e};return r.concepts&&typeof r.concepts=="string"&&(r.concepts=r.concepts.split(",").map(n=>n.trim()).filter(Boolean)),r.files&&typeof r.files=="string"&&(r.files=r.files.split(",").map(n=>n.trim()).filter(Boolean)),r.obs_type&&typeof r.obs_type=="string"&&(r.obsType=r.obs_type.split(",").map(n=>n.trim()).filter(Boolean),delete r.obs_type),r.type&&typeof r.type=="string"&&r.type.includes(",")&&(r.type=r.type.split(",").map(n=>n.trim()).filter(Boolean)),r.type&&!r.searchType&&["observations","sessions","prompts"].includes(r.type)&&(r.searchType=r.type,delete r.type),(r.dateStart||r.dateEnd)&&(r.dateRange={start:r.dateStart,end:r.dateEnd},delete r.dateStart,delete r.dateEnd),r}isChromaAvailable(){return!!this.chromaSync}};var ly=class{constructor(e,r,n,i,s){this.sessionSearch=e;this.sessionStore=r;this.chromaSync=n;this.formatter=i;this.timelineService=s;this.orchestrator=new af(e,r,n),this.timelineBuilder=new ka}orchestrator;timelineBuilder;async queryChroma(e,r,n){return this.chromaSync?await this.chromaSync.queryChroma(e,r,n):{ids:[],distances:[],metadatas:[]}}normalizeParams(e){let r={...e};return r.filePath&&!r.files&&(r.files=r.filePath,delete r.filePath),r.concepts&&typeof r.concepts=="string"&&(r.concepts=r.concepts.split(",").map(n=>n.trim()).filter(Boolean)),r.files&&typeof r.files=="string"&&(r.files=r.files.split(",").map(n=>n.trim()).filter(Boolean)),r.obs_type&&typeof r.obs_type=="string"&&(r.obs_type=r.obs_type.split(",").map(n=>n.trim()).filter(Boolean)),r.type&&typeof r.type=="string"&&r.type.includes(",")&&(r.type=r.type.split(",").map(n=>n.trim()).filter(Boolean)),(r.dateStart||r.dateEnd)&&(r.dateRange={start:r.dateStart,end:r.dateEnd},delete r.dateStart,delete r.dateEnd),r.isFolder==="true"?r.isFolder=!0:r.isFolder==="false"&&(r.isFolder=!1),r}async search(e){let r=this.normalizeParams(e),{query:n,type:i,obs_type:s,concepts:o,files:a,format:c,...u}=r,l=[],d=[],p=[],f=!1,m=!i||i==="observations",h=!i||i==="sessions",g=!i||i==="prompts";if(n)if(this.chromaSync){let E=!1;_.debug("SEARCH","Using ChromaDB semantic search",{typeFilter:i||"all"});let T;if(i==="observations"?T={doc_type:"observation"}:i==="sessions"?T={doc_type:"session_summary"}:i==="prompts"&&(T={doc_type:"user_prompt"}),u.project){let A={project:u.project};T=T?{$and:[T,A]}:A}let I=await this.queryChroma(n,100,T);if(E=!0,_.debug("SEARCH","ChromaDB returned semantic matches",{matchCount:I.ids.length}),I.ids.length>0){let{dateRange:A}=u,N,U;A?(A.start&&(N=typeof A.start=="number"?A.start:new Date(A.start).getTime()),A.end&&(U=typeof A.end=="number"?A.end:new Date(A.end).getTime())):N=Date.now()-Dt.RECENCY_WINDOW_MS;let V=I.metadatas.map((ze,Et)=>({id:I.ids[Et],meta:ze,isRecent:ze&&ze.created_at_epoch!=null&&(!N||ze.created_at_epoch>=N)&&(!U||ze.created_at_epoch<=U)})).filter(ze=>ze.isRecent);_.debug("SEARCH",A?"Results within user date range":"Results within 90-day window",{count:V.length});let j=[],ae=[],Me=[];for(let ze of V){let Et=ze.meta?.doc_type;Et==="observation"&&m?j.push(ze.id):Et==="session_summary"&&h?ae.push(ze.id):Et==="user_prompt"&&g&&Me.push(ze.id)}if(_.debug("SEARCH","Categorized results by type",{observations:j.length,sessions:ae.length,prompts:p.length}),j.length>0){let ze={...u,type:s,concepts:o,files:a};l=this.sessionStore.getObservationsByIds(j,ze)}ae.length>0&&(d=this.sessionStore.getSessionSummariesByIds(ae,{orderBy:"date_desc",limit:u.limit,project:u.project})),Me.length>0&&(p=this.sessionStore.getUserPromptsByIds(Me,{orderBy:"date_desc",limit:u.limit,project:u.project})),_.debug("SEARCH","Hydrated results from SQLite",{observations:l.length,sessions:d.length,prompts:p.length})}else _.debug("SEARCH","ChromaDB found no matches (final result, no FTS5 fallback)",{})}else n&&(f=!0,_.debug("SEARCH","ChromaDB not initialized - semantic search unavailable",{}),_.debug("SEARCH","Install UVX/Python to enable vector search",{url:"https://docs.astral.sh/uv/getting-started/installation/"}),l=[],d=[],p=[]);else{_.debug("SEARCH","Filter-only query (no query text), using direct SQLite filtering",{enablesDateFilters:!0});let E={...u,type:s,concepts:o,files:a};m&&(l=this.sessionSearch.searchObservations(void 0,E)),h&&(d=this.sessionSearch.searchSessions(void 0,u)),g&&(p=this.sessionSearch.searchUserPrompts(void 0,u))}let v=l.length+d.length+p.length;if(c==="json")return{observations:l,sessions:d,prompts:p,totalResults:v,query:n||""};if(v===0)return f?{content:[{type:"text",text:`Vector search failed - semantic search unavailable. +- Sort: orderBy="date_desc" or "date_asc"`}};tn();js();var Na=class{buildTimeline(e){let r=[...e.observations.map(n=>({type:"observation",data:n,epoch:n.created_at_epoch})),...e.sessions.map(n=>({type:"session",data:n,epoch:n.created_at_epoch})),...e.prompts.map(n=>({type:"prompt",data:n,epoch:n.created_at_epoch}))];return r.sort((n,i)=>n.epoch-i.epoch),r}filterByDepth(e,r,n,i,s){if(e.length===0)return e;let o=this.findAnchorIndex(e,r,n);if(o===-1)return e;let a=Math.max(0,o-i),c=Math.min(e.length,o+s+1);return e.slice(a,c)}findAnchorIndex(e,r,n){if(typeof r=="number")return e.findIndex(s=>s.type==="observation"&&s.data.id===r);if(typeof r=="string"&&r.startsWith("S")){let s=parseInt(r.slice(1),10);return e.findIndex(o=>o.type==="session"&&o.data.id===s)}let i=e.findIndex(s=>s.epoch>=n);return i===-1?e.length-1:i}formatTimeline(e,r,n={}){let{query:i,depthBefore:s,depthAfter:o,cwd:a=process.cwd()}=n;if(e.length===0)return i?`Found observation matching "${i}", but no timeline context available.`:"No timeline items found";let c=[];if(i&&r){let d=e.find(f=>f.type==="observation"&&f.data.id===r),p=d?d.data.title||"Untitled":"Unknown";c.push(`# Timeline for query: "${i}"`),c.push(`**Anchor:** Observation #${r} - ${p}`)}else r?c.push(`# Timeline around anchor: ${r}`):c.push("# Timeline");s!==void 0&&o!==void 0?c.push(`**Window:** ${s} records before -> ${o} records after | **Items:** ${e.length}`):c.push(`**Items:** ${e.length}`),c.push("");let u=this.groupByDay(e),l=this.sortDaysChronologically(u);for(let[d,p]of l){c.push(`### ${d}`),c.push("");let f=null,m="",h=!1;for(let g of p){let v=this.isAnchorItem(g,r);if(g.type==="session"){h&&(c.push(""),h=!1,f=null,m="");let y=g.data,b=y.request||"Session summary",S=v?" <- **ANCHOR**":"";c.push(`**\u{1F3AF} #S${y.id}** ${b} (${An(g.epoch)})${S}`),c.push("")}else if(g.type==="prompt"){h&&(c.push(""),h=!1,f=null,m="");let y=g.data,b=y.prompt_text.length>100?y.prompt_text.substring(0,100)+"...":y.prompt_text;c.push(`**\u{1F4AC} User Prompt #${y.prompt_number}** (${An(g.epoch)})`),c.push(`> ${b}`),c.push("")}else if(g.type==="observation"){let y=g.data,b=Si(y.files_modified,a,y.files_read);b!==f&&(h&&c.push(""),c.push(`**${b}**`),c.push("| ID | Time | T | Title | Tokens |"),c.push("|----|------|---|-------|--------|"),f=b,h=!0,m="");let S=He.getInstance().getTypeIcon(y.type),x=hr(g.epoch),w=y.title||"Untitled",E=Ms(y.narrative),I=x!==m?x:'"';m=x;let A=v?" <- **ANCHOR**":"";c.push(`| #${y.id} | ${I} | ${S} | ${w}${A} | ~${E} |`)}}h&&c.push("")}return c.join(` +`)}groupByDay(e){let r=new Map;for(let n of e){let i=Ns(n.epoch);r.has(i)||r.set(i,[]),r.get(i).push(n)}return r}sortDaysChronologically(e){return Array.from(e.entries()).sort((r,n)=>{let i=new Date(r[0]).getTime(),s=new Date(n[0]).getTime();return i-s})}isAnchorItem(e,r){return r===null?!1:typeof r=="number"&&e.type==="observation"?e.data.id===r:typeof r=="string"&&r.startsWith("S")&&e.type==="session"?`S${e.data.id}`===r:!1}};re();var xf=class{constructor(e,r,n){this.sessionSearch=e;this.sessionStore=r;this.chromaSync=n;this.sqliteStrategy=new _f(e),n&&(this.chromaStrategy=new yf(n,r),this.hybridStrategy=new bf(n,r,e)),this.resultFormatter=new Sf,this.timelineBuilder=new Na}chromaStrategy=null;sqliteStrategy;hybridStrategy=null;resultFormatter;timelineBuilder;async search(e){let r=this.normalizeParams(e);return await this.executeWithFallback(r)}async executeWithFallback(e){if(!e.query)return _.debug("SEARCH","Orchestrator: Filter-only query, using SQLite",{}),await this.sqliteStrategy.search(e);if(this.chromaStrategy){_.debug("SEARCH","Orchestrator: Using Chroma semantic search",{});let r=await this.chromaStrategy.search(e);return r.usedChroma?r:(_.debug("SEARCH","Orchestrator: Chroma failed, falling back to SQLite",{}),{...await this.sqliteStrategy.search({...e,query:void 0}),fellBack:!0})}return _.debug("SEARCH","Orchestrator: Chroma not available",{}),{results:{observations:[],sessions:[],prompts:[]},usedChroma:!1,fellBack:!1,strategy:"sqlite"}}async findByConcept(e,r){let n=this.normalizeParams(r);return this.hybridStrategy?await this.hybridStrategy.findByConcept(e,n):{results:{observations:this.sqliteStrategy.findByConcept(e,n),sessions:[],prompts:[]},usedChroma:!1,fellBack:!1,strategy:"sqlite"}}async findByType(e,r){let n=this.normalizeParams(r);return this.hybridStrategy?await this.hybridStrategy.findByType(e,n):{results:{observations:this.sqliteStrategy.findByType(e,n),sessions:[],prompts:[]},usedChroma:!1,fellBack:!1,strategy:"sqlite"}}async findByFile(e,r){let n=this.normalizeParams(r);return this.hybridStrategy?await this.hybridStrategy.findByFile(e,n):{...this.sqliteStrategy.findByFile(e,n),usedChroma:!1}}getTimeline(e,r,n,i,s){let o=this.timelineBuilder.buildTimeline(e);return this.timelineBuilder.filterByDepth(o,r,n,i,s)}formatTimeline(e,r,n={}){return this.timelineBuilder.formatTimeline(e,r,n)}formatSearchResults(e,r,n=!1){return this.resultFormatter.formatSearchResults(e,r,n)}getFormatter(){return this.resultFormatter}getTimelineBuilder(){return this.timelineBuilder}normalizeParams(e){let r={...e};return r.concepts&&typeof r.concepts=="string"&&(r.concepts=r.concepts.split(",").map(n=>n.trim()).filter(Boolean)),r.files&&typeof r.files=="string"&&(r.files=r.files.split(",").map(n=>n.trim()).filter(Boolean)),r.obs_type&&typeof r.obs_type=="string"&&(r.obsType=r.obs_type.split(",").map(n=>n.trim()).filter(Boolean),delete r.obs_type),r.type&&typeof r.type=="string"&&r.type.includes(",")&&(r.type=r.type.split(",").map(n=>n.trim()).filter(Boolean)),r.type&&!r.searchType&&["observations","sessions","prompts"].includes(r.type)&&(r.searchType=r.type,delete r.type),(r.dateStart||r.dateEnd)&&(r.dateRange={start:r.dateStart,end:r.dateEnd},delete r.dateStart,delete r.dateEnd),r}isChromaAvailable(){return!!this.chromaSync}};var by=class{constructor(e,r,n,i,s){this.sessionSearch=e;this.sessionStore=r;this.chromaSync=n;this.formatter=i;this.timelineService=s;this.orchestrator=new xf(e,r,n),this.timelineBuilder=new Na}orchestrator;timelineBuilder;async queryChroma(e,r,n){return this.chromaSync?await this.chromaSync.queryChroma(e,r,n):{ids:[],distances:[],metadatas:[]}}normalizeParams(e){let r={...e};return r.filePath&&!r.files&&(r.files=r.filePath,delete r.filePath),r.concepts&&typeof r.concepts=="string"&&(r.concepts=r.concepts.split(",").map(n=>n.trim()).filter(Boolean)),r.files&&typeof r.files=="string"&&(r.files=r.files.split(",").map(n=>n.trim()).filter(Boolean)),r.obs_type&&typeof r.obs_type=="string"&&(r.obs_type=r.obs_type.split(",").map(n=>n.trim()).filter(Boolean)),r.type&&typeof r.type=="string"&&r.type.includes(",")&&(r.type=r.type.split(",").map(n=>n.trim()).filter(Boolean)),(r.dateStart||r.dateEnd)&&(r.dateRange={start:r.dateStart,end:r.dateEnd},delete r.dateStart,delete r.dateEnd),r.isFolder==="true"?r.isFolder=!0:r.isFolder==="false"&&(r.isFolder=!1),r}async search(e){let r=this.normalizeParams(e),{query:n,type:i,obs_type:s,concepts:o,files:a,format:c,...u}=r,l=[],d=[],p=[],f=!1,m=!i||i==="observations",h=!i||i==="sessions",g=!i||i==="prompts";if(n)if(this.chromaSync){let E=!1;_.debug("SEARCH","Using ChromaDB semantic search",{typeFilter:i||"all"});let T;if(i==="observations"?T={doc_type:"observation"}:i==="sessions"?T={doc_type:"session_summary"}:i==="prompts"&&(T={doc_type:"user_prompt"}),u.project){let A={project:u.project};T=T?{$and:[T,A]}:A}let I=await this.queryChroma(n,100,T);if(E=!0,_.debug("SEARCH","ChromaDB returned semantic matches",{matchCount:I.ids.length}),I.ids.length>0){let{dateRange:A}=u,N,U;A?(A.start&&(N=typeof A.start=="number"?A.start:new Date(A.start).getTime()),A.end&&(U=typeof A.end=="number"?A.end:new Date(A.end).getTime())):N=Date.now()-Lt.RECENCY_WINDOW_MS;let V=I.metadatas.map((Le,kt)=>({id:I.ids[kt],meta:Le,isRecent:Le&&Le.created_at_epoch!=null&&(!N||Le.created_at_epoch>=N)&&(!U||Le.created_at_epoch<=U)})).filter(Le=>Le.isRecent);_.debug("SEARCH",A?"Results within user date range":"Results within 90-day window",{count:V.length});let j=[],ae=[],Me=[];for(let Le of V){let kt=Le.meta?.doc_type;kt==="observation"&&m?j.push(Le.id):kt==="session_summary"&&h?ae.push(Le.id):kt==="user_prompt"&&g&&Me.push(Le.id)}if(_.debug("SEARCH","Categorized results by type",{observations:j.length,sessions:ae.length,prompts:p.length}),j.length>0){let Le={...u,type:s,concepts:o,files:a};l=this.sessionStore.getObservationsByIds(j,Le)}ae.length>0&&(d=this.sessionStore.getSessionSummariesByIds(ae,{orderBy:"date_desc",limit:u.limit,project:u.project})),Me.length>0&&(p=this.sessionStore.getUserPromptsByIds(Me,{orderBy:"date_desc",limit:u.limit,project:u.project})),_.debug("SEARCH","Hydrated results from SQLite",{observations:l.length,sessions:d.length,prompts:p.length})}else _.debug("SEARCH","ChromaDB found no matches (final result, no FTS5 fallback)",{})}else n&&(f=!0,_.debug("SEARCH","ChromaDB not initialized - semantic search unavailable",{}),_.debug("SEARCH","Install UVX/Python to enable vector search",{url:"https://docs.astral.sh/uv/getting-started/installation/"}),l=[],d=[],p=[]);else{_.debug("SEARCH","Filter-only query (no query text), using direct SQLite filtering",{enablesDateFilters:!0});let E={...u,type:s,concepts:o,files:a};m&&(l=this.sessionSearch.searchObservations(void 0,E)),h&&(d=this.sessionSearch.searchSessions(void 0,u)),g&&(p=this.sessionSearch.searchUserPrompts(void 0,u))}let v=l.length+d.length+p.length;if(c==="json")return{observations:l,sessions:d,prompts:p,totalResults:v,query:n||""};if(v===0)return f?{content:[{type:"text",text:`Vector search failed - semantic search unavailable. To enable semantic search: 1. Install uv: https://docs.astral.sh/uv/getting-started/installation/ 2. Restart the worker: npm run worker:restart -Note: You can still use filter-only searches (date ranges, types, files) without a query term.`}]}:{content:[{type:"text",text:`No results found matching "${n}"`}]};let S=[...l.map(E=>({type:"observation",data:E,epoch:E.created_at_epoch,created_at:E.created_at})),...d.map(E=>({type:"session",data:E,epoch:E.created_at_epoch,created_at:E.created_at})),...p.map(E=>({type:"prompt",data:E,epoch:E.created_at_epoch,created_at:E.created_at}))];u.orderBy==="date_desc"?S.sort((E,T)=>T.epoch-E.epoch):u.orderBy==="date_asc"&&S.sort((E,T)=>E.epoch-T.epoch);let b=S.slice(0,u.limit||20),y=process.cwd(),x=Os(b,E=>E.created_at),w=[];w.push(`Found ${v} result(s) matching "${n}" (${l.length} obs, ${d.length} sessions, ${p.length} prompts)`),w.push("");for(let[E,T]of x){w.push(`### ${E}`),w.push("");let I=new Map;for(let A of T){let N="General";A.type==="observation"&&(N=vi(A.data.files_modified,y,A.data.files_read)),I.has(N)||I.set(N,[]),I.get(N).push(A)}for(let[A,N]of I){w.push(`**${A}**`),w.push(this.formatter.formatSearchTableHeader());let U="";for(let V of N)if(V.type==="observation"){let j=this.formatter.formatObservationSearchRow(V.data,U);w.push(j.row),U=j.time}else if(V.type==="session"){let j=this.formatter.formatSessionSearchRow(V.data,U);w.push(j.row),U=j.time}else{let j=this.formatter.formatUserPromptSearchRow(V.data,U);w.push(j.row),U=j.time}w.push("")}}return{content:[{type:"text",text:w.join(` -`)}]}}async timeline(e){let{anchor:r,query:n,depth_before:i=10,depth_after:s=10,project:o}=e,a=process.cwd();if(!r&&!n)return{content:[{type:"text",text:'Error: Must provide either "anchor" or "query" parameter'}],isError:!0};if(r&&n)return{content:[{type:"text",text:'Error: Cannot provide both "anchor" and "query" parameters. Use one or the other.'}],isError:!0};let c,u,l;if(n){let g=[];if(this.chromaSync)try{_.debug("SEARCH","Using hybrid semantic search for timeline query",{});let S=await this.queryChroma(n,100);if(_.debug("SEARCH","Chroma returned semantic matches for timeline",{matchCount:S?.ids?.length??0}),S?.ids&&S.ids.length>0){let b=Date.now()-Dt.RECENCY_WINDOW_MS,y=S.ids.filter((x,w)=>{let E=S.metadatas[w];return E&&E.created_at_epoch>b});y.length>0&&(g=this.sessionStore.getObservationsByIds(y,{orderBy:"date_desc",limit:1}))}}catch(S){_.error("SEARCH","Chroma search failed for timeline, continuing without semantic results",{},S)}if(g.length===0)return{content:[{type:"text",text:`No observations found matching "${n}". Try a different search query.`}]};let v=g[0];c=v.id,u=v.created_at_epoch,_.debug("SEARCH","Query mode: Using observation as timeline anchor",{observationId:v.id}),l=this.sessionStore.getTimelineAroundObservation(v.id,v.created_at_epoch,i,s,o)}else if(typeof r=="number"){let g=this.sessionStore.getObservationById(r);if(!g)return{content:[{type:"text",text:`Observation #${r} not found`}],isError:!0};c=r,u=g.created_at_epoch,l=this.sessionStore.getTimelineAroundObservation(r,u,i,s,o)}else if(typeof r=="string")if(r.startsWith("S")||r.startsWith("#S")){let g=r.replace(/^#?S/,""),v=parseInt(g,10),S=this.sessionStore.getSessionSummariesByIds([v]);if(S.length===0)return{content:[{type:"text",text:`Session #${v} not found`}],isError:!0};u=S[0].created_at_epoch,c=`S${v}`,l=this.sessionStore.getTimelineAroundTimestamp(u,i,s,o)}else{let g=new Date(r);if(isNaN(g.getTime()))return{content:[{type:"text",text:`Invalid timestamp: ${r}`}],isError:!0};u=g.getTime(),c=r,l=this.sessionStore.getTimelineAroundTimestamp(u,i,s,o)}else return{content:[{type:"text",text:'Invalid anchor: must be observation ID (number), session ID (e.g., "S123"), or ISO timestamp'}],isError:!0};let d=[...(l.observations||[]).map(g=>({type:"observation",data:g,epoch:g.created_at_epoch})),...(l.sessions||[]).map(g=>({type:"session",data:g,epoch:g.created_at_epoch})),...(l.prompts||[]).map(g=>({type:"prompt",data:g,epoch:g.created_at_epoch}))];d.sort((g,v)=>g.epoch-v.epoch);let p=this.timelineService.filterByDepth(d,c,u,i,s);if(!p||p.length===0)return{content:[{type:"text",text:n?`Found observation matching "${n}", but no timeline context available (${i} records before, ${s} records after).`:`No context found around anchor (${i} records before, ${s} records after)`}]};let f=[];if(n){let g=p.find(S=>S.type==="observation"&&S.data.id===c),v=g&&g.type==="observation"?g.data.title||"Untitled":"Unknown";f.push(`# Timeline for query: "${n}"`),f.push(`**Anchor:** Observation #${c} - ${v}`)}else f.push(`# Timeline around anchor: ${c}`);f.push(`**Window:** ${i} records before -> ${s} records after | **Items:** ${p?.length??0}`),f.push("");let m=new Map;for(let g of p){let v=Rs(g.epoch);m.has(v)||m.set(v,[]),m.get(v).push(g)}let h=Array.from(m.entries()).sort((g,v)=>{let S=new Date(g[0]).getTime(),b=new Date(v[0]).getTime();return S-b});for(let[g,v]of h){f.push(`### ${g}`),f.push("");let S=null,b="",y=!1;for(let x of v){let w=typeof c=="number"&&x.type==="observation"&&x.data.id===c||typeof c=="string"&&c.startsWith("S")&&x.type==="session"&&`S${x.data.id}`===c;if(x.type==="session"){y&&(f.push(""),y=!1,S=null,b="");let E=x.data,T=E.request||"Session summary",I=w?" <- **ANCHOR**":"";f.push(`**\u{1F3AF} #S${E.id}** ${T} (${Rn(x.epoch)})${I}`),f.push("")}else if(x.type==="prompt"){y&&(f.push(""),y=!1,S=null,b="");let E=x.data,T=E.prompt_text.length>100?E.prompt_text.substring(0,100)+"...":E.prompt_text;f.push(`**\u{1F4AC} User Prompt #${E.prompt_number}** (${Rn(x.epoch)})`),f.push(`> ${T}`),f.push("")}else if(x.type==="observation"){let E=x.data,T=vi(E.files_modified,a,E.files_read);T!==S&&(y&&f.push(""),f.push(`**${T}**`),f.push("| ID | Time | T | Title | Tokens |"),f.push("|----|------|---|-------|--------|"),S=T,y=!0,b="");let I=He.getInstance().getTypeIcon(E.type),A=pr(x.epoch),N=E.title||"Untitled",U=du(E.narrative),j=A!==b?A:'"';b=A;let ae=w?" <- **ANCHOR**":"";f.push(`| #${E.id} | ${j} | ${I} | ${N}${ae} | ~${U} |`)}}y&&f.push("")}return{content:[{type:"text",text:f.join(` +Note: You can still use filter-only searches (date ranges, types, files) without a query term.`}]}:{content:[{type:"text",text:`No results found matching "${n}"`}]};let y=[...l.map(E=>({type:"observation",data:E,epoch:E.created_at_epoch,created_at:E.created_at})),...d.map(E=>({type:"session",data:E,epoch:E.created_at_epoch,created_at:E.created_at})),...p.map(E=>({type:"prompt",data:E,epoch:E.created_at_epoch,created_at:E.created_at}))];u.orderBy==="date_desc"?y.sort((E,T)=>T.epoch-E.epoch):u.orderBy==="date_asc"&&y.sort((E,T)=>E.epoch-T.epoch);let b=y.slice(0,u.limit||20),S=process.cwd(),x=Ds(b,E=>E.created_at),w=[];w.push(`Found ${v} result(s) matching "${n}" (${l.length} obs, ${d.length} sessions, ${p.length} prompts)`),w.push("");for(let[E,T]of x){w.push(`### ${E}`),w.push("");let I=new Map;for(let A of T){let N="General";A.type==="observation"&&(N=Si(A.data.files_modified,S,A.data.files_read)),I.has(N)||I.set(N,[]),I.get(N).push(A)}for(let[A,N]of I){w.push(`**${A}**`),w.push(this.formatter.formatSearchTableHeader());let U="";for(let V of N)if(V.type==="observation"){let j=this.formatter.formatObservationSearchRow(V.data,U);w.push(j.row),U=j.time}else if(V.type==="session"){let j=this.formatter.formatSessionSearchRow(V.data,U);w.push(j.row),U=j.time}else{let j=this.formatter.formatUserPromptSearchRow(V.data,U);w.push(j.row),U=j.time}w.push("")}}return{content:[{type:"text",text:w.join(` +`)}]}}async timeline(e){let{anchor:r,query:n,depth_before:i=10,depth_after:s=10,project:o}=e,a=process.cwd();if(!r&&!n)return{content:[{type:"text",text:'Error: Must provide either "anchor" or "query" parameter'}],isError:!0};if(r&&n)return{content:[{type:"text",text:'Error: Cannot provide both "anchor" and "query" parameters. Use one or the other.'}],isError:!0};let c,u,l;if(n){let g=[];if(this.chromaSync)try{_.debug("SEARCH","Using hybrid semantic search for timeline query",{});let y=await this.queryChroma(n,100);if(_.debug("SEARCH","Chroma returned semantic matches for timeline",{matchCount:y?.ids?.length??0}),y?.ids&&y.ids.length>0){let b=Date.now()-Lt.RECENCY_WINDOW_MS,S=y.ids.filter((x,w)=>{let E=y.metadatas[w];return E&&E.created_at_epoch>b});S.length>0&&(g=this.sessionStore.getObservationsByIds(S,{orderBy:"date_desc",limit:1}))}}catch(y){_.error("SEARCH","Chroma search failed for timeline, continuing without semantic results",{},y)}if(g.length===0)return{content:[{type:"text",text:`No observations found matching "${n}". Try a different search query.`}]};let v=g[0];c=v.id,u=v.created_at_epoch,_.debug("SEARCH","Query mode: Using observation as timeline anchor",{observationId:v.id}),l=this.sessionStore.getTimelineAroundObservation(v.id,v.created_at_epoch,i,s,o)}else if(typeof r=="number"){let g=this.sessionStore.getObservationById(r);if(!g)return{content:[{type:"text",text:`Observation #${r} not found`}],isError:!0};c=r,u=g.created_at_epoch,l=this.sessionStore.getTimelineAroundObservation(r,u,i,s,o)}else if(typeof r=="string")if(r.startsWith("S")||r.startsWith("#S")){let g=r.replace(/^#?S/,""),v=parseInt(g,10),y=this.sessionStore.getSessionSummariesByIds([v]);if(y.length===0)return{content:[{type:"text",text:`Session #${v} not found`}],isError:!0};u=y[0].created_at_epoch,c=`S${v}`,l=this.sessionStore.getTimelineAroundTimestamp(u,i,s,o)}else{let g=new Date(r);if(isNaN(g.getTime()))return{content:[{type:"text",text:`Invalid timestamp: ${r}`}],isError:!0};u=g.getTime(),c=r,l=this.sessionStore.getTimelineAroundTimestamp(u,i,s,o)}else return{content:[{type:"text",text:'Invalid anchor: must be observation ID (number), session ID (e.g., "S123"), or ISO timestamp'}],isError:!0};let d=[...(l.observations||[]).map(g=>({type:"observation",data:g,epoch:g.created_at_epoch})),...(l.sessions||[]).map(g=>({type:"session",data:g,epoch:g.created_at_epoch})),...(l.prompts||[]).map(g=>({type:"prompt",data:g,epoch:g.created_at_epoch}))];d.sort((g,v)=>g.epoch-v.epoch);let p=this.timelineService.filterByDepth(d,c,u,i,s);if(!p||p.length===0)return{content:[{type:"text",text:n?`Found observation matching "${n}", but no timeline context available (${i} records before, ${s} records after).`:`No context found around anchor (${i} records before, ${s} records after)`}]};let f=[];if(n){let g=p.find(y=>y.type==="observation"&&y.data.id===c),v=g&&g.type==="observation"?g.data.title||"Untitled":"Unknown";f.push(`# Timeline for query: "${n}"`),f.push(`**Anchor:** Observation #${c} - ${v}`)}else f.push(`# Timeline around anchor: ${c}`);f.push(`**Window:** ${i} records before -> ${s} records after | **Items:** ${p?.length??0}`),f.push("");let m=new Map;for(let g of p){let v=Ns(g.epoch);m.has(v)||m.set(v,[]),m.get(v).push(g)}let h=Array.from(m.entries()).sort((g,v)=>{let y=new Date(g[0]).getTime(),b=new Date(v[0]).getTime();return y-b});for(let[g,v]of h){f.push(`### ${g}`),f.push("");let y=null,b="",S=!1;for(let x of v){let w=typeof c=="number"&&x.type==="observation"&&x.data.id===c||typeof c=="string"&&c.startsWith("S")&&x.type==="session"&&`S${x.data.id}`===c;if(x.type==="session"){S&&(f.push(""),S=!1,y=null,b="");let E=x.data,T=E.request||"Session summary",I=w?" <- **ANCHOR**":"";f.push(`**\u{1F3AF} #S${E.id}** ${T} (${An(x.epoch)})${I}`),f.push("")}else if(x.type==="prompt"){S&&(f.push(""),S=!1,y=null,b="");let E=x.data,T=E.prompt_text.length>100?E.prompt_text.substring(0,100)+"...":E.prompt_text;f.push(`**\u{1F4AC} User Prompt #${E.prompt_number}** (${An(x.epoch)})`),f.push(`> ${T}`),f.push("")}else if(x.type==="observation"){let E=x.data,T=Si(E.files_modified,a,E.files_read);T!==y&&(S&&f.push(""),f.push(`**${T}**`),f.push("| ID | Time | T | Title | Tokens |"),f.push("|----|------|---|-------|--------|"),y=T,S=!0,b="");let I=He.getInstance().getTypeIcon(E.type),A=hr(x.epoch),N=E.title||"Untitled",U=Ms(E.narrative),j=A!==b?A:'"';b=A;let ae=w?" <- **ANCHOR**":"";f.push(`| #${E.id} | ${j} | ${I} | ${N}${ae} | ~${U} |`)}}S&&f.push("")}return{content:[{type:"text",text:f.join(` `)}]}}async decisions(e){let r=this.normalizeParams(e),{query:n,...i}=r,s=[];if(this.chromaSync)try{if(n){_.debug("SEARCH","Using Chroma semantic search with type=decision filter",{});let u=(await this.queryChroma(n,Math.min((i.limit||20)*2,100),{type:"decision"})).ids;u.length>0&&(s=this.sessionStore.getObservationsByIds(u,{...i,type:"decision"}),s.sort((l,d)=>u.indexOf(l.id)-u.indexOf(d.id)))}else{_.debug("SEARCH","Using metadata-first + semantic ranking for decisions",{});let c=this.sessionSearch.findByType("decision",i);if(c.length>0){let u=c.map(p=>p.id),l=await this.queryChroma("decision",Math.min(u.length,100)),d=[];for(let p of l.ids)u.includes(p)&&!d.includes(p)&&d.push(p);d.length>0&&(s=this.sessionStore.getObservationsByIds(d,{limit:i.limit||20}),s.sort((p,f)=>d.indexOf(p.id)-d.indexOf(f.id)))}}}catch(c){_.error("SEARCH","Chroma search failed for decisions, falling back to metadata search",{},c)}if(s.length===0&&(s=this.sessionSearch.findByType("decision",i)),s.length===0)return{content:[{type:"text",text:"No decision observations found"}]};let o=`Found ${s.length} decision(s) ${this.formatter.formatTableHeader()}`,a=s.map((c,u)=>this.formatter.formatObservationIndex(c,u));return{content:[{type:"text",text:o+` @@ -1445,15 +1581,15 @@ ${this.formatter.formatTableHeader()}`,o=i.map((a,c)=>this.formatter.formatObser ${this.formatter.formatTableHeader()}`,o=i.map((a,c)=>this.formatter.formatObservationIndex(a,c));return{content:[{type:"text",text:s+` `+o.join(` -`)}]}}async searchObservations(e){let r=this.normalizeParams(e),{query:n,...i}=r,s=[];if(this.chromaSync){_.debug("SEARCH","Using hybrid semantic search (Chroma + SQLite)",{});let c=await this.queryChroma(n,100);if(_.debug("SEARCH","Chroma returned semantic matches",{matchCount:c.ids.length}),c.ids.length>0){let u=Date.now()-Dt.RECENCY_WINDOW_MS,l=c.ids.filter((d,p)=>{let f=c.metadatas[p];return f&&f.created_at_epoch>u});if(_.debug("SEARCH","Results within 90-day window",{count:l.length}),l.length>0){let d=i.limit||20;s=this.sessionStore.getObservationsByIds(l,{orderBy:"date_desc",limit:d}),_.debug("SEARCH","Hydrated observations from SQLite",{count:s.length})}}}if(s.length===0)return{content:[{type:"text",text:`No observations found matching "${n}"`}]};let o=`Found ${s.length} observation(s) matching "${n}" +`)}]}}async searchObservations(e){let r=this.normalizeParams(e),{query:n,...i}=r,s=[];if(this.chromaSync){_.debug("SEARCH","Using hybrid semantic search (Chroma + SQLite)",{});let c=await this.queryChroma(n,100);if(_.debug("SEARCH","Chroma returned semantic matches",{matchCount:c.ids.length}),c.ids.length>0){let u=Date.now()-Lt.RECENCY_WINDOW_MS,l=c.ids.filter((d,p)=>{let f=c.metadatas[p];return f&&f.created_at_epoch>u});if(_.debug("SEARCH","Results within 90-day window",{count:l.length}),l.length>0){let d=i.limit||20;s=this.sessionStore.getObservationsByIds(l,{orderBy:"date_desc",limit:d}),_.debug("SEARCH","Hydrated observations from SQLite",{count:s.length})}}}if(s.length===0)return{content:[{type:"text",text:`No observations found matching "${n}"`}]};let o=`Found ${s.length} observation(s) matching "${n}" ${this.formatter.formatTableHeader()}`,a=s.map((c,u)=>this.formatter.formatObservationIndex(c,u));return{content:[{type:"text",text:o+` `+a.join(` -`)}]}}async searchSessions(e){let r=this.normalizeParams(e),{query:n,...i}=r,s=[];if(this.chromaSync){_.debug("SEARCH","Using hybrid semantic search for sessions",{});let c=await this.queryChroma(n,100,{doc_type:"session_summary"});if(_.debug("SEARCH","Chroma returned semantic matches for sessions",{matchCount:c.ids.length}),c.ids.length>0){let u=Date.now()-Dt.RECENCY_WINDOW_MS,l=c.ids.filter((d,p)=>{let f=c.metadatas[p];return f&&f.created_at_epoch>u});if(_.debug("SEARCH","Results within 90-day window",{count:l.length}),l.length>0){let d=i.limit||20;s=this.sessionStore.getSessionSummariesByIds(l,{orderBy:"date_desc",limit:d}),_.debug("SEARCH","Hydrated sessions from SQLite",{count:s.length})}}}if(s.length===0)return{content:[{type:"text",text:`No sessions found matching "${n}"`}]};let o=`Found ${s.length} session(s) matching "${n}" +`)}]}}async searchSessions(e){let r=this.normalizeParams(e),{query:n,...i}=r,s=[];if(this.chromaSync){_.debug("SEARCH","Using hybrid semantic search for sessions",{});let c=await this.queryChroma(n,100,{doc_type:"session_summary"});if(_.debug("SEARCH","Chroma returned semantic matches for sessions",{matchCount:c.ids.length}),c.ids.length>0){let u=Date.now()-Lt.RECENCY_WINDOW_MS,l=c.ids.filter((d,p)=>{let f=c.metadatas[p];return f&&f.created_at_epoch>u});if(_.debug("SEARCH","Results within 90-day window",{count:l.length}),l.length>0){let d=i.limit||20;s=this.sessionStore.getSessionSummariesByIds(l,{orderBy:"date_desc",limit:d}),_.debug("SEARCH","Hydrated sessions from SQLite",{count:s.length})}}}if(s.length===0)return{content:[{type:"text",text:`No sessions found matching "${n}"`}]};let o=`Found ${s.length} session(s) matching "${n}" ${this.formatter.formatTableHeader()}`,a=s.map((c,u)=>this.formatter.formatSessionIndex(c,u));return{content:[{type:"text",text:o+` `+a.join(` -`)}]}}async searchUserPrompts(e){let r=this.normalizeParams(e),{query:n,...i}=r,s=[];if(this.chromaSync){_.debug("SEARCH","Using hybrid semantic search for user prompts",{});let c=await this.queryChroma(n,100,{doc_type:"user_prompt"});if(_.debug("SEARCH","Chroma returned semantic matches for prompts",{matchCount:c.ids.length}),c.ids.length>0){let u=Date.now()-Dt.RECENCY_WINDOW_MS,l=c.ids.filter((d,p)=>{let f=c.metadatas[p];return f&&f.created_at_epoch>u});if(_.debug("SEARCH","Results within 90-day window",{count:l.length}),l.length>0){let d=i.limit||20;s=this.sessionStore.getUserPromptsByIds(l,{orderBy:"date_desc",limit:d}),_.debug("SEARCH","Hydrated user prompts from SQLite",{count:s.length})}}}if(s.length===0)return{content:[{type:"text",text:n?`No user prompts found matching "${n}"`:"No user prompts found"}]};let o=`Found ${s.length} user prompt(s) matching "${n}" +`)}]}}async searchUserPrompts(e){let r=this.normalizeParams(e),{query:n,...i}=r,s=[];if(this.chromaSync){_.debug("SEARCH","Using hybrid semantic search for user prompts",{});let c=await this.queryChroma(n,100,{doc_type:"user_prompt"});if(_.debug("SEARCH","Chroma returned semantic matches for prompts",{matchCount:c.ids.length}),c.ids.length>0){let u=Date.now()-Lt.RECENCY_WINDOW_MS,l=c.ids.filter((d,p)=>{let f=c.metadatas[p];return f&&f.created_at_epoch>u});if(_.debug("SEARCH","Results within 90-day window",{count:l.length}),l.length>0){let d=i.limit||20;s=this.sessionStore.getUserPromptsByIds(l,{orderBy:"date_desc",limit:d}),_.debug("SEARCH","Hydrated user prompts from SQLite",{count:s.length})}}}if(s.length===0)return{content:[{type:"text",text:n?`No user prompts found matching "${n}"`:"No user prompts found"}]};let o=`Found ${s.length} user prompt(s) matching "${n}" ${this.formatter.formatTableHeader()}`,a=s.map((c,u)=>this.formatter.formatUserPromptIndex(c,u));return{content:[{type:"text",text:o+` `+a.join(` @@ -1461,18 +1597,18 @@ ${this.formatter.formatTableHeader()}`,a=s.map((c,u)=>this.formatter.formatUserP ${this.formatter.formatTableHeader()}`,a=s.map((c,u)=>this.formatter.formatObservationIndex(c,u));return{content:[{type:"text",text:o+` `+a.join(` -`)}]}}async findByFile(e){let r=this.normalizeParams(e),{files:n,...i}=r,s=Array.isArray(n)?n[0]:n,o=[],a=[];if(this.chromaSync){_.debug("SEARCH","Using metadata-first + semantic ranking for file search",{});let p=this.sessionSearch.findByFile(s,i);if(_.debug("SEARCH","Found results for file",{file:s,observations:p.observations.length,sessions:p.sessions.length}),a=p.sessions,p.observations.length>0){let f=p.observations.map(g=>g.id),m=await this.queryChroma(s,Math.min(f.length,100)),h=[];for(let g of m.ids)f.includes(g)&&!h.includes(g)&&h.push(g);_.debug("SEARCH","Chroma ranked observations by semantic relevance",{count:h.length}),h.length>0&&(o=this.sessionStore.getObservationsByIds(h,{limit:i.limit||20}),o.sort((g,v)=>h.indexOf(g.id)-h.indexOf(v.id)))}}if(o.length===0&&a.length===0){_.debug("SEARCH","Using SQLite-only file search",{});let p=this.sessionSearch.findByFile(s,i);o=p.observations,a=p.sessions}let c=o.length+a.length;if(c===0)return{content:[{type:"text",text:`No results found for file "${s}"`}]};let u=[...o.map(p=>({type:"observation",data:p,epoch:p.created_at_epoch,created_at:p.created_at})),...a.map(p=>({type:"session",data:p,epoch:p.created_at_epoch,created_at:p.created_at}))];u.sort((p,f)=>f.epoch-p.epoch);let l=Os(u,p=>p.created_at),d=[];d.push(`Found ${c} result(s) for file "${s}"`),d.push("");for(let[p,f]of l){d.push(`### ${p}`),d.push(""),d.push(this.formatter.formatTableHeader());for(let m of f)m.type==="observation"?d.push(this.formatter.formatObservationIndex(m.data,0)):d.push(this.formatter.formatSessionIndex(m.data,0));d.push("")}return{content:[{type:"text",text:d.join(` +`)}]}}async findByFile(e){let r=this.normalizeParams(e),{files:n,...i}=r,s=Array.isArray(n)?n[0]:n,o=[],a=[];if(this.chromaSync){_.debug("SEARCH","Using metadata-first + semantic ranking for file search",{});let p=this.sessionSearch.findByFile(s,i);if(_.debug("SEARCH","Found results for file",{file:s,observations:p.observations.length,sessions:p.sessions.length}),a=p.sessions,p.observations.length>0){let f=p.observations.map(g=>g.id),m=await this.queryChroma(s,Math.min(f.length,100)),h=[];for(let g of m.ids)f.includes(g)&&!h.includes(g)&&h.push(g);_.debug("SEARCH","Chroma ranked observations by semantic relevance",{count:h.length}),h.length>0&&(o=this.sessionStore.getObservationsByIds(h,{limit:i.limit||20}),o.sort((g,v)=>h.indexOf(g.id)-h.indexOf(v.id)))}}if(o.length===0&&a.length===0){_.debug("SEARCH","Using SQLite-only file search",{});let p=this.sessionSearch.findByFile(s,i);o=p.observations,a=p.sessions}let c=o.length+a.length;if(c===0)return{content:[{type:"text",text:`No results found for file "${s}"`}]};let u=[...o.map(p=>({type:"observation",data:p,epoch:p.created_at_epoch,created_at:p.created_at})),...a.map(p=>({type:"session",data:p,epoch:p.created_at_epoch,created_at:p.created_at}))];u.sort((p,f)=>f.epoch-p.epoch);let l=Ds(u,p=>p.created_at),d=[];d.push(`Found ${c} result(s) for file "${s}"`),d.push("");for(let[p,f]of l){d.push(`### ${p}`),d.push(""),d.push(this.formatter.formatTableHeader());for(let m of f)m.type==="observation"?d.push(this.formatter.formatObservationIndex(m.data,0)):d.push(this.formatter.formatSessionIndex(m.data,0));d.push("")}return{content:[{type:"text",text:d.join(` `)}]}}async findByType(e){let r=this.normalizeParams(e),{type:n,...i}=r,s=Array.isArray(n)?n.join(", "):n,o=[];if(this.chromaSync){_.debug("SEARCH","Using metadata-first + semantic ranking for type search",{});let u=this.sessionSearch.findByType(n,i);if(_.debug("SEARCH","Found observations with type",{type:s,count:u.length}),u.length>0){let l=u.map(f=>f.id),d=await this.queryChroma(s,Math.min(l.length,100)),p=[];for(let f of d.ids)l.includes(f)&&!p.includes(f)&&p.push(f);_.debug("SEARCH","Chroma ranked results by semantic relevance",{count:p.length}),p.length>0&&(o=this.sessionStore.getObservationsByIds(p,{limit:i.limit||20}),o.sort((f,m)=>p.indexOf(f.id)-p.indexOf(m.id)))}}if(o.length===0&&(_.debug("SEARCH","Using SQLite-only type search",{}),o=this.sessionSearch.findByType(n,i)),o.length===0)return{content:[{type:"text",text:`No observations found with type "${s}"`}]};let a=`Found ${o.length} observation(s) with type "${s}" ${this.formatter.formatTableHeader()}`,c=o.map((u,l)=>this.formatter.formatObservationIndex(u,l));return{content:[{type:"text",text:a+` `+c.join(` -`)}]}}async getRecentContext(e){let r=e.project||(0,g9.basename)(process.cwd()),n=e.limit||3,i=this.sessionStore.getRecentSessionsWithStatus(r,n);if(i.length===0)return{content:[{type:"text",text:`# Recent Session Context +`)}]}}async getRecentContext(e){let r=e.project||(0,z9.basename)(process.cwd()),n=e.limit||3,i=this.sessionStore.getRecentSessionsWithStatus(r,n);if(i.length===0)return{content:[{type:"text",text:`# Recent Session Context No previous sessions found for project "${r}".`}]};let s=[];s.push("# Recent Session Context"),s.push(""),s.push(`Showing last ${i.length} session(s) for **${r}**:`),s.push("");for(let o of i)if(o.memory_session_id){if(s.push("---"),s.push(""),o.has_summary){let a=this.sessionStore.getSummaryForSession(o.memory_session_id);if(a){let c=a.prompt_number?` (Prompt #${a.prompt_number})`:"";if(s.push(`**Summary${c}**`),s.push(""),a.request&&s.push(`**Request:** ${a.request}`),a.completed&&s.push(`**Completed:** ${a.completed}`),a.learned&&s.push(`**Learned:** ${a.learned}`),a.next_steps&&s.push(`**Next Steps:** ${a.next_steps}`),a.files_read)try{let l=JSON.parse(a.files_read);Array.isArray(l)&&l.length>0&&s.push(`**Files Read:** ${l.join(", ")}`)}catch(l){_.debug("WORKER","files_read is plain string, using as-is",{},l),a.files_read.trim()&&s.push(`**Files Read:** ${a.files_read}`)}if(a.files_edited)try{let l=JSON.parse(a.files_edited);Array.isArray(l)&&l.length>0&&s.push(`**Files Edited:** ${l.join(", ")}`)}catch(l){_.debug("WORKER","files_edited is plain string, using as-is",{},l),a.files_edited.trim()&&s.push(`**Files Edited:** ${a.files_edited}`)}let u=new Date(a.created_at).toLocaleString();s.push(`**Date:** ${u}`)}}else if(o.status==="active"){s.push("**In Progress**"),s.push(""),o.user_prompt&&s.push(`**Request:** ${o.user_prompt}`);let a=this.sessionStore.getObservationsForSession(o.memory_session_id);if(a.length>0){s.push(""),s.push(`**Observations (${a.length}):**`);for(let u of a)s.push(`- ${u.title}`)}else s.push(""),s.push("*No observations yet*");s.push(""),s.push("**Status:** Active - summary pending");let c=new Date(o.started_at).toLocaleString();s.push(`**Date:** ${c}`)}else{s.push(`**${o.status.charAt(0).toUpperCase()+o.status.slice(1)}**`),s.push(""),o.user_prompt&&s.push(`**Request:** ${o.user_prompt}`),s.push(""),s.push(`**Status:** ${o.status} - no summary available`);let a=new Date(o.started_at).toLocaleString();s.push(`**Date:** ${a}`)}s.push("")}return{content:[{type:"text",text:s.join(` -`)}]}}async getContextTimeline(e){let{anchor:r,depth_before:n=10,depth_after:i=10,project:s}=e,o=process.cwd(),a,c=r,u;if(typeof r=="number"){let h=this.sessionStore.getObservationById(r);if(!h)return{content:[{type:"text",text:`Observation #${r} not found`}],isError:!0};a=h.created_at_epoch,u=this.sessionStore.getTimelineAroundObservation(r,a,n,i,s)}else if(typeof r=="string")if(r.startsWith("S")||r.startsWith("#S")){let h=r.replace(/^#?S/,""),g=parseInt(h,10),v=this.sessionStore.getSessionSummariesByIds([g]);if(v.length===0)return{content:[{type:"text",text:`Session #${g} not found`}],isError:!0};a=v[0].created_at_epoch,c=`S${g}`,u=this.sessionStore.getTimelineAroundTimestamp(a,n,i,s)}else{let h=new Date(r);if(isNaN(h.getTime()))return{content:[{type:"text",text:`Invalid timestamp: ${r}`}],isError:!0};a=h.getTime(),u=this.sessionStore.getTimelineAroundTimestamp(a,n,i,s)}else return{content:[{type:"text",text:'Invalid anchor: must be observation ID (number), session ID (e.g., "S123"), or ISO timestamp'}],isError:!0};let l=[...u.observations.map(h=>({type:"observation",data:h,epoch:h.created_at_epoch})),...u.sessions.map(h=>({type:"session",data:h,epoch:h.created_at_epoch})),...u.prompts.map(h=>({type:"prompt",data:h,epoch:h.created_at_epoch}))];l.sort((h,g)=>h.epoch-g.epoch);let d=this.timelineService.filterByDepth(l,c,a,n,i);if(!d||d.length===0)return{content:[{type:"text",text:`No context found around ${new Date(a).toLocaleString()} (${n} records before, ${i} records after)`}]};let p=[];p.push(`# Timeline around anchor: ${c}`),p.push(`**Window:** ${n} records before -> ${i} records after | **Items:** ${d?.length??0}`),p.push("");let f=new Map;for(let h of d){let g=Rs(h.epoch);f.has(g)||f.set(g,[]),f.get(g).push(h)}let m=Array.from(f.entries()).sort((h,g)=>{let v=new Date(h[0]).getTime(),S=new Date(g[0]).getTime();return v-S});for(let[h,g]of m){p.push(`### ${h}`),p.push("");let v=null,S="",b=!1;for(let y of g){let x=typeof c=="number"&&y.type==="observation"&&y.data.id===c||typeof c=="string"&&c.startsWith("S")&&y.type==="session"&&`S${y.data.id}`===c;if(y.type==="session"){b&&(p.push(""),b=!1,v=null,S="");let w=y.data,E=w.request||"Session summary",T=x?" <- **ANCHOR**":"";p.push(`**\u{1F3AF} #S${w.id}** ${E} (${Rn(y.epoch)})${T}`),p.push("")}else if(y.type==="prompt"){b&&(p.push(""),b=!1,v=null,S="");let w=y.data,E=w.prompt_text.length>100?w.prompt_text.substring(0,100)+"...":w.prompt_text;p.push(`**\u{1F4AC} User Prompt #${w.prompt_number}** (${Rn(y.epoch)})`),p.push(`> ${E}`),p.push("")}else if(y.type==="observation"){let w=y.data,E=vi(w.files_modified,o,w.files_read);E!==v&&(b&&p.push(""),p.push(`**${E}**`),p.push("| ID | Time | T | Title | Tokens |"),p.push("|----|------|---|-------|--------|"),v=E,b=!0,S="");let T=He.getInstance().getTypeIcon(w.type),I=pr(y.epoch),A=w.title||"Untitled",N=du(w.narrative),V=I!==S?I:'"';S=I;let j=x?" <- **ANCHOR**":"";p.push(`| #${w.id} | ${V} | ${T} | ${A}${j} | ~${N} |`)}}b&&p.push("")}return{content:[{type:"text",text:p.join(` -`)}]}}async getTimelineByQuery(e){let{query:r,mode:n="auto",depth_before:i=10,depth_after:s=10,limit:o=5,project:a}=e,c=process.cwd(),u=[];if(this.chromaSync){_.debug("SEARCH","Using hybrid semantic search for timeline query",{});let l=await this.queryChroma(r,100);if(_.debug("SEARCH","Chroma returned semantic matches for timeline",{matchCount:l.ids.length}),l.ids.length>0){let d=Date.now()-Dt.RECENCY_WINDOW_MS,p=l.ids.filter((f,m)=>{let h=l.metadatas[m];return h&&h.created_at_epoch>d});_.debug("SEARCH","Results within 90-day window",{count:p.length}),p.length>0&&(u=this.sessionStore.getObservationsByIds(p,{orderBy:"date_desc",limit:n==="auto"?1:o}),_.debug("SEARCH","Hydrated observations from SQLite",{count:u.length}))}}if(u.length===0)return{content:[{type:"text",text:`No observations found matching "${r}". Try a different search query.`}]};if(n==="interactive"){let l=[];l.push("# Timeline Anchor Search Results"),l.push(""),l.push(`Found ${u.length} observation(s) matching "${r}"`),l.push(""),l.push("To get timeline context around any of these observations, use the `get_context_timeline` tool with the observation ID as the anchor."),l.push(""),l.push(`**Top ${u.length} matches:**`),l.push("");for(let d=0;d({type:"observation",data:v,epoch:v.created_at_epoch})),...(d.sessions||[]).map(v=>({type:"session",data:v,epoch:v.created_at_epoch})),...(d.prompts||[]).map(v=>({type:"prompt",data:v,epoch:v.created_at_epoch}))];p.sort((v,S)=>v.epoch-S.epoch);let f=this.timelineService.filterByDepth(p,l.id,0,i,s);if(!f||f.length===0)return{content:[{type:"text",text:`Found observation #${l.id} matching "${r}", but no timeline context available (${i} records before, ${s} records after).`}]};let m=[];m.push(`# Timeline for query: "${r}"`),m.push(`**Anchor:** Observation #${l.id} - ${l.title||"Untitled"}`),m.push(`**Window:** ${i} records before -> ${s} records after | **Items:** ${f?.length??0}`),m.push("");let h=new Map;for(let v of f){let S=Rs(v.epoch);h.has(S)||h.set(S,[]),h.get(S).push(v)}let g=Array.from(h.entries()).sort((v,S)=>{let b=new Date(v[0]).getTime(),y=new Date(S[0]).getTime();return b-y});for(let[v,S]of g){m.push(`### ${v}`),m.push("");let b=null,y="",x=!1;for(let w of S){let E=w.type==="observation"&&w.data.id===l.id;if(w.type==="session"){x&&(m.push(""),x=!1,b=null,y="");let T=w.data,I=T.request||"Session summary";m.push(`**\u{1F3AF} #S${T.id}** ${I} (${Rn(w.epoch)})`),m.push("")}else if(w.type==="prompt"){x&&(m.push(""),x=!1,b=null,y="");let T=w.data,I=T.prompt_text.length>100?T.prompt_text.substring(0,100)+"...":T.prompt_text;m.push(`**\u{1F4AC} User Prompt #${T.prompt_number}** (${Rn(w.epoch)})`),m.push(`> ${I}`),m.push("")}else if(w.type==="observation"){let T=w.data,I=vi(T.files_modified,c,T.files_read);I!==b&&(x&&m.push(""),m.push(`**${I}**`),m.push("| ID | Time | T | Title | Tokens |"),m.push("|----|------|---|-------|--------|"),b=I,x=!0,y="");let A=He.getInstance().getTypeIcon(T.type),N=pr(w.epoch),U=T.title||"Untitled",V=du(T.narrative),ae=N!==y?N:'"';y=N;let Me=E?" <- **ANCHOR**":"";m.push(`| #${T.id} | ${ae} | ${A} | ${U}${Me} | ~${V} |`)}}x&&m.push("")}return{content:[{type:"text",text:m.join(` -`)}]}}}};Qr();var y_e=4,dy=class{formatSearchTips(){return` +`)}]}}async getContextTimeline(e){let{anchor:r,depth_before:n=10,depth_after:i=10,project:s}=e,o=process.cwd(),a,c=r,u;if(typeof r=="number"){let h=this.sessionStore.getObservationById(r);if(!h)return{content:[{type:"text",text:`Observation #${r} not found`}],isError:!0};a=h.created_at_epoch,u=this.sessionStore.getTimelineAroundObservation(r,a,n,i,s)}else if(typeof r=="string")if(r.startsWith("S")||r.startsWith("#S")){let h=r.replace(/^#?S/,""),g=parseInt(h,10),v=this.sessionStore.getSessionSummariesByIds([g]);if(v.length===0)return{content:[{type:"text",text:`Session #${g} not found`}],isError:!0};a=v[0].created_at_epoch,c=`S${g}`,u=this.sessionStore.getTimelineAroundTimestamp(a,n,i,s)}else{let h=new Date(r);if(isNaN(h.getTime()))return{content:[{type:"text",text:`Invalid timestamp: ${r}`}],isError:!0};a=h.getTime(),u=this.sessionStore.getTimelineAroundTimestamp(a,n,i,s)}else return{content:[{type:"text",text:'Invalid anchor: must be observation ID (number), session ID (e.g., "S123"), or ISO timestamp'}],isError:!0};let l=[...u.observations.map(h=>({type:"observation",data:h,epoch:h.created_at_epoch})),...u.sessions.map(h=>({type:"session",data:h,epoch:h.created_at_epoch})),...u.prompts.map(h=>({type:"prompt",data:h,epoch:h.created_at_epoch}))];l.sort((h,g)=>h.epoch-g.epoch);let d=this.timelineService.filterByDepth(l,c,a,n,i);if(!d||d.length===0)return{content:[{type:"text",text:`No context found around ${new Date(a).toLocaleString()} (${n} records before, ${i} records after)`}]};let p=[];p.push(`# Timeline around anchor: ${c}`),p.push(`**Window:** ${n} records before -> ${i} records after | **Items:** ${d?.length??0}`),p.push("");let f=new Map;for(let h of d){let g=Ns(h.epoch);f.has(g)||f.set(g,[]),f.get(g).push(h)}let m=Array.from(f.entries()).sort((h,g)=>{let v=new Date(h[0]).getTime(),y=new Date(g[0]).getTime();return v-y});for(let[h,g]of m){p.push(`### ${h}`),p.push("");let v=null,y="",b=!1;for(let S of g){let x=typeof c=="number"&&S.type==="observation"&&S.data.id===c||typeof c=="string"&&c.startsWith("S")&&S.type==="session"&&`S${S.data.id}`===c;if(S.type==="session"){b&&(p.push(""),b=!1,v=null,y="");let w=S.data,E=w.request||"Session summary",T=x?" <- **ANCHOR**":"";p.push(`**\u{1F3AF} #S${w.id}** ${E} (${An(S.epoch)})${T}`),p.push("")}else if(S.type==="prompt"){b&&(p.push(""),b=!1,v=null,y="");let w=S.data,E=w.prompt_text.length>100?w.prompt_text.substring(0,100)+"...":w.prompt_text;p.push(`**\u{1F4AC} User Prompt #${w.prompt_number}** (${An(S.epoch)})`),p.push(`> ${E}`),p.push("")}else if(S.type==="observation"){let w=S.data,E=Si(w.files_modified,o,w.files_read);E!==v&&(b&&p.push(""),p.push(`**${E}**`),p.push("| ID | Time | T | Title | Tokens |"),p.push("|----|------|---|-------|--------|"),v=E,b=!0,y="");let T=He.getInstance().getTypeIcon(w.type),I=hr(S.epoch),A=w.title||"Untitled",N=Ms(w.narrative),V=I!==y?I:'"';y=I;let j=x?" <- **ANCHOR**":"";p.push(`| #${w.id} | ${V} | ${T} | ${A}${j} | ~${N} |`)}}b&&p.push("")}return{content:[{type:"text",text:p.join(` +`)}]}}async getTimelineByQuery(e){let{query:r,mode:n="auto",depth_before:i=10,depth_after:s=10,limit:o=5,project:a}=e,c=process.cwd(),u=[];if(this.chromaSync){_.debug("SEARCH","Using hybrid semantic search for timeline query",{});let l=await this.queryChroma(r,100);if(_.debug("SEARCH","Chroma returned semantic matches for timeline",{matchCount:l.ids.length}),l.ids.length>0){let d=Date.now()-Lt.RECENCY_WINDOW_MS,p=l.ids.filter((f,m)=>{let h=l.metadatas[m];return h&&h.created_at_epoch>d});_.debug("SEARCH","Results within 90-day window",{count:p.length}),p.length>0&&(u=this.sessionStore.getObservationsByIds(p,{orderBy:"date_desc",limit:n==="auto"?1:o}),_.debug("SEARCH","Hydrated observations from SQLite",{count:u.length}))}}if(u.length===0)return{content:[{type:"text",text:`No observations found matching "${r}". Try a different search query.`}]};if(n==="interactive"){let l=[];l.push("# Timeline Anchor Search Results"),l.push(""),l.push(`Found ${u.length} observation(s) matching "${r}"`),l.push(""),l.push("To get timeline context around any of these observations, use the `get_context_timeline` tool with the observation ID as the anchor."),l.push(""),l.push(`**Top ${u.length} matches:**`),l.push("");for(let d=0;d({type:"observation",data:v,epoch:v.created_at_epoch})),...(d.sessions||[]).map(v=>({type:"session",data:v,epoch:v.created_at_epoch})),...(d.prompts||[]).map(v=>({type:"prompt",data:v,epoch:v.created_at_epoch}))];p.sort((v,y)=>v.epoch-y.epoch);let f=this.timelineService.filterByDepth(p,l.id,0,i,s);if(!f||f.length===0)return{content:[{type:"text",text:`Found observation #${l.id} matching "${r}", but no timeline context available (${i} records before, ${s} records after).`}]};let m=[];m.push(`# Timeline for query: "${r}"`),m.push(`**Anchor:** Observation #${l.id} - ${l.title||"Untitled"}`),m.push(`**Window:** ${i} records before -> ${s} records after | **Items:** ${f?.length??0}`),m.push("");let h=new Map;for(let v of f){let y=Ns(v.epoch);h.has(y)||h.set(y,[]),h.get(y).push(v)}let g=Array.from(h.entries()).sort((v,y)=>{let b=new Date(v[0]).getTime(),S=new Date(y[0]).getTime();return b-S});for(let[v,y]of g){m.push(`### ${v}`),m.push("");let b=null,S="",x=!1;for(let w of y){let E=w.type==="observation"&&w.data.id===l.id;if(w.type==="session"){x&&(m.push(""),x=!1,b=null,S="");let T=w.data,I=T.request||"Session summary";m.push(`**\u{1F3AF} #S${T.id}** ${I} (${An(w.epoch)})`),m.push("")}else if(w.type==="prompt"){x&&(m.push(""),x=!1,b=null,S="");let T=w.data,I=T.prompt_text.length>100?T.prompt_text.substring(0,100)+"...":T.prompt_text;m.push(`**\u{1F4AC} User Prompt #${T.prompt_number}** (${An(w.epoch)})`),m.push(`> ${I}`),m.push("")}else if(w.type==="observation"){let T=w.data,I=Si(T.files_modified,c,T.files_read);I!==b&&(x&&m.push(""),m.push(`**${I}**`),m.push("| ID | Time | T | Title | Tokens |"),m.push("|----|------|---|-------|--------|"),b=I,x=!0,S="");let A=He.getInstance().getTypeIcon(T.type),N=hr(w.epoch),U=T.title||"Untitled",V=Ms(T.narrative),ae=N!==S?N:'"';S=N;let Me=E?" <- **ANCHOR**":"";m.push(`| #${T.id} | ${ae} | ${A} | ${U}${Me} | ~${V} |`)}}x&&m.push("")}return{content:[{type:"text",text:m.join(` +`)}]}}}};tn();var F_e=4,Sy=class{formatSearchTips(){return` --- \u{1F4A1} Search Strategy: 1. Search with index to see titles, dates, IDs @@ -1482,28 +1618,30 @@ No previous sessions found for project "${r}".`}]};let s=[];s.push("# Recent Ses Tips: \u2022 Filter by type: obs_type="bugfix,feature" \u2022 Filter by date: dateStart="2025-01-01" -\u2022 Sort: orderBy="date_desc" or "date_asc"`}formatTime(e){return new Date(e).toLocaleString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}estimateReadTokens(e){let r=(e.title?.length||0)+(e.subtitle?.length||0)+(e.narrative?.length||0)+(e.facts?.length||0);return Math.ceil(r/y_e)}formatObservationIndex(e,r){let n=`#${e.id}`,i=this.formatTime(e.created_at_epoch),s=He.getInstance().getTypeIcon(e.type),o=e.title||"Untitled",a=this.estimateReadTokens(e),c=He.getInstance().getWorkEmoji(e.type),u=e.discovery_tokens||0,l=u>0?`${c} ${u}`:"-";return`| ${n} | ${i} | ${s} | ${o} | ~${a} | ${l} |`}formatSessionIndex(e,r){let n=`#S${e.id}`,i=this.formatTime(e.created_at_epoch),s="\u{1F3AF}",o=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return`| ${n} | ${i} | ${s} | ${o} | - | - |`}formatUserPromptIndex(e,r){let n=`#P${e.id}`,i=this.formatTime(e.created_at_epoch),s="\u{1F4AC}",o=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return`| ${n} | ${i} | ${s} | ${o} | - | - |`}formatTableHeader(){return`| ID | Time | T | Title | Read | Work | +\u2022 Sort: orderBy="date_desc" or "date_asc"`}formatTime(e){return new Date(e).toLocaleString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}estimateReadTokens(e){let r=(e.title?.length||0)+(e.subtitle?.length||0)+(e.narrative?.length||0)+(e.facts?.length||0);return Math.ceil(r/F_e)}formatObservationIndex(e,r){let n=`#${e.id}`,i=this.formatTime(e.created_at_epoch),s=He.getInstance().getTypeIcon(e.type),o=e.title||"Untitled",a=this.estimateReadTokens(e),c=He.getInstance().getWorkEmoji(e.type),u=e.discovery_tokens||0,l=u>0?`${c} ${u}`:"-";return`| ${n} | ${i} | ${s} | ${o} | ~${a} | ${l} |`}formatSessionIndex(e,r){let n=`#S${e.id}`,i=this.formatTime(e.created_at_epoch),s="\u{1F3AF}",o=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return`| ${n} | ${i} | ${s} | ${o} | - | - |`}formatUserPromptIndex(e,r){let n=`#P${e.id}`,i=this.formatTime(e.created_at_epoch),s="\u{1F4AC}",o=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return`| ${n} | ${i} | ${s} | ${o} | - | - |`}formatTableHeader(){return`| ID | Time | T | Title | Read | Work | |-----|------|---|-------|------|------|`}formatSearchTableHeader(){return`| ID | Time | T | Title | Read | -|----|------|---|-------|------|`}formatObservationSearchRow(e,r){let n=`#${e.id}`,i=this.formatTime(e.created_at_epoch),s=He.getInstance().getTypeIcon(e.type),o=e.title||"Untitled",a=this.estimateReadTokens(e);return{row:`| ${n} | ${i===r?"\u2033":i} | ${s} | ${o} | ~${a} |`,time:i}}formatSessionSearchRow(e,r){let n=`#S${e.id}`,i=this.formatTime(e.created_at_epoch),s="\u{1F3AF}",o=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return{row:`| ${n} | ${i===r?"\u2033":i} | ${s} | ${o} | - |`,time:i}}formatUserPromptSearchRow(e,r){let n=`#P${e.id}`,i=this.formatTime(e.created_at_epoch),s="\u{1F4AC}",o=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return{row:`| ${n} | ${i===r?"\u2033":i} | ${s} | ${o} | - |`,time:i}}};Qr();var py=class{buildTimeline(e){let r=[...e.observations.map(n=>({type:"observation",data:n,epoch:n.created_at_epoch})),...e.sessions.map(n=>({type:"session",data:n,epoch:n.created_at_epoch})),...e.prompts.map(n=>({type:"prompt",data:n,epoch:n.created_at_epoch}))];return r.sort((n,i)=>n.epoch-i.epoch),r}filterByDepth(e,r,n,i,s){if(e.length===0)return e;let o=-1;if(typeof r=="number")o=e.findIndex(u=>u.type==="observation"&&u.data.id===r);else if(typeof r=="string"&&r.startsWith("S")){let u=parseInt(r.slice(1),10);o=e.findIndex(l=>l.type==="session"&&l.data.id===u)}else o=e.findIndex(u=>u.epoch>=n),o===-1&&(o=e.length-1);if(o===-1)return e;let a=Math.max(0,o-i),c=Math.min(e.length,o+s+1);return e.slice(a,c)}formatTimeline(e,r,n,i,s){if(e.length===0)return n?`Found observation matching "${n}", but no timeline context available.`:"No timeline items found";let o=[];if(n&&r){let u=e.find(d=>d.type==="observation"&&d.data.id===r),l=u?u.data.title||"Untitled":"Unknown";o.push(`# Timeline for query: "${n}"`),o.push(`**Anchor:** Observation #${r} - ${l}`)}else r?o.push(`# Timeline around anchor: ${r}`):o.push("# Timeline");i!==void 0&&s!==void 0?o.push(`**Window:** ${i} records before \u2192 ${s} records after | **Items:** ${e.length}`):o.push(`**Items:** ${e.length}`),o.push(""),o.push("**Legend:** \u{1F3AF} session-request | \u{1F534} bugfix | \u{1F7E3} feature | \u{1F504} refactor | \u2705 change | \u{1F535} discovery | \u{1F9E0} decision"),o.push("");let a=new Map;for(let u of e){let l=this.formatDate(u.epoch);a.has(l)||a.set(l,[]),a.get(l).push(u)}let c=Array.from(a.entries()).sort((u,l)=>{let d=new Date(u[0]).getTime(),p=new Date(l[0]).getTime();return d-p});for(let[u,l]of c){o.push(`### ${u}`),o.push("");let d=null,p="",f=!1;for(let m of l){let h=typeof r=="number"&&m.type==="observation"&&m.data.id===r||typeof r=="string"&&r.startsWith("S")&&m.type==="session"&&`S${m.data.id}`===r;if(m.type==="session"){f&&(o.push(""),f=!1,d=null,p="");let g=m.data,v=g.request||"Session summary",S=h?" \u2190 **ANCHOR**":"";o.push(`**\u{1F3AF} #S${g.id}** ${v} (${this.formatDateTime(m.epoch)})${S}`),o.push("")}else if(m.type==="prompt"){f&&(o.push(""),f=!1,d=null,p="");let g=m.data,v=g.prompt_text.length>100?g.prompt_text.substring(0,100)+"...":g.prompt_text;o.push(`**\u{1F4AC} User Prompt #${g.prompt_number}** (${this.formatDateTime(m.epoch)})`),o.push(`> ${v}`),o.push("")}else if(m.type==="observation"){let g=m.data,v="General";v!==d&&(f&&o.push(""),o.push(`**${v}**`),o.push("| ID | Time | T | Title | Tokens |"),o.push("|----|------|---|-------|--------|"),d=v,f=!0,p="");let S=this.getTypeIcon(g.type),b=this.formatTime(m.epoch),y=g.title||"Untitled",x=this.estimateTokens(g.narrative),E=b!==p?b:"\u2033";p=b;let T=h?" \u2190 **ANCHOR**":"";o.push(`| #${g.id} | ${E} | ${S} | ${y}${T} | ~${x} |`)}}f&&o.push("")}return o.join(` -`)}getTypeIcon(e){return He.getInstance().getTypeIcon(e)}formatDate(e){return new Date(e).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric"})}formatTime(e){return new Date(e).toLocaleString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}formatDateTime(e){return new Date(e).toLocaleString("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit",hour12:!0})}estimateTokens(e){return e?Math.ceil(e.length/4):0}};var fy=class{constructor(e,r){this.sseBroadcaster=e;this.workerService=r}broadcastNewPrompt(e){this.sseBroadcaster.broadcast({type:"new_prompt",prompt:e}),this.workerService.broadcastProcessingStatus()}broadcastSessionStarted(e,r){this.sseBroadcaster.broadcast({type:"session_started",sessionDbId:e,project:r}),this.workerService.broadcastProcessingStatus()}broadcastObservationQueued(e){this.sseBroadcaster.broadcast({type:"observation_queued",sessionDbId:e}),this.workerService.broadcastProcessingStatus()}broadcastSessionCompleted(e){this.sseBroadcaster.broadcast({type:"session_completed",timestamp:Date.now(),sessionDbId:e}),this.workerService.broadcastProcessingStatus()}broadcastSummarizeQueued(){this.workerService.broadcastProcessingStatus()}};var v9=Pe(hv(),1),my=Pe(require("path"),1),gy=require("fs");zt();re();var Ur=class{wrapHandler(e){return(r,n)=>{try{let i=e(r,n);i instanceof Promise&&i.catch(s=>this.handleError(n,s))}catch(i){_.error("HTTP","Route handler error",{path:r.path},i),this.handleError(n,i)}}}parseIntParam(e,r,n){let i=parseInt(e.params[n],10);return isNaN(i)?(this.badRequest(r,`Invalid ${n}`),null):i}validateRequired(e,r,n){for(let i of n)if(e.body[i]===void 0||e.body[i]===null)return this.badRequest(r,`Missing ${i}`),!1;return!0}badRequest(e,r){e.status(400).json({error:r})}notFound(e,r){e.status(404).json({error:r})}handleError(e,r,n){_.failure("WORKER",n||"Request failed",{},r),e.headersSent||e.status(500).json({error:r.message})}};var hy=class extends Ur{constructor(r,n,i){super();this.sseBroadcaster=r;this.dbManager=n;this.sessionManager=i}setupRoutes(r){let n=dn();r.use(v9.default.static(my.default.join(n,"ui"))),r.get("/health",this.handleHealth.bind(this)),r.get("/",this.handleViewerUI.bind(this)),r.get("/stream",this.handleSSEStream.bind(this))}handleHealth=this.wrapHandler((r,n)=>{n.json({status:"ok",timestamp:Date.now()})});handleViewerUI=this.wrapHandler((r,n)=>{let i=dn(),o=[my.default.join(i,"ui","viewer.html"),my.default.join(i,"plugin","ui","viewer.html")].find(c=>(0,gy.existsSync)(c));if(!o)throw new Error("Viewer UI not found at any expected location");let a=(0,gy.readFileSync)(o,"utf-8");n.setHeader("Content-Type","text/html"),n.send(a)});handleSSEStream=this.wrapHandler((r,n)=>{n.setHeader("Content-Type","text/event-stream"),n.setHeader("Cache-Control","no-cache"),n.setHeader("Connection","keep-alive"),this.sseBroadcaster.addClient(n);let i=this.dbManager.getSessionStore().getAllProjects();this.sseBroadcaster.broadcast({type:"initial_load",projects:i,timestamp:Date.now()});let s=this.sessionManager.isAnySessionProcessing(),o=this.sessionManager.getTotalActiveWork();this.sseBroadcaster.broadcast({type:"processing_status",isProcessing:s,queueDepth:o})})};Dr();re();re();var y9=100;function __e(t){let e=(t.match(//g)||[]).length,r=(t.match(//g)||[]).length,n=(t.match(//g)||[]).length,i=(t.match(//g)||[]).length;return e+r+n+i}function _9(t){let e=__e(t);return e>y9&&_.warn("SYSTEM","tag count exceeds limit",void 0,{tagCount:e,maxAllowed:y9,contentLength:t.length}),t.replace(/[\s\S]*?<\/claude-mem-context>/g,"").replace(/[\s\S]*?<\/private>/g,"").replace(/[\s\S]*?<\/system_instruction>/g,"").replace(/[\s\S]*?<\/system-instruction>/g,"").trim()}function Y$(t){return _9(t)}function b9(t){return _9(t)}re();var vy=class{constructor(e,r){this.sessionManager=e;this.eventBroadcaster=r}async completeByDbId(e){await this.sessionManager.deleteSession(e);try{let n=this.sessionManager.getPendingMessageStore().markAllSessionMessagesAbandoned(e);n>0&&_.warn("SESSION",`Drained ${n} orphaned pending messages on session completion`,{sessionId:e,drainedCount:n})}catch(r){_.debug("SESSION","Failed to drain pending queue on session completion",{sessionId:e,error:r instanceof Error?r.message:String(r)})}this.eventBroadcaster.broadcastSessionCompleted(e)}};re();var cf=class{static checkUserPromptPrivacy(e,r,n,i,s,o){let a=e.getUserPrompt(r,n);return!a||a.trim()===""?(_.debug("HOOK",`Skipping ${i} - user prompt was entirely private`,{sessionId:s,promptNumber:n,...o}),null):a}};rr();zt();var yy=class t extends Ur{constructor(r,n,i,s,o,a,c){super();this.sessionManager=r;this.dbManager=n;this.sdkAgent=i;this.geminiAgent=s;this.openRouterAgent=o;this.eventBroadcaster=a;this.workerService=c;this.completionHandler=new vy(r,a)}completionHandler;spawnInProgress=new Map;crashRecoveryScheduled=new Set;getActiveAgent(){if(Du()){if(Ea())return _.debug("SESSION","Using OpenRouter agent"),this.openRouterAgent;throw new Error("OpenRouter provider selected but no API key configured. Set CLAUDE_MEM_OPENROUTER_API_KEY in settings or OPENROUTER_API_KEY environment variable.")}if(Mu()){if(wa())return _.debug("SESSION","Using Gemini agent"),this.geminiAgent;throw new Error("Gemini provider selected but no API key configured. Set CLAUDE_MEM_GEMINI_API_KEY in settings or GEMINI_API_KEY environment variable.")}return this.sdkAgent}getSelectedProvider(){return Du()&&Ea()?"openrouter":Mu()&&wa()?"gemini":"claude"}static STALE_GENERATOR_THRESHOLD_MS=3e4;ensureGeneratorRunning(r,n){let i=this.sessionManager.getSession(r);if(!i)return;if(this.spawnInProgress.get(r)){_.debug("SESSION","Spawn already in progress, skipping",{sessionDbId:r,source:n});return}let s=this.getSelectedProvider();if(!i.generatorPromise){this.applyTierRouting(i),this.spawnInProgress.set(r,!0),this.startGeneratorWithProvider(i,s,n);return}let o=Date.now()-i.lastGeneratorActivity;if(o>t.STALE_GENERATOR_THRESHOLD_MS){_.warn("SESSION","Stale generator detected, aborting to prevent queue stall (#1099)",{sessionId:r,timeSinceActivityMs:o,thresholdMs:t.STALE_GENERATOR_THRESHOLD_MS,source:n}),i.abortController.abort(),i.generatorPromise=null,i.abortController=new AbortController,i.lastGeneratorActivity=Date.now(),this.applyTierRouting(i),this.spawnInProgress.set(r,!0),this.startGeneratorWithProvider(i,s,"stale-recovery");return}i.currentProvider&&i.currentProvider!==s&&_.info("SESSION","Provider changed, will switch after current generator finishes",{sessionId:r,currentProvider:i.currentProvider,selectedProvider:s,historyLength:i.conversationHistory.length})}startGeneratorWithProvider(r,n,i){if(!r)return;r.abortController.signal.aborted&&(_.debug("SESSION","Resetting aborted AbortController before starting generator",{sessionId:r.sessionDbId}),r.abortController=new AbortController);let s=n==="openrouter"?this.openRouterAgent:n==="gemini"?this.geminiAgent:this.sdkAgent,o=n==="openrouter"?"OpenRouter":n==="gemini"?"Gemini":"Claude SDK",c=this.sessionManager.getPendingMessageStore().getPendingCount(r.sessionDbId);_.info("SESSION",`Generator auto-starting (${i}) using ${o}`,{sessionId:r.sessionDbId,queueDepth:c,historyLength:r.conversationHistory.length}),r.currentProvider=n,r.lastGeneratorActivity=Date.now(),r.generatorPromise=s.startSession(r,this.workerService).catch(u=>{if(r.abortController.signal.aborted)return;_.error("SESSION","Generator failed",{sessionId:r.sessionDbId,provider:n,error:u.message},u);let l=this.sessionManager.getPendingMessageStore();try{let d=l.markSessionMessagesFailed(r.sessionDbId);d>0&&_.error("SESSION","Marked messages as failed after generator error",{sessionId:r.sessionDbId,failedCount:d})}catch(d){_.error("SESSION","Failed to mark messages as failed",{sessionId:r.sessionDbId},d)}}).finally(async()=>{let u=go(r.sessionDbId);u&&!u.process.killed&&u.process.exitCode===null&&await vo(u,5e3);let l=r.sessionDbId;this.spawnInProgress.delete(l);let d=r.abortController.signal.aborted;if(d?_.info("SESSION","Generator aborted",{sessionId:l}):_.error("SESSION","Generator exited unexpectedly",{sessionId:l}),r.generatorPromise=null,r.currentProvider=null,this.workerService.broadcastProcessingStatus(),!d)try{let f=this.sessionManager.getPendingMessageStore().getPendingCount(l),m=3;if(f>0){if(this.crashRecoveryScheduled.has(l)){_.debug("SESSION","Crash recovery already scheduled",{sessionDbId:l});return}if(r.consecutiveRestarts=(r.consecutiveRestarts||0)+1,r.consecutiveRestarts>m){_.error("SESSION","CRITICAL: Generator restart limit exceeded - stopping to prevent runaway costs",{sessionId:l,pendingCount:f,consecutiveRestarts:r.consecutiveRestarts,maxRestarts:m,action:"Generator will NOT restart. Check logs for root cause. Messages remain in pending state."}),r.abortController.abort();return}_.info("SESSION","Restarting generator after crash/exit with pending work",{sessionId:l,pendingCount:f,consecutiveRestarts:r.consecutiveRestarts,maxRestarts:m});let h=r.abortController;r.abortController=new AbortController,h.abort(),this.crashRecoveryScheduled.add(l);let g=Math.min(1e3*Math.pow(2,r.consecutiveRestarts-1),8e3);setTimeout(()=>{this.crashRecoveryScheduled.delete(l);let v=this.sessionManager.getSession(l);v&&!v.generatorPromise&&(this.applyTierRouting(v),this.startGeneratorWithProvider(v,this.getSelectedProvider(),"crash-recovery"))},g)}else r.abortController.abort(),r.consecutiveRestarts=0,_.debug("SESSION","Aborted controller after natural completion",{sessionId:l})}catch(p){_.debug("SESSION","Error during recovery check, aborting to prevent leaks",{sessionId:l,error:p instanceof Error?p.message:String(p)}),r.abortController.abort()}})}setupRoutes(r){r.post("/sessions/:sessionDbId/init",this.handleSessionInit.bind(this)),r.post("/sessions/:sessionDbId/observations",this.handleObservations.bind(this)),r.post("/sessions/:sessionDbId/summarize",this.handleSummarize.bind(this)),r.get("/sessions/:sessionDbId/status",this.handleSessionStatus.bind(this)),r.delete("/sessions/:sessionDbId",this.handleSessionDelete.bind(this)),r.post("/sessions/:sessionDbId/complete",this.handleSessionComplete.bind(this)),r.post("/api/sessions/init",this.handleSessionInitByClaudeId.bind(this)),r.post("/api/sessions/observations",this.handleObservationsByClaudeId.bind(this)),r.post("/api/sessions/summarize",this.handleSummarizeByClaudeId.bind(this)),r.post("/api/sessions/complete",this.handleCompleteByClaudeId.bind(this)),r.get("/api/sessions/status",this.handleStatusByClaudeId.bind(this))}handleSessionInit=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"sessionDbId");if(i===null)return;let{userPrompt:s,promptNumber:o}=r.body;_.info("HTTP","SessionRoutes: handleSessionInit called",{sessionDbId:i,promptNumber:o,has_userPrompt:!!s});let a=this.sessionManager.initializeSession(i,s,o),c=this.dbManager.getSessionStore().getLatestUserPrompt(a.contentSessionId);if(c){this.eventBroadcaster.broadcastNewPrompt({id:c.id,content_session_id:c.content_session_id,project:c.project,prompt_number:c.prompt_number,prompt_text:c.prompt_text,created_at_epoch:c.created_at_epoch});let u=Date.now(),l=c.prompt_text;this.dbManager.getChromaSync()?.syncUserPrompt(c.id,c.memory_session_id,c.project,l,c.prompt_number,c.created_at_epoch).then(()=>{let d=Date.now()-u,p=l.length>60?l.substring(0,60)+"...":l;_.debug("CHROMA","User prompt synced",{promptId:c.id,duration:`${d}ms`,prompt:p})}).catch(d=>{_.error("CHROMA","User prompt sync failed, continuing without vector search",{promptId:c.id,prompt:l.length>60?l.substring(0,60)+"...":l},d)})}this.ensureGeneratorRunning(i,"init"),this.eventBroadcaster.broadcastSessionStarted(i,a.project),n.json({status:"initialized",sessionDbId:i,port:Jr()})});handleObservations=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"sessionDbId");if(i===null)return;let{tool_name:s,tool_input:o,tool_response:a,prompt_number:c,cwd:u}=r.body;this.sessionManager.queueObservation(i,{tool_name:s,tool_input:o,tool_response:a,prompt_number:c,cwd:u}),this.ensureGeneratorRunning(i,"observation"),this.eventBroadcaster.broadcastObservationQueued(i),n.json({status:"queued"})});handleSummarize=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"sessionDbId");if(i===null)return;let{last_assistant_message:s}=r.body;this.sessionManager.queueSummarize(i,s),this.ensureGeneratorRunning(i,"summarize"),this.eventBroadcaster.broadcastSummarizeQueued(),n.json({status:"queued"})});handleSessionStatus=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"sessionDbId");if(i===null)return;let s=this.sessionManager.getSession(i);if(!s){n.json({status:"not_found"});return}let a=this.sessionManager.getPendingMessageStore().getPendingCount(i);n.json({status:"active",sessionDbId:i,project:s.project,queueLength:a,uptime:Date.now()-s.startTime})});handleSessionDelete=this.wrapHandler(async(r,n)=>{let i=this.parseIntParam(r,n,"sessionDbId");i!==null&&(await this.completionHandler.completeByDbId(i),n.json({status:"deleted"}))});handleSessionComplete=this.wrapHandler(async(r,n)=>{let i=this.parseIntParam(r,n,"sessionDbId");i!==null&&(await this.completionHandler.completeByDbId(i),n.json({success:!0}))});handleObservationsByClaudeId=this.wrapHandler((r,n)=>{let{contentSessionId:i,tool_name:s,tool_input:o,tool_response:a,cwd:c}=r.body;if(!i)return this.badRequest(n,"Missing contentSessionId");let u=Se.loadFromFile(jt);if(new Set(u.CLAUDE_MEM_SKIP_TOOLS.split(",").map(p=>p.trim()).filter(Boolean)).has(s)){_.debug("SESSION","Skipping observation for tool",{tool_name:s}),n.json({status:"skipped",reason:"tool_excluded"});return}if(new Set(["Edit","Write","Read","NotebookEdit"]).has(s)&&o){let p=o.file_path||o.notebook_path;if(p&&p.includes("session-memory")){_.debug("SESSION","Skipping meta-observation for session-memory file",{tool_name:s,file_path:p}),n.json({status:"skipped",reason:"session_memory_meta"});return}}try{let p=this.dbManager.getSessionStore(),f=p.createSDKSession(i,"",""),m=p.getPromptNumberFromUserPrompts(i);if(!cf.checkUserPromptPrivacy(p,i,m,"observation",f,{tool_name:s})){n.json({status:"skipped",reason:"private"});return}let g=o!==void 0?Y$(JSON.stringify(o)):"{}",v=a!==void 0?Y$(JSON.stringify(a)):"{}";this.sessionManager.queueObservation(f,{tool_name:s,tool_input:g,tool_response:v,prompt_number:m,cwd:c||(_.error("SESSION","Missing cwd when queueing observation in SessionRoutes",{sessionId:f,tool_name:s}),"")}),this.ensureGeneratorRunning(f,"observation"),this.eventBroadcaster.broadcastObservationQueued(f),n.json({status:"queued"})}catch(p){_.error("SESSION","Observation storage failed",{contentSessionId:i,tool_name:s},p),n.json({stored:!1,reason:p.message})}});handleSummarizeByClaudeId=this.wrapHandler((r,n)=>{let{contentSessionId:i,last_assistant_message:s}=r.body;if(!i)return this.badRequest(n,"Missing contentSessionId");let o=this.dbManager.getSessionStore(),a=o.createSDKSession(i,"",""),c=o.getPromptNumberFromUserPrompts(i);if(!cf.checkUserPromptPrivacy(o,i,c,"summarize",a)){n.json({status:"skipped",reason:"private"});return}this.sessionManager.queueSummarize(a,s),this.ensureGeneratorRunning(a,"summarize"),this.eventBroadcaster.broadcastSummarizeQueued(),n.json({status:"queued"})});handleStatusByClaudeId=this.wrapHandler((r,n)=>{let i=r.query.contentSessionId;if(!i)return this.badRequest(n,"Missing contentSessionId query parameter");let o=this.dbManager.getSessionStore().createSDKSession(i,"",""),a=this.sessionManager.getSession(o);if(!a){n.json({status:"not_found",queueLength:0});return}let u=this.sessionManager.getPendingMessageStore().getPendingCount(o);n.json({status:"active",sessionDbId:o,queueLength:u,uptime:Date.now()-a.startTime})});handleCompleteByClaudeId=this.wrapHandler(async(r,n)=>{let{contentSessionId:i}=r.body;if(_.info("HTTP","\u2192 POST /api/sessions/complete",{contentSessionId:i}),!i)return this.badRequest(n,"Missing contentSessionId");let o=this.dbManager.getSessionStore().createSDKSession(i,"","");if(!this.sessionManager.getSession(o)){_.debug("SESSION","session-complete: Session not in active map",{contentSessionId:i,sessionDbId:o}),n.json({status:"skipped",reason:"not_active"});return}await this.completionHandler.completeByDbId(o),_.info("SESSION","Session completed via API",{contentSessionId:i,sessionDbId:o}),n.json({status:"completed",sessionDbId:o})});handleSessionInitByClaudeId=this.wrapHandler((r,n)=>{let{contentSessionId:i}=r.body,s=r.body.project||"unknown",o=r.body.prompt||"[media prompt]",a=r.body.customTitle||void 0;if(_.info("HTTP","SessionRoutes: handleSessionInitByClaudeId called",{contentSessionId:i,project:s,prompt_length:o?.length,customTitle:a}),!this.validateRequired(r,n,["contentSessionId"]))return;let c=this.dbManager.getSessionStore(),u=c.createSDKSession(i,s,o,a),l=c.getSessionById(u),d=!l?.memory_session_id;_.info("SESSION",`CREATED | contentSessionId=${i} \u2192 sessionDbId=${u} | isNew=${d} | project=${s}`,{sessionId:u});let f=c.getPromptNumberFromUserPrompts(i)+1,m=l?.memory_session_id||null;f>1?_.debug("HTTP",`[ALIGNMENT] DB Lookup Proof | contentSessionId=${i} \u2192 memorySessionId=${m||"(not yet captured)"} | prompt#=${f}`):_.debug("HTTP",`[ALIGNMENT] New Session | contentSessionId=${i} | prompt#=${f} | memorySessionId will be captured on first SDK response`);let h=b9(o);if(!h||h.trim()===""){_.debug("HOOK","Session init - prompt entirely private",{sessionId:u,promptNumber:f,originalLength:o.length}),n.json({sessionDbId:u,promptNumber:f,skipped:!0,reason:"private"});return}c.saveUserPrompt(i,f,h);let g=this.sessionManager.getSession(u)!==void 0;_.debug("SESSION","User prompt saved",{sessionId:u,promptNumber:f,contextInjected:g}),n.json({sessionDbId:u,promptNumber:f,skipped:!1,contextInjected:g})});static SIMPLE_TOOLS=new Set(["Read","Glob","Grep","LS","ListMcpResourcesTool"]);applyTierRouting(r){let n=Se.loadFromFile(jt);if(n.CLAUDE_MEM_TIER_ROUTING_ENABLED==="false"){r.modelOverride=void 0;return}r.modelOverride=void 0;let s=this.sessionManager.getPendingMessageStore().peekPendingTypes(r.sessionDbId);if(s.length===0){r.modelOverride=void 0;return}let o=s.some(c=>c.message_type==="summarize"),a=s.every(c=>c.message_type==="observation"&&c.tool_name&&t.SIMPLE_TOOLS.has(c.tool_name));if(o){let c=n.CLAUDE_MEM_TIER_SUMMARY_MODEL;c&&(r.modelOverride=c,_.debug("SESSION","Tier routing: summary model",{sessionId:r.sessionDbId,model:c}))}else if(a){let c=n.CLAUDE_MEM_TIER_SIMPLE_MODEL;c&&(r.modelOverride=c,_.debug("SESSION","Tier routing: simple model",{sessionId:r.sessionDbId,model:c}))}else r.modelOverride=void 0}};var Q$=Pe(require("path"),1),ju=require("fs");re();var S9=require("os");zt();Dr();var _y=class extends Ur{constructor(r,n,i,s,o,a){super();this.paginationHelper=r;this.dbManager=n;this.sessionManager=i;this.sseBroadcaster=s;this.workerService=o;this.startTime=a}setupRoutes(r){r.get("/api/observations",this.handleGetObservations.bind(this)),r.get("/api/summaries",this.handleGetSummaries.bind(this)),r.get("/api/prompts",this.handleGetPrompts.bind(this)),r.get("/api/observation/:id",this.handleGetObservationById.bind(this)),r.post("/api/observations/batch",this.handleGetObservationsByIds.bind(this)),r.get("/api/session/:id",this.handleGetSessionById.bind(this)),r.post("/api/sdk-sessions/batch",this.handleGetSdkSessionsByIds.bind(this)),r.get("/api/prompt/:id",this.handleGetPromptById.bind(this)),r.get("/api/stats",this.handleGetStats.bind(this)),r.get("/api/projects",this.handleGetProjects.bind(this)),r.get("/api/processing-status",this.handleGetProcessingStatus.bind(this)),r.post("/api/processing",this.handleSetProcessing.bind(this)),r.get("/api/pending-queue",this.handleGetPendingQueue.bind(this)),r.post("/api/pending-queue/process",this.handleProcessPendingQueue.bind(this)),r.delete("/api/pending-queue/failed",this.handleClearFailedQueue.bind(this)),r.delete("/api/pending-queue/all",this.handleClearAllQueue.bind(this)),r.post("/api/import",this.handleImport.bind(this))}handleGetObservations=this.wrapHandler((r,n)=>{let{offset:i,limit:s,project:o}=this.parsePaginationParams(r),a=this.paginationHelper.getObservations(i,s,o);n.json(a)});handleGetSummaries=this.wrapHandler((r,n)=>{let{offset:i,limit:s,project:o}=this.parsePaginationParams(r),a=this.paginationHelper.getSummaries(i,s,o);n.json(a)});handleGetPrompts=this.wrapHandler((r,n)=>{let{offset:i,limit:s,project:o}=this.parsePaginationParams(r),a=this.paginationHelper.getPrompts(i,s,o);n.json(a)});handleGetObservationById=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"id");if(i===null)return;let o=this.dbManager.getSessionStore().getObservationById(i);if(!o){this.notFound(n,`Observation #${i} not found`);return}n.json(o)});handleGetObservationsByIds=this.wrapHandler((r,n)=>{let{ids:i,orderBy:s,limit:o,project:a}=r.body;if(typeof i=="string")try{i=JSON.parse(i)}catch{i=i.split(",").map(Number)}if(!i||!Array.isArray(i)){this.badRequest(n,"ids must be an array of numbers");return}if(i.length===0){n.json([]);return}if(!i.every(l=>typeof l=="number"&&Number.isInteger(l))){this.badRequest(n,"All ids must be integers");return}let u=this.dbManager.getSessionStore().getObservationsByIds(i,{orderBy:s,limit:o,project:a});n.json(u)});handleGetSessionById=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"id");if(i===null)return;let o=this.dbManager.getSessionStore().getSessionSummariesByIds([i]);if(o.length===0){this.notFound(n,`Session #${i} not found`);return}n.json(o[0])});handleGetSdkSessionsByIds=this.wrapHandler((r,n)=>{let{memorySessionIds:i}=r.body;if(typeof i=="string")try{i=JSON.parse(i)}catch{i=i.split(",").map(a=>a.trim())}if(!Array.isArray(i)){this.badRequest(n,"memorySessionIds must be an array");return}let o=this.dbManager.getSessionStore().getSdkSessionsBySessionIds(i);n.json(o)});handleGetPromptById=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"id");if(i===null)return;let o=this.dbManager.getSessionStore().getUserPromptsByIds([i]);if(o.length===0){this.notFound(n,`Prompt #${i} not found`);return}n.json(o[0])});handleGetStats=this.wrapHandler((r,n)=>{let i=this.dbManager.getSessionStore().db,s=dn(),o=Q$.default.join(s,"package.json"),c=JSON.parse((0,ju.readFileSync)(o,"utf-8")).version,u=i.prepare("SELECT COUNT(*) as count FROM observations").get(),l=i.prepare("SELECT COUNT(*) as count FROM sdk_sessions").get(),d=i.prepare("SELECT COUNT(*) as count FROM session_summaries").get(),p=Q$.default.join((0,S9.homedir)(),".claude-mem","claude-mem.db"),f=0;(0,ju.existsSync)(p)&&(f=(0,ju.statSync)(p).size);let m=Math.floor((Date.now()-this.startTime)/1e3),h=this.sessionManager.getActiveSessionCount(),g=this.sseBroadcaster.getClientCount();n.json({worker:{version:c,uptime:m,activeSessions:h,sseClients:g,port:Jr()},database:{path:p,size:f,observations:u.count,sessions:l.count,summaries:d.count}})});handleGetProjects=this.wrapHandler((r,n)=>{let o=this.dbManager.getSessionStore().db.prepare(` - SELECT DISTINCT project - FROM observations - WHERE project IS NOT NULL - GROUP BY project - ORDER BY MAX(created_at_epoch) DESC - `).all().map(a=>a.project);n.json({projects:o})});handleGetProcessingStatus=this.wrapHandler((r,n)=>{let i=this.sessionManager.isAnySessionProcessing(),s=this.sessionManager.getTotalActiveWork();n.json({isProcessing:i,queueDepth:s})});handleSetProcessing=this.wrapHandler((r,n)=>{this.workerService.broadcastProcessingStatus();let i=this.sessionManager.isAnySessionProcessing(),s=this.sessionManager.getTotalQueueDepth(),o=this.sessionManager.getActiveSessionCount();n.json({status:"ok",isProcessing:i,queueDepth:s,activeSessions:o})});parsePaginationParams(r){let n=parseInt(r.query.offset,10)||0,i=Math.min(parseInt(r.query.limit,10)||20,100),s=r.query.project;return{offset:n,limit:i,project:s}}handleImport=this.wrapHandler((r,n)=>{let{sessions:i,summaries:s,observations:o,prompts:a}=r.body,c={sessionsImported:0,sessionsSkipped:0,summariesImported:0,summariesSkipped:0,observationsImported:0,observationsSkipped:0,promptsImported:0,promptsSkipped:0},u=this.dbManager.getSessionStore();if(Array.isArray(i))for(let l of i)u.importSdkSession(l).imported?c.sessionsImported++:c.sessionsSkipped++;if(Array.isArray(s))for(let l of s)u.importSessionSummary(l).imported?c.summariesImported++:c.summariesSkipped++;if(Array.isArray(o))for(let l of o)u.importObservation(l).imported?c.observationsImported++:c.observationsSkipped++;if(Array.isArray(a))for(let l of a)u.importUserPrompt(l).imported?c.promptsImported++:c.promptsSkipped++;n.json({success:!0,stats:c})});handleGetPendingQueue=this.wrapHandler((r,n)=>{let{PendingMessageStore:i}=(ha(),zf(ou)),s=new i(this.dbManager.getSessionStore().db,3),o=s.getQueueMessages(),a=s.getRecentlyProcessed(20,30),c=s.getStuckCount(300*1e3),u=s.getSessionsWithPendingMessages();n.json({queue:{messages:o,totalPending:o.filter(l=>l.status==="pending").length,totalProcessing:o.filter(l=>l.status==="processing").length,totalFailed:o.filter(l=>l.status==="failed").length,stuckCount:c},recentlyProcessed:a,sessionsWithPendingWork:u})});handleProcessPendingQueue=this.wrapHandler(async(r,n)=>{let i=Math.min(Math.max(parseInt(r.body.sessionLimit,10)||10,1),100),s=await this.workerService.processPendingQueues(i);n.json({success:!0,...s})});handleClearFailedQueue=this.wrapHandler((r,n)=>{let{PendingMessageStore:i}=(ha(),zf(ou)),o=new i(this.dbManager.getSessionStore().db,3).clearFailed();_.info("QUEUE","Cleared failed queue messages",{clearedCount:o}),n.json({success:!0,clearedCount:o})});handleClearAllQueue=this.wrapHandler((r,n)=>{let{PendingMessageStore:i}=(ha(),zf(ou)),o=new i(this.dbManager.getSessionStore().db,3).clearAll();_.warn("QUEUE","Cleared ALL queue messages (pending, processing, failed)",{clearedCount:o}),n.json({success:!0,clearedCount:o})})};re();var $y=class extends Ur{constructor(r){super();this.searchManager=r}setupRoutes(r){r.get("/api/search",this.handleUnifiedSearch.bind(this)),r.get("/api/timeline",this.handleUnifiedTimeline.bind(this)),r.get("/api/decisions",this.handleDecisions.bind(this)),r.get("/api/changes",this.handleChanges.bind(this)),r.get("/api/how-it-works",this.handleHowItWorks.bind(this)),r.get("/api/search/observations",this.handleSearchObservations.bind(this)),r.get("/api/search/sessions",this.handleSearchSessions.bind(this)),r.get("/api/search/prompts",this.handleSearchPrompts.bind(this)),r.get("/api/search/by-concept",this.handleSearchByConcept.bind(this)),r.get("/api/search/by-file",this.handleSearchByFile.bind(this)),r.get("/api/search/by-type",this.handleSearchByType.bind(this)),r.get("/api/context/recent",this.handleGetRecentContext.bind(this)),r.get("/api/context/timeline",this.handleGetContextTimeline.bind(this)),r.get("/api/context/preview",this.handleContextPreview.bind(this)),r.get("/api/context/inject",this.handleContextInject.bind(this)),r.post("/api/context/semantic",this.handleSemanticContext.bind(this)),r.get("/api/timeline/by-query",this.handleGetTimelineByQuery.bind(this)),r.get("/api/search/help",this.handleSearchHelp.bind(this))}handleUnifiedSearch=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.search(r.query);n.json(i)});handleUnifiedTimeline=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.timeline(r.query);n.json(i)});handleDecisions=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.decisions(r.query);n.json(i)});handleChanges=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.changes(r.query);n.json(i)});handleHowItWorks=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.howItWorks(r.query);n.json(i)});handleSearchObservations=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.searchObservations(r.query);n.json(i)});handleSearchSessions=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.searchSessions(r.query);n.json(i)});handleSearchPrompts=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.searchUserPrompts(r.query);n.json(i)});handleSearchByConcept=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.findByConcept(r.query);n.json(i)});handleSearchByFile=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.findByFile(r.query);n.json(i)});handleSearchByType=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.findByType(r.query);n.json(i)});handleGetRecentContext=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.getRecentContext(r.query);n.json(i)});handleGetContextTimeline=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.getContextTimeline(r.query);n.json(i)});handleContextPreview=this.wrapHandler(async(r,n)=>{let i=r.query.project;if(!i){this.badRequest(n,"Project parameter is required");return}let{generateContext:s}=await Promise.resolve().then(()=>(pI(),dI)),o=`/preview/${i}`,a=await s({session_id:"preview-"+Date.now(),cwd:o},!0);n.setHeader("Content-Type","text/plain; charset=utf-8"),n.send(a)});handleContextInject=this.wrapHandler(async(r,n)=>{let i=r.query.projects||r.query.project,s=r.query.colors==="true",o=r.query.full==="true";if(!i){this.badRequest(n,"Project(s) parameter is required");return}let a=i.split(",").map(p=>p.trim()).filter(Boolean);if(a.length===0){this.badRequest(n,"At least one project is required");return}let{generateContext:c}=await Promise.resolve().then(()=>(pI(),dI)),l=`/context/${a[a.length-1]}`,d=await c({session_id:"context-inject-"+Date.now(),cwd:l,projects:a,full:o},s);n.setHeader("Content-Type","text/plain; charset=utf-8"),n.send(d)});handleSemanticContext=this.wrapHandler(async(r,n)=>{let i=r.body?.q||r.query.q,s=r.body?.project||r.query.project,o=Math.min(Math.max(parseInt(String(r.body?.limit||r.query.limit||"5"),10)||5,1),20);if(!i||i.length<20){n.json({context:"",count:0});return}try{let c=(await this.searchManager.search({query:i,type:"observations",project:s,limit:String(o),format:"json"}))?.observations||[];if(!c.length){n.json({context:"",count:0});return}let u=[`## Relevant Past Work (semantic match) +|----|------|---|-------|------|`}formatObservationSearchRow(e,r){let n=`#${e.id}`,i=this.formatTime(e.created_at_epoch),s=He.getInstance().getTypeIcon(e.type),o=e.title||"Untitled",a=this.estimateReadTokens(e);return{row:`| ${n} | ${i===r?"\u2033":i} | ${s} | ${o} | ~${a} |`,time:i}}formatSessionSearchRow(e,r){let n=`#S${e.id}`,i=this.formatTime(e.created_at_epoch),s="\u{1F3AF}",o=e.request||`Session ${e.memory_session_id?.substring(0,8)||"unknown"}`;return{row:`| ${n} | ${i===r?"\u2033":i} | ${s} | ${o} | - |`,time:i}}formatUserPromptSearchRow(e,r){let n=`#P${e.id}`,i=this.formatTime(e.created_at_epoch),s="\u{1F4AC}",o=e.prompt_text.length>60?e.prompt_text.substring(0,57)+"...":e.prompt_text;return{row:`| ${n} | ${i===r?"\u2033":i} | ${s} | ${o} | - |`,time:i}}};tn();var xy=class{buildTimeline(e){let r=[...e.observations.map(n=>({type:"observation",data:n,epoch:n.created_at_epoch})),...e.sessions.map(n=>({type:"session",data:n,epoch:n.created_at_epoch})),...e.prompts.map(n=>({type:"prompt",data:n,epoch:n.created_at_epoch}))];return r.sort((n,i)=>n.epoch-i.epoch),r}filterByDepth(e,r,n,i,s){if(e.length===0)return e;let o=-1;if(typeof r=="number")o=e.findIndex(u=>u.type==="observation"&&u.data.id===r);else if(typeof r=="string"&&r.startsWith("S")){let u=parseInt(r.slice(1),10);o=e.findIndex(l=>l.type==="session"&&l.data.id===u)}else o=e.findIndex(u=>u.epoch>=n),o===-1&&(o=e.length-1);if(o===-1)return e;let a=Math.max(0,o-i),c=Math.min(e.length,o+s+1);return e.slice(a,c)}formatTimeline(e,r,n,i,s){if(e.length===0)return n?`Found observation matching "${n}", but no timeline context available.`:"No timeline items found";let o=[];if(n&&r){let u=e.find(d=>d.type==="observation"&&d.data.id===r),l=u?u.data.title||"Untitled":"Unknown";o.push(`# Timeline for query: "${n}"`),o.push(`**Anchor:** Observation #${r} - ${l}`)}else r?o.push(`# Timeline around anchor: ${r}`):o.push("# Timeline");i!==void 0&&s!==void 0?o.push(`**Window:** ${i} records before \u2192 ${s} records after | **Items:** ${e.length}`):o.push(`**Items:** ${e.length}`),o.push(""),o.push("**Legend:** \u{1F3AF} session-request | \u{1F534} bugfix | \u{1F7E3} feature | \u{1F504} refactor | \u2705 change | \u{1F535} discovery | \u{1F9E0} decision"),o.push("");let a=new Map;for(let u of e){let l=this.formatDate(u.epoch);a.has(l)||a.set(l,[]),a.get(l).push(u)}let c=Array.from(a.entries()).sort((u,l)=>{let d=new Date(u[0]).getTime(),p=new Date(l[0]).getTime();return d-p});for(let[u,l]of c){o.push(`### ${u}`),o.push("");let d=null,p="",f=!1;for(let m of l){let h=typeof r=="number"&&m.type==="observation"&&m.data.id===r||typeof r=="string"&&r.startsWith("S")&&m.type==="session"&&`S${m.data.id}`===r;if(m.type==="session"){f&&(o.push(""),f=!1,d=null,p="");let g=m.data,v=g.request||"Session summary",y=h?" \u2190 **ANCHOR**":"";o.push(`**\u{1F3AF} #S${g.id}** ${v} (${this.formatDateTime(m.epoch)})${y}`),o.push("")}else if(m.type==="prompt"){f&&(o.push(""),f=!1,d=null,p="");let g=m.data,v=g.prompt_text.length>100?g.prompt_text.substring(0,100)+"...":g.prompt_text;o.push(`**\u{1F4AC} User Prompt #${g.prompt_number}** (${this.formatDateTime(m.epoch)})`),o.push(`> ${v}`),o.push("")}else if(m.type==="observation"){let g=m.data,v="General";v!==d&&(f&&o.push(""),o.push(`**${v}**`),o.push("| ID | Time | T | Title | Tokens |"),o.push("|----|------|---|-------|--------|"),d=v,f=!0,p="");let y=this.getTypeIcon(g.type),b=this.formatTime(m.epoch),S=g.title||"Untitled",x=this.estimateTokens(g.narrative),E=b!==p?b:"\u2033";p=b;let T=h?" \u2190 **ANCHOR**":"";o.push(`| #${g.id} | ${E} | ${y} | ${S}${T} | ~${x} |`)}}f&&o.push("")}return o.join(` +`)}getTypeIcon(e){return He.getInstance().getTypeIcon(e)}formatDate(e){return new Date(e).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric"})}formatTime(e){return new Date(e).toLocaleString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}formatDateTime(e){return new Date(e).toLocaleString("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit",hour12:!0})}estimateTokens(e){return e?Math.ceil(e.length/4):0}};var wy=class{constructor(e,r){this.sseBroadcaster=e;this.workerService=r}broadcastNewPrompt(e){this.sseBroadcaster.broadcast({type:"new_prompt",prompt:e}),this.workerService.broadcastProcessingStatus()}broadcastSessionStarted(e,r){this.sseBroadcaster.broadcast({type:"session_started",sessionDbId:e,project:r}),this.workerService.broadcastProcessingStatus()}broadcastObservationQueued(e){this.sseBroadcaster.broadcast({type:"observation_queued",sessionDbId:e}),this.workerService.broadcastProcessingStatus()}broadcastSessionCompleted(e){this.sseBroadcaster.broadcast({type:"session_completed",timestamp:Date.now(),sessionDbId:e}),this.workerService.broadcastProcessingStatus()}broadcastSummarizeQueued(){this.workerService.broadcastProcessingStatus()}};var Gs=require("fs"),Ey=require("os"),Ku=require("path"),ky=(0,Ku.join)((0,Ey.homedir)(),".claude-mem","transcript-watch.json"),Ty=(0,Ku.join)((0,Ey.homedir)(),".claude-mem","transcript-watch-state.json"),q_e={name:"codex",version:"0.3",description:"Schema for Codex session JSONL files under ~/.codex/sessions.",events:[{name:"session-meta",match:{path:"type",equals:"session_meta"},action:"session_context",fields:{sessionId:"payload.id",cwd:"payload.cwd"}},{name:"turn-context",match:{path:"type",equals:"turn_context"},action:"session_context",fields:{cwd:"payload.cwd"}},{name:"user-message",match:{path:"payload.type",equals:"user_message"},action:"session_init",fields:{prompt:"payload.message"}},{name:"assistant-message",match:{path:"payload.type",equals:"agent_message"},action:"assistant_message",fields:{message:"payload.message"}},{name:"tool-use",match:{path:"payload.type",in:["function_call","custom_tool_call","web_search_call","exec_command"]},action:"tool_use",fields:{toolId:"payload.call_id",toolName:{coalesce:["payload.name","payload.type",{value:"web_search"}]},toolInput:{coalesce:["payload.arguments","payload.input","payload.command","payload.action"]}}},{name:"tool-result",match:{path:"payload.type",in:["function_call_output","custom_tool_call_output","exec_command_output"]},action:"tool_result",fields:{toolId:"payload.call_id",toolResponse:"payload.output"}},{name:"session-end",match:{path:"payload.type",in:["turn_aborted","turn_completed"]},action:"session_end"}]},H_e={version:1,schemas:{codex:q_e},watches:[{name:"codex",path:"~/.codex/sessions/**/*.jsonl",schema:"codex",startAtEnd:!0,context:{mode:"agents",path:"~/.codex/AGENTS.md",updateOn:["session_start","session_end"]}}],stateFile:Ty};function Ws(t){return t&&(t.startsWith("~")?(0,Ku.join)((0,Ey.homedir)(),t.slice(1)):t)}function L9(t=ky){let e=Ws(t);if(!(0,Gs.existsSync)(e))throw new Error(`Transcript watch config not found: ${e}`);let r=(0,Gs.readFileSync)(e,"utf-8"),n=JSON.parse(r);if(!n.version||!n.watches)throw new Error(`Invalid transcript watch config: ${e}`);return n.stateFile||(n.stateFile=Ty),n}function U9(t=ky){let e=Ws(t),r=(0,Ku.dirname)(e);(0,Gs.existsSync)(r)||(0,Gs.mkdirSync)(r,{recursive:!0}),(0,Gs.writeFileSync)(e,JSON.stringify(H_e,null,2))}var Ai=require("fs"),n_=require("path");var gI=(t,e,r)=>{let n=t instanceof RegExp?F9(t,r):t,i=e instanceof RegExp?F9(e,r):e,s=n!==null&&i!=null&&Z_e(n,i,r);return s&&{start:s[0],end:s[1],pre:r.slice(0,s[0]),body:r.slice(s[0]+n.length,s[1]),post:r.slice(s[1]+i.length)}},F9=(t,e)=>{let r=e.match(t);return r?r[0]:null},Z_e=(t,e,r)=>{let n,i,s,o,a,c=r.indexOf(t),u=r.indexOf(e,c+1),l=c;if(c>=0&&u>0){if(t===e)return[c,u];for(n=[],s=r.length;l>=0&&!a;){if(l===c)n.push(l),c=r.indexOf(t,l+1);else if(n.length===1){let d=n.pop();d!==void 0&&(a=[d,u])}else i=n.pop(),i!==void 0&&i=0?c:u}n.length&&o!==void 0&&(a=[s,o])}return a};var q9="\0SLASH"+Math.random()+"\0",H9="\0OPEN"+Math.random()+"\0",yI="\0CLOSE"+Math.random()+"\0",Z9="\0COMMA"+Math.random()+"\0",B9="\0PERIOD"+Math.random()+"\0",B_e=new RegExp(q9,"g"),G_e=new RegExp(H9,"g"),W_e=new RegExp(yI,"g"),V_e=new RegExp(Z9,"g"),K_e=new RegExp(B9,"g"),J_e=/\\\\/g,X_e=/\\{/g,Y_e=/\\}/g,Q_e=/\\,/g,ebe=/\\\./g,tbe=1e5;function vI(t){return isNaN(t)?t.charCodeAt(0):parseInt(t,10)}function rbe(t){return t.replace(J_e,q9).replace(X_e,H9).replace(Y_e,yI).replace(Q_e,Z9).replace(ebe,B9)}function nbe(t){return t.replace(B_e,"\\").replace(G_e,"{").replace(W_e,"}").replace(V_e,",").replace(K_e,".")}function G9(t){if(!t)return[""];let e=[],r=gI("{","}",t);if(!r)return t.split(",");let{pre:n,body:i,post:s}=r,o=n.split(",");o[o.length-1]+="{"+i+"}";let a=G9(s);return s.length&&(o[o.length-1]+=a.shift(),o.push.apply(o,a)),e.push.apply(e,o),e}function W9(t,e={}){if(!t)return[];let{max:r=tbe}=e;return t.slice(0,2)==="{}"&&(t="\\{\\}"+t.slice(2)),wf(rbe(t),r,!0).map(nbe)}function ibe(t){return"{"+t+"}"}function sbe(t){return/^-?0\d/.test(t)}function obe(t,e){return t<=e}function abe(t,e){return t>=e}function wf(t,e,r){let n=[],i=gI("{","}",t);if(!i)return[t];let s=i.pre,o=i.post.length?wf(i.post,e,!1):[""];if(/\$$/.test(i.pre))for(let a=0;a=0;if(!u&&!l)return i.post.match(/,(?!,).*\}/)?(t=i.pre+"{"+i.body+yI+i.post,wf(t,e,!0)):[t];let d;if(u)d=i.body.split(/\.\./);else if(d=G9(i.body),d.length===1&&d[0]!==void 0&&(d=wf(d[0],e,!1).map(ibe),d.length===1))return o.map(f=>i.pre+d[0]+f);let p;if(u&&d[0]!==void 0&&d[1]!==void 0){let f=vI(d[0]),m=vI(d[1]),h=Math.max(d[0].length,d[1].length),g=d.length===3&&d[2]!==void 0?Math.abs(vI(d[2])):1,v=obe;m0){let E=new Array(w+1).join("0");S<0?x="-"+E+x.slice(1):x=E+x}}p.push(x)}}else{p=[];for(let f=0;f{if(typeof t!="string")throw new TypeError("invalid pattern");if(t.length>65536)throw new TypeError("pattern is too long")};var cbe={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},kf=t=>t.replace(/[[\]\\-]/g,"\\$&"),ube=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),V9=t=>t.join(""),K9=(t,e)=>{let r=e;if(t.charAt(r)!=="[")throw new Error("not in a brace expression");let n=[],i=[],s=r+1,o=!1,a=!1,c=!1,u=!1,l=r,d="";e:for(;sd?n.push(kf(d)+"-"+kf(h)):h===d&&n.push(kf(h)),d="",s++;continue}if(t.startsWith("-]",s+1)){n.push(kf(h+"-")),s+=2;continue}if(t.startsWith("-",s+1)){d=h,s+=2;continue}n.push(kf(h)),s++}if(lr?e?t.replace(/\[([^\/\\])\]/g,"$1"):t.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1"):e?t.replace(/\[([^\/\\{}])\]/g,"$1"):t.replace(/((?!\\).|^)\[([^\/\\{}])\]/g,"$1$2").replace(/\\([^\/{}])/g,"$1");var xn,lbe=new Set(["!","?","+","*","@"]),_I=t=>lbe.has(t),J9=t=>_I(t.type),dbe=new Map([["!",["@"]],["?",["?","@"]],["@",["@"]],["*",["*","+","?","@"]],["+",["+","@"]]]),pbe=new Map([["!",["?"]],["@",["?"]],["+",["?","*"]]]),fbe=new Map([["!",["?","@"]],["?",["?","@"]],["@",["?","@"]],["*",["*","+","?","@"]],["+",["+","@","?","*"]]]),X9=new Map([["!",new Map([["!","@"]])],["?",new Map([["*","*"],["+","*"]])],["@",new Map([["!","!"],["?","?"],["@","@"],["*","*"],["+","+"]])],["+",new Map([["?","*"],["*","*"]])]]),mbe="(?!(?:^|/)\\.\\.?(?:$|/))",$y="(?!\\.)",hbe=new Set(["[","."]),gbe=new Set(["..","."]),vbe=new Set("().*{}+?[]^$\\!"),ybe=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),bI="[^/]",Y9=bI+"*?",Q9=bI+"+?",_be=0,Ma=class{type;#e;#n;#i=!1;#t=[];#o;#w;#y;#d=!1;#a;#p;#l=!1;id=++_be;get depth(){return(this.#o?.depth??-1)+1}[Symbol.for("nodejs.util.inspect.custom")](){return{"@@type":"AST",id:this.id,type:this.type,root:this.#e.id,parent:this.#o?.id,depth:this.depth,partsLength:this.#t.length,parts:this.#t}}constructor(e,r,n={}){this.type=e,e&&(this.#n=!0),this.#o=r,this.#e=this.#o?this.#o.#e:this,this.#a=this.#e===this?n:this.#e.#a,this.#y=this.#e===this?[]:this.#e.#y,e==="!"&&!this.#e.#d&&this.#y.push(this),this.#w=this.#o?this.#o.#t.length:0}get hasMagic(){if(this.#n!==void 0)return this.#n;for(let e of this.#t)if(typeof e!="string"&&(e.type||e.hasMagic))return this.#n=!0;return this.#n}toString(){return this.#p!==void 0?this.#p:this.type?this.#p=this.type+"("+this.#t.map(e=>String(e)).join("|")+")":this.#p=this.#t.map(e=>String(e)).join("")}#c(){if(this!==this.#e)throw new Error("should only call on root");if(this.#d)return this;this.toString(),this.#d=!0;let e;for(;e=this.#y.pop();){if(e.type!=="!")continue;let r=e,n=r.#o;for(;n;){for(let i=r.#w+1;!n.type&&itypeof r=="string"?r:r.toJSON()):[this.type,...this.#t.map(r=>r.toJSON())];return this.isStart()&&!this.type&&e.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#d&&this.#o?.type==="!")&&e.push({}),e}isStart(){if(this.#e===this)return!0;if(!this.#o?.isStart())return!1;if(this.#w===0)return!0;let e=this.#o;for(let r=0;rtypeof f!="string"),u=this.#t.map(f=>{let[m,h,g,v]=typeof f=="string"?xn.#b(f,this.#n,c):f.toRegExpSource(e);return this.#n=this.#n||g,this.#i=this.#i||v,m}).join(""),l="";if(this.isStart()&&typeof this.#t[0]=="string"&&!(this.#t.length===1&&gbe.has(this.#t[0]))){let m=hbe,h=r&&m.has(u.charAt(0))||u.startsWith("\\.")&&m.has(u.charAt(2))||u.startsWith("\\.\\.")&&m.has(u.charAt(4)),g=!r&&!e&&m.has(u.charAt(0));l=h?mbe:g?$y:""}let d="";return this.isEnd()&&this.#e.#d&&this.#o?.type==="!"&&(d="(?:$|\\/)"),[l+u+d,Ii(u),this.#n=!!this.#n,this.#i]}let n=this.type==="*"||this.type==="+",i=this.type==="!"?"(?:(?!(?:":"(?:",s=this.#v(r);if(this.isStart()&&this.isEnd()&&!s&&this.type!=="!"){let c=this.toString(),u=this;return u.#t=[c],u.type=null,u.#n=void 0,[c,Ii(this.toString()),!1,!1]}let o=!n||e||r||!$y?"":this.#v(!0);o===s&&(o=""),o&&(s=`(?:${s})(?:${o})*?`);let a="";if(this.type==="!"&&this.#l)a=(this.isStart()&&!r?$y:"")+Q9;else{let c=this.type==="!"?"))"+(this.isStart()&&!r&&!e?$y:"")+Y9+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&o?")":this.type==="*"&&o?")?":`)${this.type}`;a=i+s+c}return[a,Ii(s),this.#n=!!this.#n,this.#i]}#f(){if(J9(this)){let e=0,r=!1;do{r=!0;for(let n=0;n{if(typeof r=="string")throw new Error("string type in extglob ast??");let[n,i,s,o]=r.toRegExpSource(e);return this.#i=this.#i||o,n}).filter(r=>!(this.isStart()&&this.isEnd())||!!r).join("|")}static#b(e,r,n=!1){let i=!1,s="",o=!1,a=!1;for(let c=0;cr?e?t.replace(/[?*()[\]{}]/g,"[$&]"):t.replace(/[?*()[\]\\{}]/g,"\\$&"):e?t.replace(/[?*()[\]]/g,"[$&]"):t.replace(/[?*()[\]\\]/g,"\\$&");var nn=(t,e,r={})=>(Ef(e),!r.nocomment&&e.charAt(0)==="#"?!1:new Mn(e,r).match(t)),bbe=/^\*+([^+@!?\*\[\(]*)$/,Sbe=t=>e=>!e.startsWith(".")&&e.endsWith(t),xbe=t=>e=>e.endsWith(t),wbe=t=>(t=t.toLowerCase(),e=>!e.startsWith(".")&&e.toLowerCase().endsWith(t)),Ebe=t=>(t=t.toLowerCase(),e=>e.toLowerCase().endsWith(t)),kbe=/^\*+\.\*+$/,Tbe=t=>!t.startsWith(".")&&t.includes("."),$be=t=>t!=="."&&t!==".."&&t.includes("."),Ibe=/^\.\*+$/,Rbe=t=>t!=="."&&t!==".."&&t.startsWith("."),Obe=/^\*+$/,Cbe=t=>t.length!==0&&!t.startsWith("."),Pbe=t=>t.length!==0&&t!=="."&&t!=="..",Abe=/^\?+([^+@!?\*\[\(]*)?$/,Nbe=([t,e=""])=>{let r=r8([t]);return e?(e=e.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(e)):r},Mbe=([t,e=""])=>{let r=n8([t]);return e?(e=e.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(e)):r},Dbe=([t,e=""])=>{let r=n8([t]);return e?n=>r(n)&&n.endsWith(e):r},jbe=([t,e=""])=>{let r=r8([t]);return e?n=>r(n)&&n.endsWith(e):r},r8=([t])=>{let e=t.length;return r=>r.length===e&&!r.startsWith(".")},n8=([t])=>{let e=t.length;return r=>r.length===e&&r!=="."&&r!==".."},i8=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",e8={win32:{sep:"\\"},posix:{sep:"/"}},zbe=i8==="win32"?e8.win32.sep:e8.posix.sep;nn.sep=zbe;var Yt=Symbol("globstar **");nn.GLOBSTAR=Yt;var Lbe="[^/]",Ube=Lbe+"*?",Fbe="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",qbe="(?:(?!(?:\\/|^)\\.).)*?",Hbe=(t,e={})=>r=>nn(r,t,e);nn.filter=Hbe;var ri=(t,e={})=>Object.assign({},t,e),Zbe=t=>{if(!t||typeof t!="object"||!Object.keys(t).length)return nn;let e=nn;return Object.assign((n,i,s={})=>e(n,i,ri(t,s)),{Minimatch:class extends e.Minimatch{constructor(i,s={}){super(i,ri(t,s))}static defaults(i){return e.defaults(ri(t,i)).Minimatch}},AST:class extends e.AST{constructor(i,s,o={}){super(i,s,ri(t,o))}static fromGlob(i,s={}){return e.AST.fromGlob(i,ri(t,s))}},unescape:(n,i={})=>e.unescape(n,ri(t,i)),escape:(n,i={})=>e.escape(n,ri(t,i)),filter:(n,i={})=>e.filter(n,ri(t,i)),defaults:n=>e.defaults(ri(t,n)),makeRe:(n,i={})=>e.makeRe(n,ri(t,i)),braceExpand:(n,i={})=>e.braceExpand(n,ri(t,i)),match:(n,i,s={})=>e.match(n,i,ri(t,s)),sep:e.sep,GLOBSTAR:Yt})};nn.defaults=Zbe;var s8=(t,e={})=>(Ef(t),e.nobrace||!/\{(?:(?!\{).)*\}/.test(t)?[t]:W9(t,{max:e.braceExpandMax}));nn.braceExpand=s8;var Bbe=(t,e={})=>new Mn(t,e).makeRe();nn.makeRe=Bbe;var Gbe=(t,e,r={})=>{let n=new Mn(e,r);return t=t.filter(i=>n.match(i)),n.options.nonull&&!t.length&&t.push(e),t};nn.match=Gbe;var t8=/[?*]|[+@!]\(.*?\)|\[|\]/,Wbe=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Mn=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;maxGlobstarRecursion;regexp;constructor(e,r={}){Ef(e),r=r||{},this.options=r,this.maxGlobstarRecursion=r.maxGlobstarRecursion??200,this.pattern=e,this.platform=r.platform||i8,this.isWindows=this.platform==="win32";let n="allowWindowsEscape";this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r[n]===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!r.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!r.nonegate,this.comment=!1,this.empty=!1,this.partial=!!r.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=r.windowsNoMagicRoot!==void 0?r.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let e of this.set)for(let r of e)if(typeof r!="string")return!0;return!1}debug(...e){}make(){let e=this.pattern,r=this.options;if(!r.nocomment&&e.charAt(0)==="#"){this.comment=!0;return}if(!e){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],r.debug&&(this.debug=(...s)=>console.error(...s)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(s=>this.slashSplit(s));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let i=this.globParts.map((s,o,a)=>{if(this.isWindows&&this.windowsNoMagicRoot){let c=s[0]===""&&s[1]===""&&(s[2]==="?"||!t8.test(s[2]))&&!t8.test(s[3]),u=/^[a-z]:/i.test(s[0]);if(c)return[...s.slice(0,4),...s.slice(4).map(l=>this.parse(l))];if(u)return[s[0],...s.slice(1).map(l=>this.parse(l))]}return s.map(c=>this.parse(c))});if(this.debug(this.pattern,i),this.set=i.filter(s=>s.indexOf(!1)===-1),this.isWindows)for(let s=0;s=2?(e=this.firstPhasePreProcess(e),e=this.secondPhasePreProcess(e)):r>=1?e=this.levelOneOptimize(e):e=this.adjascentGlobstarOptimize(e),e}adjascentGlobstarOptimize(e){return e.map(r=>{let n=-1;for(;(n=r.indexOf("**",n+1))!==-1;){let i=n;for(;r[i+1]==="**";)i++;i!==n&&r.splice(n,i-n)}return r})}levelOneOptimize(e){return e.map(r=>(r=r.reduce((n,i)=>{let s=n[n.length-1];return i==="**"&&s==="**"?n:i===".."&&s&&s!==".."&&s!=="."&&s!=="**"?(n.pop(),n):(n.push(i),n)},[]),r.length===0?[""]:r))}levelTwoFileOptimize(e){Array.isArray(e)||(e=this.slashSplit(e));let r=!1;do{if(r=!1,!this.preserveMultipleSlashes){for(let i=1;ii&&n.splice(i+1,o-i);let a=n[i+1],c=n[i+2],u=n[i+3];if(a!==".."||!c||c==="."||c===".."||!u||u==="."||u==="..")continue;r=!0,n.splice(i,1);let l=n.slice(0);l[i]="**",e.push(l),i--}if(!this.preserveMultipleSlashes){for(let o=1;or.length)}partsMatch(e,r,n=!1){let i=0,s=0,o=[],a="";for(;i=2&&(e=this.levelTwoFileOptimize(e)),r.includes(Yt)?this.#e(e,r,n,i,s):this.#i(e,r,n,i,s)}#e(e,r,n,i,s){let o=r.indexOf(Yt,s),a=r.lastIndexOf(Yt),[c,u,l]=n?[r.slice(s,o),r.slice(o+1),[]]:[r.slice(s,o),r.slice(o+1,a),r.slice(a+1)];if(c.length){let y=e.slice(i,i+c.length);if(!this.#i(y,c,n,0,0))return!1;i+=c.length,s+=c.length}let d=0;if(l.length){if(l.length+i>e.length)return!1;let y=e.length-l.length;if(this.#i(e,l,n,y,0))d=l.length;else{if(e[e.length-1]!==""||i+l.length===e.length||(y--,!this.#i(e,l,n,y,0)))return!1;d=l.length+1}}if(!u.length){let y=!!d;for(let b=i;b{let u=c.map(d=>{if(d instanceof RegExp)for(let p of d.flags.split(""))i.add(p);return typeof d=="string"?Wbe(d):d===Yt?Yt:d._src});u.forEach((d,p)=>{let f=u[p+1],m=u[p-1];d!==Yt||m===Yt||(m===void 0?f!==void 0&&f!==Yt?u[p+1]="(?:\\/|"+n+"\\/)?"+f:u[p]=n:f===void 0?u[p-1]=m+"(?:\\/|\\/"+n+")?":f!==Yt&&(u[p-1]=m+"(?:\\/|\\/"+n+"\\/)"+f,u[p+1]=Yt))});let l=u.filter(d=>d!==Yt);if(this.partial&&l.length>=1){let d=[];for(let p=1;p<=l.length;p++)d.push(l.slice(0,p).join("/"));return"(?:"+d.join("|")+")"}return l.join("/")}).join("|"),[o,a]=e.length>1?["(?:",")"]:["",""];s="^"+o+s+a+"$",this.partial&&(s="^(?:\\/|"+o+s.slice(1,-1)+a+")$"),this.negate&&(s="^(?!"+s+").+$");try{this.regexp=new RegExp(s,[...i].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(e){return this.preserveMultipleSlashes?e.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(e)?["",...e.split(/\/+/)]:e.split(/\/+/)}match(e,r=this.partial){if(this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return e==="";if(e==="/"&&r)return!0;let n=this.options;this.isWindows&&(e=e.split("\\").join("/"));let i=this.slashSplit(e);this.debug(this.pattern,"split",i);let s=this.set;this.debug(this.pattern,"set",s);let o=i[i.length-1];if(!o)for(let a=i.length-2;!o&&a>=0;a--)o=i[a];for(let a=0;a{typeof SI.emitWarning=="function"?SI.emitWarning(t,e,r,n):console.error(`[${r}] ${e}: ${t}`)},Ry=globalThis.AbortController,o8=globalThis.AbortSignal;if(typeof Ry>"u"){o8=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(r,n){this._onabort.push(n)}},Ry=class{constructor(){e()}signal=new o8;abort(r){if(!this.signal.aborted){this.signal.reason=r,this.signal.aborted=!0;for(let n of this.signal._onabort)n(r);this.signal.onabort?.(r)}}};let t=SI.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",e=()=>{t&&(t=!1,c8("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",e))}}var Kbe=t=>!a8.has(t);var No=t=>t&&t===Math.floor(t)&&t>0&&isFinite(t),u8=t=>No(t)?t<=Math.pow(2,8)?Uint8Array:t<=Math.pow(2,16)?Uint16Array:t<=Math.pow(2,32)?Uint32Array:t<=Number.MAX_SAFE_INTEGER?Iy:null:null,Iy=class extends Array{constructor(t){super(t),this.fill(0)}},Jbe=class Tf{heap;length;static#e=!1;static create(e){let r=u8(e);if(!r)return[];Tf.#e=!0;let n=new Tf(e,r);return Tf.#e=!1,n}constructor(e,r){if(!Tf.#e)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new r(e),this.length=0}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}},$f=class l8{#e;#n;#i;#t;#o;#w;#y;#d;get perf(){return this.#d}ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#a;#p;#l;#c;#s;#_;#S;#m;#h;#T;#g;#x;#E;#f;#v;#b;#$;#r;#N;static unsafeExposeInternals(e){return{starts:e.#E,ttls:e.#f,autopurgeTimers:e.#v,sizes:e.#x,keyMap:e.#l,keyList:e.#c,valList:e.#s,next:e.#_,prev:e.#S,get head(){return e.#m},get tail(){return e.#h},free:e.#T,isBackgroundFetch:r=>e.#u(r),backgroundFetch:(r,n,i,s)=>e.#q(r,n,i,s),moveToTail:r=>e.#D(r),indexes:r=>e.#O(r),rindexes:r=>e.#C(r),isStale:r=>e.#k(r)}}get max(){return this.#e}get maxSize(){return this.#n}get calculatedSize(){return this.#p}get size(){return this.#a}get fetchMethod(){return this.#w}get memoMethod(){return this.#y}get dispose(){return this.#i}get onInsert(){return this.#t}get disposeAfter(){return this.#o}constructor(e){let{max:r=0,ttl:n,ttlResolution:i=1,ttlAutopurge:s,updateAgeOnGet:o,updateAgeOnHas:a,allowStale:c,dispose:u,onInsert:l,disposeAfter:d,noDisposeOnSet:p,noUpdateTTL:f,maxSize:m=0,maxEntrySize:h=0,sizeCalculation:g,fetchMethod:v,memoMethod:y,noDeleteOnFetchRejection:b,noDeleteOnStaleGet:S,allowStaleOnFetchRejection:x,allowStaleOnFetchAbort:w,ignoreFetchAbort:E,perf:T}=e;if(T!==void 0&&typeof T?.now!="function")throw new TypeError("perf option must have a now() method if specified");if(this.#d=T??Vbe,r!==0&&!No(r))throw new TypeError("max option must be a nonnegative integer");let I=r?u8(r):Array;if(!I)throw new Error("invalid max value: "+r);if(this.#e=r,this.#n=m,this.maxEntrySize=h||this.#n,this.sizeCalculation=g,this.sizeCalculation){if(!this.#n&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(y!==void 0&&typeof y!="function")throw new TypeError("memoMethod must be a function if defined");if(this.#y=y,v!==void 0&&typeof v!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#w=v,this.#$=!!v,this.#l=new Map,this.#c=new Array(r).fill(void 0),this.#s=new Array(r).fill(void 0),this.#_=new I(r),this.#S=new I(r),this.#m=0,this.#h=0,this.#T=Jbe.create(r),this.#a=0,this.#p=0,typeof u=="function"&&(this.#i=u),typeof l=="function"&&(this.#t=l),typeof d=="function"?(this.#o=d,this.#g=[]):(this.#o=void 0,this.#g=void 0),this.#b=!!this.#i,this.#N=!!this.#t,this.#r=!!this.#o,this.noDisposeOnSet=!!p,this.noUpdateTTL=!!f,this.noDeleteOnFetchRejection=!!b,this.allowStaleOnFetchRejection=!!x,this.allowStaleOnFetchAbort=!!w,this.ignoreFetchAbort=!!E,this.maxEntrySize!==0){if(this.#n!==0&&!No(this.#n))throw new TypeError("maxSize must be a positive integer if specified");if(!No(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#Z()}if(this.allowStale=!!c,this.noDeleteOnStaleGet=!!S,this.updateAgeOnGet=!!o,this.updateAgeOnHas=!!a,this.ttlResolution=No(i)||i===0?i:1,this.ttlAutopurge=!!s,this.ttl=n||0,this.ttl){if(!No(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#P()}if(this.#e===0&&this.ttl===0&&this.#n===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#e&&!this.#n){let A="LRU_CACHE_UNBOUNDED";Kbe(A)&&(a8.add(A),c8("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",A,l8))}}getRemainingTTL(e){return this.#l.has(e)?1/0:0}#P(){let e=new Iy(this.#e),r=new Iy(this.#e);this.#f=e,this.#E=r;let n=this.ttlAutopurge?new Array(this.#e):void 0;this.#v=n,this.#z=(a,c,u=this.#d.now())=>{r[a]=c!==0?u:0,e[a]=c,i(a,c)},this.#I=a=>{r[a]=e[a]!==0?this.#d.now():0,i(a,e[a])};let i=this.ttlAutopurge?(a,c)=>{if(n?.[a]&&(clearTimeout(n[a]),n[a]=void 0),c&&c!==0&&n){let u=setTimeout(()=>{this.#k(a)&&this.#R(this.#c[a],"expire")},c+1);u.unref&&u.unref(),n[a]=u}}:()=>{};this.#A=(a,c)=>{if(e[c]){let u=e[c],l=r[c];if(!u||!l)return;a.ttl=u,a.start=l,a.now=s||o();let d=a.now-l;a.remainingTTL=u-d}};let s=0,o=()=>{let a=this.#d.now();if(this.ttlResolution>0){s=a;let c=setTimeout(()=>s=0,this.ttlResolution);c.unref&&c.unref()}return a};this.getRemainingTTL=a=>{let c=this.#l.get(a);if(c===void 0)return 0;let u=e[c],l=r[c];if(!u||!l)return 1/0;let d=(s||o())-l;return u-d},this.#k=a=>{let c=r[a],u=e[a];return!!u&&!!c&&(s||o())-c>u}}#I=()=>{};#A=()=>{};#z=()=>{};#k=()=>!1;#Z(){let e=new Iy(this.#e);this.#p=0,this.#x=e,this.#j=r=>{this.#p-=e[r],e[r]=0},this.#L=(r,n,i,s)=>{if(this.#u(n))return 0;if(!No(i))if(s){if(typeof s!="function")throw new TypeError("sizeCalculation must be a function");if(i=s(n,r),!No(i))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return i},this.#M=(r,n,i)=>{if(e[r]=n,this.#n){let s=this.#n-e[r];for(;this.#p>s;)this.#F(!0)}this.#p+=e[r],i&&(i.entrySize=n,i.totalCalculatedSize=this.#p)}}#j=e=>{};#M=(e,r,n)=>{};#L=(e,r,n,i)=>{if(n||i)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#O({allowStale:e=this.allowStale}={}){if(this.#a)for(let r=this.#h;!(!this.#U(r)||((e||!this.#k(r))&&(yield r),r===this.#m));)r=this.#S[r]}*#C({allowStale:e=this.allowStale}={}){if(this.#a)for(let r=this.#m;!(!this.#U(r)||((e||!this.#k(r))&&(yield r),r===this.#h));)r=this.#_[r]}#U(e){return e!==void 0&&this.#l.get(this.#c[e])===e}*entries(){for(let e of this.#O())this.#s[e]!==void 0&&this.#c[e]!==void 0&&!this.#u(this.#s[e])&&(yield[this.#c[e],this.#s[e]])}*rentries(){for(let e of this.#C())this.#s[e]!==void 0&&this.#c[e]!==void 0&&!this.#u(this.#s[e])&&(yield[this.#c[e],this.#s[e]])}*keys(){for(let e of this.#O()){let r=this.#c[e];r!==void 0&&!this.#u(this.#s[e])&&(yield r)}}*rkeys(){for(let e of this.#C()){let r=this.#c[e];r!==void 0&&!this.#u(this.#s[e])&&(yield r)}}*values(){for(let e of this.#O())this.#s[e]!==void 0&&!this.#u(this.#s[e])&&(yield this.#s[e])}*rvalues(){for(let e of this.#C())this.#s[e]!==void 0&&!this.#u(this.#s[e])&&(yield this.#s[e])}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(e,r={}){for(let n of this.#O()){let i=this.#s[n],s=this.#u(i)?i.__staleWhileFetching:i;if(s!==void 0&&e(s,this.#c[n],this))return this.get(this.#c[n],r)}}forEach(e,r=this){for(let n of this.#O()){let i=this.#s[n],s=this.#u(i)?i.__staleWhileFetching:i;s!==void 0&&e.call(r,s,this.#c[n],this)}}rforEach(e,r=this){for(let n of this.#C()){let i=this.#s[n],s=this.#u(i)?i.__staleWhileFetching:i;s!==void 0&&e.call(r,s,this.#c[n],this)}}purgeStale(){let e=!1;for(let r of this.#C({allowStale:!0}))this.#k(r)&&(this.#R(this.#c[r],"expire"),e=!0);return e}info(e){let r=this.#l.get(e);if(r===void 0)return;let n=this.#s[r],i=this.#u(n)?n.__staleWhileFetching:n;if(i===void 0)return;let s={value:i};if(this.#f&&this.#E){let o=this.#f[r],a=this.#E[r];if(o&&a){let c=o-(this.#d.now()-a);s.ttl=c,s.start=Date.now()}}return this.#x&&(s.size=this.#x[r]),s}dump(){let e=[];for(let r of this.#O({allowStale:!0})){let n=this.#c[r],i=this.#s[r],s=this.#u(i)?i.__staleWhileFetching:i;if(s===void 0||n===void 0)continue;let o={value:s};if(this.#f&&this.#E){o.ttl=this.#f[r];let a=this.#d.now()-this.#E[r];o.start=Math.floor(Date.now()-a)}this.#x&&(o.size=this.#x[r]),e.unshift([n,o])}return e}load(e){this.clear();for(let[r,n]of e){if(n.start){let i=Date.now()-n.start;n.start=this.#d.now()-i}this.set(r,n.value,n)}}set(e,r,n={}){if(r===void 0)return this.delete(e),this;let{ttl:i=this.ttl,start:s,noDisposeOnSet:o=this.noDisposeOnSet,sizeCalculation:a=this.sizeCalculation,status:c}=n,{noUpdateTTL:u=this.noUpdateTTL}=n,l=this.#L(e,r,n.size||0,a);if(this.maxEntrySize&&l>this.maxEntrySize)return c&&(c.set="miss",c.maxEntrySizeExceeded=!0),this.#R(e,"set"),this;let d=this.#a===0?void 0:this.#l.get(e);if(d===void 0)d=this.#a===0?this.#h:this.#T.length!==0?this.#T.pop():this.#a===this.#e?this.#F(!1):this.#a,this.#c[d]=e,this.#s[d]=r,this.#l.set(e,d),this.#_[this.#h]=d,this.#S[d]=this.#h,this.#h=d,this.#a++,this.#M(d,l,c),c&&(c.set="add"),u=!1,this.#N&&this.#t?.(r,e,"add");else{this.#D(d);let p=this.#s[d];if(r!==p){if(this.#$&&this.#u(p)){p.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:f}=p;f!==void 0&&!o&&(this.#b&&this.#i?.(f,e,"set"),this.#r&&this.#g?.push([f,e,"set"]))}else o||(this.#b&&this.#i?.(p,e,"set"),this.#r&&this.#g?.push([p,e,"set"]));if(this.#j(d),this.#M(d,l,c),this.#s[d]=r,c){c.set="replace";let f=p&&this.#u(p)?p.__staleWhileFetching:p;f!==void 0&&(c.oldValue=f)}}else c&&(c.set="update");this.#N&&this.onInsert?.(r,e,r===p?"update":"replace")}if(i!==0&&!this.#f&&this.#P(),this.#f&&(u||this.#z(d,i,s),c&&this.#A(c,d)),!o&&this.#r&&this.#g){let p=this.#g,f;for(;f=p?.shift();)this.#o?.(...f)}return this}pop(){try{for(;this.#a;){let e=this.#s[this.#m];if(this.#F(!0),this.#u(e)){if(e.__staleWhileFetching)return e.__staleWhileFetching}else if(e!==void 0)return e}}finally{if(this.#r&&this.#g){let e=this.#g,r;for(;r=e?.shift();)this.#o?.(...r)}}}#F(e){let r=this.#m,n=this.#c[r],i=this.#s[r];return this.#$&&this.#u(i)?i.__abortController.abort(new Error("evicted")):(this.#b||this.#r)&&(this.#b&&this.#i?.(i,n,"evict"),this.#r&&this.#g?.push([i,n,"evict"])),this.#j(r),this.#v?.[r]&&(clearTimeout(this.#v[r]),this.#v[r]=void 0),e&&(this.#c[r]=void 0,this.#s[r]=void 0,this.#T.push(r)),this.#a===1?(this.#m=this.#h=0,this.#T.length=0):this.#m=this.#_[r],this.#l.delete(n),this.#a--,r}has(e,r={}){let{updateAgeOnHas:n=this.updateAgeOnHas,status:i}=r,s=this.#l.get(e);if(s!==void 0){let o=this.#s[s];if(this.#u(o)&&o.__staleWhileFetching===void 0)return!1;if(this.#k(s))i&&(i.has="stale",this.#A(i,s));else return n&&this.#I(s),i&&(i.has="hit",this.#A(i,s)),!0}else i&&(i.has="miss");return!1}peek(e,r={}){let{allowStale:n=this.allowStale}=r,i=this.#l.get(e);if(i===void 0||!n&&this.#k(i))return;let s=this.#s[i];return this.#u(s)?s.__staleWhileFetching:s}#q(e,r,n,i){let s=r===void 0?void 0:this.#s[r];if(this.#u(s))return s;let o=new Ry,{signal:a}=n;a?.addEventListener("abort",()=>o.abort(a.reason),{signal:o.signal});let c={signal:o.signal,options:n,context:i},u=(h,g=!1)=>{let{aborted:v}=o.signal,y=n.ignoreFetchAbort&&h!==void 0,b=n.ignoreFetchAbort||!!(n.allowStaleOnFetchAbort&&h!==void 0);if(n.status&&(v&&!g?(n.status.fetchAborted=!0,n.status.fetchError=o.signal.reason,y&&(n.status.fetchAbortIgnored=!0)):n.status.fetchResolved=!0),v&&!y&&!g)return d(o.signal.reason,b);let S=f,x=this.#s[r];return(x===f||y&&g&&x===void 0)&&(h===void 0?S.__staleWhileFetching!==void 0?this.#s[r]=S.__staleWhileFetching:this.#R(e,"fetch"):(n.status&&(n.status.fetchUpdated=!0),this.set(e,h,c.options))),h},l=h=>(n.status&&(n.status.fetchRejected=!0,n.status.fetchError=h),d(h,!1)),d=(h,g)=>{let{aborted:v}=o.signal,y=v&&n.allowStaleOnFetchAbort,b=y||n.allowStaleOnFetchRejection,S=b||n.noDeleteOnFetchRejection,x=f;if(this.#s[r]===f&&(!S||!g&&x.__staleWhileFetching===void 0?this.#R(e,"fetch"):y||(this.#s[r]=x.__staleWhileFetching)),b)return n.status&&x.__staleWhileFetching!==void 0&&(n.status.returnedStale=!0),x.__staleWhileFetching;if(x.__returned===x)throw h},p=(h,g)=>{let v=this.#w?.(e,s,c);v&&v instanceof Promise&&v.then(y=>h(y===void 0?void 0:y),g),o.signal.addEventListener("abort",()=>{(!n.ignoreFetchAbort||n.allowStaleOnFetchAbort)&&(h(void 0),n.allowStaleOnFetchAbort&&(h=y=>u(y,!0)))})};n.status&&(n.status.fetchDispatched=!0);let f=new Promise(p).then(u,l),m=Object.assign(f,{__abortController:o,__staleWhileFetching:s,__returned:void 0});return r===void 0?(this.set(e,m,{...c.options,status:void 0}),r=this.#l.get(e)):this.#s[r]=m,m}#u(e){if(!this.#$)return!1;let r=e;return!!r&&r instanceof Promise&&r.hasOwnProperty("__staleWhileFetching")&&r.__abortController instanceof Ry}async fetch(e,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:i=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,ttl:o=this.ttl,noDisposeOnSet:a=this.noDisposeOnSet,size:c=0,sizeCalculation:u=this.sizeCalculation,noUpdateTTL:l=this.noUpdateTTL,noDeleteOnFetchRejection:d=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:p=this.allowStaleOnFetchRejection,ignoreFetchAbort:f=this.ignoreFetchAbort,allowStaleOnFetchAbort:m=this.allowStaleOnFetchAbort,context:h,forceRefresh:g=!1,status:v,signal:y}=r;if(!this.#$)return v&&(v.fetch="get"),this.get(e,{allowStale:n,updateAgeOnGet:i,noDeleteOnStaleGet:s,status:v});let b={allowStale:n,updateAgeOnGet:i,noDeleteOnStaleGet:s,ttl:o,noDisposeOnSet:a,size:c,sizeCalculation:u,noUpdateTTL:l,noDeleteOnFetchRejection:d,allowStaleOnFetchRejection:p,allowStaleOnFetchAbort:m,ignoreFetchAbort:f,status:v,signal:y},S=this.#l.get(e);if(S===void 0){v&&(v.fetch="miss");let x=this.#q(e,S,b,h);return x.__returned=x}else{let x=this.#s[S];if(this.#u(x)){let I=n&&x.__staleWhileFetching!==void 0;return v&&(v.fetch="inflight",I&&(v.returnedStale=!0)),I?x.__staleWhileFetching:x.__returned=x}let w=this.#k(S);if(!g&&!w)return v&&(v.fetch="hit"),this.#D(S),i&&this.#I(S),v&&this.#A(v,S),x;let E=this.#q(e,S,b,h),T=E.__staleWhileFetching!==void 0&&n;return v&&(v.fetch=w?"stale":"refresh",T&&w&&(v.returnedStale=!0)),T?E.__staleWhileFetching:E.__returned=E}}async forceFetch(e,r={}){let n=await this.fetch(e,r);if(n===void 0)throw new Error("fetch() returned undefined");return n}memo(e,r={}){let n=this.#y;if(!n)throw new Error("no memoMethod provided to constructor");let{context:i,forceRefresh:s,...o}=r,a=this.get(e,o);if(!s&&a!==void 0)return a;let c=n(e,a,{options:o,context:i});return this.set(e,c,o),c}get(e,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:i=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,status:o}=r,a=this.#l.get(e);if(a!==void 0){let c=this.#s[a],u=this.#u(c);return o&&this.#A(o,a),this.#k(a)?(o&&(o.get="stale"),u?(o&&n&&c.__staleWhileFetching!==void 0&&(o.returnedStale=!0),n?c.__staleWhileFetching:void 0):(s||this.#R(e,"expire"),o&&n&&(o.returnedStale=!0),n?c:void 0)):(o&&(o.get="hit"),u?c.__staleWhileFetching:(this.#D(a),i&&this.#I(a),c))}else o&&(o.get="miss")}#H(e,r){this.#S[r]=e,this.#_[e]=r}#D(e){e!==this.#h&&(e===this.#m?this.#m=this.#_[e]:this.#H(this.#S[e],this.#_[e]),this.#H(this.#h,e),this.#h=e)}delete(e){return this.#R(e,"delete")}#R(e,r){let n=!1;if(this.#a!==0){let i=this.#l.get(e);if(i!==void 0)if(this.#v?.[i]&&(clearTimeout(this.#v?.[i]),this.#v[i]=void 0),n=!0,this.#a===1)this.#B(r);else{this.#j(i);let s=this.#s[i];if(this.#u(s)?s.__abortController.abort(new Error("deleted")):(this.#b||this.#r)&&(this.#b&&this.#i?.(s,e,r),this.#r&&this.#g?.push([s,e,r])),this.#l.delete(e),this.#c[i]=void 0,this.#s[i]=void 0,i===this.#h)this.#h=this.#S[i];else if(i===this.#m)this.#m=this.#_[i];else{let o=this.#S[i];this.#_[o]=this.#_[i];let a=this.#_[i];this.#S[a]=this.#S[i]}this.#a--,this.#T.push(i)}}if(this.#r&&this.#g?.length){let i=this.#g,s;for(;s=i?.shift();)this.#o?.(...s)}return n}clear(){return this.#B("delete")}#B(e){for(let r of this.#C({allowStale:!0})){let n=this.#s[r];if(this.#u(n))n.__abortController.abort(new Error("deleted"));else{let i=this.#c[r];this.#b&&this.#i?.(n,i,e),this.#r&&this.#g?.push([n,i,e])}}if(this.#l.clear(),this.#s.fill(void 0),this.#c.fill(void 0),this.#f&&this.#E){this.#f.fill(0),this.#E.fill(0);for(let r of this.#v??[])r!==void 0&&clearTimeout(r);this.#v?.fill(void 0)}if(this.#x&&this.#x.fill(0),this.#m=0,this.#h=0,this.#T.length=0,this.#p=0,this.#a=0,this.#r&&this.#g){let r=this.#g,n;for(;n=r?.shift();)this.#o?.(...n)}}};var Qu=require("node:path"),b8=require("node:url"),cs=require("fs"),oSe=Pe(require("node:fs"),1),jo=require("node:fs/promises");var Dy=require("node:events"),II=Pe(require("node:stream"),1),h8=require("node:string_decoder"),d8=typeof process=="object"&&process?process:{stdout:null,stderr:null},Xbe=t=>!!t&&typeof t=="object"&&(t instanceof Do||t instanceof II.default||Ybe(t)||Qbe(t)),Ybe=t=>!!t&&typeof t=="object"&&t instanceof Dy.EventEmitter&&typeof t.pipe=="function"&&t.pipe!==II.default.Writable.prototype.pipe,Qbe=t=>!!t&&typeof t=="object"&&t instanceof Dy.EventEmitter&&typeof t.write=="function"&&typeof t.end=="function",Vs=Symbol("EOF"),Ks=Symbol("maybeEmitEnd"),Mo=Symbol("emittedEnd"),Oy=Symbol("emittingEnd"),If=Symbol("emittedError"),Cy=Symbol("closed"),p8=Symbol("read"),Py=Symbol("flush"),f8=Symbol("flushChunk"),Ri=Symbol("encoding"),Xu=Symbol("decoder"),gr=Symbol("flowing"),Rf=Symbol("paused"),Yu=Symbol("resume"),vr=Symbol("buffer"),sn=Symbol("pipes"),yr=Symbol("bufferLength"),xI=Symbol("bufferPush"),Ay=Symbol("bufferShift"),qr=Symbol("objectMode"),Qt=Symbol("destroyed"),wI=Symbol("error"),EI=Symbol("emitData"),m8=Symbol("emitEnd"),kI=Symbol("emitEnd2"),os=Symbol("async"),TI=Symbol("abort"),Ny=Symbol("aborted"),Of=Symbol("signal"),Da=Symbol("dataListeners"),Dn=Symbol("discarded"),Cf=t=>Promise.resolve().then(t),eSe=t=>t(),tSe=t=>t==="end"||t==="finish"||t==="prefinish",rSe=t=>t instanceof ArrayBuffer||!!t&&typeof t=="object"&&t.constructor&&t.constructor.name==="ArrayBuffer"&&t.byteLength>=0,nSe=t=>!Buffer.isBuffer(t)&&ArrayBuffer.isView(t),My=class{src;dest;opts;ondrain;constructor(e,r,n){this.src=e,this.dest=r,this.opts=n,this.ondrain=()=>e[Yu](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(e){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},$I=class extends My{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(e,r,n){super(e,r,n),this.proxyErrors=i=>this.dest.emit("error",i),e.on("error",this.proxyErrors)}},iSe=t=>!!t.objectMode,sSe=t=>!t.objectMode&&!!t.encoding&&t.encoding!=="buffer",Do=class extends Dy.EventEmitter{[gr]=!1;[Rf]=!1;[sn]=[];[vr]=[];[qr];[Ri];[os];[Xu];[Vs]=!1;[Mo]=!1;[Oy]=!1;[Cy]=!1;[If]=null;[yr]=0;[Qt]=!1;[Of];[Ny]=!1;[Da]=0;[Dn]=!1;writable=!0;readable=!0;constructor(...e){let r=e[0]||{};if(super(),r.objectMode&&typeof r.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");iSe(r)?(this[qr]=!0,this[Ri]=null):sSe(r)?(this[Ri]=r.encoding,this[qr]=!1):(this[qr]=!1,this[Ri]=null),this[os]=!!r.async,this[Xu]=this[Ri]?new h8.StringDecoder(this[Ri]):null,r&&r.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[vr]}),r&&r.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[sn]});let{signal:n}=r;n&&(this[Of]=n,n.aborted?this[TI]():n.addEventListener("abort",()=>this[TI]()))}get bufferLength(){return this[yr]}get encoding(){return this[Ri]}set encoding(e){throw new Error("Encoding must be set at instantiation time")}setEncoding(e){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[qr]}set objectMode(e){throw new Error("objectMode must be set at instantiation time")}get async(){return this[os]}set async(e){this[os]=this[os]||!!e}[TI](){this[Ny]=!0,this.emit("abort",this[Of]?.reason),this.destroy(this[Of]?.reason)}get aborted(){return this[Ny]}set aborted(e){}write(e,r,n){if(this[Ny])return!1;if(this[Vs])throw new Error("write after end");if(this[Qt])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let i=this[os]?Cf:eSe;if(!this[qr]&&!Buffer.isBuffer(e)){if(nSe(e))e=Buffer.from(e.buffer,e.byteOffset,e.byteLength);else if(rSe(e))e=Buffer.from(e);else if(typeof e!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[qr]?(this[gr]&&this[yr]!==0&&this[Py](!0),this[gr]?this.emit("data",e):this[xI](e),this[yr]!==0&&this.emit("readable"),n&&i(n),this[gr]):e.length?(typeof e=="string"&&!(r===this[Ri]&&!this[Xu]?.lastNeed)&&(e=Buffer.from(e,r)),Buffer.isBuffer(e)&&this[Ri]&&(e=this[Xu].write(e)),this[gr]&&this[yr]!==0&&this[Py](!0),this[gr]?this.emit("data",e):this[xI](e),this[yr]!==0&&this.emit("readable"),n&&i(n),this[gr]):(this[yr]!==0&&this.emit("readable"),n&&i(n),this[gr])}read(e){if(this[Qt])return null;if(this[Dn]=!1,this[yr]===0||e===0||e&&e>this[yr])return this[Ks](),null;this[qr]&&(e=null),this[vr].length>1&&!this[qr]&&(this[vr]=[this[Ri]?this[vr].join(""):Buffer.concat(this[vr],this[yr])]);let r=this[p8](e||null,this[vr][0]);return this[Ks](),r}[p8](e,r){if(this[qr])this[Ay]();else{let n=r;e===n.length||e===null?this[Ay]():typeof n=="string"?(this[vr][0]=n.slice(e),r=n.slice(0,e),this[yr]-=e):(this[vr][0]=n.subarray(e),r=n.subarray(0,e),this[yr]-=e)}return this.emit("data",r),!this[vr].length&&!this[Vs]&&this.emit("drain"),r}end(e,r,n){return typeof e=="function"&&(n=e,e=void 0),typeof r=="function"&&(n=r,r="utf8"),e!==void 0&&this.write(e,r),n&&this.once("end",n),this[Vs]=!0,this.writable=!1,(this[gr]||!this[Rf])&&this[Ks](),this}[Yu](){this[Qt]||(!this[Da]&&!this[sn].length&&(this[Dn]=!0),this[Rf]=!1,this[gr]=!0,this.emit("resume"),this[vr].length?this[Py]():this[Vs]?this[Ks]():this.emit("drain"))}resume(){return this[Yu]()}pause(){this[gr]=!1,this[Rf]=!0,this[Dn]=!1}get destroyed(){return this[Qt]}get flowing(){return this[gr]}get paused(){return this[Rf]}[xI](e){this[qr]?this[yr]+=1:this[yr]+=e.length,this[vr].push(e)}[Ay](){return this[qr]?this[yr]-=1:this[yr]-=this[vr][0].length,this[vr].shift()}[Py](e=!1){do;while(this[f8](this[Ay]())&&this[vr].length);!e&&!this[vr].length&&!this[Vs]&&this.emit("drain")}[f8](e){return this.emit("data",e),this[gr]}pipe(e,r){if(this[Qt])return e;this[Dn]=!1;let n=this[Mo];return r=r||{},e===d8.stdout||e===d8.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,n?r.end&&e.end():(this[sn].push(r.proxyErrors?new $I(this,e,r):new My(this,e,r)),this[os]?Cf(()=>this[Yu]()):this[Yu]()),e}unpipe(e){let r=this[sn].find(n=>n.dest===e);r&&(this[sn].length===1?(this[gr]&&this[Da]===0&&(this[gr]=!1),this[sn]=[]):this[sn].splice(this[sn].indexOf(r),1),r.unpipe())}addListener(e,r){return this.on(e,r)}on(e,r){let n=super.on(e,r);if(e==="data")this[Dn]=!1,this[Da]++,!this[sn].length&&!this[gr]&&this[Yu]();else if(e==="readable"&&this[yr]!==0)super.emit("readable");else if(tSe(e)&&this[Mo])super.emit(e),this.removeAllListeners(e);else if(e==="error"&&this[If]){let i=r;this[os]?Cf(()=>i.call(this,this[If])):i.call(this,this[If])}return n}removeListener(e,r){return this.off(e,r)}off(e,r){let n=super.off(e,r);return e==="data"&&(this[Da]=this.listeners("data").length,this[Da]===0&&!this[Dn]&&!this[sn].length&&(this[gr]=!1)),n}removeAllListeners(e){let r=super.removeAllListeners(e);return(e==="data"||e===void 0)&&(this[Da]=0,!this[Dn]&&!this[sn].length&&(this[gr]=!1)),r}get emittedEnd(){return this[Mo]}[Ks](){!this[Oy]&&!this[Mo]&&!this[Qt]&&this[vr].length===0&&this[Vs]&&(this[Oy]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[Cy]&&this.emit("close"),this[Oy]=!1)}emit(e,...r){let n=r[0];if(e!=="error"&&e!=="close"&&e!==Qt&&this[Qt])return!1;if(e==="data")return!this[qr]&&!n?!1:this[os]?(Cf(()=>this[EI](n)),!0):this[EI](n);if(e==="end")return this[m8]();if(e==="close"){if(this[Cy]=!0,!this[Mo]&&!this[Qt])return!1;let s=super.emit("close");return this.removeAllListeners("close"),s}else if(e==="error"){this[If]=n,super.emit(wI,n);let s=!this[Of]||this.listeners("error").length?super.emit("error",n):!1;return this[Ks](),s}else if(e==="resume"){let s=super.emit("resume");return this[Ks](),s}else if(e==="finish"||e==="prefinish"){let s=super.emit(e);return this.removeAllListeners(e),s}let i=super.emit(e,...r);return this[Ks](),i}[EI](e){for(let n of this[sn])n.dest.write(e)===!1&&this.pause();let r=this[Dn]?!1:super.emit("data",e);return this[Ks](),r}[m8](){return this[Mo]?!1:(this[Mo]=!0,this.readable=!1,this[os]?(Cf(()=>this[kI]()),!0):this[kI]())}[kI](){if(this[Xu]){let r=this[Xu].end();if(r){for(let n of this[sn])n.dest.write(r);this[Dn]||super.emit("data",r)}}for(let r of this[sn])r.end();let e=super.emit("end");return this.removeAllListeners("end"),e}async collect(){let e=Object.assign([],{dataLength:0});this[qr]||(e.dataLength=0);let r=this.promise();return this.on("data",n=>{e.push(n),this[qr]||(e.dataLength+=n.length)}),await r,e}async concat(){if(this[qr])throw new Error("cannot concat in objectMode");let e=await this.collect();return this[Ri]?e.join(""):Buffer.concat(e,e.dataLength)}async promise(){return new Promise((e,r)=>{this.on(Qt,()=>r(new Error("stream destroyed"))),this.on("error",n=>r(n)),this.on("end",()=>e())})}[Symbol.asyncIterator](){this[Dn]=!1;let e=!1,r=async()=>(this.pause(),e=!0,{value:void 0,done:!0});return{next:()=>{if(e)return r();let i=this.read();if(i!==null)return Promise.resolve({done:!1,value:i});if(this[Vs])return r();let s,o,a=d=>{this.off("data",c),this.off("end",u),this.off(Qt,l),r(),o(d)},c=d=>{this.off("error",a),this.off("end",u),this.off(Qt,l),this.pause(),s({value:d,done:!!this[Vs]})},u=()=>{this.off("error",a),this.off("data",c),this.off(Qt,l),r(),s({done:!0,value:void 0})},l=()=>a(new Error("stream destroyed"));return new Promise((d,p)=>{o=p,s=d,this.once(Qt,l),this.once("error",a),this.once("end",u),this.once("data",c)})},throw:r,return:r,[Symbol.asyncIterator](){return this},[Symbol.asyncDispose]:async()=>{}}}[Symbol.iterator](){this[Dn]=!1;let e=!1,r=()=>(this.pause(),this.off(wI,r),this.off(Qt,r),this.off("end",r),e=!0,{done:!0,value:void 0}),n=()=>{if(e)return r();let i=this.read();return i===null?r():{done:!1,value:i}};return this.once("end",r),this.once(wI,r),this.once(Qt,r),{next:n,throw:r,return:r,[Symbol.iterator](){return this},[Symbol.dispose]:()=>{}}}destroy(e){if(this[Qt])return e?this.emit("error",e):this.emit(Qt),this;this[Qt]=!0,this[Dn]=!0,this[vr].length=0,this[yr]=0;let r=this;return typeof r.close=="function"&&!this[Cy]&&r.close(),e?this.emit("error",e):this.emit(Qt),this}static get isStream(){return Xbe}};var aSe=cs.realpathSync.native,Af={lstatSync:cs.lstatSync,readdir:cs.readdir,readdirSync:cs.readdirSync,readlinkSync:cs.readlinkSync,realpathSync:aSe,promises:{lstat:jo.lstat,readdir:jo.readdir,readlink:jo.readlink,realpath:jo.realpath}},S8=t=>!t||t===Af||t===oSe?Af:{...Af,...t,promises:{...Af.promises,...t.promises||{}}},x8=/^\\\\\?\\([a-z]:)\\?$/i,cSe=t=>t.replace(/\//g,"\\").replace(x8,"$1\\"),uSe=/[\\\/]/,ii=0,w8=1,E8=2,as=4,k8=6,T8=8,ja=10,$8=12,ni=15,Pf=~ni,RI=16,g8=32,Nf=64,Oi=128,jy=256,Ly=512,v8=Nf|Oi|Ly,lSe=1023,OI=t=>t.isFile()?T8:t.isDirectory()?as:t.isSymbolicLink()?ja:t.isCharacterDevice()?E8:t.isBlockDevice()?k8:t.isSocket()?$8:t.isFIFO()?w8:ii,y8=new $f({max:2**12}),Mf=t=>{let e=y8.get(t);if(e)return e;let r=t.normalize("NFKD");return y8.set(t,r),r},_8=new $f({max:2**12}),zy=t=>{let e=_8.get(t);if(e)return e;let r=Mf(t.toLowerCase());return _8.set(t,r),r},Uy=class extends $f{constructor(){super({max:256})}},CI=class extends $f{constructor(e=16*1024){super({maxSize:e,sizeCalculation:r=>r.length+1})}},I8=Symbol("PathScurry setAsCwd"),Hr=class{name;root;roots;parent;nocase;isCWD=!1;#e;#n;get dev(){return this.#n}#i;get mode(){return this.#i}#t;get nlink(){return this.#t}#o;get uid(){return this.#o}#w;get gid(){return this.#w}#y;get rdev(){return this.#y}#d;get blksize(){return this.#d}#a;get ino(){return this.#a}#p;get size(){return this.#p}#l;get blocks(){return this.#l}#c;get atimeMs(){return this.#c}#s;get mtimeMs(){return this.#s}#_;get ctimeMs(){return this.#_}#S;get birthtimeMs(){return this.#S}#m;get atime(){return this.#m}#h;get mtime(){return this.#h}#T;get ctime(){return this.#T}#g;get birthtime(){return this.#g}#x;#E;#f;#v;#b;#$;#r;#N;#P;#I;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(e,r=ii,n,i,s,o,a){this.name=e,this.#x=s?zy(e):Mf(e),this.#r=r&lSe,this.nocase=s,this.roots=i,this.root=n||this,this.#N=o,this.#f=a.fullpath,this.#b=a.relative,this.#$=a.relativePosix,this.parent=a.parent,this.parent?this.#e=this.parent.#e:this.#e=S8(a.fs)}depth(){return this.#E!==void 0?this.#E:this.parent?this.#E=this.parent.depth()+1:this.#E=0}childrenCache(){return this.#N}resolve(e){if(!e)return this;let r=this.getRootString(e),i=e.substring(r.length).split(this.splitSep);return r?this.getRoot(r).#A(i):this.#A(i)}#A(e){let r=this;for(let n of e)r=r.child(n);return r}children(){let e=this.#N.get(this);if(e)return e;let r=Object.assign([],{provisional:0});return this.#N.set(this,r),this.#r&=~RI,r}child(e,r){if(e===""||e===".")return this;if(e==="..")return this.parent||this;let n=this.children(),i=this.nocase?zy(e):Mf(e);for(let c of n)if(c.#x===i)return c;let s=this.parent?this.sep:"",o=this.#f?this.#f+s+e:void 0,a=this.newChild(e,ii,{...r,parent:this,fullpath:o});return this.canReaddir()||(a.#r|=Oi),n.push(a),a}relative(){if(this.isCWD)return"";if(this.#b!==void 0)return this.#b;let e=this.name,r=this.parent;if(!r)return this.#b=this.name;let n=r.relative();return n+(!n||!r.parent?"":this.sep)+e}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#$!==void 0)return this.#$;let e=this.name,r=this.parent;if(!r)return this.#$=this.fullpathPosix();let n=r.relativePosix();return n+(!n||!r.parent?"":"/")+e}fullpath(){if(this.#f!==void 0)return this.#f;let e=this.name,r=this.parent;if(!r)return this.#f=this.name;let i=r.fullpath()+(r.parent?this.sep:"")+e;return this.#f=i}fullpathPosix(){if(this.#v!==void 0)return this.#v;if(this.sep==="/")return this.#v=this.fullpath();if(!this.parent){let i=this.fullpath().replace(/\\/g,"/");return/^[a-z]:\//i.test(i)?this.#v=`//?/${i}`:this.#v=i}let e=this.parent,r=e.fullpathPosix(),n=r+(!r||!e.parent?"":"/")+this.name;return this.#v=n}isUnknown(){return(this.#r&ni)===ii}isType(e){return this[`is${e}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#r&ni)===T8}isDirectory(){return(this.#r&ni)===as}isCharacterDevice(){return(this.#r&ni)===E8}isBlockDevice(){return(this.#r&ni)===k8}isFIFO(){return(this.#r&ni)===w8}isSocket(){return(this.#r&ni)===$8}isSymbolicLink(){return(this.#r&ja)===ja}lstatCached(){return this.#r&g8?this:void 0}readlinkCached(){return this.#P}realpathCached(){return this.#I}readdirCached(){let e=this.children();return e.slice(0,e.provisional)}canReadlink(){if(this.#P)return!0;if(!this.parent)return!1;let e=this.#r∋return!(e!==ii&&e!==ja||this.#r&jy||this.#r&Oi)}calledReaddir(){return!!(this.#r&RI)}isENOENT(){return!!(this.#r&Oi)}isNamed(e){return this.nocase?this.#x===zy(e):this.#x===Mf(e)}async readlink(){let e=this.#P;if(e)return e;if(this.canReadlink()&&this.parent)try{let r=await this.#e.promises.readlink(this.fullpath()),n=(await this.parent.realpath())?.resolve(r);if(n)return this.#P=n}catch(r){this.#C(r.code);return}}readlinkSync(){let e=this.#P;if(e)return e;if(this.canReadlink()&&this.parent)try{let r=this.#e.readlinkSync(this.fullpath()),n=this.parent.realpathSync()?.resolve(r);if(n)return this.#P=n}catch(r){this.#C(r.code);return}}#z(e){this.#r|=RI;for(let r=e.provisional;rn(null,e))}readdirCB(e,r=!1){if(!this.canReaddir()){r?e(null,[]):queueMicrotask(()=>e(null,[]));return}let n=this.children();if(this.calledReaddir()){let s=n.slice(0,n.provisional);r?e(null,s):queueMicrotask(()=>e(null,s));return}if(this.#D.push(e),this.#R)return;this.#R=!0;let i=this.fullpath();this.#e.readdir(i,{withFileTypes:!0},(s,o)=>{if(s)this.#L(s.code),n.provisional=0;else{for(let a of o)this.#U(a,n);this.#z(n)}this.#B(n.slice(0,n.provisional))})}#G;async readdir(){if(!this.canReaddir())return[];let e=this.children();if(this.calledReaddir())return e.slice(0,e.provisional);let r=this.fullpath();if(this.#G)await this.#G;else{let n=()=>{};this.#G=new Promise(i=>n=i);try{for(let i of await this.#e.promises.readdir(r,{withFileTypes:!0}))this.#U(i,e);this.#z(e)}catch(i){this.#L(i.code),e.provisional=0}this.#G=void 0,n()}return e.slice(0,e.provisional)}readdirSync(){if(!this.canReaddir())return[];let e=this.children();if(this.calledReaddir())return e.slice(0,e.provisional);let r=this.fullpath();try{for(let n of this.#e.readdirSync(r,{withFileTypes:!0}))this.#U(n,e);this.#z(e)}catch(n){this.#L(n.code),e.provisional=0}return e.slice(0,e.provisional)}canReaddir(){if(this.#r&v8)return!1;let e=ni&this.#r;return e===ii||e===as||e===ja}shouldWalk(e,r){return(this.#r&as)===as&&!(this.#r&v8)&&!e.has(this)&&(!r||r(this))}async realpath(){if(this.#I)return this.#I;if(!((Ly|jy|Oi)&this.#r))try{let e=await this.#e.promises.realpath(this.fullpath());return this.#I=this.resolve(e)}catch{this.#j()}}realpathSync(){if(this.#I)return this.#I;if(!((Ly|jy|Oi)&this.#r))try{let e=this.#e.realpathSync(this.fullpath());return this.#I=this.resolve(e)}catch{this.#j()}}[I8](e){if(e===this)return;e.isCWD=!1,this.isCWD=!0;let r=new Set([]),n=[],i=this;for(;i&&i.parent;)r.add(i),i.#b=n.join(this.sep),i.#$=n.join("/"),i=i.parent,n.push("..");for(i=e;i&&i.parent&&!r.has(i);)i.#b=void 0,i.#$=void 0,i=i.parent}},Fy=class t extends Hr{sep="\\";splitSep=uSe;constructor(e,r=ii,n,i,s,o,a){super(e,r,n,i,s,o,a)}newChild(e,r=ii,n={}){return new t(e,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}getRootString(e){return Qu.win32.parse(e).root}getRoot(e){if(e=cSe(e.toUpperCase()),e===this.root.name)return this.root;for(let[r,n]of Object.entries(this.roots))if(this.sameRoot(e,r))return this.roots[e]=n;return this.roots[e]=new el(e,this).root}sameRoot(e,r=this.root.name){return e=e.toUpperCase().replace(/\//g,"\\").replace(x8,"$1\\"),e===r}},qy=class t extends Hr{splitSep="/";sep="/";constructor(e,r=ii,n,i,s,o,a){super(e,r,n,i,s,o,a)}getRootString(e){return e.startsWith("/")?"/":""}getRoot(e){return this.root}newChild(e,r=ii,n={}){return new t(e,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}},Hy=class{root;rootPath;roots;cwd;#e;#n;#i;nocase;#t;constructor(e=process.cwd(),r,n,{nocase:i,childrenCacheSize:s=16*1024,fs:o=Af}={}){this.#t=S8(o),(e instanceof URL||e.startsWith("file://"))&&(e=(0,b8.fileURLToPath)(e));let a=r.resolve(e);this.roots=Object.create(null),this.rootPath=this.parseRootPath(a),this.#e=new Uy,this.#n=new Uy,this.#i=new CI(s);let c=a.substring(this.rootPath.length).split(n);if(c.length===1&&!c[0]&&c.pop(),i===void 0)throw new TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=i,this.root=this.newRoot(this.#t),this.roots[this.rootPath]=this.root;let u=this.root,l=c.length-1,d=r.sep,p=this.rootPath,f=!1;for(let m of c){let h=l--;u=u.child(m,{relative:new Array(h).fill("..").join(d),relativePosix:new Array(h).fill("..").join("/"),fullpath:p+=(f?"":d)+m}),f=!0}this.cwd=u}depth(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.depth()}childrenCache(){return this.#i}resolve(...e){let r="";for(let s=e.length-1;s>=0;s--){let o=e[s];if(!(!o||o===".")&&(r=r?`${o}/${r}`:o,this.isAbsolute(o)))break}let n=this.#e.get(r);if(n!==void 0)return n;let i=this.cwd.resolve(r).fullpath();return this.#e.set(r,i),i}resolvePosix(...e){let r="";for(let s=e.length-1;s>=0;s--){let o=e[s];if(!(!o||o===".")&&(r=r?`${o}/${r}`:o,this.isAbsolute(o)))break}let n=this.#n.get(r);if(n!==void 0)return n;let i=this.cwd.resolve(r).fullpathPosix();return this.#n.set(r,i),i}relative(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.relative()}relativePosix(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.relativePosix()}basename(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.name}dirname(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),(e.parent||e).fullpath()}async readdir(e=this.cwd,r={withFileTypes:!0}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Hr||(r=e,e=this.cwd);let{withFileTypes:n}=r;if(e.canReaddir()){let i=await e.readdir();return n?i:i.map(s=>s.name)}else return[]}readdirSync(e=this.cwd,r={withFileTypes:!0}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Hr||(r=e,e=this.cwd);let{withFileTypes:n=!0}=r;return e.canReaddir()?n?e.readdirSync():e.readdirSync().map(i=>i.name):[]}async lstat(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.lstat()}lstatSync(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.lstatSync()}async readlink(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Hr||(r=e.withFileTypes,e=this.cwd);let n=await e.readlink();return r?n:n?.fullpath()}readlinkSync(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Hr||(r=e.withFileTypes,e=this.cwd);let n=e.readlinkSync();return r?n:n?.fullpath()}async realpath(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Hr||(r=e.withFileTypes,e=this.cwd);let n=await e.realpath();return r?n:n?.fullpath()}realpathSync(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Hr||(r=e.withFileTypes,e=this.cwd);let n=e.realpathSync();return r?n:n?.fullpath()}async walk(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Hr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=[];(!s||s(e))&&a.push(n?e:e.fullpath());let c=new Set,u=(d,p)=>{c.add(d),d.readdirCB((f,m)=>{if(f)return p(f);let h=m.length;if(!h)return p();let g=()=>{--h===0&&p()};for(let v of m)(!s||s(v))&&a.push(n?v:v.fullpath()),i&&v.isSymbolicLink()?v.realpath().then(y=>y?.isUnknown()?y.lstat():y).then(y=>y?.shouldWalk(c,o)?u(y,g):g()):v.shouldWalk(c,o)?u(v,g):g()},!0)},l=e;return new Promise((d,p)=>{u(l,f=>{if(f)return p(f);d(a)})})}walkSync(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Hr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=[];(!s||s(e))&&a.push(n?e:e.fullpath());let c=new Set([e]);for(let u of c){let l=u.readdirSync();for(let d of l){(!s||s(d))&&a.push(n?d:d.fullpath());let p=d;if(d.isSymbolicLink()){if(!(i&&(p=d.realpathSync())))continue;p.isUnknown()&&p.lstatSync()}p.shouldWalk(c,o)&&c.add(p)}}return a}[Symbol.asyncIterator](){return this.iterate()}iterate(e=this.cwd,r={}){return typeof e=="string"?e=this.cwd.resolve(e):e instanceof Hr||(r=e,e=this.cwd),this.stream(e,r)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Hr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r;(!s||s(e))&&(yield n?e:e.fullpath());let a=new Set([e]);for(let c of a){let u=c.readdirSync();for(let l of u){(!s||s(l))&&(yield n?l:l.fullpath());let d=l;if(l.isSymbolicLink()){if(!(i&&(d=l.realpathSync())))continue;d.isUnknown()&&d.lstatSync()}d.shouldWalk(a,o)&&a.add(d)}}}stream(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Hr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=new Do({objectMode:!0});(!s||s(e))&&a.write(n?e:e.fullpath());let c=new Set,u=[e],l=0,d=()=>{let p=!1;for(;!p;){let f=u.shift();if(!f){l===0&&a.end();return}l++,c.add(f);let m=(g,v,y=!1)=>{if(g)return a.emit("error",g);if(i&&!y){let b=[];for(let S of v)S.isSymbolicLink()&&b.push(S.realpath().then(x=>x?.isUnknown()?x.lstat():x));if(b.length){Promise.all(b).then(()=>m(null,v,!0));return}}for(let b of v)b&&(!s||s(b))&&(a.write(n?b:b.fullpath())||(p=!0));l--;for(let b of v){let S=b.realpathCached()||b;S.shouldWalk(c,o)&&u.push(S)}p&&!a.flowing?a.once("drain",d):h||d()},h=!0;f.readdirCB(m,!0),h=!1}};return d(),a}streamSync(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof Hr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=new Do({objectMode:!0}),c=new Set;(!s||s(e))&&a.write(n?e:e.fullpath());let u=[e],l=0,d=()=>{let p=!1;for(;!p;){let f=u.shift();if(!f){l===0&&a.end();return}l++,c.add(f);let m=f.readdirSync();for(let h of m)(!s||s(h))&&(a.write(n?h:h.fullpath())||(p=!0));l--;for(let h of m){let g=h;if(h.isSymbolicLink()){if(!(i&&(g=h.realpathSync())))continue;g.isUnknown()&&g.lstatSync()}g.shouldWalk(c,o)&&u.push(g)}}p&&!a.flowing&&a.once("drain",d)};return d(),a}chdir(e=this.cwd){let r=this.cwd;this.cwd=typeof e=="string"?this.cwd.resolve(e):e,this.cwd[I8](r)}},el=class extends Hy{sep="\\";constructor(e=process.cwd(),r={}){let{nocase:n=!0}=r;super(e,Qu.win32,"\\",{...r,nocase:n}),this.nocase=n;for(let i=this.cwd;i;i=i.parent)i.nocase=this.nocase}parseRootPath(e){return Qu.win32.parse(e).root.toUpperCase()}newRoot(e){return new Fy(this.rootPath,as,void 0,this.roots,this.nocase,this.childrenCache(),{fs:e})}isAbsolute(e){return e.startsWith("/")||e.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(e)}},tl=class extends Hy{sep="/";constructor(e=process.cwd(),r={}){let{nocase:n=!1}=r;super(e,Qu.posix,"/",{...r,nocase:n}),this.nocase=n}parseRootPath(e){return"/"}newRoot(e){return new qy(this.rootPath,as,void 0,this.roots,this.nocase,this.childrenCache(),{fs:e})}isAbsolute(e){return e.startsWith("/")}},Df=class extends tl{constructor(e=process.cwd(),r={}){let{nocase:n=!0}=r;super(e,{...r,nocase:n})}},kLe=process.platform==="win32"?Fy:qy,R8=process.platform==="win32"?el:process.platform==="darwin"?Df:tl;var dSe=t=>t.length>=1,pSe=t=>t.length>=1,rl=class t{#e;#n;#i;length;#t;#o;#w;#y;#d;#a;#p=!0;constructor(e,r,n,i){if(!dSe(e))throw new TypeError("empty pattern list");if(!pSe(r))throw new TypeError("empty glob list");if(r.length!==e.length)throw new TypeError("mismatched pattern list and glob list lengths");if(this.length=e.length,n<0||n>=this.length)throw new TypeError("index out of range");if(this.#e=e,this.#n=r,this.#i=n,this.#t=i,this.#i===0){if(this.isUNC()){let[s,o,a,c,...u]=this.#e,[l,d,p,f,...m]=this.#n;u[0]===""&&(u.shift(),m.shift());let h=[s,o,a,c,""].join("/"),g=[l,d,p,f,""].join("/");this.#e=[h,...u],this.#n=[g,...m],this.length=this.#e.length}else if(this.isDrive()||this.isAbsolute()){let[s,...o]=this.#e,[a,...c]=this.#n;o[0]===""&&(o.shift(),c.shift());let u=s+"/",l=a+"/";this.#e=[u,...o],this.#n=[l,...c],this.length=this.#e.length}}}pattern(){return this.#e[this.#i]}isString(){return typeof this.#e[this.#i]=="string"}isGlobstar(){return this.#e[this.#i]===Yt}isRegExp(){return this.#e[this.#i]instanceof RegExp}globString(){return this.#w=this.#w||(this.#i===0?this.isAbsolute()?this.#n[0]+this.#n.slice(1).join("/"):this.#n.join("/"):this.#n.slice(this.#i).join("/"))}hasMore(){return this.length>this.#i+1}rest(){return this.#o!==void 0?this.#o:this.hasMore()?(this.#o=new t(this.#e,this.#n,this.#i+1,this.#t),this.#o.#a=this.#a,this.#o.#d=this.#d,this.#o.#y=this.#y,this.#o):this.#o=null}isUNC(){let e=this.#e;return this.#d!==void 0?this.#d:this.#d=this.#t==="win32"&&this.#i===0&&e[0]===""&&e[1]===""&&typeof e[2]=="string"&&!!e[2]&&typeof e[3]=="string"&&!!e[3]}isDrive(){let e=this.#e;return this.#y!==void 0?this.#y:this.#y=this.#t==="win32"&&this.#i===0&&this.length>1&&typeof e[0]=="string"&&/^[a-z]:$/i.test(e[0])}isAbsolute(){let e=this.#e;return this.#a!==void 0?this.#a:this.#a=e[0]===""&&e.length>1||this.isDrive()||this.isUNC()}root(){let e=this.#e[0];return typeof e=="string"&&this.isAbsolute()&&this.#i===0?e:""}checkFollowGlobstar(){return!(this.#i===0||!this.isGlobstar()||!this.#p)}markFollowGlobstar(){return this.#i===0||!this.isGlobstar()||!this.#p?!1:(this.#p=!1,!0)}};var fSe=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",nl=class{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(e,{nobrace:r,nocase:n,noext:i,noglobstar:s,platform:o=fSe}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=o,this.mmopts={dot:!0,nobrace:r,nocase:n,noext:i,noglobstar:s,optimizationLevel:2,platform:o,nocomment:!0,nonegate:!0};for(let a of e)this.add(a)}add(e){let r=new Mn(e,this.mmopts);for(let n=0;n[e,!!(r&2),!!(r&1)])}},NI=class{store=new Map;add(e,r){if(!e.canReaddir())return;let n=this.store.get(e);n?n.find(i=>i.globString()===r.globString())||n.push(r):this.store.set(e,[r])}get(e){let r=this.store.get(e);if(!r)throw new Error("attempting to walk unknown path");return r}entries(){return this.keys().map(e=>[e,this.store.get(e)])}keys(){return[...this.store.keys()].filter(e=>e.canReaddir())}},jf=class t{hasWalkedCache;matches=new AI;subwalks=new NI;patterns;follow;dot;opts;constructor(e,r){this.opts=e,this.follow=!!e.follow,this.dot=!!e.dot,this.hasWalkedCache=r?r.copy():new PI}processPatterns(e,r){this.patterns=r;let n=r.map(i=>[e,i]);for(let[i,s]of n){this.hasWalkedCache.storeWalked(i,s);let o=s.root(),a=s.isAbsolute()&&this.opts.absolute!==!1;if(o){i=i.resolve(o==="/"&&this.opts.root!==void 0?this.opts.root:o);let d=s.rest();if(d)s=d;else{this.matches.add(i,!0,!1);continue}}if(i.isENOENT())continue;let c,u,l=!1;for(;typeof(c=s.pattern())=="string"&&(u=s.rest());)i=i.resolve(c),s=u,l=!0;if(c=s.pattern(),u=s.rest(),l){if(this.hasWalkedCache.hasWalked(i,s))continue;this.hasWalkedCache.storeWalked(i,s)}if(typeof c=="string"){let d=c===".."||c===""||c===".";this.matches.add(i.resolve(c),a,d);continue}else if(c===Yt){(!i.isSymbolicLink()||this.follow||s.checkFollowGlobstar())&&this.subwalks.add(i,s);let d=u?.pattern(),p=u?.rest();if(!u||(d===""||d===".")&&!p)this.matches.add(i,a,d===""||d===".");else if(d===".."){let f=i.parent||i;p?this.hasWalkedCache.hasWalked(f,p)||this.subwalks.add(f,p):this.matches.add(f,a,!0)}}else c instanceof RegExp&&this.subwalks.add(i,s)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new t(this.opts,this.hasWalkedCache)}filterEntries(e,r){let n=this.subwalks.get(e),i=this.child();for(let s of r)for(let o of n){let a=o.isAbsolute(),c=o.pattern(),u=o.rest();c===Yt?i.testGlobstar(s,o,u,a):c instanceof RegExp?i.testRegExp(s,c,u,a):i.testString(s,c,u,a)}return i}testGlobstar(e,r,n,i){if((this.dot||!e.name.startsWith("."))&&(r.hasMore()||this.matches.add(e,i,!1),e.canReaddir()&&(this.follow||!e.isSymbolicLink()?this.subwalks.add(e,r):e.isSymbolicLink()&&(n&&r.checkFollowGlobstar()?this.subwalks.add(e,n):r.markFollowGlobstar()&&this.subwalks.add(e,r)))),n){let s=n.pattern();if(typeof s=="string"&&s!==".."&&s!==""&&s!==".")this.testString(e,s,n.rest(),i);else if(s===".."){let o=e.parent||e;this.subwalks.add(o,n)}else s instanceof RegExp&&this.testRegExp(e,s,n.rest(),i)}}testRegExp(e,r,n,i){r.test(e.name)&&(n?this.subwalks.add(e,n):this.matches.add(e,i,!1))}testString(e,r,n,i){e.isNamed(r)&&(n?this.subwalks.add(e,n):this.matches.add(e,i,!1))}};var mSe=(t,e)=>typeof t=="string"?new nl([t],e):Array.isArray(t)?new nl(t,e):t,Zy=class{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#e=[];#n;#i;signal;maxDepth;includeChildMatches;constructor(e,r,n){if(this.patterns=e,this.path=r,this.opts=n,this.#i=!n.posix&&n.platform==="win32"?"\\":"/",this.includeChildMatches=n.includeChildMatches!==!1,(n.ignore||!this.includeChildMatches)&&(this.#n=mSe(n.ignore??[],n),!this.includeChildMatches&&typeof this.#n.add!="function")){let i="cannot ignore child matches, ignore lacks add() method.";throw new Error(i)}this.maxDepth=n.maxDepth||1/0,n.signal&&(this.signal=n.signal,this.signal.addEventListener("abort",()=>{this.#e.length=0}))}#t(e){return this.seen.has(e)||!!this.#n?.ignored?.(e)}#o(e){return!!this.#n?.childrenIgnored?.(e)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let e;for(;!this.paused&&(e=this.#e.shift());)e()}onResume(e){this.signal?.aborted||(this.paused?this.#e.push(e):e())}async matchCheck(e,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=e.realpathCached()||await e.realpath(),!n)return;e=n}let s=e.isUnknown()||this.opts.stat?await e.lstat():e;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let o=await s.realpath();o&&(o.isUnknown()||this.opts.stat)&&await o.lstat()}return this.matchCheckTest(s,r)}matchCheckTest(e,r){return e&&(this.maxDepth===1/0||e.depth()<=this.maxDepth)&&(!r||e.canReaddir())&&(!this.opts.nodir||!e.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!e.isSymbolicLink()||!e.realpathCached()?.isDirectory())&&!this.#t(e)?e:void 0}matchCheckSync(e,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=e.realpathCached()||e.realpathSync(),!n)return;e=n}let s=e.isUnknown()||this.opts.stat?e.lstatSync():e;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let o=s.realpathSync();o&&(o?.isUnknown()||this.opts.stat)&&o.lstatSync()}return this.matchCheckTest(s,r)}matchFinish(e,r){if(this.#t(e))return;if(!this.includeChildMatches&&this.#n?.add){let s=`${e.relativePosix()}/**`;this.#n.add(s)}let n=this.opts.absolute===void 0?r:this.opts.absolute;this.seen.add(e);let i=this.opts.mark&&e.isDirectory()?this.#i:"";if(this.opts.withFileTypes)this.matchEmit(e);else if(n){let s=this.opts.posix?e.fullpathPosix():e.fullpath();this.matchEmit(s+i)}else{let s=this.opts.posix?e.relativePosix():e.relative(),o=this.opts.dotRelative&&!s.startsWith(".."+this.#i)?"."+this.#i:"";this.matchEmit(s?o+s+i:"."+i)}}async match(e,r,n){let i=await this.matchCheck(e,n);i&&this.matchFinish(i,r)}matchSync(e,r,n){let i=this.matchCheckSync(e,n);i&&this.matchFinish(i,r)}walkCB(e,r,n){this.signal?.aborted&&n(),this.walkCB2(e,r,new jf(this.opts),n)}walkCB2(e,r,n,i){if(this.#o(e))return i();if(this.signal?.aborted&&i(),this.paused){this.onResume(()=>this.walkCB2(e,r,n,i));return}n.processPatterns(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,u]of n.matches.entries())this.#t(a)||(s++,this.match(a,c,u).then(()=>o()));for(let a of n.subwalkTargets()){if(this.maxDepth!==1/0&&a.depth()>=this.maxDepth)continue;s++;let c=a.readdirCached();a.calledReaddir()?this.walkCB3(a,c,n,o):a.readdirCB((u,l)=>this.walkCB3(a,l,n,o),!0)}o()}walkCB3(e,r,n,i){n=n.filterEntries(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,u]of n.matches.entries())this.#t(a)||(s++,this.match(a,c,u).then(()=>o()));for(let[a,c]of n.subwalks.entries())s++,this.walkCB2(a,c,n.child(),o);o()}walkCBSync(e,r,n){this.signal?.aborted&&n(),this.walkCB2Sync(e,r,new jf(this.opts),n)}walkCB2Sync(e,r,n,i){if(this.#o(e))return i();if(this.signal?.aborted&&i(),this.paused){this.onResume(()=>this.walkCB2Sync(e,r,n,i));return}n.processPatterns(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,u]of n.matches.entries())this.#t(a)||this.matchSync(a,c,u);for(let a of n.subwalkTargets()){if(this.maxDepth!==1/0&&a.depth()>=this.maxDepth)continue;s++;let c=a.readdirSync();this.walkCB3Sync(a,c,n,o)}o()}walkCB3Sync(e,r,n,i){n=n.filterEntries(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,u]of n.matches.entries())this.#t(a)||this.matchSync(a,c,u);for(let[a,c]of n.subwalks.entries())s++,this.walkCB2Sync(a,c,n.child(),o);o()}},zf=class extends Zy{matches=new Set;constructor(e,r,n){super(e,r,n)}matchEmit(e){this.matches.add(e)}async walk(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&await this.path.lstat(),await new Promise((e,r)=>{this.walkCB(this.path,this.patterns,()=>{this.signal?.aborted?r(this.signal.reason):e(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}},Lf=class extends Zy{results;constructor(e,r,n){super(e,r,n),this.results=new Do({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(e){this.results.write(e),this.results.flowing||this.pause()}stream(){let e=this.path;return e.isUnknown()?e.lstat().then(()=>{this.walkCB(e,this.patterns,()=>this.results.end())}):this.walkCB(e,this.patterns,()=>this.results.end()),this.results}streamSync(){return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}};var hSe=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",Ci=class{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(e,r){if(!r)throw new TypeError("glob options required");if(this.withFileTypes=!!r.withFileTypes,this.signal=r.signal,this.follow=!!r.follow,this.dot=!!r.dot,this.dotRelative=!!r.dotRelative,this.nodir=!!r.nodir,this.mark=!!r.mark,r.cwd?(r.cwd instanceof URL||r.cwd.startsWith("file://"))&&(r.cwd=(0,O8.fileURLToPath)(r.cwd)):this.cwd="",this.cwd=r.cwd||"",this.root=r.root,this.magicalBraces=!!r.magicalBraces,this.nobrace=!!r.nobrace,this.noext=!!r.noext,this.realpath=!!r.realpath,this.absolute=r.absolute,this.includeChildMatches=r.includeChildMatches!==!1,this.noglobstar=!!r.noglobstar,this.matchBase=!!r.matchBase,this.maxDepth=typeof r.maxDepth=="number"?r.maxDepth:1/0,this.stat=!!r.stat,this.ignore=r.ignore,this.withFileTypes&&this.absolute!==void 0)throw new Error("cannot set absolute and withFileTypes:true");if(typeof e=="string"&&(e=[e]),this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(e=e.map(c=>c.replace(/\\/g,"/"))),this.matchBase){if(r.noglobstar)throw new TypeError("base matching requires globstar");e=e.map(c=>c.includes("/")?c:`./**/${c}`)}if(this.pattern=e,this.platform=r.platform||hSe,this.opts={...r,platform:this.platform},r.scurry){if(this.scurry=r.scurry,r.nocase!==void 0&&r.nocase!==r.scurry.nocase)throw new Error("nocase option contradicts provided scurry option")}else{let c=r.platform==="win32"?el:r.platform==="darwin"?Df:r.platform?tl:R8;this.scurry=new c(this.cwd,{nocase:r.nocase,fs:r.fs})}this.nocase=this.scurry.nocase;let n=this.platform==="darwin"||this.platform==="win32",i={...r,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:n,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},s=this.pattern.map(c=>new Mn(c,i)),[o,a]=s.reduce((c,u)=>(c[0].push(...u.set),c[1].push(...u.globParts),c),[[],[]]);this.patterns=o.map((c,u)=>{let l=a[u];if(!l)throw new Error("invalid pattern object");return new rl(c,l,0,this.platform)})}async walk(){return[...await new zf(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new zf(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new Lf(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new Lf(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}};var MI=(t,e={})=>{Array.isArray(t)||(t=[t]);for(let r of t)if(new Mn(r,e).hasMagic())return!0;return!1};function By(t,e={}){return new Ci(t,e).streamSync()}function A8(t,e={}){return new Ci(t,e).stream()}function Uf(t,e={}){return new Ci(t,e).walkSync()}async function C8(t,e={}){return new Ci(t,e).walk()}function Gy(t,e={}){return new Ci(t,e).iterateSync()}function N8(t,e={}){return new Ci(t,e).iterate()}var gSe=By,vSe=Object.assign(A8,{sync:By}),ySe=Gy,_Se=Object.assign(N8,{sync:Gy}),bSe=Object.assign(Uf,{stream:By,iterate:Gy}),P8=Object.assign(C8,{glob:C8,globSync:Uf,sync:bSe,globStream:A8,stream:vSe,globStreamSync:By,streamSync:gSe,globIterate:N8,iterate:_Se,globIterateSync:Gy,iterateSync:ySe,Glob:Ci,hasMagic:MI,escape:Ju,unescape:Ii});P8.glob=P8;re();var Js=require("fs"),M8=require("path");re();function D8(t){try{if(!(0,Js.existsSync)(t))return{offsets:{}};let e=(0,Js.readFileSync)(t,"utf-8"),r=JSON.parse(e);return r.offsets?r:{offsets:{}}}catch(e){return _.warn("TRANSCRIPT","Failed to load watch state, starting fresh",{statePath:t,error:e instanceof Error?e.message:String(e)}),{offsets:{}}}}function j8(t,e){try{let r=(0,M8.dirname)(t);(0,Js.existsSync)(r)||(0,Js.mkdirSync)(r,{recursive:!0}),(0,Js.writeFileSync)(t,JSON.stringify(e,null,2))}catch(r){_.warn("TRANSCRIPT","Failed to save watch state",{statePath:t,error:r instanceof Error?r.message:String(r)})}}Jy();Xy();Yy();Qy();Ir();re();za();var Pi=require("fs"),e_=require("path");re();function Z8(t,e){if(!t)return;let r=(0,e_.resolve)(t);if(r.includes("/.git/")||r.includes("\\.git\\")||r.endsWith("/.git")||r.endsWith("\\.git"))return;let n=(0,e_.dirname)(t);(0,Pi.existsSync)(n)||(0,Pi.mkdirSync)(n,{recursive:!0});let i="";(0,Pi.existsSync)(t)&&(i=(0,Pi.readFileSync)(t,"utf-8"));let s=`# Memory Context + +${e}`,o=S$(i,s),a=`${t}.tmp`;try{(0,Pi.writeFileSync)(a,o),(0,Pi.renameSync)(a,t)}catch(c){_.error("AGENTS_MD","Failed to write AGENTS.md",{agentsPath:t},c)}}function xSe(t){let e=t.trim().replace(/^\$\.?/,"");if(!e)return[];let r=[],n=e.split(".");for(let i of n){let s=/([^[\]]+)|\[(\d+)\]/g,o;for(;(o=s.exec(i))!==null;)o[1]?r.push(o[1]):o[2]&&r.push(parseInt(o[2],10))}return r}function DI(t,e){if(!e)return;let r=xSe(e),n=t;for(let i of r){if(n==null)return;n=n[i]}return n}function B8(t){return t==null||t===""}function G8(t,e){if(t.startsWith("$watch.")){let r=t.slice(7);return e.watch[r]}if(t.startsWith("$schema.")){let r=t.slice(8);return e.schema[r]}if(t.startsWith("$session.")){let r=t.slice(9);return e.session?e.session[r]:void 0}if(t==="$cwd")return e.watch.workspace;if(t==="$project")return e.watch.project}function ol(t,e,r){if(t!==void 0){if(typeof t=="string"){let n=G8(t,r);return n!==void 0?n:DI(e,t)}if(t.coalesce&&Array.isArray(t.coalesce))for(let n of t.coalesce){let i=ol(n,e,r);if(!B8(i))return i}if(t.path){let n=G8(t.path,r);if(n!==void 0)return n;let i=DI(e,t.path);if(!B8(i))return i}if(t.value!==void 0)return t.value;if(t.default!==void 0)return t.default}}function W8(t,e,r){let n={};if(!t)return n;for(let[i,s]of Object.entries(t))n[i]=ol(s,e,r);return n}function V8(t,e,r){if(!e)return!0;let n=e.path||r.eventTypePath||"type",i=n?DI(t,n):void 0;if(e.exists&&(i==null||i===""))return!1;if(e.equals!==void 0)return i===e.equals;if(e.in&&Array.isArray(e.in))return e.in.includes(i);if(e.contains!==void 0)return typeof i=="string"&&i.includes(e.contains);if(e.regex)try{return new RegExp(e.regex).test(String(i??""))}catch{return!1}return!0}Gi();var t_=class{sessions=new Map;async processEntry(e,r,n,i){for(let s of n.events)V8(e,s.match,n)&&await this.handleEvent(e,r,n,s,i??void 0)}getSessionKey(e,r){return`${e.name}:${r}`}getOrCreateSession(e,r){let n=this.getSessionKey(e,r),i=this.sessions.get(n);return i||(i={sessionId:r,platformSource:Rt(e.name),pendingTools:new Map},this.sessions.set(n,i)),i}resolveSessionId(e,r,n,i,s){let o={watch:r,schema:n},a=i.fields?.sessionId??(n.sessionIdPath?{path:n.sessionIdPath}:void 0),c=ol(a,e,o);return typeof c=="string"&&c.trim()?c:typeof c=="number"?String(c):s&&s.trim()?s:null}resolveCwd(e,r,n,i,s){let o={watch:r,schema:n,session:s},a=i.fields?.cwd??(n.cwdPath?{path:n.cwdPath}:void 0),c=ol(a,e,o);return typeof c=="string"&&c.trim()?c:r.workspace?r.workspace:s.cwd}resolveProject(e,r,n,i,s){let o={watch:r,schema:n,session:s},a=i.fields?.project??(n.projectPath?{path:n.projectPath}:void 0),c=ol(a,e,o);return typeof c=="string"&&c.trim()?c:r.project?r.project:s.cwd?Xs(s.cwd):s.project}async handleEvent(e,r,n,i,s){let o=this.resolveSessionId(e,r,n,i,s);if(!o){_.debug("TRANSCRIPT","Skipping event without sessionId",{event:i.name,watch:r.name});return}let a=this.getOrCreateSession(r,o),c=this.resolveCwd(e,r,n,i,a);c&&(a.cwd=c);let u=this.resolveProject(e,r,n,i,a);u&&(a.project=u);let l=W8(i.fields,e,{watch:r,schema:n,session:a});switch(i.action){case"session_context":this.applySessionContext(a,l);break;case"session_init":await this.handleSessionInit(a,l),r.context?.updateOn?.includes("session_start")&&await this.updateContext(a,r);break;case"user_message":typeof l.message=="string"&&(a.lastUserMessage=l.message),typeof l.prompt=="string"&&(a.lastUserMessage=l.prompt);break;case"assistant_message":typeof l.message=="string"&&(a.lastAssistantMessage=l.message);break;case"tool_use":await this.handleToolUse(a,l);break;case"tool_result":await this.handleToolResult(a,l);break;case"observation":await this.sendObservation(a,l);break;case"file_edit":await this.sendFileEdit(a,l);break;case"session_end":await this.handleSessionEnd(a,r);break;default:break}}applySessionContext(e,r){let n=typeof r.cwd=="string"?r.cwd:void 0,i=typeof r.project=="string"?r.project:void 0;n&&(e.cwd=n),i&&(e.project=i)}async handleSessionInit(e,r){let n=typeof r.prompt=="string"?r.prompt:"",i=e.cwd??process.cwd();n&&(e.lastUserMessage=n),await qf.execute({sessionId:e.sessionId,cwd:i,prompt:n,platform:e.platformSource})}async handleToolUse(e,r){let n=typeof r.toolId=="string"?r.toolId:void 0,i=typeof r.toolName=="string"?r.toolName:void 0,s=this.maybeParseJson(r.toolInput),o=this.maybeParseJson(r.toolResponse),a={id:n,name:i,input:s,response:o};if(n&&e.pendingTools.set(n,{name:a.name,input:a.input}),i==="apply_patch"&&typeof s=="string"){let c=this.parseApplyPatchFiles(s);for(let u of c)await this.sendFileEdit(e,{filePath:u,edits:[{type:"apply_patch",patch:s}]})}o!==void 0&&i&&await this.sendObservation(e,{toolName:i,toolInput:s,toolResponse:o})}async handleToolResult(e,r){let n=typeof r.toolId=="string"?r.toolId:void 0,i=typeof r.toolName=="string"?r.toolName:void 0,s=this.maybeParseJson(r.toolResponse),o=this.maybeParseJson(r.toolInput),a=i;if(n&&e.pendingTools.has(n)){let c=e.pendingTools.get(n);o=c.input??o,a=a??c.name,e.pendingTools.delete(n)}a&&await this.sendObservation(e,{toolName:a,toolInput:o,toolResponse:s})}async sendObservation(e,r){let n=typeof r.toolName=="string"?r.toolName:void 0;n&&await Hf.execute({sessionId:e.sessionId,cwd:e.cwd??process.cwd(),toolName:n,toolInput:this.maybeParseJson(r.toolInput),toolResponse:this.maybeParseJson(r.toolResponse),platform:e.platformSource})}async sendFileEdit(e,r){let n=typeof r.filePath=="string"?r.filePath:void 0;n&&await Zf.execute({sessionId:e.sessionId,cwd:e.cwd??process.cwd(),filePath:n,edits:Array.isArray(r.edits)?r.edits:void 0,platform:e.platformSource})}maybeParseJson(e){if(typeof e!="string")return e;let r=e.trim();if(!r||!(r.startsWith("{")||r.startsWith("[")))return e;try{return JSON.parse(r)}catch{return e}}parseApplyPatchFiles(e){let r=[],n=e.split(` +`);for(let i of n){let s=i.trim();if(s.startsWith("*** Update File: "))r.push(s.replace("*** Update File: ","").trim());else if(s.startsWith("*** Add File: "))r.push(s.replace("*** Add File: ","").trim());else if(s.startsWith("*** Delete File: "))r.push(s.replace("*** Delete File: ","").trim());else if(s.startsWith("*** Move to: "))r.push(s.replace("*** Move to: ","").trim());else if(s.startsWith("+++ ")){let o=s.replace("+++ ","").replace(/^b\//,"").trim();o&&o!=="/dev/null"&&r.push(o)}}return Array.from(new Set(r))}async handleSessionEnd(e,r){await this.queueSummary(e),await Bf.execute({sessionId:e.sessionId,cwd:e.cwd??process.cwd(),platform:e.platformSource}),await this.updateContext(e,r),e.pendingTools.clear();let n=this.getSessionKey(r,e.sessionId);this.sessions.delete(n)}async queueSummary(e){if(!await sr())return;let n=e.lastAssistantMessage??"";try{await at("/api/sessions/summarize",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:e.sessionId,last_assistant_message:n,platformSource:e.platformSource})})}catch(i){_.warn("TRANSCRIPT","Summary request failed",{error:i instanceof Error?i.message:String(i)})}}async updateContext(e,r){if(!r.context||r.context.mode!=="agents"||!await sr())return;let i=e.cwd??r.workspace;if(!i)return;let o=il(i).allProjects.join(",");try{let a=await at(`/api/context/inject?projects=${encodeURIComponent(o)}&platformSource=${encodeURIComponent(e.platformSource)}`);if(!a.ok)return;let c=(await a.text()).trim();if(!c)return;let u=Ws(r.context.path??`${i}/AGENTS.md`);Z8(u,c),_.debug("TRANSCRIPT","Updated AGENTS.md context",{agentsPath:u,watch:r.name})}catch(a){_.warn("TRANSCRIPT","Failed to update AGENTS.md context",{error:a instanceof Error?a.message:String(a)})}}};var jI=class{constructor(e,r,n,i){this.filePath=e;this.onLine=n;this.onOffset=i;this.tailState={offset:r,partial:""}}watcher=null;tailState;start(){this.readNewData().catch(()=>{}),this.watcher=(0,Ai.watch)(this.filePath,{persistent:!0},()=>{this.readNewData().catch(()=>{})})}close(){this.watcher?.close(),this.watcher=null}async readNewData(){if(!(0,Ai.existsSync)(this.filePath))return;let e=0;try{e=(0,Ai.statSync)(this.filePath).size}catch{return}if(e{let a=this.resolveWatchFiles(n);for(let c of a)this.tailers.has(c)||await this.addTailer(c,e,r,!1)},s);this.rescanTimers.push(o)}resolveSchema(e){return typeof e.schema=="string"?this.config.schemas?.[e.schema]??null:e.schema}resolveWatchFiles(e){if(this.hasGlob(e))return Uf(e,{nodir:!0,absolute:!0});if((0,Ai.existsSync)(e))try{if((0,Ai.statSync)(e).isDirectory()){let n=(0,n_.join)(e,"**","*.jsonl");return Uf(n,{nodir:!0,absolute:!0})}return[e]}catch{return[]}return[]}hasGlob(e){return/[*?[\]{}()]/.test(e)}async addTailer(e,r,n,i){if(this.tailers.has(e))return;let s=this.extractSessionIdFromPath(e),o=this.state.offsets[e]??0;if(o===0&&r.startAtEnd&&i)try{o=(0,Ai.statSync)(e).size}catch{o=0}let a=new jI(e,o,async c=>{await this.handleLine(c,r,n,e,s)},c=>{this.state.offsets[e]=c,j8(this.statePath,this.state)});a.start(),this.tailers.set(e,a),_.info("TRANSCRIPT","Watching transcript file",{file:e,watch:r.name,schema:n.name})}async handleLine(e,r,n,i,s){try{let o=JSON.parse(e);await this.processor.processEntry(o,r,n,s??void 0)}catch(o){_.debug("TRANSCRIPT","Failed to parse transcript line",{watch:r.name,file:(0,n_.basename)(i)},o)}}extractSessionIdFromPath(e){let r=e.match(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/i);return r?r[0]:null}};var K8=Pe(Tv(),1),i_=Pe(require("path"),1),o_=require("fs");It();re();var Zr=class{wrapHandler(e){return(r,n)=>{try{let i=e(r,n);i instanceof Promise&&i.catch(s=>this.handleError(n,s))}catch(i){_.error("HTTP","Route handler error",{path:r.path},i),this.handleError(n,i)}}}parseIntParam(e,r,n){let i=parseInt(e.params[n],10);return isNaN(i)?(this.badRequest(r,`Invalid ${n}`),null):i}validateRequired(e,r,n){for(let i of n)if(e.body[i]===void 0||e.body[i]===null)return this.badRequest(r,`Missing ${i}`),!1;return!0}badRequest(e,r){e.status(400).json({error:r})}notFound(e,r){e.status(404).json({error:r})}handleError(e,r,n){if(_.failure("WORKER",n||"Request failed",{},r),!e.headersSent){let i=r instanceof yn?r.statusCode:500,s={error:r.message};r instanceof yn&&r.code&&(s.code=r.code),r instanceof yn&&r.details!==void 0&&(s.details=r.details),e.status(i).json(s)}}};var s_=class extends Zr{constructor(r,n,i){super();this.sseBroadcaster=r;this.dbManager=n;this.sessionManager=i}setupRoutes(r){let n=fn();r.use(K8.default.static(i_.default.join(n,"ui"))),r.get("/health",this.handleHealth.bind(this)),r.get("/",this.handleViewerUI.bind(this)),r.get("/stream",this.handleSSEStream.bind(this))}handleHealth=this.wrapHandler((r,n)=>{n.json({status:"ok",timestamp:Date.now()})});handleViewerUI=this.wrapHandler((r,n)=>{let i=fn(),o=[i_.default.join(i,"ui","viewer.html"),i_.default.join(i,"plugin","ui","viewer.html")].find(c=>(0,o_.existsSync)(c));if(!o)throw new Error("Viewer UI not found at any expected location");let a=(0,o_.readFileSync)(o,"utf-8");n.setHeader("Content-Type","text/html"),n.send(a)});handleSSEStream=this.wrapHandler((r,n)=>{try{this.dbManager.getSessionStore()}catch{n.status(503).json({error:"Service initializing"});return}n.setHeader("Content-Type","text/event-stream"),n.setHeader("Cache-Control","no-cache"),n.setHeader("Connection","keep-alive"),this.sseBroadcaster.addClient(n);let i=this.dbManager.getSessionStore().getProjectCatalog();this.sseBroadcaster.broadcast({type:"initial_load",projects:i.projects,sources:i.sources,projectsBySource:i.projectsBySource,timestamp:Date.now()});let s=this.sessionManager.isAnySessionProcessing(),o=this.sessionManager.getTotalActiveWork();this.sseBroadcaster.broadcast({type:"processing_status",isProcessing:s,queueDepth:o})})};Ir();re();a_();re();var c_=class{constructor(e,r,n){this.sessionManager=e;this.eventBroadcaster=r;this.dbManager=n}async completeByDbId(e){this.dbManager.getSessionStore().markSessionCompleted(e),await this.sessionManager.deleteSession(e);try{let n=this.sessionManager.getPendingMessageStore().markAllSessionMessagesAbandoned(e);n>0&&_.warn("SESSION",`Drained ${n} orphaned pending messages on session completion`,{sessionId:e,drainedCount:n})}catch(r){_.debug("SESSION","Failed to drain pending queue on session completion",{sessionId:e,error:r instanceof Error?r.message:String(r)})}this.eventBroadcaster.broadcastSessionCompleted(e)}};re();var Wf=class{static checkUserPromptPrivacy(e,r,n,i,s,o){let a=e.getUserPrompt(r,n);return!a||a.trim()===""?(_.debug("HOOK",`Skipping ${i} - user prompt was entirely private`,{sessionId:s,promptNumber:n,...o}),null):a}};tr();It();za();Gi();var u_=class t extends Zr{constructor(r,n,i,s,o,a,c){super();this.sessionManager=r;this.dbManager=n;this.sdkAgent=i;this.geminiAgent=s;this.openRouterAgent=o;this.eventBroadcaster=a;this.workerService=c;this.completionHandler=new c_(r,a,n)}completionHandler;spawnInProgress=new Map;crashRecoveryScheduled=new Set;getActiveAgent(){if(Vu()){if(Aa())return _.debug("SESSION","Using OpenRouter agent"),this.openRouterAgent;throw new Error("OpenRouter provider selected but no API key configured. Set CLAUDE_MEM_OPENROUTER_API_KEY in settings or OPENROUTER_API_KEY environment variable.")}if(Wu()){if(Pa())return _.debug("SESSION","Using Gemini agent"),this.geminiAgent;throw new Error("Gemini provider selected but no API key configured. Set CLAUDE_MEM_GEMINI_API_KEY in settings or GEMINI_API_KEY environment variable.")}return this.sdkAgent}getSelectedProvider(){return Vu()&&Aa()?"openrouter":Wu()&&Pa()?"gemini":"claude"}static STALE_GENERATOR_THRESHOLD_MS=3e4;ensureGeneratorRunning(r,n){let i=this.sessionManager.getSession(r);if(!i)return;if(this.spawnInProgress.get(r)){_.debug("SESSION","Spawn already in progress, skipping",{sessionDbId:r,source:n});return}let s=this.getSelectedProvider();if(!i.generatorPromise){this.applyTierRouting(i),this.spawnInProgress.set(r,!0),this.startGeneratorWithProvider(i,s,n);return}let o=Date.now()-i.lastGeneratorActivity;if(o>t.STALE_GENERATOR_THRESHOLD_MS){_.warn("SESSION","Stale generator detected, aborting to prevent queue stall (#1099)",{sessionId:r,timeSinceActivityMs:o,thresholdMs:t.STALE_GENERATOR_THRESHOLD_MS,source:n}),i.abortController.abort(),i.generatorPromise=null,i.abortController=new AbortController,i.lastGeneratorActivity=Date.now(),this.applyTierRouting(i),this.spawnInProgress.set(r,!0),this.startGeneratorWithProvider(i,s,"stale-recovery");return}i.currentProvider&&i.currentProvider!==s&&_.info("SESSION","Provider changed, will switch after current generator finishes",{sessionId:r,currentProvider:i.currentProvider,selectedProvider:s,historyLength:i.conversationHistory.length})}startGeneratorWithProvider(r,n,i){if(!r)return;r.abortController.signal.aborted&&(_.debug("SESSION","Resetting aborted AbortController before starting generator",{sessionId:r.sessionDbId}),r.abortController=new AbortController);let s=n==="openrouter"?this.openRouterAgent:n==="gemini"?this.geminiAgent:this.sdkAgent,o=n==="openrouter"?"OpenRouter":n==="gemini"?"Gemini":"Claude SDK",c=this.sessionManager.getPendingMessageStore().getPendingCount(r.sessionDbId);_.info("SESSION",`Generator auto-starting (${i}) using ${o}`,{sessionId:r.sessionDbId,queueDepth:c,historyLength:r.conversationHistory.length}),r.currentProvider=n,r.lastGeneratorActivity=Date.now(),r.generatorPromise=s.startSession(r,this.workerService).catch(u=>{if(r.abortController.signal.aborted)return;_.error("SESSION","Generator failed",{sessionId:r.sessionDbId,provider:n,error:u.message},u);let l=this.sessionManager.getPendingMessageStore();try{let d=l.markSessionMessagesFailed(r.sessionDbId);d>0&&_.error("SESSION","Marked messages as failed after generator error",{sessionId:r.sessionDbId,failedCount:d})}catch(d){_.error("SESSION","Failed to mark messages as failed",{sessionId:r.sessionDbId},d)}}).finally(async()=>{let u=To(r.sessionDbId);u&&!u.process.killed&&u.process.exitCode===null&&await $o(u,5e3);let l=r.sessionDbId;this.spawnInProgress.delete(l);let d=r.abortController.signal.aborted;if(d?_.info("SESSION","Generator aborted",{sessionId:l}):_.error("SESSION","Generator exited unexpectedly",{sessionId:l}),r.generatorPromise=null,r.currentProvider=null,this.workerService.broadcastProcessingStatus(),!d)try{let f=this.sessionManager.getPendingMessageStore().getPendingCount(l),m=3;if(f>0){if(this.crashRecoveryScheduled.has(l)){_.debug("SESSION","Crash recovery already scheduled",{sessionDbId:l});return}if(r.consecutiveRestarts=(r.consecutiveRestarts||0)+1,r.consecutiveRestarts>m){_.error("SESSION","CRITICAL: Generator restart limit exceeded - stopping to prevent runaway costs",{sessionId:l,pendingCount:f,consecutiveRestarts:r.consecutiveRestarts,maxRestarts:m,action:"Generator will NOT restart. Check logs for root cause. Messages remain in pending state."}),r.abortController.abort();return}_.info("SESSION","Restarting generator after crash/exit with pending work",{sessionId:l,pendingCount:f,consecutiveRestarts:r.consecutiveRestarts,maxRestarts:m});let h=r.abortController;r.abortController=new AbortController,h.abort(),this.crashRecoveryScheduled.add(l);let g=Math.min(1e3*Math.pow(2,r.consecutiveRestarts-1),8e3);setTimeout(()=>{this.crashRecoveryScheduled.delete(l);let v=this.sessionManager.getSession(l);v&&!v.generatorPromise&&(this.applyTierRouting(v),this.startGeneratorWithProvider(v,this.getSelectedProvider(),"crash-recovery"))},g)}else r.abortController.abort(),r.consecutiveRestarts=0,_.debug("SESSION","Aborted controller after natural completion",{sessionId:l})}catch(p){_.debug("SESSION","Error during recovery check, aborting to prevent leaks",{sessionId:l,error:p instanceof Error?p.message:String(p)}),r.abortController.abort()}})}setupRoutes(r){r.post("/sessions/:sessionDbId/init",this.handleSessionInit.bind(this)),r.post("/sessions/:sessionDbId/observations",this.handleObservations.bind(this)),r.post("/sessions/:sessionDbId/summarize",this.handleSummarize.bind(this)),r.get("/sessions/:sessionDbId/status",this.handleSessionStatus.bind(this)),r.delete("/sessions/:sessionDbId",this.handleSessionDelete.bind(this)),r.post("/sessions/:sessionDbId/complete",this.handleSessionComplete.bind(this)),r.post("/api/sessions/init",this.handleSessionInitByClaudeId.bind(this)),r.post("/api/sessions/observations",this.handleObservationsByClaudeId.bind(this)),r.post("/api/sessions/summarize",this.handleSummarizeByClaudeId.bind(this)),r.post("/api/sessions/complete",this.handleCompleteByClaudeId.bind(this)),r.get("/api/sessions/status",this.handleStatusByClaudeId.bind(this))}handleSessionInit=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"sessionDbId");if(i===null)return;let{userPrompt:s,promptNumber:o}=r.body;_.info("HTTP","SessionRoutes: handleSessionInit called",{sessionDbId:i,promptNumber:o,has_userPrompt:!!s});let a=this.sessionManager.initializeSession(i,s,o),c=this.dbManager.getSessionStore().getLatestUserPrompt(a.contentSessionId);if(c){this.eventBroadcaster.broadcastNewPrompt({id:c.id,content_session_id:c.content_session_id,project:c.project,platform_source:c.platform_source,prompt_number:c.prompt_number,prompt_text:c.prompt_text,created_at_epoch:c.created_at_epoch});let u=Date.now(),l=c.prompt_text;this.dbManager.getChromaSync()?.syncUserPrompt(c.id,c.memory_session_id,c.project,l,c.prompt_number,c.created_at_epoch).then(()=>{let d=Date.now()-u,p=l.length>60?l.substring(0,60)+"...":l;_.debug("CHROMA","User prompt synced",{promptId:c.id,duration:`${d}ms`,prompt:p})}).catch(d=>{_.error("CHROMA","User prompt sync failed, continuing without vector search",{promptId:c.id,prompt:l.length>60?l.substring(0,60)+"...":l},d)})}this.ensureGeneratorRunning(i,"init"),this.eventBroadcaster.broadcastSessionStarted(i,a.project),n.json({status:"initialized",sessionDbId:i,port:Yr()})});handleObservations=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"sessionDbId");if(i===null)return;let{tool_name:s,tool_input:o,tool_response:a,prompt_number:c,cwd:u}=r.body;this.sessionManager.queueObservation(i,{tool_name:s,tool_input:o,tool_response:a,prompt_number:c,cwd:u}),this.ensureGeneratorRunning(i,"observation"),this.eventBroadcaster.broadcastObservationQueued(i),n.json({status:"queued"})});handleSummarize=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"sessionDbId");if(i===null)return;let{last_assistant_message:s}=r.body;this.sessionManager.queueSummarize(i,s),this.ensureGeneratorRunning(i,"summarize"),this.eventBroadcaster.broadcastSummarizeQueued(),n.json({status:"queued"})});handleSessionStatus=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"sessionDbId");if(i===null)return;let s=this.sessionManager.getSession(i);if(!s){n.json({status:"not_found"});return}let a=this.sessionManager.getPendingMessageStore().getPendingCount(i);n.json({status:"active",sessionDbId:i,project:s.project,queueLength:a,uptime:Date.now()-s.startTime})});handleSessionDelete=this.wrapHandler(async(r,n)=>{let i=this.parseIntParam(r,n,"sessionDbId");i!==null&&(await this.completionHandler.completeByDbId(i),n.json({status:"deleted"}))});handleSessionComplete=this.wrapHandler(async(r,n)=>{let i=this.parseIntParam(r,n,"sessionDbId");i!==null&&(await this.completionHandler.completeByDbId(i),n.json({success:!0}))});handleObservationsByClaudeId=this.wrapHandler((r,n)=>{let{contentSessionId:i,tool_name:s,tool_input:o,tool_response:a,cwd:c}=r.body,u=Rt(r.body.platformSource),l=typeof c=="string"&&c.trim()?Xs(c):"";if(!i)return this.badRequest(n,"Missing contentSessionId");let d=ve.loadFromFile(vt);if(new Set(d.CLAUDE_MEM_SKIP_TOOLS.split(",").map(m=>m.trim()).filter(Boolean)).has(s)){_.debug("SESSION","Skipping observation for tool",{tool_name:s}),n.json({status:"skipped",reason:"tool_excluded"});return}if(new Set(["Edit","Write","Read","NotebookEdit"]).has(s)&&o){let m=o.file_path||o.notebook_path;if(m&&m.includes("session-memory")){_.debug("SESSION","Skipping meta-observation for session-memory file",{tool_name:s,file_path:m}),n.json({status:"skipped",reason:"session_memory_meta"});return}}try{let m=this.dbManager.getSessionStore(),h=m.createSDKSession(i,l,"",void 0,u),g=m.getPromptNumberFromUserPrompts(i);if(!Wf.checkUserPromptPrivacy(m,i,g,"observation",h,{tool_name:s})){n.json({status:"skipped",reason:"private"});return}let y=o!==void 0?zI(JSON.stringify(o)):"{}",b=a!==void 0?zI(JSON.stringify(a)):"{}";this.sessionManager.queueObservation(h,{tool_name:s,tool_input:y,tool_response:b,prompt_number:g,cwd:c||(_.error("SESSION","Missing cwd when queueing observation in SessionRoutes",{sessionId:h,tool_name:s}),"")}),this.ensureGeneratorRunning(h,"observation"),this.eventBroadcaster.broadcastObservationQueued(h),n.json({status:"queued"})}catch(m){_.error("SESSION","Observation storage failed",{contentSessionId:i,tool_name:s},m),n.json({stored:!1,reason:m.message})}});handleSummarizeByClaudeId=this.wrapHandler((r,n)=>{let{contentSessionId:i,last_assistant_message:s}=r.body,o=Rt(r.body.platformSource);if(!i)return this.badRequest(n,"Missing contentSessionId");let a=this.dbManager.getSessionStore(),c=a.createSDKSession(i,"","",void 0,o),u=a.getPromptNumberFromUserPrompts(i);if(!Wf.checkUserPromptPrivacy(a,i,u,"summarize",c)){n.json({status:"skipped",reason:"private"});return}this.sessionManager.queueSummarize(c,s),this.ensureGeneratorRunning(c,"summarize"),this.eventBroadcaster.broadcastSummarizeQueued(),n.json({status:"queued"})});handleStatusByClaudeId=this.wrapHandler((r,n)=>{let i=r.query.contentSessionId;if(!i)return this.badRequest(n,"Missing contentSessionId query parameter");let o=this.dbManager.getSessionStore().createSDKSession(i,"",""),a=this.sessionManager.getSession(o);if(!a){n.json({status:"not_found",queueLength:0});return}let u=this.sessionManager.getPendingMessageStore().getPendingCount(o);n.json({status:"active",sessionDbId:o,queueLength:u,uptime:Date.now()-a.startTime})});handleCompleteByClaudeId=this.wrapHandler(async(r,n)=>{let{contentSessionId:i}=r.body,s=Rt(r.body.platformSource);if(_.info("HTTP","\u2192 POST /api/sessions/complete",{contentSessionId:i}),!i)return this.badRequest(n,"Missing contentSessionId");let a=this.dbManager.getSessionStore().createSDKSession(i,"","",void 0,s),c=this.sessionManager.getSession(a);c||_.debug("SESSION","session-complete: Session not in active map; continuing with DB-backed completion",{contentSessionId:i,sessionDbId:a}),await this.completionHandler.completeByDbId(a),_.info("SESSION","Session completed via API",{contentSessionId:i,sessionDbId:a}),n.json({status:c?"completed":"completed_db_only",sessionDbId:a})});handleSessionInitByClaudeId=this.wrapHandler((r,n)=>{let{contentSessionId:i}=r.body,s=r.body.project||"unknown",o=r.body.prompt||"[media prompt]",a=Rt(r.body.platformSource),c=r.body.customTitle||void 0;if(_.info("HTTP","SessionRoutes: handleSessionInitByClaudeId called",{contentSessionId:i,project:s,platformSource:a,prompt_length:o?.length,customTitle:c}),!this.validateRequired(r,n,["contentSessionId"]))return;let u=this.dbManager.getSessionStore(),l=u.createSDKSession(i,s,o,c,a),d=u.getSessionById(l),p=!d?.memory_session_id;_.info("SESSION",`CREATED | contentSessionId=${i} \u2192 sessionDbId=${l} | isNew=${p} | project=${s}`,{sessionId:l});let m=u.getPromptNumberFromUserPrompts(i)+1,h=d?.memory_session_id||null;m>1?_.debug("HTTP",`[ALIGNMENT] DB Lookup Proof | contentSessionId=${i} \u2192 memorySessionId=${h||"(not yet captured)"} | prompt#=${m}`):_.debug("HTTP",`[ALIGNMENT] New Session | contentSessionId=${i} | prompt#=${m} | memorySessionId will be captured on first SDK response`);let g=Y8(o);if(!g||g.trim()===""){_.debug("HOOK","Session init - prompt entirely private",{sessionId:l,promptNumber:m,originalLength:o.length}),n.json({sessionDbId:l,promptNumber:m,skipped:!0,reason:"private"});return}u.saveUserPrompt(i,m,g);let v=this.sessionManager.getSession(l)!==void 0;_.debug("SESSION","User prompt saved",{sessionId:l,promptNumber:m,contextInjected:v}),n.json({sessionDbId:l,promptNumber:m,skipped:!1,contextInjected:v})});static SIMPLE_TOOLS=new Set(["Read","Glob","Grep","LS","ListMcpResourcesTool"]);applyTierRouting(r){let n=ve.loadFromFile(vt);if(n.CLAUDE_MEM_TIER_ROUTING_ENABLED==="false"){r.modelOverride=void 0;return}r.modelOverride=void 0;let s=this.sessionManager.getPendingMessageStore().peekPendingTypes(r.sessionDbId);if(s.length===0){r.modelOverride=void 0;return}let o=s.some(c=>c.message_type==="summarize"),a=s.every(c=>c.message_type==="observation"&&c.tool_name&&t.SIMPLE_TOOLS.has(c.tool_name));if(o){let c=n.CLAUDE_MEM_TIER_SUMMARY_MODEL;c&&(r.modelOverride=c,_.debug("SESSION","Tier routing: summary model",{sessionId:r.sessionDbId,model:c}))}else if(a){let c=n.CLAUDE_MEM_TIER_SIMPLE_MODEL;c&&(r.modelOverride=c,_.debug("SESSION","Tier routing: simple model",{sessionId:r.sessionDbId,model:c}))}else r.modelOverride=void 0}};var LI=Pe(require("path"),1),al=require("fs");re();var eH=require("os");It();Ir();Gi();function Q8(t,e,r){let n=r?.limit,i=Number.isInteger(n)&&n>0?Math.min(n,100):15,s=[e,e],o="";return r?.projects?.length&&(o=`AND project IN (${r.projects.map(()=>"?").join(",")})`,s.push(...r.projects)),s.push(i),t.prepare(` + SELECT * + FROM observations + WHERE ( + (files_read LIKE '[%' AND EXISTS (SELECT 1 FROM json_each(files_read) WHERE value = ?)) + OR (files_modified LIKE '[%' AND EXISTS (SELECT 1 FROM json_each(files_modified) WHERE value = ?)) + ) + ${o} + ORDER BY created_at_epoch DESC + LIMIT ? + `).all(...s)}var l_=class extends Zr{constructor(r,n,i,s,o,a){super();this.paginationHelper=r;this.dbManager=n;this.sessionManager=i;this.sseBroadcaster=s;this.workerService=o;this.startTime=a}setupRoutes(r){r.get("/api/observations",this.handleGetObservations.bind(this)),r.get("/api/summaries",this.handleGetSummaries.bind(this)),r.get("/api/prompts",this.handleGetPrompts.bind(this)),r.get("/api/observation/:id",this.handleGetObservationById.bind(this)),r.get("/api/observations/by-file",this.handleGetObservationsByFile.bind(this)),r.post("/api/observations/batch",this.handleGetObservationsByIds.bind(this)),r.get("/api/session/:id",this.handleGetSessionById.bind(this)),r.post("/api/sdk-sessions/batch",this.handleGetSdkSessionsByIds.bind(this)),r.get("/api/prompt/:id",this.handleGetPromptById.bind(this)),r.get("/api/stats",this.handleGetStats.bind(this)),r.get("/api/projects",this.handleGetProjects.bind(this)),r.get("/api/processing-status",this.handleGetProcessingStatus.bind(this)),r.post("/api/processing",this.handleSetProcessing.bind(this)),r.get("/api/pending-queue",this.handleGetPendingQueue.bind(this)),r.post("/api/pending-queue/process",this.handleProcessPendingQueue.bind(this)),r.delete("/api/pending-queue/failed",this.handleClearFailedQueue.bind(this)),r.delete("/api/pending-queue/all",this.handleClearAllQueue.bind(this)),r.post("/api/import",this.handleImport.bind(this))}handleGetObservations=this.wrapHandler((r,n)=>{let{offset:i,limit:s,project:o,platformSource:a}=this.parsePaginationParams(r),c=this.paginationHelper.getObservations(i,s,o,a);n.json(c)});handleGetSummaries=this.wrapHandler((r,n)=>{let{offset:i,limit:s,project:o,platformSource:a}=this.parsePaginationParams(r),c=this.paginationHelper.getSummaries(i,s,o,a);n.json(c)});handleGetPrompts=this.wrapHandler((r,n)=>{let{offset:i,limit:s,project:o,platformSource:a}=this.parsePaginationParams(r),c=this.paginationHelper.getPrompts(i,s,o,a);n.json(c)});handleGetObservationById=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"id");if(i===null)return;let o=this.dbManager.getSessionStore().getObservationById(i);if(!o){this.notFound(n,`Observation #${i} not found`);return}n.json(o)});handleGetObservationsByFile=this.wrapHandler((r,n)=>{let i=r.query.path;if(!i){this.badRequest(n,"path query parameter is required");return}let s=r.query.projects,o=s?s.split(",").filter(Boolean):void 0,a=r.query.limit?parseInt(r.query.limit,10):void 0,c=Number.isFinite(a)&&a>0?a:void 0,u=this.dbManager.getSessionStore().db,l=Q8(u,i,{projects:o,limit:c});n.json({observations:l,count:l.length})});handleGetObservationsByIds=this.wrapHandler((r,n)=>{let{ids:i,orderBy:s,limit:o,project:a}=r.body;if(typeof i=="string")try{i=JSON.parse(i)}catch{i=i.split(",").map(Number)}if(!i||!Array.isArray(i)){this.badRequest(n,"ids must be an array of numbers");return}if(i.length===0){n.json([]);return}if(!i.every(l=>typeof l=="number"&&Number.isInteger(l))){this.badRequest(n,"All ids must be integers");return}let u=this.dbManager.getSessionStore().getObservationsByIds(i,{orderBy:s,limit:o,project:a});n.json(u)});handleGetSessionById=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"id");if(i===null)return;let o=this.dbManager.getSessionStore().getSessionSummariesByIds([i]);if(o.length===0){this.notFound(n,`Session #${i} not found`);return}n.json(o[0])});handleGetSdkSessionsByIds=this.wrapHandler((r,n)=>{let{memorySessionIds:i}=r.body;if(typeof i=="string")try{i=JSON.parse(i)}catch{i=i.split(",").map(a=>a.trim())}if(!Array.isArray(i)){this.badRequest(n,"memorySessionIds must be an array");return}let o=this.dbManager.getSessionStore().getSdkSessionsBySessionIds(i);n.json(o)});handleGetPromptById=this.wrapHandler((r,n)=>{let i=this.parseIntParam(r,n,"id");if(i===null)return;let o=this.dbManager.getSessionStore().getUserPromptsByIds([i]);if(o.length===0){this.notFound(n,`Prompt #${i} not found`);return}n.json(o[0])});handleGetStats=this.wrapHandler((r,n)=>{let i=this.dbManager.getSessionStore().db,s=fn(),o=LI.default.join(s,"package.json"),c=JSON.parse((0,al.readFileSync)(o,"utf-8")).version,u=i.prepare("SELECT COUNT(*) as count FROM observations").get(),l=i.prepare("SELECT COUNT(*) as count FROM sdk_sessions").get(),d=i.prepare("SELECT COUNT(*) as count FROM session_summaries").get(),p=LI.default.join((0,eH.homedir)(),".claude-mem","claude-mem.db"),f=0;(0,al.existsSync)(p)&&(f=(0,al.statSync)(p).size);let m=Math.floor((Date.now()-this.startTime)/1e3),h=this.sessionManager.getActiveSessionCount(),g=this.sseBroadcaster.getClientCount();n.json({worker:{version:c,uptime:m,activeSessions:h,sseClients:g,port:Yr()},database:{path:p,size:f,observations:u.count,sessions:l.count,summaries:d.count}})});handleGetProjects=this.wrapHandler((r,n)=>{let i=this.dbManager.getSessionStore(),s=r.query.platformSource,o=s?Rt(s):void 0;if(o){let a=i.getAllProjects(o);n.json({projects:a,sources:[o],projectsBySource:{[o]:a}});return}n.json(i.getProjectCatalog())});handleGetProcessingStatus=this.wrapHandler((r,n)=>{let i=this.sessionManager.isAnySessionProcessing(),s=this.sessionManager.getTotalActiveWork();n.json({isProcessing:i,queueDepth:s})});handleSetProcessing=this.wrapHandler((r,n)=>{this.workerService.broadcastProcessingStatus();let i=this.sessionManager.isAnySessionProcessing(),s=this.sessionManager.getTotalQueueDepth(),o=this.sessionManager.getActiveSessionCount();n.json({status:"ok",isProcessing:i,queueDepth:s,activeSessions:o})});parsePaginationParams(r){let n=parseInt(r.query.offset,10)||0,i=Math.min(parseInt(r.query.limit,10)||20,100),s=r.query.project,o=r.query.platformSource,a=o?Rt(o):void 0;return{offset:n,limit:i,project:s,platformSource:a}}handleImport=this.wrapHandler((r,n)=>{let{sessions:i,summaries:s,observations:o,prompts:a}=r.body,c={sessionsImported:0,sessionsSkipped:0,summariesImported:0,summariesSkipped:0,observationsImported:0,observationsSkipped:0,promptsImported:0,promptsSkipped:0},u=this.dbManager.getSessionStore();if(Array.isArray(i))for(let l of i)u.importSdkSession(l).imported?c.sessionsImported++:c.sessionsSkipped++;if(Array.isArray(s))for(let l of s)u.importSessionSummary(l).imported?c.summariesImported++:c.summariesSkipped++;if(Array.isArray(o))for(let l of o)u.importObservation(l).imported?c.observationsImported++:c.observationsSkipped++;if(Array.isArray(a))for(let l of a)u.importUserPrompt(l).imported?c.promptsImported++:c.promptsSkipped++;n.json({success:!0,stats:c})});handleGetPendingQueue=this.wrapHandler((r,n)=>{let{PendingMessageStore:i}=(Ea(),em(_u)),s=new i(this.dbManager.getSessionStore().db,3),o=s.getQueueMessages(),a=s.getRecentlyProcessed(20,30),c=s.getStuckCount(300*1e3),u=s.getSessionsWithPendingMessages();n.json({queue:{messages:o,totalPending:o.filter(l=>l.status==="pending").length,totalProcessing:o.filter(l=>l.status==="processing").length,totalFailed:o.filter(l=>l.status==="failed").length,stuckCount:c},recentlyProcessed:a,sessionsWithPendingWork:u})});handleProcessPendingQueue=this.wrapHandler(async(r,n)=>{let i=Math.min(Math.max(parseInt(r.body.sessionLimit,10)||10,1),100),s=await this.workerService.processPendingQueues(i);n.json({success:!0,...s})});handleClearFailedQueue=this.wrapHandler((r,n)=>{let{PendingMessageStore:i}=(Ea(),em(_u)),o=new i(this.dbManager.getSessionStore().db,3).clearFailed();_.info("QUEUE","Cleared failed queue messages",{clearedCount:o}),n.json({success:!0,clearedCount:o})});handleClearAllQueue=this.wrapHandler((r,n)=>{let{PendingMessageStore:i}=(Ea(),em(_u)),o=new i(this.dbManager.getSessionStore().db,3).clearAll();_.warn("QUEUE","Cleared ALL queue messages (pending, processing, failed)",{clearedCount:o}),n.json({success:!0,clearedCount:o})})};re();var h_=class extends Zr{constructor(r){super();this.searchManager=r}setupRoutes(r){r.get("/api/search",this.handleUnifiedSearch.bind(this)),r.get("/api/timeline",this.handleUnifiedTimeline.bind(this)),r.get("/api/decisions",this.handleDecisions.bind(this)),r.get("/api/changes",this.handleChanges.bind(this)),r.get("/api/how-it-works",this.handleHowItWorks.bind(this)),r.get("/api/search/observations",this.handleSearchObservations.bind(this)),r.get("/api/search/sessions",this.handleSearchSessions.bind(this)),r.get("/api/search/prompts",this.handleSearchPrompts.bind(this)),r.get("/api/search/by-concept",this.handleSearchByConcept.bind(this)),r.get("/api/search/by-file",this.handleSearchByFile.bind(this)),r.get("/api/search/by-type",this.handleSearchByType.bind(this)),r.get("/api/context/recent",this.handleGetRecentContext.bind(this)),r.get("/api/context/timeline",this.handleGetContextTimeline.bind(this)),r.get("/api/context/preview",this.handleContextPreview.bind(this)),r.get("/api/context/inject",this.handleContextInject.bind(this)),r.post("/api/context/semantic",this.handleSemanticContext.bind(this)),r.get("/api/timeline/by-query",this.handleGetTimelineByQuery.bind(this)),r.get("/api/search/help",this.handleSearchHelp.bind(this))}handleUnifiedSearch=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.search(r.query);n.json(i)});handleUnifiedTimeline=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.timeline(r.query);n.json(i)});handleDecisions=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.decisions(r.query);n.json(i)});handleChanges=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.changes(r.query);n.json(i)});handleHowItWorks=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.howItWorks(r.query);n.json(i)});handleSearchObservations=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.searchObservations(r.query);n.json(i)});handleSearchSessions=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.searchSessions(r.query);n.json(i)});handleSearchPrompts=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.searchUserPrompts(r.query);n.json(i)});handleSearchByConcept=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.findByConcept(r.query);n.json(i)});handleSearchByFile=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.findByFile(r.query);n.json(i)});handleSearchByType=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.findByType(r.query);n.json(i)});handleGetRecentContext=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.getRecentContext(r.query);n.json(i)});handleGetContextTimeline=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.getContextTimeline(r.query);n.json(i)});handleContextPreview=this.wrapHandler(async(r,n)=>{let i=r.query.project,s=r.query.platformSource;if(!i){this.badRequest(n,"Project parameter is required");return}let{generateContext:o}=await Promise.resolve().then(()=>(YI(),XI)),a=`/preview/${i}`,c=await o({session_id:"preview-"+Date.now(),cwd:a,projects:[i],platform_source:s},!0);n.setHeader("Content-Type","text/plain; charset=utf-8"),n.send(c)});handleContextInject=this.wrapHandler(async(r,n)=>{let i=r.query.projects||r.query.project,s=r.query.colors==="true",o=r.query.full==="true",a=r.query.platformSource;if(!i){this.badRequest(n,"Project(s) parameter is required");return}let c=i.split(",").map(f=>f.trim()).filter(Boolean);if(c.length===0){this.badRequest(n,"At least one project is required");return}let{generateContext:u}=await Promise.resolve().then(()=>(YI(),XI)),d=`/context/${c[c.length-1]}`,p=await u({session_id:"context-inject-"+Date.now(),cwd:d,projects:c,full:o,platform_source:a},s);n.setHeader("Content-Type","text/plain; charset=utf-8"),n.send(p)});handleSemanticContext=this.wrapHandler(async(r,n)=>{let i=r.body?.q||r.query.q,s=r.body?.project||r.query.project,o=Math.min(Math.max(parseInt(String(r.body?.limit||r.query.limit||"5"),10)||5,1),20);if(!i||i.length<20){n.json({context:"",count:0});return}try{let c=(await this.searchManager.search({query:i,type:"observations",project:s,limit:String(o),format:"json"}))?.observations||[];if(!c.length){n.json({context:"",count:0});return}let u=[`## Relevant Past Work (semantic match) `];for(let l of c.slice(0,o)){let d=l.created_at?.slice(0,10)||"";u.push(`### ${l.title||"Observation"} (${d})`),l.narrative&&u.push(l.narrative),u.push("")}n.json({context:u.join(` -`),count:c.length})}catch(a){_.error("SEARCH","Semantic context query failed",{},a),n.json({context:"",count:0})}});handleGetTimelineByQuery=this.wrapHandler(async(r,n)=>{let i=await this.searchManager.getTimelineByQuery(r.query);n.json(i)});handleSearchHelp=this.wrapHandler((r,n)=>{n.json({title:"Claude-Mem Search API",description:"HTTP API for searching persistent memory",endpoints:[{path:"/api/search/observations",method:"GET",description:"Search observations using full-text search",parameters:{query:"Search query (required)",limit:"Number of results (default: 20)",project:"Filter by project name (optional)"}},{path:"/api/search/sessions",method:"GET",description:"Search session summaries using full-text search",parameters:{query:"Search query (required)",limit:"Number of results (default: 20)"}},{path:"/api/search/prompts",method:"GET",description:"Search user prompts using full-text search",parameters:{query:"Search query (required)",limit:"Number of results (default: 20)",project:"Filter by project name (optional)"}},{path:"/api/search/by-concept",method:"GET",description:"Find observations by concept tag",parameters:{concept:"Concept tag (required): discovery, decision, bugfix, feature, refactor",limit:"Number of results (default: 10)",project:"Filter by project name (optional)"}},{path:"/api/search/by-file",method:"GET",description:"Find observations and sessions by file path",parameters:{filePath:"File path or partial path (required)",limit:"Number of results per type (default: 10)",project:"Filter by project name (optional)"}},{path:"/api/search/by-type",method:"GET",description:"Find observations by type",parameters:{type:"Observation type (required): discovery, decision, bugfix, feature, refactor",limit:"Number of results (default: 10)",project:"Filter by project name (optional)"}},{path:"/api/context/recent",method:"GET",description:"Get recent session context including summaries and observations",parameters:{project:"Project name (default: current directory)",limit:"Number of recent sessions (default: 3)"}},{path:"/api/context/timeline",method:"GET",description:"Get unified timeline around a specific point in time",parameters:{anchor:'Anchor point: observation ID, session ID (e.g., "S123"), or ISO timestamp (required)',depth_before:"Number of records before anchor (default: 10)",depth_after:"Number of records after anchor (default: 10)",project:"Filter by project name (optional)"}},{path:"/api/timeline/by-query",method:"GET",description:"Search for best match, then get timeline around it",parameters:{query:"Search query (required)",mode:'Search mode: "auto", "observations", or "sessions" (default: "auto")',depth_before:"Number of records before match (default: 10)",depth_after:"Number of records after match (default: 10)",project:"Filter by project name (optional)"}},{path:"/api/search/help",method:"GET",description:"Get this help documentation"}],examples:['curl "http://localhost:37777/api/search/observations?query=authentication&limit=5"','curl "http://localhost:37777/api/search/by-type?type=bugfix&limit=10"','curl "http://localhost:37777/api/context/recent?project=claude-mem&limit=3"','curl "http://localhost:37777/api/context/timeline?anchor=123&depth_before=5&depth_after=5"']})})};var Ra=Pe(require("path"),1),$r=require("fs"),gI=require("os");zt();re();var mI=require("child_process"),Ia=require("fs"),Iy=require("path");re();zt();var hf=Ss;function fI(t){return!t||typeof t!="string"?!1:/^[a-zA-Z0-9][a-zA-Z0-9._/-]*$/.test(t)&&!t.includes("..")}var C_e=3e5,hI=6e5;function Yn(t){let e=(0,mI.spawnSync)("git",t,{cwd:hf,encoding:"utf-8",timeout:C_e,windowsHide:!0,shell:!1});if(e.error)throw e.error;if(e.status!==0)throw new Error(e.stderr||e.stdout||"Git command failed");return e.stdout.trim()}function w8(t,e=hI){let n=process.platform==="win32"?"npm.cmd":"npm",i=(0,mI.spawnSync)(n,t,{cwd:hf,encoding:"utf-8",timeout:e,windowsHide:!0,shell:!1});if(i.error)throw i.error;if(i.status!==0)throw new Error(i.stderr||i.stdout||"npm command failed");return i.stdout.trim()}function Ry(){let t=(0,Iy.join)(hf,".git");if(!(0,Ia.existsSync)(t))return{branch:null,isBeta:!1,isGitRepo:!1,isDirty:!1,canSwitch:!1,error:"Installed plugin is not a git repository"};try{let e=Yn(["rev-parse","--abbrev-ref","HEAD"]),n=Yn(["status","--porcelain"]).length>0,i=e.startsWith("beta");return{branch:e,isBeta:i,isGitRepo:!0,isDirty:n,canSwitch:!0}}catch(e){return _.error("BRANCH","Failed to get branch info",{},e),{branch:null,isBeta:!1,isGitRepo:!0,isDirty:!1,canSwitch:!1,error:e.message}}}async function E8(t){if(!fI(t))return{success:!1,error:`Invalid branch name: ${t}. Branch names must be alphanumeric with hyphens, underscores, slashes, or dots.`};let e=Ry();if(!e.isGitRepo)return{success:!1,error:"Installed plugin is not a git repository. Please reinstall."};if(e.branch===t)return{success:!0,branch:t,message:`Already on branch ${t}`};try{_.info("BRANCH","Starting branch switch",{from:e.branch,to:t}),_.debug("BRANCH","Discarding local changes"),Yn(["checkout","--","."]),Yn(["clean","-fd"]),_.debug("BRANCH","Fetching from origin"),Yn(["fetch","origin"]),_.debug("BRANCH","Checking out branch",{branch:t});try{Yn(["checkout",t])}catch(n){_.debug("BRANCH","Branch not local, tracking remote",{branch:t,error:n instanceof Error?n.message:String(n)}),Yn(["checkout","-b",t,`origin/${t}`])}_.debug("BRANCH","Pulling latest"),Yn(["pull","origin",t]);let r=(0,Iy.join)(hf,".install-version");return(0,Ia.existsSync)(r)&&(0,Ia.unlinkSync)(r),_.debug("BRANCH","Running npm install"),w8(["install"],hI),_.success("BRANCH","Branch switch complete",{branch:t}),{success:!0,branch:t,message:`Switched to ${t}. Worker will restart automatically.`}}catch(r){_.error("BRANCH","Branch switch failed",{targetBranch:t},r);try{e.branch&&fI(e.branch)&&Yn(["checkout",e.branch])}catch(n){_.error("BRANCH","Recovery checkout also failed",{originalBranch:e.branch},n)}return{success:!1,error:`Branch switch failed: ${r.message}`}}}async function k8(){let t=Ry();if(!t.isGitRepo||!t.branch)return{success:!1,error:"Cannot pull updates: not a git repository"};try{if(!fI(t.branch))return{success:!1,error:`Invalid current branch name: ${t.branch}`};_.info("BRANCH","Pulling updates",{branch:t.branch}),Yn(["checkout","--","."]),Yn(["fetch","origin"]),Yn(["pull","origin",t.branch]);let e=(0,Iy.join)(hf,".install-version");return(0,Ia.existsSync)(e)&&(0,Ia.unlinkSync)(e),w8(["install"],hI),_.success("BRANCH","Updates pulled",{branch:t.branch}),{success:!0,branch:t.branch,message:`Updated ${t.branch}. Worker will restart automatically.`}}catch(e){return _.error("BRANCH","Pull failed",{},e),{success:!1,error:`Pull failed: ${e.message}`}}}rr();Dr();var Oy=class extends Ur{constructor(r){super();this.settingsManager=r}setupRoutes(r){r.get("/api/settings",this.handleGetSettings.bind(this)),r.post("/api/settings",this.handleUpdateSettings.bind(this)),r.get("/api/mcp/status",this.handleGetMcpStatus.bind(this)),r.post("/api/mcp/toggle",this.handleToggleMcp.bind(this)),r.get("/api/branch/status",this.handleGetBranchStatus.bind(this)),r.post("/api/branch/switch",this.handleSwitchBranch.bind(this)),r.post("/api/branch/update",this.handleUpdateBranch.bind(this))}handleGetSettings=this.wrapHandler((r,n)=>{let i=Ra.default.join((0,gI.homedir)(),".claude-mem","settings.json");this.ensureSettingsFile(i);let s=Se.loadFromFile(i);n.json(s)});handleUpdateSettings=this.wrapHandler((r,n)=>{let i=this.validateSettings(r.body);if(!i.valid){n.status(400).json({success:!1,error:i.error});return}let s=Ra.default.join((0,gI.homedir)(),".claude-mem","settings.json");this.ensureSettingsFile(s);let o={};if((0,$r.existsSync)(s)){let c=(0,$r.readFileSync)(s,"utf-8");try{o=JSON.parse(c)}catch(u){_.error("SETTINGS","Failed to parse settings file",{settingsPath:s},u),n.status(500).json({success:!1,error:"Settings file is corrupted. Delete ~/.claude-mem/settings.json to reset."});return}}let a=["CLAUDE_MEM_MODEL","CLAUDE_MEM_CONTEXT_OBSERVATIONS","CLAUDE_MEM_WORKER_PORT","CLAUDE_MEM_WORKER_HOST","CLAUDE_MEM_PROVIDER","CLAUDE_MEM_GEMINI_API_KEY","CLAUDE_MEM_GEMINI_MODEL","CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED","CLAUDE_MEM_OPENROUTER_API_KEY","CLAUDE_MEM_OPENROUTER_MODEL","CLAUDE_MEM_OPENROUTER_SITE_URL","CLAUDE_MEM_OPENROUTER_APP_NAME","CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES","CLAUDE_MEM_OPENROUTER_MAX_TOKENS","CLAUDE_MEM_DATA_DIR","CLAUDE_MEM_LOG_LEVEL","CLAUDE_MEM_PYTHON_VERSION","CLAUDE_CODE_PATH","CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS","CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS","CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT","CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT","CLAUDE_MEM_CONTEXT_OBSERVATION_TYPES","CLAUDE_MEM_CONTEXT_OBSERVATION_CONCEPTS","CLAUDE_MEM_CONTEXT_FULL_COUNT","CLAUDE_MEM_CONTEXT_FULL_FIELD","CLAUDE_MEM_CONTEXT_SESSION_COUNT","CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY","CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE","CLAUDE_MEM_FOLDER_CLAUDEMD_ENABLED"];for(let c of a)r.body[c]!==void 0&&(o[c]=r.body[c]);(0,$r.writeFileSync)(s,JSON.stringify(o,null,2),"utf-8"),lM(),_.info("WORKER","Settings updated"),n.json({success:!0,message:"Settings updated successfully"})});handleGetMcpStatus=this.wrapHandler((r,n)=>{let i=this.isMcpEnabled();n.json({enabled:i})});handleToggleMcp=this.wrapHandler((r,n)=>{let{enabled:i}=r.body;if(typeof i!="boolean"){this.badRequest(n,"enabled must be a boolean");return}this.toggleMcp(i),n.json({success:!0,enabled:this.isMcpEnabled()})});handleGetBranchStatus=this.wrapHandler((r,n)=>{let i=Ry();n.json(i)});handleSwitchBranch=this.wrapHandler(async(r,n)=>{let{branch:i}=r.body;if(!i){n.status(400).json({success:!1,error:"Missing branch parameter"});return}let s=["main","beta/7.0","feature/bun-executable"];if(!s.includes(i)){n.status(400).json({success:!1,error:`Invalid branch. Allowed: ${s.join(", ")}`});return}_.info("WORKER","Branch switch requested",{branch:i});let o=await E8(i);o.success&&setTimeout(()=>{_.info("WORKER","Restarting worker after branch switch"),process.exit(0)},1e3),n.json(o)});handleUpdateBranch=this.wrapHandler(async(r,n)=>{_.info("WORKER","Branch update requested");let i=await k8();i.success&&setTimeout(()=>{_.info("WORKER","Restarting worker after branch update"),process.exit(0)},1e3),n.json(i)});validateSettings(r){if(r.CLAUDE_MEM_PROVIDER&&!["claude","gemini","openrouter"].includes(r.CLAUDE_MEM_PROVIDER))return{valid:!1,error:'CLAUDE_MEM_PROVIDER must be "claude", "gemini", or "openrouter"'};if(r.CLAUDE_MEM_GEMINI_MODEL&&!["gemini-2.5-flash-lite","gemini-2.5-flash","gemini-3-flash-preview"].includes(r.CLAUDE_MEM_GEMINI_MODEL))return{valid:!1,error:"CLAUDE_MEM_GEMINI_MODEL must be one of: gemini-2.5-flash-lite, gemini-2.5-flash, gemini-3-flash-preview"};if(r.CLAUDE_MEM_CONTEXT_OBSERVATIONS){let i=parseInt(r.CLAUDE_MEM_CONTEXT_OBSERVATIONS,10);if(isNaN(i)||i<1||i>200)return{valid:!1,error:"CLAUDE_MEM_CONTEXT_OBSERVATIONS must be between 1 and 200"}}if(r.CLAUDE_MEM_WORKER_PORT){let i=parseInt(r.CLAUDE_MEM_WORKER_PORT,10);if(isNaN(i)||i<1024||i>65535)return{valid:!1,error:"CLAUDE_MEM_WORKER_PORT must be between 1024 and 65535"}}if(r.CLAUDE_MEM_WORKER_HOST){let i=r.CLAUDE_MEM_WORKER_HOST;if(!/^(127\.0\.0\.1|0\.0\.0\.0|localhost|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})$/.test(i))return{valid:!1,error:"CLAUDE_MEM_WORKER_HOST must be a valid IP address (e.g., 127.0.0.1, 0.0.0.0)"}}if(r.CLAUDE_MEM_LOG_LEVEL&&!["DEBUG","INFO","WARN","ERROR","SILENT"].includes(r.CLAUDE_MEM_LOG_LEVEL.toUpperCase()))return{valid:!1,error:"CLAUDE_MEM_LOG_LEVEL must be one of: DEBUG, INFO, WARN, ERROR, SILENT"};if(r.CLAUDE_MEM_PYTHON_VERSION&&!/^3\.\d{1,2}$/.test(r.CLAUDE_MEM_PYTHON_VERSION))return{valid:!1,error:'CLAUDE_MEM_PYTHON_VERSION must be in format "3.X" or "3.XX" (e.g., "3.13")'};let n=["CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS","CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS","CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT","CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT","CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY","CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE"];for(let i of n)if(r[i]&&!["true","false"].includes(r[i]))return{valid:!1,error:`${i} must be "true" or "false"`};if(r.CLAUDE_MEM_CONTEXT_FULL_COUNT){let i=parseInt(r.CLAUDE_MEM_CONTEXT_FULL_COUNT,10);if(isNaN(i)||i<0||i>20)return{valid:!1,error:"CLAUDE_MEM_CONTEXT_FULL_COUNT must be between 0 and 20"}}if(r.CLAUDE_MEM_CONTEXT_SESSION_COUNT){let i=parseInt(r.CLAUDE_MEM_CONTEXT_SESSION_COUNT,10);if(isNaN(i)||i<1||i>50)return{valid:!1,error:"CLAUDE_MEM_CONTEXT_SESSION_COUNT must be between 1 and 50"}}if(r.CLAUDE_MEM_CONTEXT_FULL_FIELD&&!["narrative","facts"].includes(r.CLAUDE_MEM_CONTEXT_FULL_FIELD))return{valid:!1,error:'CLAUDE_MEM_CONTEXT_FULL_FIELD must be "narrative" or "facts"'};if(r.CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES){let i=parseInt(r.CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES,10);if(isNaN(i)||i<1||i>100)return{valid:!1,error:"CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES must be between 1 and 100"}}if(r.CLAUDE_MEM_OPENROUTER_MAX_TOKENS){let i=parseInt(r.CLAUDE_MEM_OPENROUTER_MAX_TOKENS,10);if(isNaN(i)||i<1e3||i>1e6)return{valid:!1,error:"CLAUDE_MEM_OPENROUTER_MAX_TOKENS must be between 1000 and 1000000"}}if(r.CLAUDE_MEM_OPENROUTER_SITE_URL)try{new URL(r.CLAUDE_MEM_OPENROUTER_SITE_URL)}catch(i){return _.debug("SETTINGS","Invalid URL format",{url:r.CLAUDE_MEM_OPENROUTER_SITE_URL,error:i instanceof Error?i.message:String(i)}),{valid:!1,error:"CLAUDE_MEM_OPENROUTER_SITE_URL must be a valid URL"}}return{valid:!0}}isMcpEnabled(){let r=dn(),n=Ra.default.join(r,"plugin",".mcp.json");return(0,$r.existsSync)(n)}toggleMcp(r){let n=dn(),i=Ra.default.join(n,"plugin",".mcp.json"),s=Ra.default.join(n,"plugin",".mcp.json.disabled");r&&(0,$r.existsSync)(s)?((0,$r.renameSync)(s,i),_.info("WORKER","MCP search server enabled")):!r&&(0,$r.existsSync)(i)?((0,$r.renameSync)(i,s),_.info("WORKER","MCP search server disabled")):_.debug("WORKER","MCP toggle no-op (already in desired state)",{enabled:r})}ensureSettingsFile(r){if(!(0,$r.existsSync)(r)){let n=Se.getAllDefaults(),i=Ra.default.dirname(r);(0,$r.existsSync)(i)||(0,$r.mkdirSync)(i,{recursive:!0}),(0,$r.writeFileSync)(r,JSON.stringify(n,null,2),"utf-8"),_.info("SETTINGS","Created settings file with defaults",{settingsPath:r})}}};var Cn=require("fs"),Cy=require("path");re();rr();function P_e(t,e){let r=(0,Cn.openSync)(t,"r");try{let i=(0,Cn.fstatSync)(r).size;if(i===0)return{lines:"",totalEstimate:0};let s=64*1024,o=10*1024*1024,a=Math.min(s,i),c="",u=0;for(;a<=i&&a<=o;){let m=Math.max(0,i-a),h=i-m,g=Buffer.alloc(h);(0,Cn.readSync)(r,g,0,h,m),c=g.toString("utf-8"),u=0;for(let v=0;v{let i=await this.searchManager.getTimelineByQuery(r.query);n.json(i)});handleSearchHelp=this.wrapHandler((r,n)=>{n.json({title:"Claude-Mem Search API",description:"HTTP API for searching persistent memory",endpoints:[{path:"/api/search/observations",method:"GET",description:"Search observations using full-text search",parameters:{query:"Search query (required)",limit:"Number of results (default: 20)",project:"Filter by project name (optional)"}},{path:"/api/search/sessions",method:"GET",description:"Search session summaries using full-text search",parameters:{query:"Search query (required)",limit:"Number of results (default: 20)"}},{path:"/api/search/prompts",method:"GET",description:"Search user prompts using full-text search",parameters:{query:"Search query (required)",limit:"Number of results (default: 20)",project:"Filter by project name (optional)"}},{path:"/api/search/by-concept",method:"GET",description:"Find observations by concept tag",parameters:{concept:"Concept tag (required): discovery, decision, bugfix, feature, refactor",limit:"Number of results (default: 10)",project:"Filter by project name (optional)"}},{path:"/api/search/by-file",method:"GET",description:"Find observations and sessions by file path",parameters:{filePath:"File path or partial path (required)",limit:"Number of results per type (default: 10)",project:"Filter by project name (optional)"}},{path:"/api/search/by-type",method:"GET",description:"Find observations by type",parameters:{type:"Observation type (required): discovery, decision, bugfix, feature, refactor",limit:"Number of results (default: 10)",project:"Filter by project name (optional)"}},{path:"/api/context/recent",method:"GET",description:"Get recent session context including summaries and observations",parameters:{project:"Project name (default: current directory)",limit:"Number of recent sessions (default: 3)"}},{path:"/api/context/timeline",method:"GET",description:"Get unified timeline around a specific point in time",parameters:{anchor:'Anchor point: observation ID, session ID (e.g., "S123"), or ISO timestamp (required)',depth_before:"Number of records before anchor (default: 10)",depth_after:"Number of records after anchor (default: 10)",project:"Filter by project name (optional)"}},{path:"/api/timeline/by-query",method:"GET",description:"Search for best match, then get timeline around it",parameters:{query:"Search query (required)",mode:'Search mode: "auto", "observations", or "sessions" (default: "auto")',depth_before:"Number of records before match (default: 10)",depth_after:"Number of records after match (default: 10)",project:"Filter by project name (optional)"}},{path:"/api/search/help",method:"GET",description:"Get this help documentation"}],examples:['curl "http://localhost:37777/api/search/observations?query=authentication&limit=5"','curl "http://localhost:37777/api/search/by-type?type=bugfix&limit=10"','curl "http://localhost:37777/api/context/recent?project=claude-mem&limit=3"','curl "http://localhost:37777/api/context/timeline?anchor=123&depth_before=5&depth_after=5"']})})};var Fa=Pe(require("path"),1),Or=require("fs"),rR=require("os");It();re();var eR=require("child_process"),Ua=require("fs"),g_=require("path");re();It();var Yf=vo;function QI(t){return!t||typeof t!="string"?!1:/^[a-zA-Z0-9][a-zA-Z0-9._/-]*$/.test(t)&&!t.includes("..")}var MSe=3e5,tR=6e5;function si(t){let e=(0,eR.spawnSync)("git",t,{cwd:Yf,encoding:"utf-8",timeout:MSe,windowsHide:!0,shell:!1});if(e.error)throw e.error;if(e.status!==0)throw new Error(e.stderr||e.stdout||"Git command failed");return e.stdout.trim()}function QH(t,e=tR){let n=process.platform==="win32"?"npm.cmd":"npm",i=(0,eR.spawnSync)(n,t,{cwd:Yf,encoding:"utf-8",timeout:e,windowsHide:!0,shell:!1});if(i.error)throw i.error;if(i.status!==0)throw new Error(i.stderr||i.stdout||"npm command failed");return i.stdout.trim()}function v_(){let t=(0,g_.join)(Yf,".git");if(!(0,Ua.existsSync)(t))return{branch:null,isBeta:!1,isGitRepo:!1,isDirty:!1,canSwitch:!1,error:"Installed plugin is not a git repository"};try{let e=si(["rev-parse","--abbrev-ref","HEAD"]),n=si(["status","--porcelain"]).length>0,i=e.startsWith("beta");return{branch:e,isBeta:i,isGitRepo:!0,isDirty:n,canSwitch:!0}}catch(e){return _.error("BRANCH","Failed to get branch info",{},e),{branch:null,isBeta:!1,isGitRepo:!0,isDirty:!1,canSwitch:!1,error:e.message}}}async function e5(t){if(!QI(t))return{success:!1,error:`Invalid branch name: ${t}. Branch names must be alphanumeric with hyphens, underscores, slashes, or dots.`};let e=v_();if(!e.isGitRepo)return{success:!1,error:"Installed plugin is not a git repository. Please reinstall."};if(e.branch===t)return{success:!0,branch:t,message:`Already on branch ${t}`};try{_.info("BRANCH","Starting branch switch",{from:e.branch,to:t}),_.debug("BRANCH","Discarding local changes"),si(["checkout","--","."]),si(["clean","-fd"]),_.debug("BRANCH","Fetching from origin"),si(["fetch","origin"]),_.debug("BRANCH","Checking out branch",{branch:t});try{si(["checkout",t])}catch(n){_.debug("BRANCH","Branch not local, tracking remote",{branch:t,error:n instanceof Error?n.message:String(n)}),si(["checkout","-b",t,`origin/${t}`])}_.debug("BRANCH","Pulling latest"),si(["pull","origin",t]);let r=(0,g_.join)(Yf,".install-version");return(0,Ua.existsSync)(r)&&(0,Ua.unlinkSync)(r),_.debug("BRANCH","Running npm install"),QH(["install"],tR),_.success("BRANCH","Branch switch complete",{branch:t}),{success:!0,branch:t,message:`Switched to ${t}. Worker will restart automatically.`}}catch(r){_.error("BRANCH","Branch switch failed",{targetBranch:t},r);try{e.branch&&QI(e.branch)&&si(["checkout",e.branch])}catch(n){_.error("BRANCH","Recovery checkout also failed",{originalBranch:e.branch},n)}return{success:!1,error:`Branch switch failed: ${r.message}`}}}async function t5(){let t=v_();if(!t.isGitRepo||!t.branch)return{success:!1,error:"Cannot pull updates: not a git repository"};try{if(!QI(t.branch))return{success:!1,error:`Invalid current branch name: ${t.branch}`};_.info("BRANCH","Pulling updates",{branch:t.branch}),si(["checkout","--","."]),si(["fetch","origin"]),si(["pull","origin",t.branch]);let e=(0,g_.join)(Yf,".install-version");return(0,Ua.existsSync)(e)&&(0,Ua.unlinkSync)(e),QH(["install"],tR),_.success("BRANCH","Updates pulled",{branch:t.branch}),{success:!0,branch:t.branch,message:`Updated ${t.branch}. Worker will restart automatically.`}}catch(e){return _.error("BRANCH","Pull failed",{},e),{success:!1,error:`Pull failed: ${e.message}`}}}tr();Ir();var y_=class extends Zr{constructor(r){super();this.settingsManager=r}setupRoutes(r){r.get("/api/settings",this.handleGetSettings.bind(this)),r.post("/api/settings",this.handleUpdateSettings.bind(this)),r.get("/api/mcp/status",this.handleGetMcpStatus.bind(this)),r.post("/api/mcp/toggle",this.handleToggleMcp.bind(this)),r.get("/api/branch/status",this.handleGetBranchStatus.bind(this)),r.post("/api/branch/switch",this.handleSwitchBranch.bind(this)),r.post("/api/branch/update",this.handleUpdateBranch.bind(this))}handleGetSettings=this.wrapHandler((r,n)=>{let i=Fa.default.join((0,rR.homedir)(),".claude-mem","settings.json");this.ensureSettingsFile(i);let s=ve.loadFromFile(i);n.json(s)});handleUpdateSettings=this.wrapHandler((r,n)=>{let i=this.validateSettings(r.body);if(!i.valid){n.status(400).json({success:!1,error:i.error});return}let s=Fa.default.join((0,rR.homedir)(),".claude-mem","settings.json");this.ensureSettingsFile(s);let o={};if((0,Or.existsSync)(s)){let c=(0,Or.readFileSync)(s,"utf-8");try{o=JSON.parse(c)}catch(u){_.error("SETTINGS","Failed to parse settings file",{settingsPath:s},u),n.status(500).json({success:!1,error:"Settings file is corrupted. Delete ~/.claude-mem/settings.json to reset."});return}}let a=["CLAUDE_MEM_MODEL","CLAUDE_MEM_CONTEXT_OBSERVATIONS","CLAUDE_MEM_WORKER_PORT","CLAUDE_MEM_WORKER_HOST","CLAUDE_MEM_PROVIDER","CLAUDE_MEM_GEMINI_API_KEY","CLAUDE_MEM_GEMINI_MODEL","CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED","CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES","CLAUDE_MEM_GEMINI_MAX_TOKENS","CLAUDE_MEM_OPENROUTER_API_KEY","CLAUDE_MEM_OPENROUTER_MODEL","CLAUDE_MEM_OPENROUTER_SITE_URL","CLAUDE_MEM_OPENROUTER_APP_NAME","CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES","CLAUDE_MEM_OPENROUTER_MAX_TOKENS","CLAUDE_MEM_DATA_DIR","CLAUDE_MEM_LOG_LEVEL","CLAUDE_MEM_PYTHON_VERSION","CLAUDE_CODE_PATH","CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS","CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS","CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT","CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT","CLAUDE_MEM_CONTEXT_OBSERVATION_TYPES","CLAUDE_MEM_CONTEXT_OBSERVATION_CONCEPTS","CLAUDE_MEM_CONTEXT_FULL_COUNT","CLAUDE_MEM_CONTEXT_FULL_FIELD","CLAUDE_MEM_CONTEXT_SESSION_COUNT","CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY","CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE","CLAUDE_MEM_FOLDER_CLAUDEMD_ENABLED"];for(let c of a)r.body[c]!==void 0&&(o[c]=r.body[c]);(0,Or.writeFileSync)(s,JSON.stringify(o,null,2),"utf-8"),NM(),_.info("WORKER","Settings updated"),n.json({success:!0,message:"Settings updated successfully"})});handleGetMcpStatus=this.wrapHandler((r,n)=>{let i=this.isMcpEnabled();n.json({enabled:i})});handleToggleMcp=this.wrapHandler((r,n)=>{let{enabled:i}=r.body;if(typeof i!="boolean"){this.badRequest(n,"enabled must be a boolean");return}this.toggleMcp(i),n.json({success:!0,enabled:this.isMcpEnabled()})});handleGetBranchStatus=this.wrapHandler((r,n)=>{let i=v_();n.json(i)});handleSwitchBranch=this.wrapHandler(async(r,n)=>{let{branch:i}=r.body;if(!i){n.status(400).json({success:!1,error:"Missing branch parameter"});return}let s=["main","beta/7.0","feature/bun-executable"];if(!s.includes(i)){n.status(400).json({success:!1,error:`Invalid branch. Allowed: ${s.join(", ")}`});return}_.info("WORKER","Branch switch requested",{branch:i});let o=await e5(i);o.success&&setTimeout(()=>{_.info("WORKER","Restarting worker after branch switch"),process.exit(0)},1e3),n.json(o)});handleUpdateBranch=this.wrapHandler(async(r,n)=>{_.info("WORKER","Branch update requested");let i=await t5();i.success&&setTimeout(()=>{_.info("WORKER","Restarting worker after branch update"),process.exit(0)},1e3),n.json(i)});validateSettings(r){if(r.CLAUDE_MEM_PROVIDER&&!["claude","gemini","openrouter"].includes(r.CLAUDE_MEM_PROVIDER))return{valid:!1,error:'CLAUDE_MEM_PROVIDER must be "claude", "gemini", or "openrouter"'};if(r.CLAUDE_MEM_GEMINI_MODEL&&!["gemini-2.5-flash-lite","gemini-2.5-flash","gemini-3-flash-preview"].includes(r.CLAUDE_MEM_GEMINI_MODEL))return{valid:!1,error:"CLAUDE_MEM_GEMINI_MODEL must be one of: gemini-2.5-flash-lite, gemini-2.5-flash, gemini-3-flash-preview"};if(r.CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES){let i=parseInt(r.CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES,10);if(isNaN(i)||i<1||i>100)return{valid:!1,error:"CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES must be between 1 and 100"}}if(r.CLAUDE_MEM_GEMINI_MAX_TOKENS){let i=parseInt(r.CLAUDE_MEM_GEMINI_MAX_TOKENS,10);if(isNaN(i)||i<1e3||i>1e6)return{valid:!1,error:"CLAUDE_MEM_GEMINI_MAX_TOKENS must be between 1000 and 1000000"}}if(r.CLAUDE_MEM_CONTEXT_OBSERVATIONS){let i=parseInt(r.CLAUDE_MEM_CONTEXT_OBSERVATIONS,10);if(isNaN(i)||i<1||i>200)return{valid:!1,error:"CLAUDE_MEM_CONTEXT_OBSERVATIONS must be between 1 and 200"}}if(r.CLAUDE_MEM_WORKER_PORT){let i=parseInt(r.CLAUDE_MEM_WORKER_PORT,10);if(isNaN(i)||i<1024||i>65535)return{valid:!1,error:"CLAUDE_MEM_WORKER_PORT must be between 1024 and 65535"}}if(r.CLAUDE_MEM_WORKER_HOST){let i=r.CLAUDE_MEM_WORKER_HOST;if(!/^(127\.0\.0\.1|0\.0\.0\.0|localhost|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})$/.test(i))return{valid:!1,error:"CLAUDE_MEM_WORKER_HOST must be a valid IP address (e.g., 127.0.0.1, 0.0.0.0)"}}if(r.CLAUDE_MEM_LOG_LEVEL&&!["DEBUG","INFO","WARN","ERROR","SILENT"].includes(r.CLAUDE_MEM_LOG_LEVEL.toUpperCase()))return{valid:!1,error:"CLAUDE_MEM_LOG_LEVEL must be one of: DEBUG, INFO, WARN, ERROR, SILENT"};if(r.CLAUDE_MEM_PYTHON_VERSION&&!/^3\.\d{1,2}$/.test(r.CLAUDE_MEM_PYTHON_VERSION))return{valid:!1,error:'CLAUDE_MEM_PYTHON_VERSION must be in format "3.X" or "3.XX" (e.g., "3.13")'};let n=["CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS","CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS","CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT","CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT","CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY","CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE"];for(let i of n)if(r[i]&&!["true","false"].includes(r[i]))return{valid:!1,error:`${i} must be "true" or "false"`};if(r.CLAUDE_MEM_CONTEXT_FULL_COUNT){let i=parseInt(r.CLAUDE_MEM_CONTEXT_FULL_COUNT,10);if(isNaN(i)||i<0||i>20)return{valid:!1,error:"CLAUDE_MEM_CONTEXT_FULL_COUNT must be between 0 and 20"}}if(r.CLAUDE_MEM_CONTEXT_SESSION_COUNT){let i=parseInt(r.CLAUDE_MEM_CONTEXT_SESSION_COUNT,10);if(isNaN(i)||i<1||i>50)return{valid:!1,error:"CLAUDE_MEM_CONTEXT_SESSION_COUNT must be between 1 and 50"}}if(r.CLAUDE_MEM_CONTEXT_FULL_FIELD&&!["narrative","facts"].includes(r.CLAUDE_MEM_CONTEXT_FULL_FIELD))return{valid:!1,error:'CLAUDE_MEM_CONTEXT_FULL_FIELD must be "narrative" or "facts"'};if(r.CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES){let i=parseInt(r.CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES,10);if(isNaN(i)||i<1||i>100)return{valid:!1,error:"CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES must be between 1 and 100"}}if(r.CLAUDE_MEM_OPENROUTER_MAX_TOKENS){let i=parseInt(r.CLAUDE_MEM_OPENROUTER_MAX_TOKENS,10);if(isNaN(i)||i<1e3||i>1e6)return{valid:!1,error:"CLAUDE_MEM_OPENROUTER_MAX_TOKENS must be between 1000 and 1000000"}}if(r.CLAUDE_MEM_OPENROUTER_SITE_URL)try{new URL(r.CLAUDE_MEM_OPENROUTER_SITE_URL)}catch(i){return _.debug("SETTINGS","Invalid URL format",{url:r.CLAUDE_MEM_OPENROUTER_SITE_URL,error:i instanceof Error?i.message:String(i)}),{valid:!1,error:"CLAUDE_MEM_OPENROUTER_SITE_URL must be a valid URL"}}return{valid:!0}}isMcpEnabled(){let r=fn(),n=Fa.default.join(r,"plugin",".mcp.json");return(0,Or.existsSync)(n)}toggleMcp(r){let n=fn(),i=Fa.default.join(n,"plugin",".mcp.json"),s=Fa.default.join(n,"plugin",".mcp.json.disabled");r&&(0,Or.existsSync)(s)?((0,Or.renameSync)(s,i),_.info("WORKER","MCP search server enabled")):!r&&(0,Or.existsSync)(i)?((0,Or.renameSync)(i,s),_.info("WORKER","MCP search server disabled")):_.debug("WORKER","MCP toggle no-op (already in desired state)",{enabled:r})}ensureSettingsFile(r){if(!(0,Or.existsSync)(r)){let n=ve.getAllDefaults(),i=Fa.default.dirname(r);(0,Or.existsSync)(i)||(0,Or.mkdirSync)(i,{recursive:!0}),(0,Or.writeFileSync)(r,JSON.stringify(n,null,2),"utf-8"),_.info("SETTINGS","Created settings file with defaults",{settingsPath:r})}}};var jn=require("fs"),__=require("path");re();tr();function DSe(t,e){let r=(0,jn.openSync)(t,"r");try{let i=(0,jn.fstatSync)(r).size;if(i===0)return{lines:"",totalEstimate:0};let s=64*1024,o=10*1024*1024,a=Math.min(s,i),c="",u=0;for(;a<=i&&a<=o;){let m=Math.max(0,i-a),h=i-m,g=Buffer.alloc(h);(0,jn.readSync)(r,g,0,h,m),c=g.toString("utf-8"),u=0;for(let v=0;v=e||m===0)break;a=Math.min(a*2,i,o)}let l=c.split(` `);l.length>0&&l[l.length-1]===""&&l.pop();let d=Math.max(0,l.length-e),p=l.slice(d),f;if(i<=a)f=l.length;else{let m=c.length/Math.max(u,1);f=Math.round(i/m)}return{lines:p.join(` -`),totalEstimate:f}}finally{(0,Cn.closeSync)(r)}}var Py=class extends Ur{getLogFilePath(){let e=Se.get("CLAUDE_MEM_DATA_DIR"),r=(0,Cy.join)(e,"logs"),n=new Date().toISOString().split("T")[0];return(0,Cy.join)(r,`claude-mem-${n}.log`)}getLogsDir(){let e=Se.get("CLAUDE_MEM_DATA_DIR");return(0,Cy.join)(e,"logs")}setupRoutes(e){e.get("/api/logs",this.handleGetLogs.bind(this)),e.post("/api/logs/clear",this.handleClearLogs.bind(this))}handleGetLogs=this.wrapHandler((e,r)=>{let n=this.getLogFilePath();if(!(0,Cn.existsSync)(n)){r.json({logs:"",path:n,exists:!1});return}let i=parseInt(e.query.lines||"1000",10),s=Math.min(i,1e4),{lines:o,totalEstimate:a}=P_e(n,s),c=o===""?0:o.split(` -`).length;r.json({logs:o,path:n,exists:!0,totalLines:a,returnedLines:c})});handleClearLogs=this.wrapHandler((e,r)=>{let n=this.getLogFilePath();if(!(0,Cn.existsSync)(n)){r.json({success:!0,message:"Log file does not exist",path:n});return}(0,Cn.writeFileSync)(n,"","utf-8"),_.info("SYSTEM","Log file cleared via UI",{path:n}),r.json({success:!0,message:"Log file cleared",path:n})})};re();var Ay=class extends Ur{constructor(r,n){super();this.dbManager=r;this.defaultProject=n}setupRoutes(r){r.post("/api/memory/save",this.handleSaveMemory.bind(this))}handleSaveMemory=this.wrapHandler(async(r,n)=>{let{text:i,title:s,project:o}=r.body,a=o||this.defaultProject;if(!i||typeof i!="string"||i.trim().length===0){this.badRequest(n,"text is required and must be non-empty");return}let c=this.dbManager.getSessionStore(),u=this.dbManager.getChromaSync(),l=c.getOrCreateManualSession(a),d={type:"discovery",title:s||i.substring(0,60).trim()+(i.length>60?"...":""),subtitle:"Manual memory",facts:[],narrative:i,concepts:[],files_read:[],files_modified:[]},p=c.storeObservation(l,a,d,0,0);_.info("HTTP","Manual observation saved",{id:p.id,project:a,title:d.title}),u.syncObservation(p.id,l,a,d,0,p.createdAtEpoch,0).catch(f=>{_.error("CHROMA","ChromaDB sync failed",{id:p.id},f)}),n.json({success:!0,id:p.id,title:d.title,project:a,message:`Memory saved as observation #${p.id}`})})};var Ri=require("fs"),u_=require("path");var vI=(t,e,r)=>{let n=t instanceof RegExp?T8(t,r):t,i=e instanceof RegExp?T8(e,r):e,s=n!==null&&i!=null&&A_e(n,i,r);return s&&{start:s[0],end:s[1],pre:r.slice(0,s[0]),body:r.slice(s[0]+n.length,s[1]),post:r.slice(s[1]+i.length)}},T8=(t,e)=>{let r=e.match(t);return r?r[0]:null},A_e=(t,e,r)=>{let n,i,s,o,a,c=r.indexOf(t),u=r.indexOf(e,c+1),l=c;if(c>=0&&u>0){if(t===e)return[c,u];for(n=[],s=r.length;l>=0&&!a;){if(l===c)n.push(l),c=r.indexOf(t,l+1);else if(n.length===1){let d=n.pop();d!==void 0&&(a=[d,u])}else i=n.pop(),i!==void 0&&i=0?c:u}n.length&&o!==void 0&&(a=[s,o])}return a};var $8="\0SLASH"+Math.random()+"\0",I8="\0OPEN"+Math.random()+"\0",_I="\0CLOSE"+Math.random()+"\0",R8="\0COMMA"+Math.random()+"\0",O8="\0PERIOD"+Math.random()+"\0",N_e=new RegExp($8,"g"),M_e=new RegExp(I8,"g"),D_e=new RegExp(_I,"g"),j_e=new RegExp(R8,"g"),z_e=new RegExp(O8,"g"),L_e=/\\\\/g,U_e=/\\{/g,F_e=/\\}/g,q_e=/\\,/g,H_e=/\\./g;function yI(t){return isNaN(t)?t.charCodeAt(0):parseInt(t,10)}function Z_e(t){return t.replace(L_e,$8).replace(U_e,I8).replace(F_e,_I).replace(q_e,R8).replace(H_e,O8)}function B_e(t){return t.replace(N_e,"\\").replace(M_e,"{").replace(D_e,"}").replace(j_e,",").replace(z_e,".")}function C8(t){if(!t)return[""];let e=[],r=vI("{","}",t);if(!r)return t.split(",");let{pre:n,body:i,post:s}=r,o=n.split(",");o[o.length-1]+="{"+i+"}";let a=C8(s);return s.length&&(o[o.length-1]+=a.shift(),o.push.apply(o,a)),e.push.apply(e,o),e}function P8(t){return t?(t.slice(0,2)==="{}"&&(t="\\{\\}"+t.slice(2)),gf(Z_e(t),!0).map(B_e)):[]}function G_e(t){return"{"+t+"}"}function W_e(t){return/^-?0\d/.test(t)}function V_e(t,e){return t<=e}function K_e(t,e){return t>=e}function gf(t,e){let r=[],n=vI("{","}",t);if(!n)return[t];let i=n.pre,s=n.post.length?gf(n.post,!1):[""];if(/\$$/.test(n.pre))for(let o=0;o=0;if(!c&&!u)return n.post.match(/,(?!,).*\}/)?(t=n.pre+"{"+n.body+_I+n.post,gf(t)):[t];let l;if(c)l=n.body.split(/\.\./);else if(l=C8(n.body),l.length===1&&l[0]!==void 0&&(l=gf(l[0],!1).map(G_e),l.length===1))return s.map(p=>n.pre+l[0]+p);let d;if(c&&l[0]!==void 0&&l[1]!==void 0){let p=yI(l[0]),f=yI(l[1]),m=Math.max(l[0].length,l[1].length),h=l.length===3&&l[2]!==void 0?Math.abs(yI(l[2])):1,g=V_e;f0){let w=new Array(x+1).join("0");b<0?y="-"+w+y.slice(1):y=w+y}}d.push(y)}}else{d=[];for(let p=0;p{if(typeof t!="string")throw new TypeError("invalid pattern");if(t.length>65536)throw new TypeError("pattern is too long")};var J_e={"[:alnum:]":["\\p{L}\\p{Nl}\\p{Nd}",!0],"[:alpha:]":["\\p{L}\\p{Nl}",!0],"[:ascii:]":["\\x00-\\x7f",!1],"[:blank:]":["\\p{Zs}\\t",!0],"[:cntrl:]":["\\p{Cc}",!0],"[:digit:]":["\\p{Nd}",!0],"[:graph:]":["\\p{Z}\\p{C}",!0,!0],"[:lower:]":["\\p{Ll}",!0],"[:print:]":["\\p{C}",!0],"[:punct:]":["\\p{P}",!0],"[:space:]":["\\p{Z}\\t\\r\\n\\v\\f",!0],"[:upper:]":["\\p{Lu}",!0],"[:word:]":["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}",!0],"[:xdigit:]":["A-Fa-f0-9",!1]},yf=t=>t.replace(/[[\]\\-]/g,"\\$&"),X_e=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),A8=t=>t.join(""),N8=(t,e)=>{let r=e;if(t.charAt(r)!=="[")throw new Error("not in a brace expression");let n=[],i=[],s=r+1,o=!1,a=!1,c=!1,u=!1,l=r,d="";e:for(;sd?n.push(yf(d)+"-"+yf(h)):h===d&&n.push(yf(h)),d="",s++;continue}if(t.startsWith("-]",s+1)){n.push(yf(h+"-")),s+=2;continue}if(t.startsWith("-",s+1)){d=h,s+=2;continue}n.push(yf(h)),s++}if(lr?e?t.replace(/\[([^\/\\])\]/g,"$1"):t.replace(/((?!\\).|^)\[([^\/\\])\]/g,"$1$2").replace(/\\([^\/])/g,"$1"):e?t.replace(/\[([^\/\\{}])\]/g,"$1"):t.replace(/((?!\\).|^)\[([^\/\\{}])\]/g,"$1$2").replace(/\\([^\/{}])/g,"$1");var Y_e=new Set(["!","?","+","*","@"]),M8=t=>Y_e.has(t),Q_e="(?!(?:^|/)\\.\\.?(?:$|/))",Ny="(?!\\.)",ebe=new Set(["[","."]),tbe=new Set(["..","."]),rbe=new Set("().*{}+?[]^$\\!"),nbe=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),bI="[^/]",D8=bI+"*?",j8=bI+"+?",Uu=class t{type;#e;#r;#s=!1;#i=[];#o;#b;#v;#l=!1;#a;#p;#d=!1;constructor(e,r,n={}){this.type=e,e&&(this.#r=!0),this.#o=r,this.#e=this.#o?this.#o.#e:this,this.#a=this.#e===this?n:this.#e.#a,this.#v=this.#e===this?[]:this.#e.#v,e==="!"&&!this.#e.#l&&this.#v.push(this),this.#b=this.#o?this.#o.#i.length:0}get hasMagic(){if(this.#r!==void 0)return this.#r;for(let e of this.#i)if(typeof e!="string"&&(e.type||e.hasMagic))return this.#r=!0;return this.#r}toString(){return this.#p!==void 0?this.#p:this.type?this.#p=this.type+"("+this.#i.map(e=>String(e)).join("|")+")":this.#p=this.#i.map(e=>String(e)).join("")}#c(){if(this!==this.#e)throw new Error("should only call on root");if(this.#l)return this;this.toString(),this.#l=!0;let e;for(;e=this.#v.pop();){if(e.type!=="!")continue;let r=e,n=r.#o;for(;n;){for(let i=r.#b+1;!n.type&&itypeof r=="string"?r:r.toJSON()):[this.type,...this.#i.map(r=>r.toJSON())];return this.isStart()&&!this.type&&e.unshift([]),this.isEnd()&&(this===this.#e||this.#e.#l&&this.#o?.type==="!")&&e.push({}),e}isStart(){if(this.#e===this)return!0;if(!this.#o?.isStart())return!1;if(this.#b===0)return!0;let e=this.#o;for(let r=0;rtypeof f!="string"),u=this.#i.map(f=>{let[m,h,g,v]=typeof f=="string"?t.#S(f,this.#r,c):f.toRegExpSource(e);return this.#r=this.#r||g,this.#s=this.#s||v,m}).join(""),l="";if(this.isStart()&&typeof this.#i[0]=="string"&&!(this.#i.length===1&&tbe.has(this.#i[0]))){let m=ebe,h=r&&m.has(u.charAt(0))||u.startsWith("\\.")&&m.has(u.charAt(2))||u.startsWith("\\.\\.")&&m.has(u.charAt(4)),g=!r&&!e&&m.has(u.charAt(0));l=h?Q_e:g?Ny:""}let d="";return this.isEnd()&&this.#e.#l&&this.#o?.type==="!"&&(d="(?:$|\\/)"),[l+u+d,Ei(u),this.#r=!!this.#r,this.#s]}let n=this.type==="*"||this.type==="+",i=this.type==="!"?"(?:(?!(?:":"(?:",s=this.#f(r);if(this.isStart()&&this.isEnd()&&!s&&this.type!=="!"){let c=this.toString();return this.#i=[c],this.type=null,this.#r=void 0,[c,Ei(this.toString()),!1,!1]}let o=!n||e||r||!Ny?"":this.#f(!0);o===s&&(o=""),o&&(s=`(?:${s})(?:${o})*?`);let a="";if(this.type==="!"&&this.#d)a=(this.isStart()&&!r?Ny:"")+j8;else{let c=this.type==="!"?"))"+(this.isStart()&&!r&&!e?Ny:"")+D8+")":this.type==="@"?")":this.type==="?"?")?":this.type==="+"&&o?")":this.type==="*"&&o?")?":`)${this.type}`;a=i+s+c}return[a,Ei(s),this.#r=!!this.#r,this.#s]}#f(e){return this.#i.map(r=>{if(typeof r=="string")throw new Error("string type in extglob ast??");let[n,i,s,o]=r.toRegExpSource(e);return this.#s=this.#s||o,n}).filter(r=>!(this.isStart()&&this.isEnd())||!!r).join("|")}static#S(e,r,n=!1){let i=!1,s="",o=!1;for(let a=0;ar?e?t.replace(/[?*()[\]{}]/g,"[$&]"):t.replace(/[?*()[\]\\{}]/g,"\\$&"):e?t.replace(/[?*()[\]]/g,"[$&]"):t.replace(/[?*()[\]\\]/g,"\\$&");var tn=(t,e,r={})=>(vf(e),!r.nocomment&&e.charAt(0)==="#"?!1:new Pn(e,r).match(t)),ibe=/^\*+([^+@!?\*\[\(]*)$/,sbe=t=>e=>!e.startsWith(".")&&e.endsWith(t),obe=t=>e=>e.endsWith(t),abe=t=>(t=t.toLowerCase(),e=>!e.startsWith(".")&&e.toLowerCase().endsWith(t)),cbe=t=>(t=t.toLowerCase(),e=>e.toLowerCase().endsWith(t)),ube=/^\*+\.\*+$/,lbe=t=>!t.startsWith(".")&&t.includes("."),dbe=t=>t!=="."&&t!==".."&&t.includes("."),pbe=/^\.\*+$/,fbe=t=>t!=="."&&t!==".."&&t.startsWith("."),mbe=/^\*+$/,hbe=t=>t.length!==0&&!t.startsWith("."),gbe=t=>t.length!==0&&t!=="."&&t!=="..",vbe=/^\?+([^+@!?\*\[\(]*)?$/,ybe=([t,e=""])=>{let r=U8([t]);return e?(e=e.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(e)):r},_be=([t,e=""])=>{let r=F8([t]);return e?(e=e.toLowerCase(),n=>r(n)&&n.toLowerCase().endsWith(e)):r},bbe=([t,e=""])=>{let r=F8([t]);return e?n=>r(n)&&n.endsWith(e):r},Sbe=([t,e=""])=>{let r=U8([t]);return e?n=>r(n)&&n.endsWith(e):r},U8=([t])=>{let e=t.length;return r=>r.length===e&&!r.startsWith(".")},F8=([t])=>{let e=t.length;return r=>r.length===e&&r!=="."&&r!==".."},q8=typeof process=="object"&&process?typeof process.env=="object"&&process.env&&process.env.__MINIMATCH_TESTING_PLATFORM__||process.platform:"posix",z8={win32:{sep:"\\"},posix:{sep:"/"}},xbe=q8==="win32"?z8.win32.sep:z8.posix.sep;tn.sep=xbe;var Ir=Symbol("globstar **");tn.GLOBSTAR=Ir;var wbe="[^/]",Ebe=wbe+"*?",kbe="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",Tbe="(?:(?!(?:\\/|^)\\.).)*?",$be=(t,e={})=>r=>tn(r,t,e);tn.filter=$be;var Qn=(t,e={})=>Object.assign({},t,e),Ibe=t=>{if(!t||typeof t!="object"||!Object.keys(t).length)return tn;let e=tn;return Object.assign((n,i,s={})=>e(n,i,Qn(t,s)),{Minimatch:class extends e.Minimatch{constructor(i,s={}){super(i,Qn(t,s))}static defaults(i){return e.defaults(Qn(t,i)).Minimatch}},AST:class extends e.AST{constructor(i,s,o={}){super(i,s,Qn(t,o))}static fromGlob(i,s={}){return e.AST.fromGlob(i,Qn(t,s))}},unescape:(n,i={})=>e.unescape(n,Qn(t,i)),escape:(n,i={})=>e.escape(n,Qn(t,i)),filter:(n,i={})=>e.filter(n,Qn(t,i)),defaults:n=>e.defaults(Qn(t,n)),makeRe:(n,i={})=>e.makeRe(n,Qn(t,i)),braceExpand:(n,i={})=>e.braceExpand(n,Qn(t,i)),match:(n,i,s={})=>e.match(n,i,Qn(t,s)),sep:e.sep,GLOBSTAR:Ir})};tn.defaults=Ibe;var H8=(t,e={})=>(vf(t),e.nobrace||!/\{(?:(?!\{).)*\}/.test(t)?[t]:P8(t));tn.braceExpand=H8;var Rbe=(t,e={})=>new Pn(t,e).makeRe();tn.makeRe=Rbe;var Obe=(t,e,r={})=>{let n=new Pn(e,r);return t=t.filter(i=>n.match(i)),n.options.nonull&&!t.length&&t.push(e),t};tn.match=Obe;var L8=/[?*]|[+@!]\(.*?\)|\[|\]/,Cbe=t=>t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),Pn=class{options;set;pattern;windowsPathsNoEscape;nonegate;negate;comment;empty;preserveMultipleSlashes;partial;globSet;globParts;nocase;isWindows;platform;windowsNoMagicRoot;regexp;constructor(e,r={}){vf(e),r=r||{},this.options=r,this.pattern=e,this.platform=r.platform||q8,this.isWindows=this.platform==="win32",this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.preserveMultipleSlashes=!!r.preserveMultipleSlashes,this.regexp=null,this.negate=!1,this.nonegate=!!r.nonegate,this.comment=!1,this.empty=!1,this.partial=!!r.partial,this.nocase=!!this.options.nocase,this.windowsNoMagicRoot=r.windowsNoMagicRoot!==void 0?r.windowsNoMagicRoot:!!(this.isWindows&&this.nocase),this.globSet=[],this.globParts=[],this.set=[],this.make()}hasMagic(){if(this.options.magicalBraces&&this.set.length>1)return!0;for(let e of this.set)for(let r of e)if(typeof r!="string")return!0;return!1}debug(...e){}make(){let e=this.pattern,r=this.options;if(!r.nocomment&&e.charAt(0)==="#"){this.comment=!0;return}if(!e){this.empty=!0;return}this.parseNegate(),this.globSet=[...new Set(this.braceExpand())],r.debug&&(this.debug=(...s)=>console.error(...s)),this.debug(this.pattern,this.globSet);let n=this.globSet.map(s=>this.slashSplit(s));this.globParts=this.preprocess(n),this.debug(this.pattern,this.globParts);let i=this.globParts.map((s,o,a)=>{if(this.isWindows&&this.windowsNoMagicRoot){let c=s[0]===""&&s[1]===""&&(s[2]==="?"||!L8.test(s[2]))&&!L8.test(s[3]),u=/^[a-z]:/i.test(s[0]);if(c)return[...s.slice(0,4),...s.slice(4).map(l=>this.parse(l))];if(u)return[s[0],...s.slice(1).map(l=>this.parse(l))]}return s.map(c=>this.parse(c))});if(this.debug(this.pattern,i),this.set=i.filter(s=>s.indexOf(!1)===-1),this.isWindows)for(let s=0;s=2?(e=this.firstPhasePreProcess(e),e=this.secondPhasePreProcess(e)):r>=1?e=this.levelOneOptimize(e):e=this.adjascentGlobstarOptimize(e),e}adjascentGlobstarOptimize(e){return e.map(r=>{let n=-1;for(;(n=r.indexOf("**",n+1))!==-1;){let i=n;for(;r[i+1]==="**";)i++;i!==n&&r.splice(n,i-n)}return r})}levelOneOptimize(e){return e.map(r=>(r=r.reduce((n,i)=>{let s=n[n.length-1];return i==="**"&&s==="**"?n:i===".."&&s&&s!==".."&&s!=="."&&s!=="**"?(n.pop(),n):(n.push(i),n)},[]),r.length===0?[""]:r))}levelTwoFileOptimize(e){Array.isArray(e)||(e=this.slashSplit(e));let r=!1;do{if(r=!1,!this.preserveMultipleSlashes){for(let i=1;ii&&n.splice(i+1,o-i);let a=n[i+1],c=n[i+2],u=n[i+3];if(a!==".."||!c||c==="."||c===".."||!u||u==="."||u==="..")continue;r=!0,n.splice(i,1);let l=n.slice(0);l[i]="**",e.push(l),i--}if(!this.preserveMultipleSlashes){for(let o=1;or.length)}partsMatch(e,r,n=!1){let i=0,s=0,o=[],a="";for(;ib?r=r.slice(y):b>y&&(e=e.slice(b)))}}let{optimizationLevel:s=1}=this.options;s>=2&&(e=this.levelTwoFileOptimize(e)),this.debug("matchOne",this,{file:e,pattern:r}),this.debug("matchOne",e.length,r.length);for(var o=0,a=0,c=e.length,u=r.length;o>> no match, partial?`,e,p,r,f),p===c))}let h;if(typeof l=="string"?(h=d===l,this.debug("string match",l,d,h)):(h=l.test(d),this.debug("pattern match",l,d,h)),!h)return!1}if(o===c&&a===u)return!0;if(o===c)return n;if(a===u)return o===c-1&&e[o]==="";throw new Error("wtf?")}braceExpand(){return H8(this.pattern,this.options)}parse(e){vf(e);let r=this.options;if(e==="**")return Ir;if(e==="")return"";let n,i=null;(n=e.match(mbe))?i=r.dot?gbe:hbe:(n=e.match(ibe))?i=(r.nocase?r.dot?cbe:abe:r.dot?obe:sbe)(n[1]):(n=e.match(vbe))?i=(r.nocase?r.dot?_be:ybe:r.dot?bbe:Sbe)(n):(n=e.match(ube))?i=r.dot?dbe:lbe:(n=e.match(pbe))&&(i=fbe);let s=Uu.fromGlob(e,this.options).toMMPattern();return i&&typeof s=="object"&&Reflect.defineProperty(s,"test",{value:i}),s}makeRe(){if(this.regexp||this.regexp===!1)return this.regexp;let e=this.set;if(!e.length)return this.regexp=!1,this.regexp;let r=this.options,n=r.noglobstar?Ebe:r.dot?kbe:Tbe,i=new Set(r.nocase?["i"]:[]),s=e.map(c=>{let u=c.map(d=>{if(d instanceof RegExp)for(let p of d.flags.split(""))i.add(p);return typeof d=="string"?Cbe(d):d===Ir?Ir:d._src});u.forEach((d,p)=>{let f=u[p+1],m=u[p-1];d!==Ir||m===Ir||(m===void 0?f!==void 0&&f!==Ir?u[p+1]="(?:\\/|"+n+"\\/)?"+f:u[p]=n:f===void 0?u[p-1]=m+"(?:\\/|\\/"+n+")?":f!==Ir&&(u[p-1]=m+"(?:\\/|\\/"+n+"\\/)"+f,u[p+1]=Ir))});let l=u.filter(d=>d!==Ir);if(this.partial&&l.length>=1){let d=[];for(let p=1;p<=l.length;p++)d.push(l.slice(0,p).join("/"));return"(?:"+d.join("|")+")"}return l.join("/")}).join("|"),[o,a]=e.length>1?["(?:",")"]:["",""];s="^"+o+s+a+"$",this.partial&&(s="^(?:\\/|"+o+s.slice(1,-1)+a+")$"),this.negate&&(s="^(?!"+s+").+$");try{this.regexp=new RegExp(s,[...i].join(""))}catch{this.regexp=!1}return this.regexp}slashSplit(e){return this.preserveMultipleSlashes?e.split("/"):this.isWindows&&/^\/\/[^\/]+/.test(e)?["",...e.split(/\/+/)]:e.split(/\/+/)}match(e,r=this.partial){if(this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return e==="";if(e==="/"&&r)return!0;let n=this.options;this.isWindows&&(e=e.split("\\").join("/"));let i=this.slashSplit(e);this.debug(this.pattern,"split",i);let s=this.set;this.debug(this.pattern,"set",s);let o=i[i.length-1];if(!o)for(let a=i.length-2;!o&&a>=0;a--)o=i[a];for(let a=0;a{typeof SI.emitWarning=="function"?SI.emitWarning(t,e,r,n):console.error(`[${r}] ${e}: ${t}`)},My=globalThis.AbortController,Z8=globalThis.AbortSignal;if(typeof My>"u"){Z8=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(n,i){this._onabort.push(i)}},My=class{constructor(){e()}signal=new Z8;abort(n){if(!this.signal.aborted){this.signal.reason=n,this.signal.aborted=!0;for(let i of this.signal._onabort)i(n);this.signal.onabort?.(n)}}};let t=SI.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",e=()=>{t&&(t=!1,G8("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",e))}}var Abe=t=>!B8.has(t);var Eo=t=>t&&t===Math.floor(t)&&t>0&&isFinite(t),W8=t=>Eo(t)?t<=Math.pow(2,8)?Uint8Array:t<=Math.pow(2,16)?Uint16Array:t<=Math.pow(2,32)?Uint32Array:t<=Number.MAX_SAFE_INTEGER?qu:null:null,qu=class extends Array{constructor(e){super(e),this.fill(0)}},xI=class t{heap;length;static#e=!1;static create(e){let r=W8(e);if(!r)return[];t.#e=!0;let n=new t(e,r);return t.#e=!1,n}constructor(e,r){if(!t.#e)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new r(e),this.length=0}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}},Oa=class t{#e;#r;#s;#i;#o;#b;#v;#l;get perf(){return this.#l}ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#a;#p;#d;#c;#n;#f;#S;#_;#m;#I;#h;#E;#k;#g;#y;#x;#T;#t;#N;static unsafeExposeInternals(e){return{starts:e.#k,ttls:e.#g,autopurgeTimers:e.#y,sizes:e.#E,keyMap:e.#d,keyList:e.#c,valList:e.#n,next:e.#f,prev:e.#S,get head(){return e.#_},get tail(){return e.#m},free:e.#I,isBackgroundFetch:r=>e.#u(r),backgroundFetch:(r,n,i,s)=>e.#q(r,n,i,s),moveToTail:r=>e.#D(r),indexes:r=>e.#O(r),rindexes:r=>e.#C(r),isStale:r=>e.#w(r)}}get max(){return this.#e}get maxSize(){return this.#r}get calculatedSize(){return this.#p}get size(){return this.#a}get fetchMethod(){return this.#b}get memoMethod(){return this.#v}get dispose(){return this.#s}get onInsert(){return this.#i}get disposeAfter(){return this.#o}constructor(e){let{max:r=0,ttl:n,ttlResolution:i=1,ttlAutopurge:s,updateAgeOnGet:o,updateAgeOnHas:a,allowStale:c,dispose:u,onInsert:l,disposeAfter:d,noDisposeOnSet:p,noUpdateTTL:f,maxSize:m=0,maxEntrySize:h=0,sizeCalculation:g,fetchMethod:v,memoMethod:S,noDeleteOnFetchRejection:b,noDeleteOnStaleGet:y,allowStaleOnFetchRejection:x,allowStaleOnFetchAbort:w,ignoreFetchAbort:E,perf:T}=e;if(T!==void 0&&typeof T?.now!="function")throw new TypeError("perf option must have a now() method if specified");if(this.#l=T??Pbe,r!==0&&!Eo(r))throw new TypeError("max option must be a nonnegative integer");let I=r?W8(r):Array;if(!I)throw new Error("invalid max value: "+r);if(this.#e=r,this.#r=m,this.maxEntrySize=h||this.#r,this.sizeCalculation=g,this.sizeCalculation){if(!this.#r&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(S!==void 0&&typeof S!="function")throw new TypeError("memoMethod must be a function if defined");if(this.#v=S,v!==void 0&&typeof v!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#b=v,this.#T=!!v,this.#d=new Map,this.#c=new Array(r).fill(void 0),this.#n=new Array(r).fill(void 0),this.#f=new I(r),this.#S=new I(r),this.#_=0,this.#m=0,this.#I=xI.create(r),this.#a=0,this.#p=0,typeof u=="function"&&(this.#s=u),typeof l=="function"&&(this.#i=l),typeof d=="function"?(this.#o=d,this.#h=[]):(this.#o=void 0,this.#h=void 0),this.#x=!!this.#s,this.#N=!!this.#i,this.#t=!!this.#o,this.noDisposeOnSet=!!p,this.noUpdateTTL=!!f,this.noDeleteOnFetchRejection=!!b,this.allowStaleOnFetchRejection=!!x,this.allowStaleOnFetchAbort=!!w,this.ignoreFetchAbort=!!E,this.maxEntrySize!==0){if(this.#r!==0&&!Eo(this.#r))throw new TypeError("maxSize must be a positive integer if specified");if(!Eo(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#Z()}if(this.allowStale=!!c,this.noDeleteOnStaleGet=!!y,this.updateAgeOnGet=!!o,this.updateAgeOnHas=!!a,this.ttlResolution=Eo(i)||i===0?i:1,this.ttlAutopurge=!!s,this.ttl=n||0,this.ttl){if(!Eo(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#P()}if(this.#e===0&&this.ttl===0&&this.#r===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#e&&!this.#r){let A="LRU_CACHE_UNBOUNDED";Abe(A)&&(B8.add(A),G8("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",A,t))}}getRemainingTTL(e){return this.#d.has(e)?1/0:0}#P(){let e=new qu(this.#e),r=new qu(this.#e);this.#g=e,this.#k=r;let n=this.ttlAutopurge?new Array(this.#e):void 0;this.#y=n,this.#z=(o,a,c=this.#l.now())=>{if(r[o]=a!==0?c:0,e[o]=a,n?.[o]&&(clearTimeout(n[o]),n[o]=void 0),a!==0&&n){let u=setTimeout(()=>{this.#w(o)&&this.#R(this.#c[o],"expire")},a+1);u.unref&&u.unref(),n[o]=u}},this.#$=o=>{r[o]=e[o]!==0?this.#l.now():0},this.#A=(o,a)=>{if(e[a]){let c=e[a],u=r[a];if(!c||!u)return;o.ttl=c,o.start=u,o.now=i||s();let l=o.now-u;o.remainingTTL=c-l}};let i=0,s=()=>{let o=this.#l.now();if(this.ttlResolution>0){i=o;let a=setTimeout(()=>i=0,this.ttlResolution);a.unref&&a.unref()}return o};this.getRemainingTTL=o=>{let a=this.#d.get(o);if(a===void 0)return 0;let c=e[a],u=r[a];if(!c||!u)return 1/0;let l=(i||s())-u;return c-l},this.#w=o=>{let a=r[o],c=e[o];return!!c&&!!a&&(i||s())-a>c}}#$=()=>{};#A=()=>{};#z=()=>{};#w=()=>!1;#Z(){let e=new qu(this.#e);this.#p=0,this.#E=e,this.#j=r=>{this.#p-=e[r],e[r]=0},this.#L=(r,n,i,s)=>{if(this.#u(n))return 0;if(!Eo(i))if(s){if(typeof s!="function")throw new TypeError("sizeCalculation must be a function");if(i=s(n,r),!Eo(i))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return i},this.#M=(r,n,i)=>{if(e[r]=n,this.#r){let s=this.#r-e[r];for(;this.#p>s;)this.#F(!0)}this.#p+=e[r],i&&(i.entrySize=n,i.totalCalculatedSize=this.#p)}}#j=e=>{};#M=(e,r,n)=>{};#L=(e,r,n,i)=>{if(n||i)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#O({allowStale:e=this.allowStale}={}){if(this.#a)for(let r=this.#m;!(!this.#U(r)||((e||!this.#w(r))&&(yield r),r===this.#_));)r=this.#S[r]}*#C({allowStale:e=this.allowStale}={}){if(this.#a)for(let r=this.#_;!(!this.#U(r)||((e||!this.#w(r))&&(yield r),r===this.#m));)r=this.#f[r]}#U(e){return e!==void 0&&this.#d.get(this.#c[e])===e}*entries(){for(let e of this.#O())this.#n[e]!==void 0&&this.#c[e]!==void 0&&!this.#u(this.#n[e])&&(yield[this.#c[e],this.#n[e]])}*rentries(){for(let e of this.#C())this.#n[e]!==void 0&&this.#c[e]!==void 0&&!this.#u(this.#n[e])&&(yield[this.#c[e],this.#n[e]])}*keys(){for(let e of this.#O()){let r=this.#c[e];r!==void 0&&!this.#u(this.#n[e])&&(yield r)}}*rkeys(){for(let e of this.#C()){let r=this.#c[e];r!==void 0&&!this.#u(this.#n[e])&&(yield r)}}*values(){for(let e of this.#O())this.#n[e]!==void 0&&!this.#u(this.#n[e])&&(yield this.#n[e])}*rvalues(){for(let e of this.#C())this.#n[e]!==void 0&&!this.#u(this.#n[e])&&(yield this.#n[e])}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(e,r={}){for(let n of this.#O()){let i=this.#n[n],s=this.#u(i)?i.__staleWhileFetching:i;if(s!==void 0&&e(s,this.#c[n],this))return this.get(this.#c[n],r)}}forEach(e,r=this){for(let n of this.#O()){let i=this.#n[n],s=this.#u(i)?i.__staleWhileFetching:i;s!==void 0&&e.call(r,s,this.#c[n],this)}}rforEach(e,r=this){for(let n of this.#C()){let i=this.#n[n],s=this.#u(i)?i.__staleWhileFetching:i;s!==void 0&&e.call(r,s,this.#c[n],this)}}purgeStale(){let e=!1;for(let r of this.#C({allowStale:!0}))this.#w(r)&&(this.#R(this.#c[r],"expire"),e=!0);return e}info(e){let r=this.#d.get(e);if(r===void 0)return;let n=this.#n[r],i=this.#u(n)?n.__staleWhileFetching:n;if(i===void 0)return;let s={value:i};if(this.#g&&this.#k){let o=this.#g[r],a=this.#k[r];if(o&&a){let c=o-(this.#l.now()-a);s.ttl=c,s.start=Date.now()}}return this.#E&&(s.size=this.#E[r]),s}dump(){let e=[];for(let r of this.#O({allowStale:!0})){let n=this.#c[r],i=this.#n[r],s=this.#u(i)?i.__staleWhileFetching:i;if(s===void 0||n===void 0)continue;let o={value:s};if(this.#g&&this.#k){o.ttl=this.#g[r];let a=this.#l.now()-this.#k[r];o.start=Math.floor(Date.now()-a)}this.#E&&(o.size=this.#E[r]),e.unshift([n,o])}return e}load(e){this.clear();for(let[r,n]of e){if(n.start){let i=Date.now()-n.start;n.start=this.#l.now()-i}this.set(r,n.value,n)}}set(e,r,n={}){if(r===void 0)return this.delete(e),this;let{ttl:i=this.ttl,start:s,noDisposeOnSet:o=this.noDisposeOnSet,sizeCalculation:a=this.sizeCalculation,status:c}=n,{noUpdateTTL:u=this.noUpdateTTL}=n,l=this.#L(e,r,n.size||0,a);if(this.maxEntrySize&&l>this.maxEntrySize)return c&&(c.set="miss",c.maxEntrySizeExceeded=!0),this.#R(e,"set"),this;let d=this.#a===0?void 0:this.#d.get(e);if(d===void 0)d=this.#a===0?this.#m:this.#I.length!==0?this.#I.pop():this.#a===this.#e?this.#F(!1):this.#a,this.#c[d]=e,this.#n[d]=r,this.#d.set(e,d),this.#f[this.#m]=d,this.#S[d]=this.#m,this.#m=d,this.#a++,this.#M(d,l,c),c&&(c.set="add"),u=!1,this.#N&&this.#i?.(r,e,"add");else{this.#D(d);let p=this.#n[d];if(r!==p){if(this.#T&&this.#u(p)){p.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:f}=p;f!==void 0&&!o&&(this.#x&&this.#s?.(f,e,"set"),this.#t&&this.#h?.push([f,e,"set"]))}else o||(this.#x&&this.#s?.(p,e,"set"),this.#t&&this.#h?.push([p,e,"set"]));if(this.#j(d),this.#M(d,l,c),this.#n[d]=r,c){c.set="replace";let f=p&&this.#u(p)?p.__staleWhileFetching:p;f!==void 0&&(c.oldValue=f)}}else c&&(c.set="update");this.#N&&this.onInsert?.(r,e,r===p?"update":"replace")}if(i!==0&&!this.#g&&this.#P(),this.#g&&(u||this.#z(d,i,s),c&&this.#A(c,d)),!o&&this.#t&&this.#h){let p=this.#h,f;for(;f=p?.shift();)this.#o?.(...f)}return this}pop(){try{for(;this.#a;){let e=this.#n[this.#_];if(this.#F(!0),this.#u(e)){if(e.__staleWhileFetching)return e.__staleWhileFetching}else if(e!==void 0)return e}}finally{if(this.#t&&this.#h){let e=this.#h,r;for(;r=e?.shift();)this.#o?.(...r)}}}#F(e){let r=this.#_,n=this.#c[r],i=this.#n[r];return this.#T&&this.#u(i)?i.__abortController.abort(new Error("evicted")):(this.#x||this.#t)&&(this.#x&&this.#s?.(i,n,"evict"),this.#t&&this.#h?.push([i,n,"evict"])),this.#j(r),this.#y?.[r]&&(clearTimeout(this.#y[r]),this.#y[r]=void 0),e&&(this.#c[r]=void 0,this.#n[r]=void 0,this.#I.push(r)),this.#a===1?(this.#_=this.#m=0,this.#I.length=0):this.#_=this.#f[r],this.#d.delete(n),this.#a--,r}has(e,r={}){let{updateAgeOnHas:n=this.updateAgeOnHas,status:i}=r,s=this.#d.get(e);if(s!==void 0){let o=this.#n[s];if(this.#u(o)&&o.__staleWhileFetching===void 0)return!1;if(this.#w(s))i&&(i.has="stale",this.#A(i,s));else return n&&this.#$(s),i&&(i.has="hit",this.#A(i,s)),!0}else i&&(i.has="miss");return!1}peek(e,r={}){let{allowStale:n=this.allowStale}=r,i=this.#d.get(e);if(i===void 0||!n&&this.#w(i))return;let s=this.#n[i];return this.#u(s)?s.__staleWhileFetching:s}#q(e,r,n,i){let s=r===void 0?void 0:this.#n[r];if(this.#u(s))return s;let o=new My,{signal:a}=n;a?.addEventListener("abort",()=>o.abort(a.reason),{signal:o.signal});let c={signal:o.signal,options:n,context:i},u=(h,g=!1)=>{let{aborted:v}=o.signal,S=n.ignoreFetchAbort&&h!==void 0;if(n.status&&(v&&!g?(n.status.fetchAborted=!0,n.status.fetchError=o.signal.reason,S&&(n.status.fetchAbortIgnored=!0)):n.status.fetchResolved=!0),v&&!S&&!g)return d(o.signal.reason);let b=f,y=this.#n[r];return(y===f||S&&g&&y===void 0)&&(h===void 0?b.__staleWhileFetching!==void 0?this.#n[r]=b.__staleWhileFetching:this.#R(e,"fetch"):(n.status&&(n.status.fetchUpdated=!0),this.set(e,h,c.options))),h},l=h=>(n.status&&(n.status.fetchRejected=!0,n.status.fetchError=h),d(h)),d=h=>{let{aborted:g}=o.signal,v=g&&n.allowStaleOnFetchAbort,S=v||n.allowStaleOnFetchRejection,b=S||n.noDeleteOnFetchRejection,y=f;if(this.#n[r]===f&&(!b||y.__staleWhileFetching===void 0?this.#R(e,"fetch"):v||(this.#n[r]=y.__staleWhileFetching)),S)return n.status&&y.__staleWhileFetching!==void 0&&(n.status.returnedStale=!0),y.__staleWhileFetching;if(y.__returned===y)throw h},p=(h,g)=>{let v=this.#b?.(e,s,c);v&&v instanceof Promise&&v.then(S=>h(S===void 0?void 0:S),g),o.signal.addEventListener("abort",()=>{(!n.ignoreFetchAbort||n.allowStaleOnFetchAbort)&&(h(void 0),n.allowStaleOnFetchAbort&&(h=S=>u(S,!0)))})};n.status&&(n.status.fetchDispatched=!0);let f=new Promise(p).then(u,l),m=Object.assign(f,{__abortController:o,__staleWhileFetching:s,__returned:void 0});return r===void 0?(this.set(e,m,{...c.options,status:void 0}),r=this.#d.get(e)):this.#n[r]=m,m}#u(e){if(!this.#T)return!1;let r=e;return!!r&&r instanceof Promise&&r.hasOwnProperty("__staleWhileFetching")&&r.__abortController instanceof My}async fetch(e,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:i=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,ttl:o=this.ttl,noDisposeOnSet:a=this.noDisposeOnSet,size:c=0,sizeCalculation:u=this.sizeCalculation,noUpdateTTL:l=this.noUpdateTTL,noDeleteOnFetchRejection:d=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:p=this.allowStaleOnFetchRejection,ignoreFetchAbort:f=this.ignoreFetchAbort,allowStaleOnFetchAbort:m=this.allowStaleOnFetchAbort,context:h,forceRefresh:g=!1,status:v,signal:S}=r;if(!this.#T)return v&&(v.fetch="get"),this.get(e,{allowStale:n,updateAgeOnGet:i,noDeleteOnStaleGet:s,status:v});let b={allowStale:n,updateAgeOnGet:i,noDeleteOnStaleGet:s,ttl:o,noDisposeOnSet:a,size:c,sizeCalculation:u,noUpdateTTL:l,noDeleteOnFetchRejection:d,allowStaleOnFetchRejection:p,allowStaleOnFetchAbort:m,ignoreFetchAbort:f,status:v,signal:S},y=this.#d.get(e);if(y===void 0){v&&(v.fetch="miss");let x=this.#q(e,y,b,h);return x.__returned=x}else{let x=this.#n[y];if(this.#u(x)){let A=n&&x.__staleWhileFetching!==void 0;return v&&(v.fetch="inflight",A&&(v.returnedStale=!0)),A?x.__staleWhileFetching:x.__returned=x}let w=this.#w(y);if(!g&&!w)return v&&(v.fetch="hit"),this.#D(y),i&&this.#$(y),v&&this.#A(v,y),x;let E=this.#q(e,y,b,h),I=E.__staleWhileFetching!==void 0&&n;return v&&(v.fetch=w?"stale":"refresh",I&&w&&(v.returnedStale=!0)),I?E.__staleWhileFetching:E.__returned=E}}async forceFetch(e,r={}){let n=await this.fetch(e,r);if(n===void 0)throw new Error("fetch() returned undefined");return n}memo(e,r={}){let n=this.#v;if(!n)throw new Error("no memoMethod provided to constructor");let{context:i,forceRefresh:s,...o}=r,a=this.get(e,o);if(!s&&a!==void 0)return a;let c=n(e,a,{options:o,context:i});return this.set(e,c,o),c}get(e,r={}){let{allowStale:n=this.allowStale,updateAgeOnGet:i=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,status:o}=r,a=this.#d.get(e);if(a!==void 0){let c=this.#n[a],u=this.#u(c);return o&&this.#A(o,a),this.#w(a)?(o&&(o.get="stale"),u?(o&&n&&c.__staleWhileFetching!==void 0&&(o.returnedStale=!0),n?c.__staleWhileFetching:void 0):(s||this.#R(e,"expire"),o&&n&&(o.returnedStale=!0),n?c:void 0)):(o&&(o.get="hit"),u?c.__staleWhileFetching:(this.#D(a),i&&this.#$(a),c))}else o&&(o.get="miss")}#H(e,r){this.#S[r]=e,this.#f[e]=r}#D(e){e!==this.#m&&(e===this.#_?this.#_=this.#f[e]:this.#H(this.#S[e],this.#f[e]),this.#H(this.#m,e),this.#m=e)}delete(e){return this.#R(e,"delete")}#R(e,r){let n=!1;if(this.#a!==0){let i=this.#d.get(e);if(i!==void 0)if(this.#y?.[i]&&(clearTimeout(this.#y?.[i]),this.#y[i]=void 0),n=!0,this.#a===1)this.#B(r);else{this.#j(i);let s=this.#n[i];if(this.#u(s)?s.__abortController.abort(new Error("deleted")):(this.#x||this.#t)&&(this.#x&&this.#s?.(s,e,r),this.#t&&this.#h?.push([s,e,r])),this.#d.delete(e),this.#c[i]=void 0,this.#n[i]=void 0,i===this.#m)this.#m=this.#S[i];else if(i===this.#_)this.#_=this.#f[i];else{let o=this.#S[i];this.#f[o]=this.#f[i];let a=this.#f[i];this.#S[a]=this.#S[i]}this.#a--,this.#I.push(i)}}if(this.#t&&this.#h?.length){let i=this.#h,s;for(;s=i?.shift();)this.#o?.(...s)}return n}clear(){return this.#B("delete")}#B(e){for(let r of this.#C({allowStale:!0})){let n=this.#n[r];if(this.#u(n))n.__abortController.abort(new Error("deleted"));else{let i=this.#c[r];this.#x&&this.#s?.(n,i,e),this.#t&&this.#h?.push([n,i,e])}}if(this.#d.clear(),this.#n.fill(void 0),this.#c.fill(void 0),this.#g&&this.#k){this.#g.fill(0),this.#k.fill(0);for(let r of this.#y??[])r!==void 0&&clearTimeout(r);this.#y?.fill(void 0)}if(this.#E&&this.#E.fill(0),this.#_=0,this.#m=0,this.#I.length=0,this.#p=0,this.#a=0,this.#t&&this.#h){let r=this.#h,n;for(;n=r?.shift();)this.#o?.(...n)}}};var Bu=require("node:path"),n5=require("node:url"),rs=require("fs"),Hbe=Pe(require("node:fs"),1),$o=require("node:fs/promises");var qy=require("node:events"),RI=Pe(require("node:stream"),1),Y8=require("node:string_decoder"),V8=typeof process=="object"&&process?process:{stdout:null,stderr:null},Nbe=t=>!!t&&typeof t=="object"&&(t instanceof To||t instanceof RI.default||Mbe(t)||Dbe(t)),Mbe=t=>!!t&&typeof t=="object"&&t instanceof qy.EventEmitter&&typeof t.pipe=="function"&&t.pipe!==RI.default.Writable.prototype.pipe,Dbe=t=>!!t&&typeof t=="object"&&t instanceof qy.EventEmitter&&typeof t.write=="function"&&typeof t.end=="function",Ls=Symbol("EOF"),Us=Symbol("maybeEmitEnd"),ko=Symbol("emittedEnd"),Dy=Symbol("emittingEnd"),_f=Symbol("emittedError"),jy=Symbol("closed"),K8=Symbol("read"),zy=Symbol("flush"),J8=Symbol("flushChunk"),ki=Symbol("encoding"),Hu=Symbol("decoder"),fr=Symbol("flowing"),bf=Symbol("paused"),Zu=Symbol("resume"),mr=Symbol("buffer"),rn=Symbol("pipes"),hr=Symbol("bufferLength"),wI=Symbol("bufferPush"),Ly=Symbol("bufferShift"),Fr=Symbol("objectMode"),Xt=Symbol("destroyed"),EI=Symbol("error"),kI=Symbol("emitData"),X8=Symbol("emitEnd"),TI=Symbol("emitEnd2"),es=Symbol("async"),$I=Symbol("abort"),Uy=Symbol("aborted"),Sf=Symbol("signal"),Ca=Symbol("dataListeners"),An=Symbol("discarded"),xf=t=>Promise.resolve().then(t),jbe=t=>t(),zbe=t=>t==="end"||t==="finish"||t==="prefinish",Lbe=t=>t instanceof ArrayBuffer||!!t&&typeof t=="object"&&t.constructor&&t.constructor.name==="ArrayBuffer"&&t.byteLength>=0,Ube=t=>!Buffer.isBuffer(t)&&ArrayBuffer.isView(t),Fy=class{src;dest;opts;ondrain;constructor(e,r,n){this.src=e,this.dest=r,this.opts=n,this.ondrain=()=>e[Zu](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(e){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},II=class extends Fy{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(e,r,n){super(e,r,n),this.proxyErrors=i=>r.emit("error",i),e.on("error",this.proxyErrors)}},Fbe=t=>!!t.objectMode,qbe=t=>!t.objectMode&&!!t.encoding&&t.encoding!=="buffer",To=class extends qy.EventEmitter{[fr]=!1;[bf]=!1;[rn]=[];[mr]=[];[Fr];[ki];[es];[Hu];[Ls]=!1;[ko]=!1;[Dy]=!1;[jy]=!1;[_f]=null;[hr]=0;[Xt]=!1;[Sf];[Uy]=!1;[Ca]=0;[An]=!1;writable=!0;readable=!0;constructor(...e){let r=e[0]||{};if(super(),r.objectMode&&typeof r.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");Fbe(r)?(this[Fr]=!0,this[ki]=null):qbe(r)?(this[ki]=r.encoding,this[Fr]=!1):(this[Fr]=!1,this[ki]=null),this[es]=!!r.async,this[Hu]=this[ki]?new Y8.StringDecoder(this[ki]):null,r&&r.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[mr]}),r&&r.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[rn]});let{signal:n}=r;n&&(this[Sf]=n,n.aborted?this[$I]():n.addEventListener("abort",()=>this[$I]()))}get bufferLength(){return this[hr]}get encoding(){return this[ki]}set encoding(e){throw new Error("Encoding must be set at instantiation time")}setEncoding(e){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[Fr]}set objectMode(e){throw new Error("objectMode must be set at instantiation time")}get async(){return this[es]}set async(e){this[es]=this[es]||!!e}[$I](){this[Uy]=!0,this.emit("abort",this[Sf]?.reason),this.destroy(this[Sf]?.reason)}get aborted(){return this[Uy]}set aborted(e){}write(e,r,n){if(this[Uy])return!1;if(this[Ls])throw new Error("write after end");if(this[Xt])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof r=="function"&&(n=r,r="utf8"),r||(r="utf8");let i=this[es]?xf:jbe;if(!this[Fr]&&!Buffer.isBuffer(e)){if(Ube(e))e=Buffer.from(e.buffer,e.byteOffset,e.byteLength);else if(Lbe(e))e=Buffer.from(e);else if(typeof e!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[Fr]?(this[fr]&&this[hr]!==0&&this[zy](!0),this[fr]?this.emit("data",e):this[wI](e),this[hr]!==0&&this.emit("readable"),n&&i(n),this[fr]):e.length?(typeof e=="string"&&!(r===this[ki]&&!this[Hu]?.lastNeed)&&(e=Buffer.from(e,r)),Buffer.isBuffer(e)&&this[ki]&&(e=this[Hu].write(e)),this[fr]&&this[hr]!==0&&this[zy](!0),this[fr]?this.emit("data",e):this[wI](e),this[hr]!==0&&this.emit("readable"),n&&i(n),this[fr]):(this[hr]!==0&&this.emit("readable"),n&&i(n),this[fr])}read(e){if(this[Xt])return null;if(this[An]=!1,this[hr]===0||e===0||e&&e>this[hr])return this[Us](),null;this[Fr]&&(e=null),this[mr].length>1&&!this[Fr]&&(this[mr]=[this[ki]?this[mr].join(""):Buffer.concat(this[mr],this[hr])]);let r=this[K8](e||null,this[mr][0]);return this[Us](),r}[K8](e,r){if(this[Fr])this[Ly]();else{let n=r;e===n.length||e===null?this[Ly]():typeof n=="string"?(this[mr][0]=n.slice(e),r=n.slice(0,e),this[hr]-=e):(this[mr][0]=n.subarray(e),r=n.subarray(0,e),this[hr]-=e)}return this.emit("data",r),!this[mr].length&&!this[Ls]&&this.emit("drain"),r}end(e,r,n){return typeof e=="function"&&(n=e,e=void 0),typeof r=="function"&&(n=r,r="utf8"),e!==void 0&&this.write(e,r),n&&this.once("end",n),this[Ls]=!0,this.writable=!1,(this[fr]||!this[bf])&&this[Us](),this}[Zu](){this[Xt]||(!this[Ca]&&!this[rn].length&&(this[An]=!0),this[bf]=!1,this[fr]=!0,this.emit("resume"),this[mr].length?this[zy]():this[Ls]?this[Us]():this.emit("drain"))}resume(){return this[Zu]()}pause(){this[fr]=!1,this[bf]=!0,this[An]=!1}get destroyed(){return this[Xt]}get flowing(){return this[fr]}get paused(){return this[bf]}[wI](e){this[Fr]?this[hr]+=1:this[hr]+=e.length,this[mr].push(e)}[Ly](){return this[Fr]?this[hr]-=1:this[hr]-=this[mr][0].length,this[mr].shift()}[zy](e=!1){do;while(this[J8](this[Ly]())&&this[mr].length);!e&&!this[mr].length&&!this[Ls]&&this.emit("drain")}[J8](e){return this.emit("data",e),this[fr]}pipe(e,r){if(this[Xt])return e;this[An]=!1;let n=this[ko];return r=r||{},e===V8.stdout||e===V8.stderr?r.end=!1:r.end=r.end!==!1,r.proxyErrors=!!r.proxyErrors,n?r.end&&e.end():(this[rn].push(r.proxyErrors?new II(this,e,r):new Fy(this,e,r)),this[es]?xf(()=>this[Zu]()):this[Zu]()),e}unpipe(e){let r=this[rn].find(n=>n.dest===e);r&&(this[rn].length===1?(this[fr]&&this[Ca]===0&&(this[fr]=!1),this[rn]=[]):this[rn].splice(this[rn].indexOf(r),1),r.unpipe())}addListener(e,r){return this.on(e,r)}on(e,r){let n=super.on(e,r);if(e==="data")this[An]=!1,this[Ca]++,!this[rn].length&&!this[fr]&&this[Zu]();else if(e==="readable"&&this[hr]!==0)super.emit("readable");else if(zbe(e)&&this[ko])super.emit(e),this.removeAllListeners(e);else if(e==="error"&&this[_f]){let i=r;this[es]?xf(()=>i.call(this,this[_f])):i.call(this,this[_f])}return n}removeListener(e,r){return this.off(e,r)}off(e,r){let n=super.off(e,r);return e==="data"&&(this[Ca]=this.listeners("data").length,this[Ca]===0&&!this[An]&&!this[rn].length&&(this[fr]=!1)),n}removeAllListeners(e){let r=super.removeAllListeners(e);return(e==="data"||e===void 0)&&(this[Ca]=0,!this[An]&&!this[rn].length&&(this[fr]=!1)),r}get emittedEnd(){return this[ko]}[Us](){!this[Dy]&&!this[ko]&&!this[Xt]&&this[mr].length===0&&this[Ls]&&(this[Dy]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[jy]&&this.emit("close"),this[Dy]=!1)}emit(e,...r){let n=r[0];if(e!=="error"&&e!=="close"&&e!==Xt&&this[Xt])return!1;if(e==="data")return!this[Fr]&&!n?!1:this[es]?(xf(()=>this[kI](n)),!0):this[kI](n);if(e==="end")return this[X8]();if(e==="close"){if(this[jy]=!0,!this[ko]&&!this[Xt])return!1;let s=super.emit("close");return this.removeAllListeners("close"),s}else if(e==="error"){this[_f]=n,super.emit(EI,n);let s=!this[Sf]||this.listeners("error").length?super.emit("error",n):!1;return this[Us](),s}else if(e==="resume"){let s=super.emit("resume");return this[Us](),s}else if(e==="finish"||e==="prefinish"){let s=super.emit(e);return this.removeAllListeners(e),s}let i=super.emit(e,...r);return this[Us](),i}[kI](e){for(let n of this[rn])n.dest.write(e)===!1&&this.pause();let r=this[An]?!1:super.emit("data",e);return this[Us](),r}[X8](){return this[ko]?!1:(this[ko]=!0,this.readable=!1,this[es]?(xf(()=>this[TI]()),!0):this[TI]())}[TI](){if(this[Hu]){let r=this[Hu].end();if(r){for(let n of this[rn])n.dest.write(r);this[An]||super.emit("data",r)}}for(let r of this[rn])r.end();let e=super.emit("end");return this.removeAllListeners("end"),e}async collect(){let e=Object.assign([],{dataLength:0});this[Fr]||(e.dataLength=0);let r=this.promise();return this.on("data",n=>{e.push(n),this[Fr]||(e.dataLength+=n.length)}),await r,e}async concat(){if(this[Fr])throw new Error("cannot concat in objectMode");let e=await this.collect();return this[ki]?e.join(""):Buffer.concat(e,e.dataLength)}async promise(){return new Promise((e,r)=>{this.on(Xt,()=>r(new Error("stream destroyed"))),this.on("error",n=>r(n)),this.on("end",()=>e())})}[Symbol.asyncIterator](){this[An]=!1;let e=!1,r=async()=>(this.pause(),e=!0,{value:void 0,done:!0});return{next:()=>{if(e)return r();let i=this.read();if(i!==null)return Promise.resolve({done:!1,value:i});if(this[Ls])return r();let s,o,a=d=>{this.off("data",c),this.off("end",u),this.off(Xt,l),r(),o(d)},c=d=>{this.off("error",a),this.off("end",u),this.off(Xt,l),this.pause(),s({value:d,done:!!this[Ls]})},u=()=>{this.off("error",a),this.off("data",c),this.off(Xt,l),r(),s({done:!0,value:void 0})},l=()=>a(new Error("stream destroyed"));return new Promise((d,p)=>{o=p,s=d,this.once(Xt,l),this.once("error",a),this.once("end",u),this.once("data",c)})},throw:r,return:r,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[An]=!1;let e=!1,r=()=>(this.pause(),this.off(EI,r),this.off(Xt,r),this.off("end",r),e=!0,{done:!0,value:void 0}),n=()=>{if(e)return r();let i=this.read();return i===null?r():{done:!1,value:i}};return this.once("end",r),this.once(EI,r),this.once(Xt,r),{next:n,throw:r,return:r,[Symbol.iterator](){return this}}}destroy(e){if(this[Xt])return e?this.emit("error",e):this.emit(Xt),this;this[Xt]=!0,this[An]=!0,this[mr].length=0,this[hr]=0;let r=this;return typeof r.close=="function"&&!this[jy]&&r.close(),e?this.emit("error",e):this.emit(Xt),this}static get isStream(){return Nbe}};var Zbe=rs.realpathSync.native,Ef={lstatSync:rs.lstatSync,readdir:rs.readdir,readdirSync:rs.readdirSync,readlinkSync:rs.readlinkSync,realpathSync:Zbe,promises:{lstat:$o.lstat,readdir:$o.readdir,readlink:$o.readlink,realpath:$o.realpath}},i5=t=>!t||t===Ef||t===Hbe?Ef:{...Ef,...t,promises:{...Ef.promises,...t.promises||{}}},s5=/^\\\\\?\\([a-z]:)\\?$/i,Bbe=t=>t.replace(/\//g,"\\").replace(s5,"$1\\"),Gbe=/[\\\/]/,ti=0,o5=1,a5=2,ts=4,c5=6,u5=8,Pa=10,l5=12,ei=15,wf=~ei,OI=16,Q8=32,kf=64,Ti=128,Hy=256,By=512,e5=kf|Ti|By,Wbe=1023,CI=t=>t.isFile()?u5:t.isDirectory()?ts:t.isSymbolicLink()?Pa:t.isCharacterDevice()?a5:t.isBlockDevice()?c5:t.isSocket()?l5:t.isFIFO()?o5:ti,t5=new Oa({max:2**12}),Tf=t=>{let e=t5.get(t);if(e)return e;let r=t.normalize("NFKD");return t5.set(t,r),r},r5=new Oa({max:2**12}),Zy=t=>{let e=r5.get(t);if(e)return e;let r=Tf(t.toLowerCase());return r5.set(t,r),r},Gy=class extends Oa{constructor(){super({max:256})}},PI=class extends Oa{constructor(e=16*1024){super({maxSize:e,sizeCalculation:r=>r.length+1})}},d5=Symbol("PathScurry setAsCwd"),qr=class{name;root;roots;parent;nocase;isCWD=!1;#e;#r;get dev(){return this.#r}#s;get mode(){return this.#s}#i;get nlink(){return this.#i}#o;get uid(){return this.#o}#b;get gid(){return this.#b}#v;get rdev(){return this.#v}#l;get blksize(){return this.#l}#a;get ino(){return this.#a}#p;get size(){return this.#p}#d;get blocks(){return this.#d}#c;get atimeMs(){return this.#c}#n;get mtimeMs(){return this.#n}#f;get ctimeMs(){return this.#f}#S;get birthtimeMs(){return this.#S}#_;get atime(){return this.#_}#m;get mtime(){return this.#m}#I;get ctime(){return this.#I}#h;get birthtime(){return this.#h}#E;#k;#g;#y;#x;#T;#t;#N;#P;#$;get parentPath(){return(this.parent||this).fullpath()}get path(){return this.parentPath}constructor(e,r=ti,n,i,s,o,a){this.name=e,this.#E=s?Zy(e):Tf(e),this.#t=r&Wbe,this.nocase=s,this.roots=i,this.root=n||this,this.#N=o,this.#g=a.fullpath,this.#x=a.relative,this.#T=a.relativePosix,this.parent=a.parent,this.parent?this.#e=this.parent.#e:this.#e=i5(a.fs)}depth(){return this.#k!==void 0?this.#k:this.parent?this.#k=this.parent.depth()+1:this.#k=0}childrenCache(){return this.#N}resolve(e){if(!e)return this;let r=this.getRootString(e),i=e.substring(r.length).split(this.splitSep);return r?this.getRoot(r).#A(i):this.#A(i)}#A(e){let r=this;for(let n of e)r=r.child(n);return r}children(){let e=this.#N.get(this);if(e)return e;let r=Object.assign([],{provisional:0});return this.#N.set(this,r),this.#t&=~OI,r}child(e,r){if(e===""||e===".")return this;if(e==="..")return this.parent||this;let n=this.children(),i=this.nocase?Zy(e):Tf(e);for(let c of n)if(c.#E===i)return c;let s=this.parent?this.sep:"",o=this.#g?this.#g+s+e:void 0,a=this.newChild(e,ti,{...r,parent:this,fullpath:o});return this.canReaddir()||(a.#t|=Ti),n.push(a),a}relative(){if(this.isCWD)return"";if(this.#x!==void 0)return this.#x;let e=this.name,r=this.parent;if(!r)return this.#x=this.name;let n=r.relative();return n+(!n||!r.parent?"":this.sep)+e}relativePosix(){if(this.sep==="/")return this.relative();if(this.isCWD)return"";if(this.#T!==void 0)return this.#T;let e=this.name,r=this.parent;if(!r)return this.#T=this.fullpathPosix();let n=r.relativePosix();return n+(!n||!r.parent?"":"/")+e}fullpath(){if(this.#g!==void 0)return this.#g;let e=this.name,r=this.parent;if(!r)return this.#g=this.name;let i=r.fullpath()+(r.parent?this.sep:"")+e;return this.#g=i}fullpathPosix(){if(this.#y!==void 0)return this.#y;if(this.sep==="/")return this.#y=this.fullpath();if(!this.parent){let i=this.fullpath().replace(/\\/g,"/");return/^[a-z]:\//i.test(i)?this.#y=`//?/${i}`:this.#y=i}let e=this.parent,r=e.fullpathPosix(),n=r+(!r||!e.parent?"":"/")+this.name;return this.#y=n}isUnknown(){return(this.#t&ei)===ti}isType(e){return this[`is${e}`]()}getType(){return this.isUnknown()?"Unknown":this.isDirectory()?"Directory":this.isFile()?"File":this.isSymbolicLink()?"SymbolicLink":this.isFIFO()?"FIFO":this.isCharacterDevice()?"CharacterDevice":this.isBlockDevice()?"BlockDevice":this.isSocket()?"Socket":"Unknown"}isFile(){return(this.#t&ei)===u5}isDirectory(){return(this.#t&ei)===ts}isCharacterDevice(){return(this.#t&ei)===a5}isBlockDevice(){return(this.#t&ei)===c5}isFIFO(){return(this.#t&ei)===o5}isSocket(){return(this.#t&ei)===l5}isSymbolicLink(){return(this.#t&Pa)===Pa}lstatCached(){return this.#t&Q8?this:void 0}readlinkCached(){return this.#P}realpathCached(){return this.#$}readdirCached(){let e=this.children();return e.slice(0,e.provisional)}canReadlink(){if(this.#P)return!0;if(!this.parent)return!1;let e=this.#t&ei;return!(e!==ti&&e!==Pa||this.#t&Hy||this.#t&Ti)}calledReaddir(){return!!(this.#t&OI)}isENOENT(){return!!(this.#t&Ti)}isNamed(e){return this.nocase?this.#E===Zy(e):this.#E===Tf(e)}async readlink(){let e=this.#P;if(e)return e;if(this.canReadlink()&&this.parent)try{let r=await this.#e.promises.readlink(this.fullpath()),n=(await this.parent.realpath())?.resolve(r);if(n)return this.#P=n}catch(r){this.#C(r.code);return}}readlinkSync(){let e=this.#P;if(e)return e;if(this.canReadlink()&&this.parent)try{let r=this.#e.readlinkSync(this.fullpath()),n=this.parent.realpathSync()?.resolve(r);if(n)return this.#P=n}catch(r){this.#C(r.code);return}}#z(e){this.#t|=OI;for(let r=e.provisional;rn(null,e))}readdirCB(e,r=!1){if(!this.canReaddir()){r?e(null,[]):queueMicrotask(()=>e(null,[]));return}let n=this.children();if(this.calledReaddir()){let s=n.slice(0,n.provisional);r?e(null,s):queueMicrotask(()=>e(null,s));return}if(this.#D.push(e),this.#R)return;this.#R=!0;let i=this.fullpath();this.#e.readdir(i,{withFileTypes:!0},(s,o)=>{if(s)this.#L(s.code),n.provisional=0;else{for(let a of o)this.#U(a,n);this.#z(n)}this.#B(n.slice(0,n.provisional))})}#G;async readdir(){if(!this.canReaddir())return[];let e=this.children();if(this.calledReaddir())return e.slice(0,e.provisional);let r=this.fullpath();if(this.#G)await this.#G;else{let n=()=>{};this.#G=new Promise(i=>n=i);try{for(let i of await this.#e.promises.readdir(r,{withFileTypes:!0}))this.#U(i,e);this.#z(e)}catch(i){this.#L(i.code),e.provisional=0}this.#G=void 0,n()}return e.slice(0,e.provisional)}readdirSync(){if(!this.canReaddir())return[];let e=this.children();if(this.calledReaddir())return e.slice(0,e.provisional);let r=this.fullpath();try{for(let n of this.#e.readdirSync(r,{withFileTypes:!0}))this.#U(n,e);this.#z(e)}catch(n){this.#L(n.code),e.provisional=0}return e.slice(0,e.provisional)}canReaddir(){if(this.#t&e5)return!1;let e=ei&this.#t;return e===ti||e===ts||e===Pa}shouldWalk(e,r){return(this.#t&ts)===ts&&!(this.#t&e5)&&!e.has(this)&&(!r||r(this))}async realpath(){if(this.#$)return this.#$;if(!((By|Hy|Ti)&this.#t))try{let e=await this.#e.promises.realpath(this.fullpath());return this.#$=this.resolve(e)}catch{this.#j()}}realpathSync(){if(this.#$)return this.#$;if(!((By|Hy|Ti)&this.#t))try{let e=this.#e.realpathSync(this.fullpath());return this.#$=this.resolve(e)}catch{this.#j()}}[d5](e){if(e===this)return;e.isCWD=!1,this.isCWD=!0;let r=new Set([]),n=[],i=this;for(;i&&i.parent;)r.add(i),i.#x=n.join(this.sep),i.#T=n.join("/"),i=i.parent,n.push("..");for(i=e;i&&i.parent&&!r.has(i);)i.#x=void 0,i.#T=void 0,i=i.parent}},Wy=class t extends qr{sep="\\";splitSep=Gbe;constructor(e,r=ti,n,i,s,o,a){super(e,r,n,i,s,o,a)}newChild(e,r=ti,n={}){return new t(e,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}getRootString(e){return Bu.win32.parse(e).root}getRoot(e){if(e=Bbe(e.toUpperCase()),e===this.root.name)return this.root;for(let[r,n]of Object.entries(this.roots))if(this.sameRoot(e,r))return this.roots[e]=n;return this.roots[e]=new Gu(e,this).root}sameRoot(e,r=this.root.name){return e=e.toUpperCase().replace(/\//g,"\\").replace(s5,"$1\\"),e===r}},Vy=class t extends qr{splitSep="/";sep="/";constructor(e,r=ti,n,i,s,o,a){super(e,r,n,i,s,o,a)}getRootString(e){return e.startsWith("/")?"/":""}getRoot(e){return this.root}newChild(e,r=ti,n={}){return new t(e,r,this.root,this.roots,this.nocase,this.childrenCache(),n)}},Ky=class{root;rootPath;roots;cwd;#e;#r;#s;nocase;#i;constructor(e=process.cwd(),r,n,{nocase:i,childrenCacheSize:s=16*1024,fs:o=Ef}={}){this.#i=i5(o),(e instanceof URL||e.startsWith("file://"))&&(e=(0,n5.fileURLToPath)(e));let a=r.resolve(e);this.roots=Object.create(null),this.rootPath=this.parseRootPath(a),this.#e=new Gy,this.#r=new Gy,this.#s=new PI(s);let c=a.substring(this.rootPath.length).split(n);if(c.length===1&&!c[0]&&c.pop(),i===void 0)throw new TypeError("must provide nocase setting to PathScurryBase ctor");this.nocase=i,this.root=this.newRoot(this.#i),this.roots[this.rootPath]=this.root;let u=this.root,l=c.length-1,d=r.sep,p=this.rootPath,f=!1;for(let m of c){let h=l--;u=u.child(m,{relative:new Array(h).fill("..").join(d),relativePosix:new Array(h).fill("..").join("/"),fullpath:p+=(f?"":d)+m}),f=!0}this.cwd=u}depth(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.depth()}childrenCache(){return this.#s}resolve(...e){let r="";for(let s=e.length-1;s>=0;s--){let o=e[s];if(!(!o||o===".")&&(r=r?`${o}/${r}`:o,this.isAbsolute(o)))break}let n=this.#e.get(r);if(n!==void 0)return n;let i=this.cwd.resolve(r).fullpath();return this.#e.set(r,i),i}resolvePosix(...e){let r="";for(let s=e.length-1;s>=0;s--){let o=e[s];if(!(!o||o===".")&&(r=r?`${o}/${r}`:o,this.isAbsolute(o)))break}let n=this.#r.get(r);if(n!==void 0)return n;let i=this.cwd.resolve(r).fullpathPosix();return this.#r.set(r,i),i}relative(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.relative()}relativePosix(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.relativePosix()}basename(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.name}dirname(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),(e.parent||e).fullpath()}async readdir(e=this.cwd,r={withFileTypes:!0}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof qr||(r=e,e=this.cwd);let{withFileTypes:n}=r;if(e.canReaddir()){let i=await e.readdir();return n?i:i.map(s=>s.name)}else return[]}readdirSync(e=this.cwd,r={withFileTypes:!0}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof qr||(r=e,e=this.cwd);let{withFileTypes:n=!0}=r;return e.canReaddir()?n?e.readdirSync():e.readdirSync().map(i=>i.name):[]}async lstat(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.lstat()}lstatSync(e=this.cwd){return typeof e=="string"&&(e=this.cwd.resolve(e)),e.lstatSync()}async readlink(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof qr||(r=e.withFileTypes,e=this.cwd);let n=await e.readlink();return r?n:n?.fullpath()}readlinkSync(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof qr||(r=e.withFileTypes,e=this.cwd);let n=e.readlinkSync();return r?n:n?.fullpath()}async realpath(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof qr||(r=e.withFileTypes,e=this.cwd);let n=await e.realpath();return r?n:n?.fullpath()}realpathSync(e=this.cwd,{withFileTypes:r}={withFileTypes:!1}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof qr||(r=e.withFileTypes,e=this.cwd);let n=e.realpathSync();return r?n:n?.fullpath()}async walk(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof qr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=[];(!s||s(e))&&a.push(n?e:e.fullpath());let c=new Set,u=(d,p)=>{c.add(d),d.readdirCB((f,m)=>{if(f)return p(f);let h=m.length;if(!h)return p();let g=()=>{--h===0&&p()};for(let v of m)(!s||s(v))&&a.push(n?v:v.fullpath()),i&&v.isSymbolicLink()?v.realpath().then(S=>S?.isUnknown()?S.lstat():S).then(S=>S?.shouldWalk(c,o)?u(S,g):g()):v.shouldWalk(c,o)?u(v,g):g()},!0)},l=e;return new Promise((d,p)=>{u(l,f=>{if(f)return p(f);d(a)})})}walkSync(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof qr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=[];(!s||s(e))&&a.push(n?e:e.fullpath());let c=new Set([e]);for(let u of c){let l=u.readdirSync();for(let d of l){(!s||s(d))&&a.push(n?d:d.fullpath());let p=d;if(d.isSymbolicLink()){if(!(i&&(p=d.realpathSync())))continue;p.isUnknown()&&p.lstatSync()}p.shouldWalk(c,o)&&c.add(p)}}return a}[Symbol.asyncIterator](){return this.iterate()}iterate(e=this.cwd,r={}){return typeof e=="string"?e=this.cwd.resolve(e):e instanceof qr||(r=e,e=this.cwd),this.stream(e,r)[Symbol.asyncIterator]()}[Symbol.iterator](){return this.iterateSync()}*iterateSync(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof qr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r;(!s||s(e))&&(yield n?e:e.fullpath());let a=new Set([e]);for(let c of a){let u=c.readdirSync();for(let l of u){(!s||s(l))&&(yield n?l:l.fullpath());let d=l;if(l.isSymbolicLink()){if(!(i&&(d=l.realpathSync())))continue;d.isUnknown()&&d.lstatSync()}d.shouldWalk(a,o)&&a.add(d)}}}stream(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof qr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=new To({objectMode:!0});(!s||s(e))&&a.write(n?e:e.fullpath());let c=new Set,u=[e],l=0,d=()=>{let p=!1;for(;!p;){let f=u.shift();if(!f){l===0&&a.end();return}l++,c.add(f);let m=(g,v,S=!1)=>{if(g)return a.emit("error",g);if(i&&!S){let b=[];for(let y of v)y.isSymbolicLink()&&b.push(y.realpath().then(x=>x?.isUnknown()?x.lstat():x));if(b.length){Promise.all(b).then(()=>m(null,v,!0));return}}for(let b of v)b&&(!s||s(b))&&(a.write(n?b:b.fullpath())||(p=!0));l--;for(let b of v){let y=b.realpathCached()||b;y.shouldWalk(c,o)&&u.push(y)}p&&!a.flowing?a.once("drain",d):h||d()},h=!0;f.readdirCB(m,!0),h=!1}};return d(),a}streamSync(e=this.cwd,r={}){typeof e=="string"?e=this.cwd.resolve(e):e instanceof qr||(r=e,e=this.cwd);let{withFileTypes:n=!0,follow:i=!1,filter:s,walkFilter:o}=r,a=new To({objectMode:!0}),c=new Set;(!s||s(e))&&a.write(n?e:e.fullpath());let u=[e],l=0,d=()=>{let p=!1;for(;!p;){let f=u.shift();if(!f){l===0&&a.end();return}l++,c.add(f);let m=f.readdirSync();for(let h of m)(!s||s(h))&&(a.write(n?h:h.fullpath())||(p=!0));l--;for(let h of m){let g=h;if(h.isSymbolicLink()){if(!(i&&(g=h.realpathSync())))continue;g.isUnknown()&&g.lstatSync()}g.shouldWalk(c,o)&&u.push(g)}}p&&!a.flowing&&a.once("drain",d)};return d(),a}chdir(e=this.cwd){let r=this.cwd;this.cwd=typeof e=="string"?this.cwd.resolve(e):e,this.cwd[d5](r)}},Gu=class extends Ky{sep="\\";constructor(e=process.cwd(),r={}){let{nocase:n=!0}=r;super(e,Bu.win32,"\\",{...r,nocase:n}),this.nocase=n;for(let i=this.cwd;i;i=i.parent)i.nocase=this.nocase}parseRootPath(e){return Bu.win32.parse(e).root.toUpperCase()}newRoot(e){return new Wy(this.rootPath,ts,void 0,this.roots,this.nocase,this.childrenCache(),{fs:e})}isAbsolute(e){return e.startsWith("/")||e.startsWith("\\")||/^[a-z]:(\/|\\)/i.test(e)}},Wu=class extends Ky{sep="/";constructor(e=process.cwd(),r={}){let{nocase:n=!1}=r;super(e,Bu.posix,"/",{...r,nocase:n}),this.nocase=n}parseRootPath(e){return"/"}newRoot(e){return new Vy(this.rootPath,ts,void 0,this.roots,this.nocase,this.childrenCache(),{fs:e})}isAbsolute(e){return e.startsWith("/")}},$f=class extends Wu{constructor(e=process.cwd(),r={}){let{nocase:n=!0}=r;super(e,{...r,nocase:n})}},kUe=process.platform==="win32"?Wy:Vy,p5=process.platform==="win32"?Gu:process.platform==="darwin"?$f:Wu;var Vbe=t=>t.length>=1,Kbe=t=>t.length>=1,Vu=class t{#e;#r;#s;length;#i;#o;#b;#v;#l;#a;#p=!0;constructor(e,r,n,i){if(!Vbe(e))throw new TypeError("empty pattern list");if(!Kbe(r))throw new TypeError("empty glob list");if(r.length!==e.length)throw new TypeError("mismatched pattern list and glob list lengths");if(this.length=e.length,n<0||n>=this.length)throw new TypeError("index out of range");if(this.#e=e,this.#r=r,this.#s=n,this.#i=i,this.#s===0){if(this.isUNC()){let[s,o,a,c,...u]=this.#e,[l,d,p,f,...m]=this.#r;u[0]===""&&(u.shift(),m.shift());let h=[s,o,a,c,""].join("/"),g=[l,d,p,f,""].join("/");this.#e=[h,...u],this.#r=[g,...m],this.length=this.#e.length}else if(this.isDrive()||this.isAbsolute()){let[s,...o]=this.#e,[a,...c]=this.#r;o[0]===""&&(o.shift(),c.shift());let u=s+"/",l=a+"/";this.#e=[u,...o],this.#r=[l,...c],this.length=this.#e.length}}}pattern(){return this.#e[this.#s]}isString(){return typeof this.#e[this.#s]=="string"}isGlobstar(){return this.#e[this.#s]===Ir}isRegExp(){return this.#e[this.#s]instanceof RegExp}globString(){return this.#b=this.#b||(this.#s===0?this.isAbsolute()?this.#r[0]+this.#r.slice(1).join("/"):this.#r.join("/"):this.#r.slice(this.#s).join("/"))}hasMore(){return this.length>this.#s+1}rest(){return this.#o!==void 0?this.#o:this.hasMore()?(this.#o=new t(this.#e,this.#r,this.#s+1,this.#i),this.#o.#a=this.#a,this.#o.#l=this.#l,this.#o.#v=this.#v,this.#o):this.#o=null}isUNC(){let e=this.#e;return this.#l!==void 0?this.#l:this.#l=this.#i==="win32"&&this.#s===0&&e[0]===""&&e[1]===""&&typeof e[2]=="string"&&!!e[2]&&typeof e[3]=="string"&&!!e[3]}isDrive(){let e=this.#e;return this.#v!==void 0?this.#v:this.#v=this.#i==="win32"&&this.#s===0&&this.length>1&&typeof e[0]=="string"&&/^[a-z]:$/i.test(e[0])}isAbsolute(){let e=this.#e;return this.#a!==void 0?this.#a:this.#a=e[0]===""&&e.length>1||this.isDrive()||this.isUNC()}root(){let e=this.#e[0];return typeof e=="string"&&this.isAbsolute()&&this.#s===0?e:""}checkFollowGlobstar(){return!(this.#s===0||!this.isGlobstar()||!this.#p)}markFollowGlobstar(){return this.#s===0||!this.isGlobstar()||!this.#p?!1:(this.#p=!1,!0)}};var Jbe=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",Ku=class{relative;relativeChildren;absolute;absoluteChildren;platform;mmopts;constructor(e,{nobrace:r,nocase:n,noext:i,noglobstar:s,platform:o=Jbe}){this.relative=[],this.absolute=[],this.relativeChildren=[],this.absoluteChildren=[],this.platform=o,this.mmopts={dot:!0,nobrace:r,nocase:n,noext:i,noglobstar:s,optimizationLevel:2,platform:o,nocomment:!0,nonegate:!0};for(let a of e)this.add(a)}add(e){let r=new Pn(e,this.mmopts);for(let n=0;n[e,!!(r&2),!!(r&1)])}},MI=class{store=new Map;add(e,r){if(!e.canReaddir())return;let n=this.store.get(e);n?n.find(i=>i.globString()===r.globString())||n.push(r):this.store.set(e,[r])}get(e){let r=this.store.get(e);if(!r)throw new Error("attempting to walk unknown path");return r}entries(){return this.keys().map(e=>[e,this.store.get(e)])}keys(){return[...this.store.keys()].filter(e=>e.canReaddir())}},If=class t{hasWalkedCache;matches=new NI;subwalks=new MI;patterns;follow;dot;opts;constructor(e,r){this.opts=e,this.follow=!!e.follow,this.dot=!!e.dot,this.hasWalkedCache=r?r.copy():new AI}processPatterns(e,r){this.patterns=r;let n=r.map(i=>[e,i]);for(let[i,s]of n){this.hasWalkedCache.storeWalked(i,s);let o=s.root(),a=s.isAbsolute()&&this.opts.absolute!==!1;if(o){i=i.resolve(o==="/"&&this.opts.root!==void 0?this.opts.root:o);let d=s.rest();if(d)s=d;else{this.matches.add(i,!0,!1);continue}}if(i.isENOENT())continue;let c,u,l=!1;for(;typeof(c=s.pattern())=="string"&&(u=s.rest());)i=i.resolve(c),s=u,l=!0;if(c=s.pattern(),u=s.rest(),l){if(this.hasWalkedCache.hasWalked(i,s))continue;this.hasWalkedCache.storeWalked(i,s)}if(typeof c=="string"){let d=c===".."||c===""||c===".";this.matches.add(i.resolve(c),a,d);continue}else if(c===Ir){(!i.isSymbolicLink()||this.follow||s.checkFollowGlobstar())&&this.subwalks.add(i,s);let d=u?.pattern(),p=u?.rest();if(!u||(d===""||d===".")&&!p)this.matches.add(i,a,d===""||d===".");else if(d===".."){let f=i.parent||i;p?this.hasWalkedCache.hasWalked(f,p)||this.subwalks.add(f,p):this.matches.add(f,a,!0)}}else c instanceof RegExp&&this.subwalks.add(i,s)}return this}subwalkTargets(){return this.subwalks.keys()}child(){return new t(this.opts,this.hasWalkedCache)}filterEntries(e,r){let n=this.subwalks.get(e),i=this.child();for(let s of r)for(let o of n){let a=o.isAbsolute(),c=o.pattern(),u=o.rest();c===Ir?i.testGlobstar(s,o,u,a):c instanceof RegExp?i.testRegExp(s,c,u,a):i.testString(s,c,u,a)}return i}testGlobstar(e,r,n,i){if((this.dot||!e.name.startsWith("."))&&(r.hasMore()||this.matches.add(e,i,!1),e.canReaddir()&&(this.follow||!e.isSymbolicLink()?this.subwalks.add(e,r):e.isSymbolicLink()&&(n&&r.checkFollowGlobstar()?this.subwalks.add(e,n):r.markFollowGlobstar()&&this.subwalks.add(e,r)))),n){let s=n.pattern();if(typeof s=="string"&&s!==".."&&s!==""&&s!==".")this.testString(e,s,n.rest(),i);else if(s===".."){let o=e.parent||e;this.subwalks.add(o,n)}else s instanceof RegExp&&this.testRegExp(e,s,n.rest(),i)}}testRegExp(e,r,n,i){r.test(e.name)&&(n?this.subwalks.add(e,n):this.matches.add(e,i,!1))}testString(e,r,n,i){e.isNamed(r)&&(n?this.subwalks.add(e,n):this.matches.add(e,i,!1))}};var Xbe=(t,e)=>typeof t=="string"?new Ku([t],e):Array.isArray(t)?new Ku(t,e):t,Jy=class{path;patterns;opts;seen=new Set;paused=!1;aborted=!1;#e=[];#r;#s;signal;maxDepth;includeChildMatches;constructor(e,r,n){if(this.patterns=e,this.path=r,this.opts=n,this.#s=!n.posix&&n.platform==="win32"?"\\":"/",this.includeChildMatches=n.includeChildMatches!==!1,(n.ignore||!this.includeChildMatches)&&(this.#r=Xbe(n.ignore??[],n),!this.includeChildMatches&&typeof this.#r.add!="function")){let i="cannot ignore child matches, ignore lacks add() method.";throw new Error(i)}this.maxDepth=n.maxDepth||1/0,n.signal&&(this.signal=n.signal,this.signal.addEventListener("abort",()=>{this.#e.length=0}))}#i(e){return this.seen.has(e)||!!this.#r?.ignored?.(e)}#o(e){return!!this.#r?.childrenIgnored?.(e)}pause(){this.paused=!0}resume(){if(this.signal?.aborted)return;this.paused=!1;let e;for(;!this.paused&&(e=this.#e.shift());)e()}onResume(e){this.signal?.aborted||(this.paused?this.#e.push(e):e())}async matchCheck(e,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=e.realpathCached()||await e.realpath(),!n)return;e=n}let s=e.isUnknown()||this.opts.stat?await e.lstat():e;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let o=await s.realpath();o&&(o.isUnknown()||this.opts.stat)&&await o.lstat()}return this.matchCheckTest(s,r)}matchCheckTest(e,r){return e&&(this.maxDepth===1/0||e.depth()<=this.maxDepth)&&(!r||e.canReaddir())&&(!this.opts.nodir||!e.isDirectory())&&(!this.opts.nodir||!this.opts.follow||!e.isSymbolicLink()||!e.realpathCached()?.isDirectory())&&!this.#i(e)?e:void 0}matchCheckSync(e,r){if(r&&this.opts.nodir)return;let n;if(this.opts.realpath){if(n=e.realpathCached()||e.realpathSync(),!n)return;e=n}let s=e.isUnknown()||this.opts.stat?e.lstatSync():e;if(this.opts.follow&&this.opts.nodir&&s?.isSymbolicLink()){let o=s.realpathSync();o&&(o?.isUnknown()||this.opts.stat)&&o.lstatSync()}return this.matchCheckTest(s,r)}matchFinish(e,r){if(this.#i(e))return;if(!this.includeChildMatches&&this.#r?.add){let s=`${e.relativePosix()}/**`;this.#r.add(s)}let n=this.opts.absolute===void 0?r:this.opts.absolute;this.seen.add(e);let i=this.opts.mark&&e.isDirectory()?this.#s:"";if(this.opts.withFileTypes)this.matchEmit(e);else if(n){let s=this.opts.posix?e.fullpathPosix():e.fullpath();this.matchEmit(s+i)}else{let s=this.opts.posix?e.relativePosix():e.relative(),o=this.opts.dotRelative&&!s.startsWith(".."+this.#s)?"."+this.#s:"";this.matchEmit(s?o+s+i:"."+i)}}async match(e,r,n){let i=await this.matchCheck(e,n);i&&this.matchFinish(i,r)}matchSync(e,r,n){let i=this.matchCheckSync(e,n);i&&this.matchFinish(i,r)}walkCB(e,r,n){this.signal?.aborted&&n(),this.walkCB2(e,r,new If(this.opts),n)}walkCB2(e,r,n,i){if(this.#o(e))return i();if(this.signal?.aborted&&i(),this.paused){this.onResume(()=>this.walkCB2(e,r,n,i));return}n.processPatterns(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,u]of n.matches.entries())this.#i(a)||(s++,this.match(a,c,u).then(()=>o()));for(let a of n.subwalkTargets()){if(this.maxDepth!==1/0&&a.depth()>=this.maxDepth)continue;s++;let c=a.readdirCached();a.calledReaddir()?this.walkCB3(a,c,n,o):a.readdirCB((u,l)=>this.walkCB3(a,l,n,o),!0)}o()}walkCB3(e,r,n,i){n=n.filterEntries(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,u]of n.matches.entries())this.#i(a)||(s++,this.match(a,c,u).then(()=>o()));for(let[a,c]of n.subwalks.entries())s++,this.walkCB2(a,c,n.child(),o);o()}walkCBSync(e,r,n){this.signal?.aborted&&n(),this.walkCB2Sync(e,r,new If(this.opts),n)}walkCB2Sync(e,r,n,i){if(this.#o(e))return i();if(this.signal?.aborted&&i(),this.paused){this.onResume(()=>this.walkCB2Sync(e,r,n,i));return}n.processPatterns(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,u]of n.matches.entries())this.#i(a)||this.matchSync(a,c,u);for(let a of n.subwalkTargets()){if(this.maxDepth!==1/0&&a.depth()>=this.maxDepth)continue;s++;let c=a.readdirSync();this.walkCB3Sync(a,c,n,o)}o()}walkCB3Sync(e,r,n,i){n=n.filterEntries(e,r);let s=1,o=()=>{--s===0&&i()};for(let[a,c,u]of n.matches.entries())this.#i(a)||this.matchSync(a,c,u);for(let[a,c]of n.subwalks.entries())s++,this.walkCB2Sync(a,c,n.child(),o);o()}},Rf=class extends Jy{matches=new Set;constructor(e,r,n){super(e,r,n)}matchEmit(e){this.matches.add(e)}async walk(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&await this.path.lstat(),await new Promise((e,r)=>{this.walkCB(this.path,this.patterns,()=>{this.signal?.aborted?r(this.signal.reason):e(this.matches)})}),this.matches}walkSync(){if(this.signal?.aborted)throw this.signal.reason;return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>{if(this.signal?.aborted)throw this.signal.reason}),this.matches}},Of=class extends Jy{results;constructor(e,r,n){super(e,r,n),this.results=new To({signal:this.signal,objectMode:!0}),this.results.on("drain",()=>this.resume()),this.results.on("resume",()=>this.resume())}matchEmit(e){this.results.write(e),this.results.flowing||this.pause()}stream(){let e=this.path;return e.isUnknown()?e.lstat().then(()=>{this.walkCB(e,this.patterns,()=>this.results.end())}):this.walkCB(e,this.patterns,()=>this.results.end()),this.results}streamSync(){return this.path.isUnknown()&&this.path.lstatSync(),this.walkCBSync(this.path,this.patterns,()=>this.results.end()),this.results}};var Ybe=typeof process=="object"&&process&&typeof process.platform=="string"?process.platform:"linux",$i=class{absolute;cwd;root;dot;dotRelative;follow;ignore;magicalBraces;mark;matchBase;maxDepth;nobrace;nocase;nodir;noext;noglobstar;pattern;platform;realpath;scurry;stat;signal;windowsPathsNoEscape;withFileTypes;includeChildMatches;opts;patterns;constructor(e,r){if(!r)throw new TypeError("glob options required");if(this.withFileTypes=!!r.withFileTypes,this.signal=r.signal,this.follow=!!r.follow,this.dot=!!r.dot,this.dotRelative=!!r.dotRelative,this.nodir=!!r.nodir,this.mark=!!r.mark,r.cwd?(r.cwd instanceof URL||r.cwd.startsWith("file://"))&&(r.cwd=(0,f5.fileURLToPath)(r.cwd)):this.cwd="",this.cwd=r.cwd||"",this.root=r.root,this.magicalBraces=!!r.magicalBraces,this.nobrace=!!r.nobrace,this.noext=!!r.noext,this.realpath=!!r.realpath,this.absolute=r.absolute,this.includeChildMatches=r.includeChildMatches!==!1,this.noglobstar=!!r.noglobstar,this.matchBase=!!r.matchBase,this.maxDepth=typeof r.maxDepth=="number"?r.maxDepth:1/0,this.stat=!!r.stat,this.ignore=r.ignore,this.withFileTypes&&this.absolute!==void 0)throw new Error("cannot set absolute and withFileTypes:true");if(typeof e=="string"&&(e=[e]),this.windowsPathsNoEscape=!!r.windowsPathsNoEscape||r.allowWindowsEscape===!1,this.windowsPathsNoEscape&&(e=e.map(c=>c.replace(/\\/g,"/"))),this.matchBase){if(r.noglobstar)throw new TypeError("base matching requires globstar");e=e.map(c=>c.includes("/")?c:`./**/${c}`)}if(this.pattern=e,this.platform=r.platform||Ybe,this.opts={...r,platform:this.platform},r.scurry){if(this.scurry=r.scurry,r.nocase!==void 0&&r.nocase!==r.scurry.nocase)throw new Error("nocase option contradicts provided scurry option")}else{let c=r.platform==="win32"?Gu:r.platform==="darwin"?$f:r.platform?Wu:p5;this.scurry=new c(this.cwd,{nocase:r.nocase,fs:r.fs})}this.nocase=this.scurry.nocase;let n=this.platform==="darwin"||this.platform==="win32",i={...r,dot:this.dot,matchBase:this.matchBase,nobrace:this.nobrace,nocase:this.nocase,nocaseMagicOnly:n,nocomment:!0,noext:this.noext,nonegate:!0,optimizationLevel:2,platform:this.platform,windowsPathsNoEscape:this.windowsPathsNoEscape,debug:!!this.opts.debug},s=this.pattern.map(c=>new Pn(c,i)),[o,a]=s.reduce((c,u)=>(c[0].push(...u.set),c[1].push(...u.globParts),c),[[],[]]);this.patterns=o.map((c,u)=>{let l=a[u];if(!l)throw new Error("invalid pattern object");return new Vu(c,l,0,this.platform)})}async walk(){return[...await new Rf(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walk()]}walkSync(){return[...new Rf(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).walkSync()]}stream(){return new Of(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).stream()}streamSync(){return new Of(this.patterns,this.scurry.cwd,{...this.opts,maxDepth:this.maxDepth!==1/0?this.maxDepth+this.scurry.cwd.depth():1/0,platform:this.platform,nocase:this.nocase,includeChildMatches:this.includeChildMatches}).streamSync()}iterateSync(){return this.streamSync()[Symbol.iterator]()}[Symbol.iterator](){return this.iterateSync()}iterate(){return this.stream()[Symbol.asyncIterator]()}[Symbol.asyncIterator](){return this.iterate()}};var DI=(t,e={})=>{Array.isArray(t)||(t=[t]);for(let r of t)if(new Pn(r,e).hasMagic())return!0;return!1};function Xy(t,e={}){return new $i(t,e).streamSync()}function g5(t,e={}){return new $i(t,e).stream()}function Cf(t,e={}){return new $i(t,e).walkSync()}async function m5(t,e={}){return new $i(t,e).walk()}function Yy(t,e={}){return new $i(t,e).iterateSync()}function v5(t,e={}){return new $i(t,e).iterate()}var Qbe=Xy,eSe=Object.assign(g5,{sync:Xy}),tSe=Yy,rSe=Object.assign(v5,{sync:Yy}),nSe=Object.assign(Cf,{stream:Xy,iterate:Yy}),h5=Object.assign(m5,{glob:m5,globSync:Cf,sync:nSe,globStream:g5,stream:eSe,globStreamSync:Xy,streamSync:Qbe,globIterate:v5,iterate:rSe,globIterateSync:Yy,iterateSync:tSe,Glob:$i,hasMagic:DI,escape:Fu,unescape:Ei});h5.glob=h5;re();var Ju=require("fs"),Qy=require("os"),Pf=require("path"),e_=(0,Pf.join)((0,Qy.homedir)(),".claude-mem","transcript-watch.json"),iSe=(0,Pf.join)((0,Qy.homedir)(),".claude-mem","transcript-watch-state.json");function Aa(t){return t&&(t.startsWith("~")?(0,Pf.join)((0,Qy.homedir)(),t.slice(1)):t)}function y5(t=e_){let e=Aa(t);if(!(0,Ju.existsSync)(e))throw new Error(`Transcript watch config not found: ${e}`);let r=(0,Ju.readFileSync)(e,"utf-8"),n=JSON.parse(r);if(!n.version||!n.watches)throw new Error(`Invalid transcript watch config: ${e}`);return n.stateFile||(n.stateFile=iSe),n}var Fs=require("fs"),_5=require("path");re();function b5(t){try{if(!(0,Fs.existsSync)(t))return{offsets:{}};let e=(0,Fs.readFileSync)(t,"utf-8"),r=JSON.parse(e);return r.offsets?r:{offsets:{}}}catch(e){return _.warn("TRANSCRIPT","Failed to load watch state, starting fresh",{statePath:t,error:e instanceof Error?e.message:String(e)}),{offsets:{}}}}function S5(t,e){try{let r=(0,_5.dirname)(t);(0,Fs.existsSync)(r)||(0,Fs.mkdirSync)(r,{recursive:!0}),(0,Fs.writeFileSync)(t,JSON.stringify(e,null,2))}catch(r){_.warn("TRANSCRIPT","Failed to save watch state",{statePath:t,error:r instanceof Error?r.message:String(r)})}}r_();n_();i_();s_();Dr();re();lf();var Ii=require("fs"),o_=require("path");re();function w5(t,e){if(!t)return;let r=(0,o_.resolve)(t);if(r.includes("/.git/")||r.includes("\\.git\\")||r.endsWith("/.git")||r.endsWith("\\.git"))return;let n=(0,o_.dirname)(t);(0,Ii.existsSync)(n)||(0,Ii.mkdirSync)(n,{recursive:!0});let i="";(0,Ii.existsSync)(t)&&(i=(0,Ii.readFileSync)(t,"utf-8"));let s=`# Memory Context - -${e}`,o=n$(i,s),a=`${t}.tmp`;try{(0,Ii.writeFileSync)(a,o),(0,Ii.renameSync)(a,t)}catch(c){_.error("AGENTS_MD","Failed to write AGENTS.md",{agentsPath:t},c)}}function oSe(t){let e=t.trim().replace(/^\$\.?/,"");if(!e)return[];let r=[],n=e.split(".");for(let i of n){let s=/([^[\]]+)|\[(\d+)\]/g,o;for(;(o=s.exec(i))!==null;)o[1]?r.push(o[1]):o[2]&&r.push(parseInt(o[2],10))}return r}function zI(t,e){if(!e)return;let r=oSe(e),n=t;for(let i of r){if(n==null)return;n=n[i]}return n}function E5(t){return t==null||t===""}function k5(t,e){if(t.startsWith("$watch.")){let r=t.slice(7);return e.watch[r]}if(t.startsWith("$schema.")){let r=t.slice(8);return e.schema[r]}if(t.startsWith("$session.")){let r=t.slice(9);return e.session?e.session[r]:void 0}if(t==="$cwd")return e.watch.workspace;if(t==="$project")return e.watch.project}function Xu(t,e,r){if(t!==void 0){if(typeof t=="string"){let n=k5(t,r);return n!==void 0?n:zI(e,t)}if(t.coalesce&&Array.isArray(t.coalesce))for(let n of t.coalesce){let i=Xu(n,e,r);if(!E5(i))return i}if(t.path){let n=k5(t.path,r);if(n!==void 0)return n;let i=zI(e,t.path);if(!E5(i))return i}if(t.value!==void 0)return t.value;if(t.default!==void 0)return t.default}}function T5(t,e,r){let n={};if(!t)return n;for(let[i,s]of Object.entries(t))n[i]=Xu(s,e,r);return n}function $5(t,e,r){if(!e)return!0;let n=e.path||r.eventTypePath||"type",i=n?zI(t,n):void 0;if(e.exists&&(i==null||i===""))return!1;if(e.equals!==void 0)return i===e.equals;if(e.in&&Array.isArray(e.in))return e.in.includes(i);if(e.contains!==void 0)return typeof i=="string"&&i.includes(e.contains);if(e.regex)try{return new RegExp(e.regex).test(String(i??""))}catch{return!1}return!0}var a_=class{sessions=new Map;async processEntry(e,r,n,i){for(let s of n.events)$5(e,s.match,n)&&await this.handleEvent(e,r,n,s,i??void 0)}getSessionKey(e,r){return`${e.name}:${r}`}getOrCreateSession(e,r){let n=this.getSessionKey(e,r),i=this.sessions.get(n);return i||(i={sessionId:r,pendingTools:new Map},this.sessions.set(n,i)),i}resolveSessionId(e,r,n,i,s){let o={watch:r,schema:n},a=i.fields?.sessionId??(n.sessionIdPath?{path:n.sessionIdPath}:void 0),c=Xu(a,e,o);return typeof c=="string"&&c.trim()?c:typeof c=="number"?String(c):s&&s.trim()?s:null}resolveCwd(e,r,n,i,s){let o={watch:r,schema:n,session:s},a=i.fields?.cwd??(n.cwdPath?{path:n.cwdPath}:void 0),c=Xu(a,e,o);return typeof c=="string"&&c.trim()?c:r.workspace?r.workspace:s.cwd}resolveProject(e,r,n,i,s){let o={watch:r,schema:n,session:s},a=i.fields?.project??(n.projectPath?{path:n.projectPath}:void 0),c=Xu(a,e,o);return typeof c=="string"&&c.trim()?c:r.project?r.project:s.cwd?Ta(s.cwd):s.project}async handleEvent(e,r,n,i,s){let o=this.resolveSessionId(e,r,n,i,s);if(!o){_.debug("TRANSCRIPT","Skipping event without sessionId",{event:i.name,watch:r.name});return}let a=this.getOrCreateSession(r,o),c=this.resolveCwd(e,r,n,i,a);c&&(a.cwd=c);let u=this.resolveProject(e,r,n,i,a);u&&(a.project=u);let l=T5(i.fields,e,{watch:r,schema:n,session:a});switch(i.action){case"session_context":this.applySessionContext(a,l);break;case"session_init":await this.handleSessionInit(a,l),r.context?.updateOn?.includes("session_start")&&await this.updateContext(a,r);break;case"user_message":typeof l.message=="string"&&(a.lastUserMessage=l.message),typeof l.prompt=="string"&&(a.lastUserMessage=l.prompt);break;case"assistant_message":typeof l.message=="string"&&(a.lastAssistantMessage=l.message);break;case"tool_use":await this.handleToolUse(a,l);break;case"tool_result":await this.handleToolResult(a,l);break;case"observation":await this.sendObservation(a,l);break;case"file_edit":await this.sendFileEdit(a,l);break;case"session_end":await this.handleSessionEnd(a,r);break;default:break}}applySessionContext(e,r){let n=typeof r.cwd=="string"?r.cwd:void 0,i=typeof r.project=="string"?r.project:void 0;n&&(e.cwd=n),i&&(e.project=i)}async handleSessionInit(e,r){let n=typeof r.prompt=="string"?r.prompt:"",i=e.cwd??process.cwd();n&&(e.lastUserMessage=n),await Af.execute({sessionId:e.sessionId,cwd:i,prompt:n,platform:"transcript"})}async handleToolUse(e,r){let n=typeof r.toolId=="string"?r.toolId:void 0,i=typeof r.toolName=="string"?r.toolName:void 0,s=this.maybeParseJson(r.toolInput),o=this.maybeParseJson(r.toolResponse),a={id:n,name:i,input:s,response:o};if(n&&e.pendingTools.set(n,{name:a.name,input:a.input}),i==="apply_patch"&&typeof s=="string"){let c=this.parseApplyPatchFiles(s);for(let u of c)await this.sendFileEdit(e,{filePath:u,edits:[{type:"apply_patch",patch:s}]})}o!==void 0&&i&&await this.sendObservation(e,{toolName:i,toolInput:s,toolResponse:o})}async handleToolResult(e,r){let n=typeof r.toolId=="string"?r.toolId:void 0,i=typeof r.toolName=="string"?r.toolName:void 0,s=this.maybeParseJson(r.toolResponse),o=this.maybeParseJson(r.toolInput),a=i;if(n&&e.pendingTools.has(n)){let c=e.pendingTools.get(n);o=c.input??o,a=a??c.name,e.pendingTools.delete(n)}a&&await this.sendObservation(e,{toolName:a,toolInput:o,toolResponse:s})}async sendObservation(e,r){let n=typeof r.toolName=="string"?r.toolName:void 0;n&&await Nf.execute({sessionId:e.sessionId,cwd:e.cwd??process.cwd(),toolName:n,toolInput:this.maybeParseJson(r.toolInput),toolResponse:this.maybeParseJson(r.toolResponse),platform:"transcript"})}async sendFileEdit(e,r){let n=typeof r.filePath=="string"?r.filePath:void 0;n&&await Mf.execute({sessionId:e.sessionId,cwd:e.cwd??process.cwd(),filePath:n,edits:Array.isArray(r.edits)?r.edits:void 0,platform:"transcript"})}maybeParseJson(e){if(typeof e!="string")return e;let r=e.trim();if(!r||!(r.startsWith("{")||r.startsWith("[")))return e;try{return JSON.parse(r)}catch{return e}}parseApplyPatchFiles(e){let r=[],n=e.split(` -`);for(let i of n){let s=i.trim();if(s.startsWith("*** Update File: "))r.push(s.replace("*** Update File: ","").trim());else if(s.startsWith("*** Add File: "))r.push(s.replace("*** Add File: ","").trim());else if(s.startsWith("*** Delete File: "))r.push(s.replace("*** Delete File: ","").trim());else if(s.startsWith("*** Move to: "))r.push(s.replace("*** Move to: ","").trim());else if(s.startsWith("+++ ")){let o=s.replace("+++ ","").replace(/^b\//,"").trim();o&&o!=="/dev/null"&&r.push(o)}}return Array.from(new Set(r))}async handleSessionEnd(e,r){await this.queueSummary(e),await Df.execute({sessionId:e.sessionId,cwd:e.cwd??process.cwd(),platform:"transcript"}),await this.updateContext(e,r),e.pendingTools.clear();let n=this.getSessionKey(r,e.sessionId);this.sessions.delete(n)}async queueSummary(e){if(!await kr())return;let n=e.lastAssistantMessage??"";try{await dt("/api/sessions/summarize",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({contentSessionId:e.sessionId,last_assistant_message:n})})}catch(i){_.warn("TRANSCRIPT","Summary request failed",{error:i instanceof Error?i.message:String(i)})}}async updateContext(e,r){if(!r.context||r.context.mode!=="agents"||!await kr())return;let i=e.cwd??r.workspace;if(!i)return;let o=xy(i).allProjects.join(",");try{let a=await dt(`/api/context/inject?projects=${encodeURIComponent(o)}`);if(!a.ok)return;let c=(await a.text()).trim();if(!c)return;let u=Aa(r.context.path??`${i}/AGENTS.md`);w5(u,c),_.debug("TRANSCRIPT","Updated AGENTS.md context",{agentsPath:u,watch:r.name})}catch(a){_.warn("TRANSCRIPT","Failed to update AGENTS.md context",{error:a instanceof Error?a.message:String(a)})}}};var LI=class{constructor(e,r,n,i){this.filePath=e;this.onLine=n;this.onOffset=i;this.tailState={offset:r,partial:""}}watcher=null;tailState;start(){this.readNewData().catch(()=>{}),this.watcher=(0,Ri.watch)(this.filePath,{persistent:!0},()=>{this.readNewData().catch(()=>{})})}close(){this.watcher?.close(),this.watcher=null}async readNewData(){if(!(0,Ri.existsSync)(this.filePath))return;let e=0;try{e=(0,Ri.statSync)(this.filePath).size}catch{return}if(e{let a=this.resolveWatchFiles(n);for(let c of a)this.tailers.has(c)||await this.addTailer(c,e,r)},s);this.rescanTimers.push(o)}resolveSchema(e){return typeof e.schema=="string"?this.config.schemas?.[e.schema]??null:e.schema}resolveWatchFiles(e){if(this.hasGlob(e))return Cf(e,{nodir:!0,absolute:!0});if((0,Ri.existsSync)(e))try{if((0,Ri.statSync)(e).isDirectory()){let n=(0,u_.join)(e,"**","*.jsonl");return Cf(n,{nodir:!0,absolute:!0})}return[e]}catch{return[]}return[]}hasGlob(e){return/[*?[\]{}()]/.test(e)}async addTailer(e,r,n){if(this.tailers.has(e))return;let i=this.extractSessionIdFromPath(e),s=this.state.offsets[e]??0;if(s===0&&r.startAtEnd)try{s=(0,Ri.statSync)(e).size}catch{s=0}let o=new LI(e,s,async a=>{await this.handleLine(a,r,n,e,i)},a=>{this.state.offsets[e]=a,S5(this.statePath,this.state)});o.start(),this.tailers.set(e,o),_.info("TRANSCRIPT","Watching transcript file",{file:e,watch:r.name,schema:n.name})}async handleLine(e,r,n,i,s){try{let o=JSON.parse(e);await this.processor.processEntry(o,r,n,s??void 0)}catch(o){_.debug("TRANSCRIPT","Failed to parse transcript line",{watch:r.name,file:(0,u_.basename)(i)},o)}}extractSessionIdFromPath(e){let r=e.match(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/i);return r?r[0]:null}};var DSe={},ISe=120*1e3;function XI(){return JI.default.join(Se.get("CLAUDE_MEM_DATA_DIR"),".worker-start-attempted")}function RSe(){if(process.platform!=="win32")return!1;let t=XI();if(!(0,ns.existsSync)(t))return!1;try{let e=(0,ns.statSync)(t).mtimeMs;return Date.now()-e{this.resolveInitialization=e}),this.dbManager=new bv,this.sessionManager=new Ev(this.dbManager),this.sseBroadcaster=new kv,this.sdkAgent=new ny(this.dbManager,this.sessionManager),this.geminiAgent=new iy(this.dbManager,this.sessionManager),this.openRouterAgent=new ay(this.dbManager,this.sessionManager),this.paginationHelper=new cy(this.dbManager),this.settingsManager=new uy(this.dbManager),this.sessionEventBroadcaster=new fy(this.sseBroadcaster,this),this.sessionManager.setOnSessionDeleted(()=>{this.broadcastProcessingStatus()}),this.mcpClient=new Ec({name:"worker-search-proxy",version:PSe},{capabilities:{}}),this.server=new gv({getInitializationComplete:()=>this.initializationCompleteFlag,getMcpReady:()=>this.mcpReady,onShutdown:()=>this.shutdown(),onRestart:()=>this.shutdown(),workerPath:__filename,getAiStatus:()=>{let e="claude";return Du()&&Ea()?e="openrouter":Mu()&&wa()&&(e="gemini"),{provider:e,authMethod:Xh(),lastInteraction:this.lastAiInteraction?{timestamp:this.lastAiInteraction.timestamp,success:this.lastAiInteraction.success,...this.lastAiInteraction.error&&{error:this.lastAiInteraction.error}}:null}}}),this.registerRoutes(),this.registerSignalHandlers()}registerSignalHandlers(){$M(async()=>{this.isShuttingDown=!0,await this.shutdown()})}registerRoutes(){this.server.app.get("/api/context/inject",async(e,r,n)=>{if(!this.initializationCompleteFlag||!this.searchRoutes){_.warn("SYSTEM","Context requested before initialization complete, returning empty"),r.status(200).json({content:[{type:"text",text:""}]});return}n()}),this.server.app.use("/api",async(e,r,n)=>{if(this.initializationCompleteFlag){n();return}let i=3e4,s=new Promise((o,a)=>setTimeout(()=>a(new Error("Database initialization timeout")),i));try{await Promise.race([this.initializationComplete,s]),n()}catch(o){_.error("HTTP",`Request to ${e.method} ${e.path} rejected \u2014 DB not initialized`,{},o),r.status(503).json({error:"Service initializing",message:"Database is still initializing, please retry"})}}),this.server.registerRoutes(new hy(this.sseBroadcaster,this.dbManager,this.sessionManager)),this.server.registerRoutes(new yy(this.sessionManager,this.dbManager,this.sdkAgent,this.geminiAgent,this.openRouterAgent,this.sessionEventBroadcaster,this)),this.server.registerRoutes(new _y(this.paginationHelper,this.dbManager,this.sessionManager,this.sseBroadcaster,this,this.startTime)),this.server.registerRoutes(new Oy(this.settingsManager)),this.server.registerRoutes(new Py),this.server.registerRoutes(new Ay(this.dbManager,"claude-mem"))}async start(){let e=Jr(),r=SE();await kM(),await this.server.listen(e,r),zM({pid:process.pid,port:e,startedAt:new Date().toISOString()}),vt().registerProcess("worker",{pid:process.pid,type:"worker",startedAt:new Date().toISOString()}),_.info("SYSTEM","Worker started",{host:r,port:e,pid:process.pid}),this.initializeBackground().catch(n=>{_.error("SYSTEM","Background initialization failed",{},n)})}async initializeBackground(){try{await LM();let{ModeManager:e}=await Promise.resolve().then(()=>(Qr(),N6)),{SettingsDefaultsManager:r}=await Promise.resolve().then(()=>(rr(),eM)),{USER_SETTINGS_PATH:n}=await Promise.resolve().then(()=>(zt(),cM)),i=r.loadFromFile(n);(i.CLAUDE_MEM_MODE==="local"||!i.CLAUDE_MEM_MODE)&&UM(),i.CLAUDE_MEM_CHROMA_ENABLED!=="false"?(this.chromaMcpManager=ws.getInstance(),_.info("SYSTEM","ChromaMcpManager initialized (lazy - connects on first use)")):_.info("SYSTEM","Chroma disabled via CLAUDE_MEM_CHROMA_ENABLED=false, skipping ChromaMcpManager");let o=i.CLAUDE_MEM_MODE;e.getInstance().loadMode(o),_.info("SYSTEM",`Mode loaded: ${o}`),await this.dbManager.initialize();let{PendingMessageStore:a}=await Promise.resolve().then(()=>(ha(),ou)),u=new a(this.dbManager.getSessionStore().db,3).resetStaleProcessingMessages(0);u>0&&_.info("SYSTEM",`Reset ${u} stale processing messages to pending`);let l=new dy,d=new py,p=new ly(this.dbManager.getSessionSearch(),this.dbManager.getSessionStore(),this.dbManager.getChromaSync(),l,d);if(this.searchRoutes=new $y(p),this.server.registerRoutes(this.searchRoutes),_.info("WORKER","SearchManager initialized and search routes registered"),this.initializationCompleteFlag=!0,this.resolveInitialization(),_.info("SYSTEM","Core initialization complete (DB + search ready)"),(0,ns.existsSync)(e_))try{let y=y5(e_);if(y.watches.length>0){let x=Aa(y.stateFile??"~/.claude-mem/transcript-watch-state.json");this.transcriptWatcher=new c_(y,x),await this.transcriptWatcher.start(),_.info("SYSTEM",`Transcript watcher started with ${y.watches.length} watch target(s)`)}}catch(y){_.warn("SYSTEM","Failed to start transcript watcher (non-fatal)",{},y)}this.chromaMcpManager&&Cc.backfillAllProjects().then(()=>{_.info("CHROMA_SYNC","Backfill check complete for all projects")}).catch(y=>{_.error("CHROMA_SYNC","Backfill failed (non-blocking)",{},y)});let f=JI.default.join(__dirname,"mcp-server.cjs");vt().assertCanSpawn("mcp server");let m=new $c({command:"node",args:[f],env:Ui(process.env)}),h=3e5,g=this.mcpClient.connect(m),v,S=new Promise((y,x)=>{v=setTimeout(()=>x(new Error("MCP connection timeout after 5 minutes")),h)});try{await Promise.race([g,S])}catch(y){clearTimeout(v),_.warn("WORKER","MCP server connection failed, cleaning up subprocess",{error:y instanceof Error?y.message:String(y)});try{await m.close()}catch{}throw y}clearTimeout(v);let b=m._process;b?.pid&&(vt().registerProcess("mcp-server",{pid:b.pid,type:"mcp",startedAt:new Date().toISOString()},b),b.once("exit",()=>{vt().unregisterProcess("mcp-server")})),this.mcpReady=!0,_.success("WORKER","MCP server connected"),this.stopOrphanReaper=P6(()=>{let y=new Set;for(let[x]of this.sessionManager.sessions)y.add(x);return y}),_.info("SYSTEM","Started orphan reaper (runs every 30 seconds)"),this.staleSessionReaperInterval=setInterval(async()=>{try{let y=await this.sessionManager.reapStaleSessions();y>0&&_.info("SYSTEM",`Reaped ${y} stale sessions`)}catch(y){_.error("SYSTEM","Stale session reaper error",{error:y instanceof Error?y.message:String(y)})}},120*1e3),this.processPendingQueues(50).then(y=>{y.sessionsStarted>0&&_.info("SYSTEM",`Auto-recovered ${y.sessionsStarted} sessions with pending work`,{totalPending:y.totalPendingSessions,started:y.sessionsStarted,sessionIds:y.startedSessionIds})}).catch(y=>{_.error("SYSTEM","Auto-recovery of pending queues failed",{},y)})}catch(e){throw _.error("SYSTEM","Background initialization failed",{},e),e}}getActiveAgent(){return Du()&&Ea()?this.openRouterAgent:Mu()&&wa()?this.geminiAgent:this.sdkAgent}startSessionProcessor(e,r){if(!e)return;let n=e.sessionDbId,i=this.getActiveAgent(),s=i.constructor.name;e.abortController.signal.aborted&&(_.debug("SYSTEM","Replacing aborted AbortController before starting generator",{sessionId:e.sessionDbId}),e.abortController=new AbortController);let o=!1,a=!1;_.info("SYSTEM",`Starting generator (${r}) using ${s}`,{sessionId:n}),e.lastGeneratorActivity=Date.now(),e.generatorPromise=i.startSession(e,this).catch(async c=>{let u=c?.message||"";if(["Claude executable not found","CLAUDE_CODE_PATH","ENOENT","spawn","Invalid API key","API_KEY_INVALID","API key expired","API key not valid","PERMISSION_DENIED","Gemini API error: 400","Gemini API error: 401","Gemini API error: 403","FOREIGN KEY constraint failed"].some(d=>u.includes(d))){o=!0,this.lastAiInteraction={timestamp:Date.now(),success:!1,provider:s,error:u},_.error("SDK","Unrecoverable generator error - will NOT restart",{sessionId:e.sessionDbId,project:e.project,errorMessage:u});return}if(this.isSessionTerminatedError(c))return _.warn("SDK","SDK resume failed, falling back to standalone processing",{sessionId:e.sessionDbId,project:e.project,reason:c instanceof Error?c.message:String(c)}),this.runFallbackForTerminatedSession(e,c);throw(u.includes("aborted by user")||u.includes("No conversation found"))&&e.memorySessionId&&(_.warn("SDK","Detected stale resume failure, clearing memorySessionId for fresh start",{sessionId:e.sessionDbId,memorySessionId:e.memorySessionId,errorMessage:u}),this.dbManager.getSessionStore().updateMemorySessionId(e.sessionDbId,null),e.memorySessionId=null,e.forceInit=!0),_.error("SDK","Session generator failed",{sessionId:e.sessionDbId,project:e.project,provider:s},c),a=!0,this.lastAiInteraction={timestamp:Date.now(),success:!1,provider:s,error:u},c}).finally(async()=>{let c=go(e.sessionDbId);if(c&&c.process.exitCode===null&&await vo(c,5e3),e.generatorPromise=null,!a&&!o&&(this.lastAiInteraction={timestamp:Date.now(),success:!0,provider:s}),o){this.terminateSession(e.sessionDbId,"unrecoverable_error");return}let l=this.sessionManager.getPendingMessageStore().getPendingCount(e.sessionDbId);if(e.idleTimedOut&&(e.idleTimedOut=!1,l===0)){this.terminateSession(e.sessionDbId,"idle_timeout");return}let d=3;if(l>0){if(e.consecutiveRestarts=(e.consecutiveRestarts||0)+1,e.consecutiveRestarts>d){_.error("SYSTEM","Exceeded max pending-work restarts, stopping to prevent infinite loop",{sessionId:e.sessionDbId,pendingCount:l,consecutiveRestarts:e.consecutiveRestarts}),e.consecutiveRestarts=0,this.terminateSession(e.sessionDbId,"max_restarts_exceeded");return}_.info("SYSTEM","Pending work remains after generator exit, restarting with fresh AbortController",{sessionId:e.sessionDbId,pendingCount:l,attempt:e.consecutiveRestarts}),e.abortController=new AbortController,this.startSessionProcessor(e,"pending-work-restart"),this.broadcastProcessingStatus()}else e.consecutiveRestarts=0,this.sessionManager.removeSessionImmediate(e.sessionDbId)})}isSessionTerminatedError(e){let n=(e instanceof Error?e.message:String(e)).toLowerCase();return n.includes("process aborted by user")||n.includes("processtransport")||n.includes("not ready for writing")||n.includes("session generator failed")||n.includes("claude code process")}async runFallbackForTerminatedSession(e,r){if(!e)return;let n=e.sessionDbId;if(!e.memorySessionId){let o=`fallback-${n}-${Date.now()}`;e.memorySessionId=o,this.dbManager.getSessionStore().updateMemorySessionId(n,o)}if(wa())try{await this.geminiAgent.startSession(e,this);return}catch(o){_.warn("SDK","Fallback Gemini failed, trying OpenRouter",{sessionId:n,error:o instanceof Error?o.message:String(o)})}if(Ea())try{await this.openRouterAgent.startSession(e,this);return}catch(o){_.warn("SDK","Fallback OpenRouter failed",{sessionId:n,error:o instanceof Error?o.message:String(o)})}let s=this.sessionManager.getPendingMessageStore().markAllSessionMessagesAbandoned(n);s>0&&_.warn("SDK","No fallback available; marked pending messages abandoned",{sessionId:n,abandoned:s}),this.sessionManager.removeSessionImmediate(n),this.sessionEventBroadcaster.broadcastSessionCompleted(n)}terminateSession(e,r){let i=this.sessionManager.getPendingMessageStore().markAllSessionMessagesAbandoned(e);_.info("SYSTEM","Session terminated",{sessionId:e,reason:r,abandonedMessages:i}),this.sessionManager.removeSessionImmediate(e)}async processPendingQueues(e=10){let{PendingMessageStore:r}=await Promise.resolve().then(()=>(ha(),ou)),n=new r(this.dbManager.getSessionStore().db,3),i=this.dbManager.getSessionStore(),s=360*60*1e3,o=Date.now()-s;try{let u=i.db.prepare(` +`),totalEstimate:f}}finally{(0,jn.closeSync)(r)}}var b_=class extends Zr{getLogFilePath(){let e=ve.get("CLAUDE_MEM_DATA_DIR"),r=(0,__.join)(e,"logs"),n=new Date().toISOString().split("T")[0];return(0,__.join)(r,`claude-mem-${n}.log`)}getLogsDir(){let e=ve.get("CLAUDE_MEM_DATA_DIR");return(0,__.join)(e,"logs")}setupRoutes(e){e.get("/api/logs",this.handleGetLogs.bind(this)),e.post("/api/logs/clear",this.handleClearLogs.bind(this))}handleGetLogs=this.wrapHandler((e,r)=>{let n=this.getLogFilePath();if(!(0,jn.existsSync)(n)){r.json({logs:"",path:n,exists:!1});return}let i=parseInt(e.query.lines||"1000",10),s=Math.min(i,1e4),{lines:o,totalEstimate:a}=DSe(n,s),c=o===""?0:o.split(` +`).length;r.json({logs:o,path:n,exists:!0,totalLines:a,returnedLines:c})});handleClearLogs=this.wrapHandler((e,r)=>{let n=this.getLogFilePath();if(!(0,jn.existsSync)(n)){r.json({success:!0,message:"Log file does not exist",path:n});return}(0,jn.writeFileSync)(n,"","utf-8"),_.info("SYSTEM","Log file cleared via UI",{path:n}),r.json({success:!0,message:"Log file cleared",path:n})})};re();var S_=class extends Zr{constructor(r,n){super();this.dbManager=r;this.defaultProject=n}setupRoutes(r){r.post("/api/memory/save",this.handleSaveMemory.bind(this))}handleSaveMemory=this.wrapHandler(async(r,n)=>{let{text:i,title:s,project:o}=r.body,a=o||this.defaultProject;if(!i||typeof i!="string"||i.trim().length===0){this.badRequest(n,"text is required and must be non-empty");return}let c=this.dbManager.getSessionStore(),u=this.dbManager.getChromaSync(),l=c.getOrCreateManualSession(a),d={type:"discovery",title:s||i.substring(0,60).trim()+(i.length>60?"...":""),subtitle:"Manual memory",facts:[],narrative:i,concepts:[],files_read:[],files_modified:[]},p=c.storeObservation(l,a,d,0,0);_.info("HTTP","Manual observation saved",{id:p.id,project:a,title:d.title}),u.syncObservation(p.id,l,a,d,0,p.createdAtEpoch,0).catch(f=>{_.error("CHROMA","ChromaDB sync failed",{id:p.id},f)}),n.json({success:!0,id:p.id,title:d.title,project:a,message:`Memory saved as observation #${p.id}`})})};var Sxe={},fxe=120*1e3;function vR(){return gR.default.join(ve.get("CLAUDE_MEM_DATA_DIR"),".worker-start-attempted")}function mxe(){if(process.platform!=="win32")return!1;let t=vR();if(!(0,Ni.existsSync)(t))return!1;try{let e=(0,Ni.statSync)(t).mtimeMs;return Date.now()-e{this.resolveInitialization=e}),this.dbManager=new Cv,this.sessionManager=new Mv(this.dbManager),this.sseBroadcaster=new Dv,this.sdkAgent=new fy(this.dbManager,this.sessionManager),this.geminiAgent=new my(this.dbManager,this.sessionManager),this.openRouterAgent=new vy(this.dbManager,this.sessionManager),this.paginationHelper=new yy(this.dbManager),this.settingsManager=new _y(this.dbManager),this.sessionEventBroadcaster=new wy(this.sseBroadcaster,this),this.sessionManager.setOnSessionDeleted(()=>{this.broadcastProcessingStatus()}),this.mcpClient=new Nc({name:"worker-search-proxy",version:vxe},{capabilities:{}}),this.server=new $v({getInitializationComplete:()=>this.initializationCompleteFlag,getMcpReady:()=>this.mcpReady,onShutdown:()=>this.shutdown(),onRestart:()=>this.shutdown(),workerPath:__filename,getAiStatus:()=>{let e="claude";return Vu()&&Aa()?e="openrouter":Wu()&&Pa()&&(e="gemini"),{provider:e,authMethod:dg(),lastInteraction:this.lastAiInteraction?{timestamp:this.lastAiInteraction.timestamp,success:this.lastAiInteraction.success,...this.lastAiInteraction.error&&{error:this.lastAiInteraction.error}}:null}}}),this.registerRoutes(),this.registerSignalHandlers()}registerSignalHandlers(){XM(async()=>{this.isShuttingDown=!0,await this.shutdown()})}registerRoutes(){this.server.app.get("/api/context/inject",async(e,r,n)=>{if(!this.initializationCompleteFlag||!this.searchRoutes){_.warn("SYSTEM","Context requested before initialization complete, returning empty"),r.status(200).json({content:[{type:"text",text:""}]});return}n()}),this.server.app.use("/api",async(e,r,n)=>{if(this.initializationCompleteFlag){n();return}let i=3e4,s=new Promise((o,a)=>setTimeout(()=>a(new Error("Database initialization timeout")),i));try{await Promise.race([this.initializationComplete,s]),n()}catch(o){_.error("HTTP",`Request to ${e.method} ${e.path} rejected \u2014 DB not initialized`,{},o),r.status(503).json({error:"Service initializing",message:"Database is still initializing, please retry"})}}),this.server.registerRoutes(new s_(this.sseBroadcaster,this.dbManager,this.sessionManager)),this.server.registerRoutes(new u_(this.sessionManager,this.dbManager,this.sdkAgent,this.geminiAgent,this.openRouterAgent,this.sessionEventBroadcaster,this)),this.server.registerRoutes(new l_(this.paginationHelper,this.dbManager,this.sessionManager,this.sseBroadcaster,this,this.startTime)),this.server.registerRoutes(new y_(this.settingsManager)),this.server.registerRoutes(new b_),this.server.registerRoutes(new S_(this.dbManager,"claude-mem"))}async start(){let e=Yr(),r=DE();await KM(),await this.server.listen(e,r),uD({pid:process.pid,port:e,startedAt:new Date().toISOString()}),yt().registerProcess("worker",{pid:process.pid,type:"worker",startedAt:new Date().toISOString()}),_.info("SYSTEM","Worker started",{host:r,port:e,pid:process.pid}),this.initializeBackground().catch(n=>{_.error("SYSTEM","Background initialization failed",{},n)})}async initializeBackground(){try{await lD();let{ModeManager:e}=await Promise.resolve().then(()=>(tn(),Y6)),{SettingsDefaultsManager:r}=await Promise.resolve().then(()=>(tr(),EM)),{USER_SETTINGS_PATH:n}=await Promise.resolve().then(()=>(It(),PM)),i=r.loadFromFile(n);(i.CLAUDE_MEM_MODE==="local"||!i.CLAUDE_MEM_MODE)&&dD(),i.CLAUDE_MEM_CHROMA_ENABLED!=="false"?(this.chromaMcpManager=$s.getInstance(),_.info("SYSTEM","ChromaMcpManager initialized (lazy - connects on first use)")):_.info("SYSTEM","Chroma disabled via CLAUDE_MEM_CHROMA_ENABLED=false, skipping ChromaMcpManager");let o=i.CLAUDE_MEM_MODE;e.getInstance().loadMode(o),_.info("SYSTEM",`Mode loaded: ${o}`),await this.dbManager.initialize();let{PendingMessageStore:a}=await Promise.resolve().then(()=>(Ea(),_u)),u=new a(this.dbManager.getSessionStore().db,3).resetStaleProcessingMessages(0);u>0&&_.info("SYSTEM",`Reset ${u} stale processing messages to pending`);let l=new Sy,d=new xy,p=new by(this.dbManager.getSessionSearch(),this.dbManager.getSessionStore(),this.dbManager.getChromaSync(),l,d);this.searchRoutes=new h_(p),this.server.registerRoutes(this.searchRoutes),_.info("WORKER","SearchManager initialized and search routes registered"),this.initializationCompleteFlag=!0,this.resolveInitialization(),_.info("SYSTEM","Core initialization complete (DB + search ready)"),await this.startTranscriptWatcher(i),this.chromaMcpManager&&qc.backfillAllProjects().then(()=>{_.info("CHROMA_SYNC","Backfill check complete for all projects")}).catch(S=>{_.error("CHROMA_SYNC","Backfill failed (non-blocking)",{},S)});let f=gR.default.join(__dirname,"mcp-server.cjs");this.mcpReady=(0,Ni.existsSync)(f),yt().assertCanSpawn("mcp server");let m=new jc({command:"node",args:[f],env:Bi(process.env)}),h=3e5,g=this.mcpClient.connect(m),v,y=new Promise((S,x)=>{v=setTimeout(()=>x(new Error("MCP connection timeout after 5 minutes")),h)});try{await Promise.race([g,y])}catch(S){clearTimeout(v),_.warn("WORKER","MCP loopback self-check failed, cleaning up subprocess",{error:S instanceof Error?S.message:String(S)});try{await m.close()}catch{}_.info("WORKER","Bundled MCP server remains available for external stdio clients",{path:f});return}clearTimeout(v);let b=m._process;b?.pid&&(yt().registerProcess("mcp-server",{pid:b.pid,type:"mcp",startedAt:new Date().toISOString()},b),b.once("exit",()=>{yt().unregisterProcess("mcp-server")})),_.success("WORKER","MCP loopback self-check connected"),this.stopOrphanReaper=J6(()=>{let S=new Set;for(let[x]of this.sessionManager.sessions)S.add(x);return S}),_.info("SYSTEM","Started orphan reaper (runs every 30 seconds)"),this.staleSessionReaperInterval=setInterval(async()=>{try{let S=await this.sessionManager.reapStaleSessions();S>0&&_.info("SYSTEM",`Reaped ${S} stale sessions`)}catch(S){_.error("SYSTEM","Stale session reaper error",{error:S instanceof Error?S.message:String(S)})}},120*1e3),this.processPendingQueues(50).then(S=>{S.sessionsStarted>0&&_.info("SYSTEM",`Auto-recovered ${S.sessionsStarted} sessions with pending work`,{totalPending:S.totalPendingSessions,started:S.sessionsStarted,sessionIds:S.startedSessionIds})}).catch(S=>{_.error("SYSTEM","Auto-recovery of pending queues failed",{},S)})}catch(e){throw _.error("SYSTEM","Background initialization failed",{},e),e}}async startTranscriptWatcher(e){if(!(e.CLAUDE_MEM_TRANSCRIPTS_ENABLED!=="false")){_.info("TRANSCRIPT","Transcript watcher disabled via CLAUDE_MEM_TRANSCRIPTS_ENABLED=false");return}let n=e.CLAUDE_MEM_TRANSCRIPTS_CONFIG_PATH||ky,i=Ws(n);try{(0,Ni.existsSync)(i)||(U9(n),_.info("TRANSCRIPT","Created default transcript watch config",{configPath:i}));let s=L9(n),o=Ws(s.stateFile??Ty);this.transcriptWatcher=new r_(s,o),await this.transcriptWatcher.start(),_.info("TRANSCRIPT","Transcript watcher started",{configPath:i,statePath:o,watches:s.watches.length})}catch(s){this.transcriptWatcher?.stop(),this.transcriptWatcher=null,_.error("TRANSCRIPT","Failed to start transcript watcher (continuing without Codex ingestion)",{configPath:i},s)}}getActiveAgent(){return Vu()&&Aa()?this.openRouterAgent:Wu()&&Pa()?this.geminiAgent:this.sdkAgent}startSessionProcessor(e,r){if(!e)return;let n=e.sessionDbId,i=this.getActiveAgent(),s=i.constructor.name;e.abortController.signal.aborted&&(_.debug("SYSTEM","Replacing aborted AbortController before starting generator",{sessionId:e.sessionDbId}),e.abortController=new AbortController);let o=!1,a=!1;_.info("SYSTEM",`Starting generator (${r}) using ${s}`,{sessionId:n}),e.lastGeneratorActivity=Date.now(),e.generatorPromise=i.startSession(e,this).catch(async c=>{let u=c?.message||"";if(["Claude executable not found","CLAUDE_CODE_PATH","ENOENT","spawn","Invalid API key","API_KEY_INVALID","API key expired","API key not valid","PERMISSION_DENIED","Gemini API error: 400","Gemini API error: 401","Gemini API error: 403","FOREIGN KEY constraint failed"].some(d=>u.includes(d))){o=!0,this.lastAiInteraction={timestamp:Date.now(),success:!1,provider:s,error:u},_.error("SDK","Unrecoverable generator error - will NOT restart",{sessionId:e.sessionDbId,project:e.project,errorMessage:u});return}if(this.isSessionTerminatedError(c))return _.warn("SDK","SDK resume failed, falling back to standalone processing",{sessionId:e.sessionDbId,project:e.project,reason:c instanceof Error?c.message:String(c)}),this.runFallbackForTerminatedSession(e,c);throw(u.includes("aborted by user")||u.includes("No conversation found"))&&e.memorySessionId&&(_.warn("SDK","Detected stale resume failure, clearing memorySessionId for fresh start",{sessionId:e.sessionDbId,memorySessionId:e.memorySessionId,errorMessage:u}),this.dbManager.getSessionStore().updateMemorySessionId(e.sessionDbId,null),e.memorySessionId=null,e.forceInit=!0),_.error("SDK","Session generator failed",{sessionId:e.sessionDbId,project:e.project,provider:s},c),a=!0,this.lastAiInteraction={timestamp:Date.now(),success:!1,provider:s,error:u},c}).finally(async()=>{let c=To(e.sessionDbId);if(c&&c.process.exitCode===null&&await $o(c,5e3),e.generatorPromise=null,!a&&!o&&(this.lastAiInteraction={timestamp:Date.now(),success:!0,provider:s}),o){this.terminateSession(e.sessionDbId,"unrecoverable_error");return}let l=this.sessionManager.getPendingMessageStore().getPendingCount(e.sessionDbId);if(e.idleTimedOut&&(e.idleTimedOut=!1,l===0)){this.terminateSession(e.sessionDbId,"idle_timeout");return}let d=3;if(l>0){if(e.consecutiveRestarts=(e.consecutiveRestarts||0)+1,e.consecutiveRestarts>d){_.error("SYSTEM","Exceeded max pending-work restarts, stopping to prevent infinite loop",{sessionId:e.sessionDbId,pendingCount:l,consecutiveRestarts:e.consecutiveRestarts}),e.consecutiveRestarts=0,this.terminateSession(e.sessionDbId,"max_restarts_exceeded");return}_.info("SYSTEM","Pending work remains after generator exit, restarting with fresh AbortController",{sessionId:e.sessionDbId,pendingCount:l,attempt:e.consecutiveRestarts}),e.abortController=new AbortController,this.startSessionProcessor(e,"pending-work-restart"),this.broadcastProcessingStatus()}else e.consecutiveRestarts=0,this.sessionManager.removeSessionImmediate(e.sessionDbId)})}isSessionTerminatedError(e){let n=(e instanceof Error?e.message:String(e)).toLowerCase();return n.includes("process aborted by user")||n.includes("processtransport")||n.includes("not ready for writing")||n.includes("session generator failed")||n.includes("claude code process")}async runFallbackForTerminatedSession(e,r){if(!e)return;let n=e.sessionDbId;if(!e.memorySessionId){let o=`fallback-${n}-${Date.now()}`;e.memorySessionId=o,this.dbManager.getSessionStore().updateMemorySessionId(n,o)}if(Pa())try{await this.geminiAgent.startSession(e,this);return}catch(o){_.warn("SDK","Fallback Gemini failed, trying OpenRouter",{sessionId:n,error:o instanceof Error?o.message:String(o)})}if(Aa())try{await this.openRouterAgent.startSession(e,this);return}catch(o){_.warn("SDK","Fallback OpenRouter failed",{sessionId:n,error:o instanceof Error?o.message:String(o)})}let s=this.sessionManager.getPendingMessageStore().markAllSessionMessagesAbandoned(n);s>0&&_.warn("SDK","No fallback available; marked pending messages abandoned",{sessionId:n,abandoned:s}),this.sessionManager.removeSessionImmediate(n),this.sessionEventBroadcaster.broadcastSessionCompleted(n)}terminateSession(e,r){let i=this.sessionManager.getPendingMessageStore().markAllSessionMessagesAbandoned(e);_.info("SYSTEM","Session terminated",{sessionId:e,reason:r,abandonedMessages:i}),this.sessionManager.removeSessionImmediate(e)}async processPendingQueues(e=10){let{PendingMessageStore:r}=await Promise.resolve().then(()=>(Ea(),_u)),n=new r(this.dbManager.getSessionStore().db,3),i=this.dbManager.getSessionStore(),s=360*60*1e3,o=Date.now()-s;try{let u=i.db.prepare(` SELECT id FROM sdk_sessions WHERE status = 'active' AND started_at_epoch < ? `).all(o);if(u.length>0){let l=u.map(f=>f.id),d=l.map(()=>"?").join(",");i.db.prepare(` @@ -1515,7 +1653,7 @@ ${e}`,o=n$(i,s),a=`${t}.tmp`;try{(0,Ii.writeFileSync)(a,o),(0,Ii.renameSync)(a,t SET status = 'failed', failed_at_epoch = ? WHERE status = 'pending' AND session_db_id IN (${d}) - `).run(Date.now(),...l);p.changes>0&&_.info("SYSTEM",`Marked ${p.changes} pending messages from stale sessions as failed`)}}catch(u){_.error("SYSTEM","Failed to clean up stale sessions",{},u)}let a=n.getSessionsWithPendingMessages(),c={totalPendingSessions:a.length,sessionsStarted:0,sessionsSkipped:0,startedSessionIds:[]};if(a.length===0)return c;_.info("SYSTEM",`Processing up to ${e} of ${a.length} pending session queues`);for(let u of a){if(c.sessionsStarted>=e)break;try{if(this.sessionManager.getSession(u)?.generatorPromise){c.sessionsSkipped++;continue}let d=this.sessionManager.initializeSession(u);_.info("SYSTEM",`Starting processor for session ${u}`,{project:d.project,pendingCount:n.getPendingCount(u)}),this.startSessionProcessor(d,"startup-recovery"),c.sessionsStarted++,c.startedSessionIds.push(u),await new Promise(p=>setTimeout(p,100))}catch(l){_.error("SYSTEM",`Failed to process session ${u}`,{},l),c.sessionsSkipped++}}return c}async shutdown(){this.stopOrphanReaper&&(this.stopOrphanReaper(),this.stopOrphanReaper=null),this.staleSessionReaperInterval&&(clearInterval(this.staleSessionReaperInterval),this.staleSessionReaperInterval=null),this.transcriptWatcher&&(this.transcriptWatcher.stop(),this.transcriptWatcher=null,_.info("SYSTEM","Transcript watcher stopped")),await XM({server:this.server.getHttpServer(),sessionManager:this.sessionManager,mcpClient:this.mcpClient,dbManager:this.dbManager,chromaMcpManager:this.chromaMcpManager||void 0})}broadcastProcessingStatus(){let e=this.sessionManager.getTotalActiveWork(),r=e>0,n=this.sessionManager.getActiveSessionCount();_.info("WORKER","Broadcasting processing status",{isProcessing:r,queueDepth:e,activeSessions:n}),this.sseBroadcaster.broadcast({type:"processing_status",isProcessing:r,queueDepth:e})}};async function eH(t){if(ZM()==="alive")return _.info("SYSTEM","Worker PID file points to a live process, skipping duplicate spawn"),await Yo(t,Ts(Er.PORT_IN_USE_WAIT))?(_.info("SYSTEM","Worker became healthy while waiting on live PID"),!0):(_.warn("SYSTEM","Live PID detected but worker did not become healthy before timeout"),!1);if(await Yo(t,1e3)){let o=await JM(t);if(o.matches)return _.info("SYSTEM","Worker already running and healthy"),!0;if(qM(15e3)){if(_.info("SYSTEM","Version mismatch detected but PID file is recent \u2014 another restart likely in progress, polling health",{pluginVersion:o.pluginVersion,workerVersion:o.workerVersion}),await Yo(t,15e3))return _.info("SYSTEM","Worker became healthy after waiting for concurrent restart"),!0;_.warn("SYSTEM","Worker did not become healthy after waiting \u2014 proceeding with own restart")}if(_.info("SYSTEM","Worker version mismatch detected - auto-restarting",{pluginVersion:o.pluginVersion,workerVersion:o.workerVersion}),await ag(t),!await og(t,Ts(Er.PORT_IN_USE_WAIT)))return _.error("SYSTEM","Port did not free up after shutdown for version mismatch restart",{port:t}),!1;Xo()}return await Ud(t)?(_.info("SYSTEM","Port in use, waiting for worker to become healthy"),await Yo(t,Ts(Er.PORT_IN_USE_WAIT))?(_.info("SYSTEM","Worker is now healthy"),!0):(_.error("SYSTEM","Port in use but worker not responding to health checks"),!1)):RSe()?(_.warn("SYSTEM","Worker unavailable on Windows \u2014 skipping spawn (recent attempt failed within cooldown)"),!1):(_.info("SYSTEM","Starting worker daemon"),OSe(),FE(__filename,t)===void 0?(_.error("SYSTEM","Failed to spawn worker daemon"),!1):await Yo(t,Ts(Er.POST_SPAWN_WAIT))?(await KM(t,Ts(Er.READINESS_WAIT))||_.warn("SYSTEM","Worker is alive but readiness timed out \u2014 proceeding anyway"),CSe(),HM(),_.info("SYSTEM","Worker started successfully"),!0):(Xo(),_.error("SYSTEM","Worker failed to start (health check timeout)"),!1))}async function ASe(){let t=process.argv[2];(["start","hook","restart","--daemon"].includes(t)||t===void 0)&&sg()&&process.exit(0);let r=Jr();function n(i,s){let o=tH(i,s);console.log(JSON.stringify(o)),process.exit(0)}switch(t){case"start":{await eH(r)?n("ready"):n("error","Failed to start worker");break}case"stop":{await ag(r),await og(r,Ts(15e3))||_.warn("SYSTEM","Port did not free up after shutdown",{port:r}),Xo(),_.info("SYSTEM","Worker stopped successfully"),process.exit(0);break}case"restart":{_.info("SYSTEM","Restarting worker"),await ag(r),await og(r,Ts(15e3))||(_.error("SYSTEM","Port did not free up after shutdown, aborting restart",{port:r}),process.exit(0)),Xo(),FE(__filename,r)===void 0&&(_.error("SYSTEM","Failed to spawn worker daemon during restart"),process.exit(0)),await Yo(r,Ts(Er.POST_SPAWN_WAIT))||(Xo(),_.error("SYSTEM","Worker failed to restart"),process.exit(0)),_.info("SYSTEM","Worker restarted successfully"),process.exit(0);break}case"status":{let i=await Ud(r),s=UE();i&&s?(console.log("Worker is running"),console.log(` PID: ${s.pid}`),console.log(` Port: ${s.port}`),console.log(` Started: ${s.startedAt}`)):console.log("Worker is not running"),process.exit(0);break}case"cursor":{let i=process.argv[3],s=await _6(i,process.argv.slice(4));process.exit(s);break}case"gemini-cli":{let i=process.argv[3],s=await x6(i,process.argv.slice(4));process.exit(s);break}case"hook":{let i=process.argv[3],s=process.argv[4];(!i||!s)&&(console.error("Usage: claude-mem hook "),console.error("Platforms: claude-code, cursor, gemini-cli, raw"),console.error("Events: context, session-init, observation, summarize, session-complete, user-message"),process.exit(1)),await eH(r)||_.warn("SYSTEM","Worker failed to start before hook, handler will proceed gracefully");let{hookCommand:a}=await Promise.resolve().then(()=>(K5(),V5));await a(i,s);break}case"generate":{let i=process.argv.includes("--dry-run"),{generateClaudeMd:s}=await Promise.resolve().then(()=>(KI(),VI)),o=await s(i);process.exit(o);break}case"clean":{let i=process.argv.includes("--dry-run"),{cleanClaudeMd:s}=await Promise.resolve().then(()=>(KI(),VI)),o=await s(i);process.exit(o);break}default:{let i=UE();i&&FM(i.pid)&&(_.info("SYSTEM","Worker already running (PID alive), refusing to start duplicate",{existingPid:i.pid,existingPort:i.port,startedAt:i.startedAt}),process.exit(0)),await Ud(r)&&(_.info("SYSTEM","Port already in use, refusing to start duplicate",{port:r}),process.exit(0)),process.on("unhandledRejection",o=>{_.error("SYSTEM","Unhandled rejection in daemon",{reason:o instanceof Error?o.message:String(o)})}),process.on("uncaughtException",o=>{_.error("SYSTEM","Uncaught exception in daemon",{},o)}),new d_().start().catch(o=>{_.failure("SYSTEM","Worker failed to start",{},o),Xo(),process.exit(0)})}}}var NSe=typeof require<"u"&&typeof module<"u"?require.main===module||!module.parent:DSe.url===`file://${process.argv[1]}`||process.argv[1]?.endsWith("worker-service")||process.argv[1]?.endsWith("worker-service.cjs")||process.argv[1]?.replaceAll("\\","/")===__filename?.replaceAll("\\","/");NSe&&ASe().catch(t=>{_.error("SYSTEM","Fatal error in main",{},t instanceof Error?t:void 0),process.exit(0)});0&&(module.exports={WorkerService,buildStatusOutput,isPluginDisabledInClaudeSettings}); + `).run(Date.now(),...l);p.changes>0&&_.info("SYSTEM",`Marked ${p.changes} pending messages from stale sessions as failed`)}}catch(u){_.error("SYSTEM","Failed to clean up stale sessions",{},u)}let a=n.getSessionsWithPendingMessages(),c={totalPendingSessions:a.length,sessionsStarted:0,sessionsSkipped:0,startedSessionIds:[]};if(a.length===0)return c;_.info("SYSTEM",`Processing up to ${e} of ${a.length} pending session queues`);for(let u of a){if(c.sessionsStarted>=e)break;try{if(this.sessionManager.getSession(u)?.generatorPromise){c.sessionsSkipped++;continue}let d=this.sessionManager.initializeSession(u);_.info("SYSTEM",`Starting processor for session ${u}`,{project:d.project,pendingCount:n.getPendingCount(u)}),this.startSessionProcessor(d,"startup-recovery"),c.sessionsStarted++,c.startedSessionIds.push(u),await new Promise(p=>setTimeout(p,100))}catch(l){_.error("SYSTEM",`Failed to process session ${u}`,{},l),c.sessionsSkipped++}}return c}async shutdown(){this.transcriptWatcher&&(this.transcriptWatcher.stop(),this.transcriptWatcher=null,_.info("TRANSCRIPT","Transcript watcher stopped")),this.stopOrphanReaper&&(this.stopOrphanReaper(),this.stopOrphanReaper=null),this.staleSessionReaperInterval&&(clearInterval(this.staleSessionReaperInterval),this.staleSessionReaperInterval=null),await yD({server:this.server.getHttpServer(),sessionManager:this.sessionManager,mcpClient:this.mcpClient,dbManager:this.dbManager,chromaMcpManager:this.chromaMcpManager||void 0})}broadcastProcessingStatus(){let e=this.sessionManager.getTotalActiveWork(),r=e>0,n=this.sessionManager.getActiveSessionCount();_.info("WORKER","Broadcasting processing status",{isProcessing:r,queueDepth:e,activeSessions:n}),this.sseBroadcaster.broadcast({type:"processing_status",isProcessing:r,queueDepth:e})}};async function hR(t){return mD()==="alive"?(_.info("SYSTEM","Worker PID file points to a live process, skipping duplicate spawn"),await Zc(t,Cs($r.PORT_IN_USE_WAIT))?(_.info("SYSTEM","Worker became healthy while waiting on live PID"),!0):(_.warn("SYSTEM","Live PID detected but worker did not become healthy before timeout"),!1)):await Zc(t,1e3)?(await ik(t,Cs($r.READINESS_WAIT))||_.warn("SYSTEM","Worker is alive but readiness timed out \u2014 proceeding anyway"),_.info("SYSTEM","Worker already running and healthy"),!0):await Qd(t)?(_.info("SYSTEM","Port in use, waiting for worker to become healthy"),await Zc(t,Cs($r.PORT_IN_USE_WAIT))?(_.info("SYSTEM","Worker is now healthy"),!0):(_.error("SYSTEM","Port in use but worker not responding to health checks"),!1)):mxe()?(_.warn("SYSTEM","Worker unavailable on Windows \u2014 skipping spawn (recent attempt failed within cooldown)"),!1):(_.info("SYSTEM","Starting worker daemon"),hxe(),nk(__filename,t)===void 0?(_.error("SYSTEM","Failed to spawn worker daemon"),!1):await Zc(t,Cs($r.POST_SPAWN_WAIT))?(await ik(t,Cs($r.READINESS_WAIT))||_.warn("SYSTEM","Worker is alive but readiness timed out \u2014 proceeding anyway"),gxe(),fD(),_.info("SYSTEM","Worker started successfully"),!0):(Hc(),_.error("SYSTEM","Worker failed to start (health check timeout)"),!1))}async function yxe(){let t=process.argv[2];(["start","hook","restart","--daemon"].includes(t)||t===void 0)&&_g()&&process.exit(0);let r=Yr();function n(i,s){let o=R5(i,s);console.log(JSON.stringify(o)),process.exit(0)}switch(t){case"start":{await hR(r)?n("ready"):n("error","Failed to start worker");break}case"stop":{await ok(r),await sk(r,Cs(15e3))||_.warn("SYSTEM","Port did not free up after shutdown",{port:r}),Hc(),_.info("SYSTEM","Worker stopped successfully"),process.exit(0);break}case"restart":{_.info("SYSTEM","Restarting worker"),await ok(r),await sk(r,Cs(15e3))||(_.error("SYSTEM","Port did not free up after shutdown, aborting restart",{port:r}),process.exit(0)),Hc(),nk(__filename,r)===void 0&&(_.error("SYSTEM","Failed to spawn worker daemon during restart"),process.exit(0)),await Zc(r,Cs($r.POST_SPAWN_WAIT))||(Hc(),_.error("SYSTEM","Worker failed to restart"),process.exit(0)),_.info("SYSTEM","Worker restarted successfully"),process.exit(0);break}case"status":{let i=await Qd(r),s=rk();i&&s?(console.log("Worker is running"),console.log(` PID: ${s.pid}`),console.log(` Port: ${s.port}`),console.log(` Started: ${s.startedAt}`)):console.log("Worker is not running"),process.exit(0);break}case"cursor":{let i=process.argv[3],s=await j6(i,process.argv.slice(4));process.exit(s);break}case"gemini-cli":{let i=process.argv[3],s=await U6(i,process.argv.slice(4));process.exit(s);break}case"hook":{let i=process.argv[3],s=process.argv[4];(!i||!s)&&(console.error("Usage: claude-mem hook "),console.error("Platforms: claude-code, cursor, gemini-cli, raw"),console.error("Events: context, session-init, observation, summarize, session-complete, user-message"),process.exit(1)),await hR(r)||_.warn("SYSTEM","Worker failed to start before hook, handler will proceed gracefully");let{hookCommand:a}=await Promise.resolve().then(()=>(E5(),w5));await a(i,s);break}case"generate":{let i=process.argv.includes("--dry-run"),{generateClaudeMd:s}=await Promise.resolve().then(()=>(mR(),fR)),o=await s(i);process.exit(o);break}case"clean":{let i=process.argv.includes("--dry-run"),{cleanClaudeMd:s}=await Promise.resolve().then(()=>(mR(),fR)),o=await s(i);process.exit(o);break}default:{let i=rk();i&&pD(i.pid)&&(_.info("SYSTEM","Worker already running (PID alive), refusing to start duplicate",{existingPid:i.pid,existingPort:i.port,startedAt:i.startedAt}),process.exit(0)),await Qd(r)&&(_.info("SYSTEM","Port already in use, refusing to start duplicate",{port:r}),process.exit(0)),process.on("unhandledRejection",o=>{_.error("SYSTEM","Unhandled rejection in daemon",{reason:o instanceof Error?o.message:String(o)})}),process.on("uncaughtException",o=>{_.error("SYSTEM","Uncaught exception in daemon",{},o)}),new w_().start().catch(o=>{_.failure("SYSTEM","Worker failed to start",{},o),Hc(),process.exit(0)})}}}var _xe=typeof require<"u"&&typeof module<"u"?require.main===module||!module.parent||process.env.CLAUDE_MEM_MANAGED==="true":Sxe.url===`file://${process.argv[1]}`||process.argv[1]?.endsWith("worker-service")||process.argv[1]?.endsWith("worker-service.cjs")||process.argv[1]?.replaceAll("\\","/")===__filename?.replaceAll("\\","/");_xe&&yxe().catch(t=>{_.error("SYSTEM","Fatal error in main",{},t instanceof Error?t:void 0),process.exit(0)});0&&(module.exports={WorkerService,buildStatusOutput,ensureWorkerStarted,isPluginDisabledInClaudeSettings}); /*! Bundled license information: depd/index.js: diff --git a/plugin/skills/mem-search/SKILL.md b/plugin/skills/mem-search/SKILL.md index 22907195..2377ba23 100644 --- a/plugin/skills/mem-search/SKILL.md +++ b/plugin/skills/mem-search/SKILL.md @@ -125,3 +125,51 @@ get_observations(ids=[11131, 10942, 10855], orderBy="date_desc") - **Full observation:** ~500-1000 tokens each - **Batch fetch:** 1 HTTP request vs N individual requests - **10x token savings** by filtering before fetching + +## Smart-Explore Language Support + +Smart-explore tools (`smart_search`, `smart_outline`, `smart_unfold`) use tree-sitter AST parsing. The following languages are supported out of the box. + +### 24 Bundled Languages + +JS, TS, Python, Go, Rust, Ruby, Java, C, C++, Kotlin, Swift, PHP, Elixir, Lua, Scala, Bash, Haskell, Zig, CSS, SCSS, TOML, YAML, SQL, Markdown + +### Markdown Special Support + +Markdown files get structure-aware parsing beyond generic tree-sitter: + +- **Heading hierarchy** -- `#`/`##`/`###` headings are extracted as nested symbols (sections contain subsections) +- **Code block detection** -- fenced code blocks are surfaced as `code` symbols with language annotation +- **Section-aware unfold** -- `smart_unfold` on a heading returns the full section content (heading through all subsections until the next heading of equal or higher level) + +### User-Installable Grammars via `.claude-mem.json` + +Add custom tree-sitter grammars for languages not in the bundled set. Place `.claude-mem.json` in the project root: + +```json +{ + "grammars": { + "gleam": { + "package": "tree-sitter-gleam", + "extensions": [".gleam"] + }, + "protobuf": { + "package": "tree-sitter-proto", + "extensions": [".proto"], + "query": ".claude-mem/queries/proto.scm" + } + } +} +``` + +**Fields:** + +- `package` (string, required) -- npm package name for the tree-sitter grammar +- `extensions` (array of strings, required) -- file extensions to associate with this language +- `query` (string, optional) -- path to a custom `.scm` query file for symbol extraction. If omitted, a generic query is used. + +**Rules:** + +- User grammars do NOT override bundled languages. If a language is already bundled, the entry is ignored. +- The npm package must be installed in the project (`npm install tree-sitter-gleam`). +- Config is cached per project root. Changes to `.claude-mem.json` take effect on next worker restart. diff --git a/plugin/ui/viewer-bundle.js b/plugin/ui/viewer-bundle.js index 04a532a4..fdeca9b1 100644 --- a/plugin/ui/viewer-bundle.js +++ b/plugin/ui/viewer-bundle.js @@ -1,17 +1,17 @@ -"use strict";(()=>{var Xm=Object.create;var ju=Object.defineProperty;var $m=Object.getOwnPropertyDescriptor;var Km=Object.getOwnPropertyNames;var Ym=Object.getPrototypeOf,Qm=Object.prototype.hasOwnProperty;var Le=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Zm=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Km(t))!Qm.call(e,o)&&o!==n&&ju(e,o,{get:()=>t[o],enumerable:!(r=$m(t,o))||r.enumerable});return e};var ee=(e,t,n)=>(n=e!=null?Xm(Ym(e)):{},Zm(t||!e||!e.__esModule?ju(n,"default",{value:e,enumerable:!0}):n,e));var Ju=Le(F=>{"use strict";var Fr=Symbol.for("react.element"),Jm=Symbol.for("react.portal"),eg=Symbol.for("react.fragment"),tg=Symbol.for("react.strict_mode"),ng=Symbol.for("react.profiler"),rg=Symbol.for("react.provider"),og=Symbol.for("react.context"),lg=Symbol.for("react.forward_ref"),ig=Symbol.for("react.suspense"),sg=Symbol.for("react.memo"),ag=Symbol.for("react.lazy"),Bu=Symbol.iterator;function ug(e){return e===null||typeof e!="object"?null:(e=Bu&&e[Bu]||e["@@iterator"],typeof e=="function"?e:null)}var Vu={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Gu=Object.assign,Xu={};function Jn(e,t,n){this.props=e,this.context=t,this.refs=Xu,this.updater=n||Vu}Jn.prototype.isReactComponent={};Jn.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};Jn.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function $u(){}$u.prototype=Jn.prototype;function bi(e,t,n){this.props=e,this.context=t,this.refs=Xu,this.updater=n||Vu}var Hi=bi.prototype=new $u;Hi.constructor=bi;Gu(Hi,Jn.prototype);Hi.isPureReactComponent=!0;var qu=Array.isArray,Ku=Object.prototype.hasOwnProperty,ji={current:null},Yu={key:!0,ref:!0,__self:!0,__source:!0};function Qu(e,t,n){var r,o={},l=null,i=null;if(t!=null)for(r in t.ref!==void 0&&(i=t.ref),t.key!==void 0&&(l=""+t.key),t)Ku.call(t,r)&&!Yu.hasOwnProperty(r)&&(o[r]=t[r]);var s=arguments.length-2;if(s===1)o.children=n;else if(1{"use strict";ec.exports=Ju()});var cc=Le($=>{"use strict";function Gi(e,t){var n=e.length;e.push(t);e:for(;0>>1,o=e[r];if(0>>1;rKo(s,n))aKo(u,s)?(e[r]=u,e[a]=n,r=a):(e[r]=s,e[i]=n,r=i);else if(aKo(u,n))e[r]=u,e[a]=n,r=a;else break e}}return t}function Ko(e,t){var n=e.sortIndex-t.sortIndex;return n!==0?n:e.id-t.id}typeof performance=="object"&&typeof performance.now=="function"?(tc=performance,$.unstable_now=function(){return tc.now()}):(qi=Date,nc=qi.now(),$.unstable_now=function(){return qi.now()-nc});var tc,qi,nc,Tt=[],$t=[],mg=1,nt=null,Ne=3,Zo=!1,Mn=!1,br=!1,lc=typeof setTimeout=="function"?setTimeout:null,ic=typeof clearTimeout=="function"?clearTimeout:null,rc=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function Xi(e){for(var t=ct($t);t!==null;){if(t.callback===null)Qo($t);else if(t.startTime<=e)Qo($t),t.sortIndex=t.expirationTime,Gi(Tt,t);else break;t=ct($t)}}function $i(e){if(br=!1,Xi(e),!Mn)if(ct(Tt)!==null)Mn=!0,Yi(Ki);else{var t=ct($t);t!==null&&Qi($i,t.startTime-e)}}function Ki(e,t){Mn=!1,br&&(br=!1,ic(Hr),Hr=-1),Zo=!0;var n=Ne;try{for(Xi(t),nt=ct(Tt);nt!==null&&(!(nt.expirationTime>t)||e&&!uc());){var r=nt.callback;if(typeof r=="function"){nt.callback=null,Ne=nt.priorityLevel;var o=r(nt.expirationTime<=t);t=$.unstable_now(),typeof o=="function"?nt.callback=o:nt===ct(Tt)&&Qo(Tt),Xi(t)}else Qo(Tt);nt=ct(Tt)}if(nt!==null)var l=!0;else{var i=ct($t);i!==null&&Qi($i,i.startTime-t),l=!1}return l}finally{nt=null,Ne=n,Zo=!1}}var Jo=!1,Yo=null,Hr=-1,sc=5,ac=-1;function uc(){return!($.unstable_now()-ace||125r?(e.sortIndex=n,Gi($t,e),ct(Tt)===null&&e===ct($t)&&(br?(ic(Hr),Hr=-1):br=!0,Qi($i,n-r))):(e.sortIndex=o,Gi(Tt,e),Mn||Zo||(Mn=!0,Yi(Ki))),e};$.unstable_shouldYield=uc;$.unstable_wrapCallback=function(e){var t=Ne;return function(){var n=Ne;Ne=t;try{return e.apply(this,arguments)}finally{Ne=n}}}});var dc=Le((k0,fc)=>{"use strict";fc.exports=cc()});var vp=Le(Je=>{"use strict";var gg=te(),Qe=dc();function w(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Ss=Object.prototype.hasOwnProperty,hg=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,pc={},mc={};function vg(e){return Ss.call(mc,e)?!0:Ss.call(pc,e)?!1:hg.test(e)?mc[e]=!0:(pc[e]=!0,!1)}function yg(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function Eg(e,t,n,r){if(t===null||typeof t>"u"||yg(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function Re(e,t,n,r,o,l,i){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=l,this.removeEmptyString=i}var Te={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){Te[e]=new Re(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];Te[t]=new Re(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){Te[e]=new Re(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){Te[e]=new Re(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){Te[e]=new Re(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){Te[e]=new Re(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){Te[e]=new Re(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){Te[e]=new Re(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){Te[e]=new Re(e,5,!1,e.toLowerCase(),null,!1,!1)});var da=/[\-:]([a-z])/g;function pa(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(da,pa);Te[t]=new Re(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(da,pa);Te[t]=new Re(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(da,pa);Te[t]=new Re(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){Te[e]=new Re(e,1,!1,e.toLowerCase(),null,!1,!1)});Te.xlinkHref=new Re("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){Te[e]=new Re(e,1,!1,e.toLowerCase(),null,!0,!0)});function ma(e,t,n,r){var o=Te.hasOwnProperty(t)?Te[t]:null;(o!==null?o.type!==0:r||!(2{var Xm=Object.create;var ju=Object.defineProperty;var $m=Object.getOwnPropertyDescriptor;var Km=Object.getOwnPropertyNames;var Ym=Object.getPrototypeOf,Qm=Object.prototype.hasOwnProperty;var Ne=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Zm=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Km(t))!Qm.call(e,o)&&o!==n&&ju(e,o,{get:()=>t[o],enumerable:!(r=$m(t,o))||r.enumerable});return e};var J=(e,t,n)=>(n=e!=null?Xm(Ym(e)):{},Zm(t||!e||!e.__esModule?ju(n,"default",{value:e,enumerable:!0}):n,e));var Ju=Ne(z=>{"use strict";var Fr=Symbol.for("react.element"),Jm=Symbol.for("react.portal"),eg=Symbol.for("react.fragment"),tg=Symbol.for("react.strict_mode"),ng=Symbol.for("react.profiler"),rg=Symbol.for("react.provider"),og=Symbol.for("react.context"),lg=Symbol.for("react.forward_ref"),ig=Symbol.for("react.suspense"),sg=Symbol.for("react.memo"),ag=Symbol.for("react.lazy"),Bu=Symbol.iterator;function ug(e){return e===null||typeof e!="object"?null:(e=Bu&&e[Bu]||e["@@iterator"],typeof e=="function"?e:null)}var Vu={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Gu=Object.assign,Xu={};function Zn(e,t,n){this.props=e,this.context=t,this.refs=Xu,this.updater=n||Vu}Zn.prototype.isReactComponent={};Zn.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};Zn.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function $u(){}$u.prototype=Zn.prototype;function Hi(e,t,n){this.props=e,this.context=t,this.refs=Xu,this.updater=n||Vu}var ji=Hi.prototype=new $u;ji.constructor=Hi;Gu(ji,Zn.prototype);ji.isPureReactComponent=!0;var qu=Array.isArray,Ku=Object.prototype.hasOwnProperty,Bi={current:null},Yu={key:!0,ref:!0,__self:!0,__source:!0};function Qu(e,t,n){var r,o={},l=null,i=null;if(t!=null)for(r in t.ref!==void 0&&(i=t.ref),t.key!==void 0&&(l=""+t.key),t)Ku.call(t,r)&&!Yu.hasOwnProperty(r)&&(o[r]=t[r]);var s=arguments.length-2;if(s===1)o.children=n;else if(1{"use strict";ec.exports=Ju()});var cc=Ne(X=>{"use strict";function Xi(e,t){var n=e.length;e.push(t);e:for(;0>>1,o=e[r];if(0>>1;rKo(s,n))aKo(u,s)?(e[r]=u,e[a]=n,r=a):(e[r]=s,e[i]=n,r=i);else if(aKo(u,n))e[r]=u,e[a]=n,r=a;else break e}}return t}function Ko(e,t){var n=e.sortIndex-t.sortIndex;return n!==0?n:e.id-t.id}typeof performance=="object"&&typeof performance.now=="function"?(tc=performance,X.unstable_now=function(){return tc.now()}):(Wi=Date,nc=Wi.now(),X.unstable_now=function(){return Wi.now()-nc});var tc,Wi,nc,Lt=[],Yt=[],mg=1,st=null,Ae=3,Zo=!1,An=!1,zr=!1,lc=typeof setTimeout=="function"?setTimeout:null,ic=typeof clearTimeout=="function"?clearTimeout:null,rc=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function $i(e){for(var t=gt(Yt);t!==null;){if(t.callback===null)Qo(Yt);else if(t.startTime<=e)Qo(Yt),t.sortIndex=t.expirationTime,Xi(Lt,t);else break;t=gt(Yt)}}function Ki(e){if(zr=!1,$i(e),!An)if(gt(Lt)!==null)An=!0,Qi(Yi);else{var t=gt(Yt);t!==null&&Zi(Ki,t.startTime-e)}}function Yi(e,t){An=!1,zr&&(zr=!1,ic(Hr),Hr=-1),Zo=!0;var n=Ae;try{for($i(t),st=gt(Lt);st!==null&&(!(st.expirationTime>t)||e&&!uc());){var r=st.callback;if(typeof r=="function"){st.callback=null,Ae=st.priorityLevel;var o=r(st.expirationTime<=t);t=X.unstable_now(),typeof o=="function"?st.callback=o:st===gt(Lt)&&Qo(Lt),$i(t)}else Qo(Lt);st=gt(Lt)}if(st!==null)var l=!0;else{var i=gt(Yt);i!==null&&Zi(Ki,i.startTime-t),l=!1}return l}finally{st=null,Ae=n,Zo=!1}}var Jo=!1,Yo=null,Hr=-1,sc=5,ac=-1;function uc(){return!(X.unstable_now()-ace||125r?(e.sortIndex=n,Xi(Yt,e),gt(Lt)===null&&e===gt(Yt)&&(zr?(ic(Hr),Hr=-1):zr=!0,Zi(Ki,n-r))):(e.sortIndex=o,Xi(Lt,e),An||Zo||(An=!0,Qi(Yi))),e};X.unstable_shouldYield=uc;X.unstable_wrapCallback=function(e){var t=Ae;return function(){var n=Ae;Ae=t;try{return e.apply(this,arguments)}finally{Ae=n}}}});var dc=Ne((M0,fc)=>{"use strict";fc.exports=cc()});var vp=Ne(nt=>{"use strict";var gg=ee(),et=dc();function T(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),_s=Object.prototype.hasOwnProperty,hg=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,pc={},mc={};function vg(e){return _s.call(mc,e)?!0:_s.call(pc,e)?!1:hg.test(e)?mc[e]=!0:(pc[e]=!0,!1)}function yg(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function Eg(e,t,n,r){if(t===null||typeof t>"u"||yg(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function Re(e,t,n,r,o,l,i){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=l,this.removeEmptyString=i}var Ce={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){Ce[e]=new Re(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];Ce[t]=new Re(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){Ce[e]=new Re(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){Ce[e]=new Re(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){Ce[e]=new Re(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){Ce[e]=new Re(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){Ce[e]=new Re(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){Ce[e]=new Re(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){Ce[e]=new Re(e,5,!1,e.toLowerCase(),null,!1,!1)});var pa=/[\-:]([a-z])/g;function ma(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(pa,ma);Ce[t]=new Re(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(pa,ma);Ce[t]=new Re(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(pa,ma);Ce[t]=new Re(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){Ce[e]=new Re(e,1,!1,e.toLowerCase(),null,!1,!1)});Ce.xlinkHref=new Re("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){Ce[e]=new Re(e,1,!1,e.toLowerCase(),null,!0,!0)});function ga(e,t,n,r){var o=Ce.hasOwnProperty(t)?Ce[t]:null;(o!==null?o.type!==0:r||!(2s||o[i]!==l[s]){var a=` -`+o[i].replace(" at new "," at ");return e.displayName&&a.includes("")&&(a=a.replace("",e.displayName)),a}while(1<=i&&0<=s);break}}}finally{Ji=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?Kr(e):""}function Sg(e){switch(e.tag){case 5:return Kr(e.type);case 16:return Kr("Lazy");case 13:return Kr("Suspense");case 19:return Kr("SuspenseList");case 0:case 2:case 15:return e=es(e.type,!1),e;case 11:return e=es(e.type.render,!1),e;case 1:return e=es(e.type,!0),e;default:return""}}function Cs(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case rr:return"Fragment";case nr:return"Portal";case _s:return"Profiler";case ga:return"StrictMode";case ws:return"Suspense";case Ts:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case wf:return(e.displayName||"Context")+".Consumer";case _f:return(e._context.displayName||"Context")+".Provider";case ha:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case va:return t=e.displayName||null,t!==null?t:Cs(e.type)||"Memo";case Yt:t=e._payload,e=e._init;try{return Cs(e(t))}catch{}}return null}function _g(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return Cs(t);case 8:return t===ga?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function fn(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function Cf(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function wg(e){var t=Cf(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var o=n.get,l=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return o.call(this)},set:function(i){r=""+i,l.call(this,i)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(i){r=""+i},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function tl(e){e._valueTracker||(e._valueTracker=wg(e))}function kf(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=Cf(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function Al(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function ks(e,t){var n=t.checked;return le({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function hc(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=fn(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function Lf(e,t){t=t.checked,t!=null&&ma(e,"checked",t,!1)}function Ls(e,t){Lf(e,t);var n=fn(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?Ns(e,t.type,n):t.hasOwnProperty("defaultValue")&&Ns(e,t.type,fn(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function vc(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function Ns(e,t,n){(t!=="number"||Al(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var Yr=Array.isArray;function mr(e,t,n,r){if(e=e.options,t){t={};for(var o=0;o"+t.valueOf().toString()+"",t=nl.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function uo(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Jr={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Tg=["Webkit","ms","Moz","O"];Object.keys(Jr).forEach(function(e){Tg.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Jr[t]=Jr[e]})});function xf(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||Jr.hasOwnProperty(e)&&Jr[e]?(""+t).trim():t+"px"}function Of(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,o=xf(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,o):e[n]=o}}var Cg=le({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function xs(e,t){if(t){if(Cg[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(w(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(w(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(w(61))}if(t.style!=null&&typeof t.style!="object")throw Error(w(62))}}function Os(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Ds=null;function ya(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Ps=null,gr=null,hr=null;function Sc(e){if(e=Mo(e)){if(typeof Ps!="function")throw Error(w(280));var t=e.stateNode;t&&(t=ri(t),Ps(e.stateNode,e.type,t))}}function Df(e){gr?hr?hr.push(e):hr=[e]:gr=e}function Pf(){if(gr){var e=gr,t=hr;if(hr=gr=null,Sc(e),t)for(e=0;e>>=0,e===0?32:31-(Ug(e)/Rg|0)|0}var rl=64,ol=4194304;function Qr(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Pl(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,o=e.suspendedLanes,l=e.pingedLanes,i=n&268435455;if(i!==0){var s=i&~o;s!==0?r=Qr(s):(l&=i,l!==0&&(r=Qr(l)))}else i=n&~o,i!==0?r=Qr(i):l!==0&&(r=Qr(l));if(r===0)return 0;if(t!==0&&t!==r&&(t&o)===0&&(o=r&-r,l=t&-t,o>=l||o===16&&(l&4194240)!==0))return t;if((r&4)!==0&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0n;n++)t.push(e);return t}function Lo(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-gt(t),e[t]=n}function Hg(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0=to),Ac=" ",xc=!1;function Jf(e,t){switch(e){case"keyup":return mh.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function ed(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var or=!1;function hh(e,t){switch(e){case"compositionend":return ed(t);case"keypress":return t.which!==32?null:(xc=!0,Ac);case"textInput":return e=t.data,e===Ac&&xc?null:e;default:return null}}function vh(e,t){if(or)return e==="compositionend"||!La&&Jf(e,t)?(e=Qf(),Sl=Ta=en=null,or=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Pc(n)}}function od(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?od(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function ld(){for(var e=window,t=Al();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Al(e.document)}return t}function Na(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function Lh(e){var t=ld(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&od(n.ownerDocument.documentElement,n)){if(r!==null&&Na(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var o=n.textContent.length,l=Math.min(r.start,o);r=r.end===void 0?l:Math.min(r.end,o),!e.extend&&l>r&&(o=r,r=l,l=o),o=Ic(n,l);var i=Ic(n,r);o&&i&&(e.rangeCount!==1||e.anchorNode!==o.node||e.anchorOffset!==o.offset||e.focusNode!==i.node||e.focusOffset!==i.offset)&&(t=t.createRange(),t.setStart(o.node,o.offset),e.removeAllRanges(),l>r?(e.addRange(t),e.extend(i.node,i.offset)):(t.setEnd(i.node,i.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n=document.documentMode,lr=null,bs=null,ro=null,Hs=!1;function Uc(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Hs||lr==null||lr!==Al(r)||(r=lr,"selectionStart"in r&&Na(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),ro&&ho(ro,r)||(ro=r,r=Rl(bs,"onSelect"),0ar||(e.current=Gs[ar],Gs[ar]=null,ar--)}function K(e,t){ar++,Gs[ar]=e.current,e.current=t}var dn={},Oe=mn(dn),qe=mn(!1),Rn=dn;function _r(e,t){var n=e.type.contextTypes;if(!n)return dn;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var o={},l;for(l in n)o[l]=t[l];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function We(e){return e=e.childContextTypes,e!=null}function zl(){Q(qe),Q(Oe)}function Wc(e,t,n){if(Oe.current!==dn)throw Error(w(168));K(Oe,t),K(qe,n)}function md(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var o in r)if(!(o in t))throw Error(w(108,_g(e)||"Unknown",o));return le({},n,r)}function bl(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||dn,Rn=Oe.current,K(Oe,e),K(qe,qe.current),!0}function Vc(e,t,n){var r=e.stateNode;if(!r)throw Error(w(169));n?(e=md(e,t,Rn),r.__reactInternalMemoizedMergedChildContext=e,Q(qe),Q(Oe),K(Oe,e)):Q(qe),K(qe,n)}var Ft=null,oi=!1,fs=!1;function gd(e){Ft===null?Ft=[e]:Ft.push(e)}function Rh(e){oi=!0,gd(e)}function gn(){if(!fs&&Ft!==null){fs=!0;var e=0,t=q;try{var n=Ft;for(q=1;e>=i,o-=i,zt=1<<32-gt(t)+o|n<O?(V=A,A=null):V=A.sibling;var I=h(c,A,p[O],v);if(I===null){A===null&&(A=V);break}e&&A&&I.alternate===null&&t(c,A),f=l(I,f,O),L===null?C=I:L.sibling=I,L=I,A=V}if(O===p.length)return n(c,A),ne&&An(c,O),C;if(A===null){for(;OO?(V=A,A=null):V=A.sibling;var j=h(c,A,I.value,v);if(j===null){A===null&&(A=V);break}e&&A&&j.alternate===null&&t(c,A),f=l(j,f,O),L===null?C=j:L.sibling=j,L=j,A=V}if(I.done)return n(c,A),ne&&An(c,O),C;if(A===null){for(;!I.done;O++,I=p.next())I=g(c,I.value,v),I!==null&&(f=l(I,f,O),L===null?C=I:L.sibling=I,L=I);return ne&&An(c,O),C}for(A=r(c,A);!I.done;O++,I=p.next())I=_(A,c,O,I.value,v),I!==null&&(e&&I.alternate!==null&&A.delete(I.key===null?O:I.key),f=l(I,f,O),L===null?C=I:L.sibling=I,L=I);return e&&A.forEach(function(Z){return t(c,Z)}),ne&&An(c,O),C}function P(c,f,p,v){if(typeof p=="object"&&p!==null&&p.type===rr&&p.key===null&&(p=p.props.children),typeof p=="object"&&p!==null){switch(p.$$typeof){case el:e:{for(var C=p.key,L=f;L!==null;){if(L.key===C){if(C=p.type,C===rr){if(L.tag===7){n(c,L.sibling),f=o(L,p.props.children),f.return=c,c=f;break e}}else if(L.elementType===C||typeof C=="object"&&C!==null&&C.$$typeof===Yt&&$c(C)===L.type){n(c,L.sibling),f=o(L,p.props),f.ref=Vr(c,L,p),f.return=c,c=f;break e}n(c,L);break}else t(c,L);L=L.sibling}p.type===rr?(f=Un(p.props.children,c.mode,v,p.key),f.return=c,c=f):(v=Ml(p.type,p.key,p.props,null,c.mode,v),v.ref=Vr(c,f,p),v.return=c,c=v)}return i(c);case nr:e:{for(L=p.key;f!==null;){if(f.key===L)if(f.tag===4&&f.stateNode.containerInfo===p.containerInfo&&f.stateNode.implementation===p.implementation){n(c,f.sibling),f=o(f,p.children||[]),f.return=c,c=f;break e}else{n(c,f);break}else t(c,f);f=f.sibling}f=Es(p,c.mode,v),f.return=c,c=f}return i(c);case Yt:return L=p._init,P(c,f,L(p._payload),v)}if(Yr(p))return E(c,f,p,v);if(jr(p))return k(c,f,p,v);gl(c,p)}return typeof p=="string"&&p!==""||typeof p=="number"?(p=""+p,f!==null&&f.tag===6?(n(c,f.sibling),f=o(f,p),f.return=c,c=f):(n(c,f),f=ys(p,c.mode,v),f.return=c,c=f),i(c)):n(c,f)}return P}var Tr=Ed(!0),Sd=Ed(!1),Bl=mn(null),ql=null,fr=null,Oa=null;function Da(){Oa=fr=ql=null}function Pa(e){var t=Bl.current;Q(Bl),e._currentValue=t}function Ks(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function yr(e,t){ql=e,Oa=fr=null,e=e.dependencies,e!==null&&e.firstContext!==null&&((e.lanes&t)!==0&&(Be=!0),e.firstContext=null)}function st(e){var t=e._currentValue;if(Oa!==e)if(e={context:e,memoizedValue:t,next:null},fr===null){if(ql===null)throw Error(w(308));fr=e,ql.dependencies={lanes:0,firstContext:e}}else fr=fr.next=e;return t}var Dn=null;function Ia(e){Dn===null?Dn=[e]:Dn.push(e)}function _d(e,t,n,r){var o=t.interleaved;return o===null?(n.next=n,Ia(t)):(n.next=o.next,o.next=n),t.interleaved=n,qt(e,r)}function qt(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var Qt=!1;function Ua(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function wd(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Ht(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function sn(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,(H&2)!==0){var o=r.pending;return o===null?t.next=t:(t.next=o.next,o.next=t),r.pending=t,qt(e,n)}return o=r.interleaved,o===null?(t.next=t,Ia(r)):(t.next=o.next,o.next=t),r.interleaved=t,qt(e,n)}function wl(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Sa(e,n)}}function Kc(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var o=null,l=null;if(n=n.firstBaseUpdate,n!==null){do{var i={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};l===null?o=l=i:l=l.next=i,n=n.next}while(n!==null);l===null?o=l=t:l=l.next=t}else o=l=t;n={baseState:r.baseState,firstBaseUpdate:o,lastBaseUpdate:l,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Wl(e,t,n,r){var o=e.updateQueue;Qt=!1;var l=o.firstBaseUpdate,i=o.lastBaseUpdate,s=o.shared.pending;if(s!==null){o.shared.pending=null;var a=s,u=a.next;a.next=null,i===null?l=u:i.next=u,i=a;var m=e.alternate;m!==null&&(m=m.updateQueue,s=m.lastBaseUpdate,s!==i&&(s===null?m.firstBaseUpdate=u:s.next=u,m.lastBaseUpdate=a))}if(l!==null){var g=o.baseState;i=0,m=u=a=null,s=l;do{var h=s.lane,_=s.eventTime;if((r&h)===h){m!==null&&(m=m.next={eventTime:_,lane:0,tag:s.tag,payload:s.payload,callback:s.callback,next:null});e:{var E=e,k=s;switch(h=t,_=n,k.tag){case 1:if(E=k.payload,typeof E=="function"){g=E.call(_,g,h);break e}g=E;break e;case 3:E.flags=E.flags&-65537|128;case 0:if(E=k.payload,h=typeof E=="function"?E.call(_,g,h):E,h==null)break e;g=le({},g,h);break e;case 2:Qt=!0}}s.callback!==null&&s.lane!==0&&(e.flags|=64,h=o.effects,h===null?o.effects=[s]:h.push(s))}else _={eventTime:_,lane:h,tag:s.tag,payload:s.payload,callback:s.callback,next:null},m===null?(u=m=_,a=g):m=m.next=_,i|=h;if(s=s.next,s===null){if(s=o.shared.pending,s===null)break;h=s,s=h.next,h.next=null,o.lastBaseUpdate=h,o.shared.pending=null}}while(!0);if(m===null&&(a=g),o.baseState=a,o.firstBaseUpdate=u,o.lastBaseUpdate=m,t=o.shared.interleaved,t!==null){o=t;do i|=o.lane,o=o.next;while(o!==t)}else l===null&&(o.shared.lanes=0);bn|=i,e.lanes=i,e.memoizedState=g}}function Yc(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;tn?n:4,e(!0);var r=ps.transition;ps.transition={};try{e(!1),t()}finally{q=n,ps.transition=r}}function bd(){return at().memoizedState}function Hh(e,t,n){var r=un(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},Hd(e))jd(t,n);else if(n=_d(e,t,n,r),n!==null){var o=Ue();ht(n,e,r,o),Bd(n,t,r)}}function jh(e,t,n){var r=un(e),o={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(Hd(e))jd(t,o);else{var l=e.alternate;if(e.lanes===0&&(l===null||l.lanes===0)&&(l=t.lastRenderedReducer,l!==null))try{var i=t.lastRenderedState,s=l(i,n);if(o.hasEagerState=!0,o.eagerState=s,vt(s,i)){var a=t.interleaved;a===null?(o.next=o,Ia(t)):(o.next=a.next,a.next=o),t.interleaved=o;return}}catch{}n=_d(e,t,o,r),n!==null&&(o=Ue(),ht(n,e,r,o),Bd(n,t,r))}}function Hd(e){var t=e.alternate;return e===oe||t!==null&&t===oe}function jd(e,t){oo=Gl=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Bd(e,t,n){if((n&4194240)!==0){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Sa(e,n)}}var Xl={readContext:st,useCallback:Me,useContext:Me,useEffect:Me,useImperativeHandle:Me,useInsertionEffect:Me,useLayoutEffect:Me,useMemo:Me,useReducer:Me,useRef:Me,useState:Me,useDebugValue:Me,useDeferredValue:Me,useTransition:Me,useMutableSource:Me,useSyncExternalStore:Me,useId:Me,unstable_isNewReconciler:!1},Bh={readContext:st,useCallback:function(e,t){return kt().memoizedState=[e,t===void 0?null:t],e},useContext:st,useEffect:Zc,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,Cl(4194308,4,Id.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Cl(4194308,4,e,t)},useInsertionEffect:function(e,t){return Cl(4,2,e,t)},useMemo:function(e,t){var n=kt();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=kt();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=Hh.bind(null,oe,e),[r.memoizedState,e]},useRef:function(e){var t=kt();return e={current:e},t.memoizedState=e},useState:Qc,useDebugValue:qa,useDeferredValue:function(e){return kt().memoizedState=e},useTransition:function(){var e=Qc(!1),t=e[0];return e=bh.bind(null,e[1]),kt().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=oe,o=kt();if(ne){if(n===void 0)throw Error(w(407));n=n()}else{if(n=t(),ye===null)throw Error(w(349));(zn&30)!==0||Ld(r,t,n)}o.memoizedState=n;var l={value:n,getSnapshot:t};return o.queue=l,Zc(Md.bind(null,r,l,e),[e]),r.flags|=2048,Co(9,Nd.bind(null,r,l,n,t),void 0,null),n},useId:function(){var e=kt(),t=ye.identifierPrefix;if(ne){var n=bt,r=zt;n=(r&~(1<<32-gt(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=wo++,0")&&(a=a.replace("",e.displayName)),a}while(1<=i&&0<=s);break}}}finally{es=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?Kr(e):""}function Sg(e){switch(e.tag){case 5:return Kr(e.type);case 16:return Kr("Lazy");case 13:return Kr("Suspense");case 19:return Kr("SuspenseList");case 0:case 2:case 15:return e=ts(e.type,!1),e;case 11:return e=ts(e.type.render,!1),e;case 1:return e=ts(e.type,!0),e;default:return""}}function ks(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case nr:return"Fragment";case tr:return"Portal";case ws:return"Profiler";case ha:return"StrictMode";case Ts:return"Suspense";case Cs:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case wf:return(e.displayName||"Context")+".Consumer";case _f:return(e._context.displayName||"Context")+".Provider";case va:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case ya:return t=e.displayName||null,t!==null?t:ks(e.type)||"Memo";case Zt:t=e._payload,e=e._init;try{return ks(e(t))}catch{}}return null}function _g(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return ks(t);case 8:return t===ha?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function pn(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function Cf(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function wg(e){var t=Cf(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var o=n.get,l=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return o.call(this)},set:function(i){r=""+i,l.call(this,i)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(i){r=""+i},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function tl(e){e._valueTracker||(e._valueTracker=wg(e))}function kf(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=Cf(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function Ml(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function Ls(e,t){var n=t.checked;return oe({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function hc(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=pn(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function Lf(e,t){t=t.checked,t!=null&&ga(e,"checked",t,!1)}function Ns(e,t){Lf(e,t);var n=pn(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?As(e,t.type,n):t.hasOwnProperty("defaultValue")&&As(e,t.type,pn(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function vc(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function As(e,t,n){(t!=="number"||Ml(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var Yr=Array.isArray;function pr(e,t,n,r){if(e=e.options,t){t={};for(var o=0;o"+t.valueOf().toString()+"",t=nl.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function uo(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Jr={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Tg=["Webkit","ms","Moz","O"];Object.keys(Jr).forEach(function(e){Tg.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Jr[t]=Jr[e]})});function xf(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||Jr.hasOwnProperty(e)&&Jr[e]?(""+t).trim():t+"px"}function Of(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,o=xf(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,o):e[n]=o}}var Cg=oe({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function Os(e,t){if(t){if(Cg[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(T(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(T(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(T(61))}if(t.style!=null&&typeof t.style!="object")throw Error(T(62))}}function Ds(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Ps=null;function Ea(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Is=null,mr=null,gr=null;function Sc(e){if(e=Ao(e)){if(typeof Is!="function")throw Error(T(280));var t=e.stateNode;t&&(t=ri(t),Is(e.stateNode,e.type,t))}}function Df(e){mr?gr?gr.push(e):gr=[e]:mr=e}function Pf(){if(mr){var e=mr,t=gr;if(gr=mr=null,Sc(e),t)for(e=0;e>>=0,e===0?32:31-(Ug(e)/Rg|0)|0}var rl=64,ol=4194304;function Qr(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Pl(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,o=e.suspendedLanes,l=e.pingedLanes,i=n&268435455;if(i!==0){var s=i&~o;s!==0?r=Qr(s):(l&=i,l!==0&&(r=Qr(l)))}else i=n&~o,i!==0?r=Qr(i):l!==0&&(r=Qr(l));if(r===0)return 0;if(t!==0&&t!==r&&(t&o)===0&&(o=r&-r,l=t&-t,o>=l||o===16&&(l&4194240)!==0))return t;if((r&4)!==0&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0n;n++)t.push(e);return t}function Lo(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-St(t),e[t]=n}function Hg(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0=to),Mc=" ",xc=!1;function Jf(e,t){switch(e){case"keyup":return mh.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function ed(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var rr=!1;function hh(e,t){switch(e){case"compositionend":return ed(t);case"keypress":return t.which!==32?null:(xc=!0,Mc);case"textInput":return e=t.data,e===Mc&&xc?null:e;default:return null}}function vh(e,t){if(rr)return e==="compositionend"||!Na&&Jf(e,t)?(e=Qf(),Sl=Ca=nn=null,rr=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Pc(n)}}function od(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?od(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function ld(){for(var e=window,t=Ml();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Ml(e.document)}return t}function Aa(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function Lh(e){var t=ld(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&od(n.ownerDocument.documentElement,n)){if(r!==null&&Aa(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var o=n.textContent.length,l=Math.min(r.start,o);r=r.end===void 0?l:Math.min(r.end,o),!e.extend&&l>r&&(o=r,r=l,l=o),o=Ic(n,l);var i=Ic(n,r);o&&i&&(e.rangeCount!==1||e.anchorNode!==o.node||e.anchorOffset!==o.offset||e.focusNode!==i.node||e.focusOffset!==i.offset)&&(t=t.createRange(),t.setStart(o.node,o.offset),e.removeAllRanges(),l>r?(e.addRange(t),e.extend(i.node,i.offset)):(t.setEnd(i.node,i.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n=document.documentMode,or=null,Hs=null,ro=null,js=!1;function Uc(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;js||or==null||or!==Ml(r)||(r=or,"selectionStart"in r&&Aa(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),ro&&ho(ro,r)||(ro=r,r=Rl(Hs,"onSelect"),0sr||(e.current=Xs[sr],Xs[sr]=null,sr--)}function $(e,t){sr++,Xs[sr]=e.current,e.current=t}var mn={},De=hn(mn),Ve=hn(!1),Rn=mn;function Sr(e,t){var n=e.type.contextTypes;if(!n)return mn;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var o={},l;for(l in n)o[l]=t[l];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function Ge(e){return e=e.childContextTypes,e!=null}function bl(){Y(Ve),Y(De)}function Wc(e,t,n){if(De.current!==mn)throw Error(T(168));$(De,t),$(Ve,n)}function md(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var o in r)if(!(o in t))throw Error(T(108,_g(e)||"Unknown",o));return oe({},n,r)}function zl(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||mn,Rn=De.current,$(De,e),$(Ve,Ve.current),!0}function Vc(e,t,n){var r=e.stateNode;if(!r)throw Error(T(169));n?(e=md(e,t,Rn),r.__reactInternalMemoizedMergedChildContext=e,Y(Ve),Y(De),$(De,e)):Y(Ve),$(Ve,n)}var Ht=null,oi=!1,ds=!1;function gd(e){Ht===null?Ht=[e]:Ht.push(e)}function Rh(e){oi=!0,gd(e)}function vn(){if(!ds&&Ht!==null){ds=!0;var e=0,t=V;try{var n=Ht;for(V=1;e>=i,o-=i,jt=1<<32-St(t)+o|n<D?(G=x,x=null):G=x.sibling;var U=v(f,x,m[D],p);if(U===null){x===null&&(x=G);break}e&&x&&U.alternate===null&&t(f,x),c=l(U,c,D),L===null?_=U:L.sibling=U,L=U,x=G}if(D===m.length)return n(f,x),te&&Mn(f,D),_;if(x===null){for(;DD?(G=x,x=null):G=x.sibling;var W=v(f,x,U.value,p);if(W===null){x===null&&(x=G);break}e&&x&&W.alternate===null&&t(f,x),c=l(W,c,D),L===null?_=W:L.sibling=W,L=W,x=G}if(U.done)return n(f,x),te&&Mn(f,D),_;if(x===null){for(;!U.done;D++,U=m.next())U=h(f,U.value,p),U!==null&&(c=l(U,c,D),L===null?_=U:L.sibling=U,L=U);return te&&Mn(f,D),_}for(x=r(f,x);!U.done;D++,U=m.next())U=E(x,f,D,U.value,p),U!==null&&(e&&U.alternate!==null&&x.delete(U.key===null?D:U.key),c=l(U,c,D),L===null?_=U:L.sibling=U,L=U);return e&&x.forEach(function(it){return t(f,it)}),te&&Mn(f,D),_}function M(f,c,m,p){if(typeof m=="object"&&m!==null&&m.type===nr&&m.key===null&&(m=m.props.children),typeof m=="object"&&m!==null){switch(m.$$typeof){case el:e:{for(var _=m.key,L=c;L!==null;){if(L.key===_){if(_=m.type,_===nr){if(L.tag===7){n(f,L.sibling),c=o(L,m.props.children),c.return=f,f=c;break e}}else if(L.elementType===_||typeof _=="object"&&_!==null&&_.$$typeof===Zt&&$c(_)===L.type){n(f,L.sibling),c=o(L,m.props),c.ref=Vr(f,L,m),c.return=f,f=c;break e}n(f,L);break}else t(f,L);L=L.sibling}m.type===nr?(c=Un(m.props.children,f.mode,p,m.key),c.return=f,f=c):(p=Al(m.type,m.key,m.props,null,f.mode,p),p.ref=Vr(f,c,m),p.return=f,f=p)}return i(f);case tr:e:{for(L=m.key;c!==null;){if(c.key===L)if(c.tag===4&&c.stateNode.containerInfo===m.containerInfo&&c.stateNode.implementation===m.implementation){n(f,c.sibling),c=o(c,m.children||[]),c.return=f,f=c;break e}else{n(f,c);break}else t(f,c);c=c.sibling}c=Ss(m,f.mode,p),c.return=f,f=c}return i(f);case Zt:return L=m._init,M(f,c,L(m._payload),p)}if(Yr(m))return w(f,c,m,p);if(jr(m))return k(f,c,m,p);gl(f,m)}return typeof m=="string"&&m!==""||typeof m=="number"?(m=""+m,c!==null&&c.tag===6?(n(f,c.sibling),c=o(c,m),c.return=f,f=c):(n(f,c),c=Es(m,f.mode,p),c.return=f,f=c),i(f)):n(f,c)}return M}var wr=Ed(!0),Sd=Ed(!1),Bl=hn(null),ql=null,cr=null,Da=null;function Pa(){Da=cr=ql=null}function Ia(e){var t=Bl.current;Y(Bl),e._currentValue=t}function Ys(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function vr(e,t){ql=e,Da=cr=null,e=e.dependencies,e!==null&&e.firstContext!==null&&((e.lanes&t)!==0&&(We=!0),e.firstContext=null)}function dt(e){var t=e._currentValue;if(Da!==e)if(e={context:e,memoizedValue:t,next:null},cr===null){if(ql===null)throw Error(T(308));cr=e,ql.dependencies={lanes:0,firstContext:e}}else cr=cr.next=e;return t}var Dn=null;function Ua(e){Dn===null?Dn=[e]:Dn.push(e)}function _d(e,t,n,r){var o=t.interleaved;return o===null?(n.next=n,Ua(t)):(n.next=o.next,o.next=n),t.interleaved=n,Gt(e,r)}function Gt(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var Jt=!1;function Ra(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function wd(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function qt(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function un(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,(j&2)!==0){var o=r.pending;return o===null?t.next=t:(t.next=o.next,o.next=t),r.pending=t,Gt(e,n)}return o=r.interleaved,o===null?(t.next=t,Ua(r)):(t.next=o.next,o.next=t),r.interleaved=t,Gt(e,n)}function wl(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,_a(e,n)}}function Kc(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var o=null,l=null;if(n=n.firstBaseUpdate,n!==null){do{var i={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};l===null?o=l=i:l=l.next=i,n=n.next}while(n!==null);l===null?o=l=t:l=l.next=t}else o=l=t;n={baseState:r.baseState,firstBaseUpdate:o,lastBaseUpdate:l,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Wl(e,t,n,r){var o=e.updateQueue;Jt=!1;var l=o.firstBaseUpdate,i=o.lastBaseUpdate,s=o.shared.pending;if(s!==null){o.shared.pending=null;var a=s,u=a.next;a.next=null,i===null?l=u:i.next=u,i=a;var g=e.alternate;g!==null&&(g=g.updateQueue,s=g.lastBaseUpdate,s!==i&&(s===null?g.firstBaseUpdate=u:s.next=u,g.lastBaseUpdate=a))}if(l!==null){var h=o.baseState;i=0,g=u=a=null,s=l;do{var v=s.lane,E=s.eventTime;if((r&v)===v){g!==null&&(g=g.next={eventTime:E,lane:0,tag:s.tag,payload:s.payload,callback:s.callback,next:null});e:{var w=e,k=s;switch(v=t,E=n,k.tag){case 1:if(w=k.payload,typeof w=="function"){h=w.call(E,h,v);break e}h=w;break e;case 3:w.flags=w.flags&-65537|128;case 0:if(w=k.payload,v=typeof w=="function"?w.call(E,h,v):w,v==null)break e;h=oe({},h,v);break e;case 2:Jt=!0}}s.callback!==null&&s.lane!==0&&(e.flags|=64,v=o.effects,v===null?o.effects=[s]:v.push(s))}else E={eventTime:E,lane:v,tag:s.tag,payload:s.payload,callback:s.callback,next:null},g===null?(u=g=E,a=h):g=g.next=E,i|=v;if(s=s.next,s===null){if(s=o.shared.pending,s===null)break;v=s,s=v.next,v.next=null,o.lastBaseUpdate=v,o.shared.pending=null}}while(!0);if(g===null&&(a=h),o.baseState=a,o.firstBaseUpdate=u,o.lastBaseUpdate=g,t=o.shared.interleaved,t!==null){o=t;do i|=o.lane,o=o.next;while(o!==t)}else l===null&&(o.shared.lanes=0);zn|=i,e.lanes=i,e.memoizedState=h}}function Yc(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;tn?n:4,e(!0);var r=ms.transition;ms.transition={};try{e(!1),t()}finally{V=n,ms.transition=r}}function zd(){return pt().memoizedState}function Hh(e,t,n){var r=fn(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},Hd(e))jd(t,n);else if(n=_d(e,t,n,r),n!==null){var o=Ue();_t(n,e,r,o),Bd(n,t,r)}}function jh(e,t,n){var r=fn(e),o={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(Hd(e))jd(t,o);else{var l=e.alternate;if(e.lanes===0&&(l===null||l.lanes===0)&&(l=t.lastRenderedReducer,l!==null))try{var i=t.lastRenderedState,s=l(i,n);if(o.hasEagerState=!0,o.eagerState=s,wt(s,i)){var a=t.interleaved;a===null?(o.next=o,Ua(t)):(o.next=a.next,a.next=o),t.interleaved=o;return}}catch{}n=_d(e,t,o,r),n!==null&&(o=Ue(),_t(n,e,r,o),Bd(n,t,r))}}function Hd(e){var t=e.alternate;return e===re||t!==null&&t===re}function jd(e,t){oo=Gl=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Bd(e,t,n){if((n&4194240)!==0){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,_a(e,n)}}var Xl={readContext:dt,useCallback:Me,useContext:Me,useEffect:Me,useImperativeHandle:Me,useInsertionEffect:Me,useLayoutEffect:Me,useMemo:Me,useReducer:Me,useRef:Me,useState:Me,useDebugValue:Me,useDeferredValue:Me,useTransition:Me,useMutableSource:Me,useSyncExternalStore:Me,useId:Me,unstable_isNewReconciler:!1},Bh={readContext:dt,useCallback:function(e,t){return At().memoizedState=[e,t===void 0?null:t],e},useContext:dt,useEffect:Zc,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,Cl(4194308,4,Id.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Cl(4194308,4,e,t)},useInsertionEffect:function(e,t){return Cl(4,2,e,t)},useMemo:function(e,t){var n=At();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=At();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=Hh.bind(null,re,e),[r.memoizedState,e]},useRef:function(e){var t=At();return e={current:e},t.memoizedState=e},useState:Qc,useDebugValue:Wa,useDeferredValue:function(e){return At().memoizedState=e},useTransition:function(){var e=Qc(!1),t=e[0];return e=zh.bind(null,e[1]),At().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=re,o=At();if(te){if(n===void 0)throw Error(T(407));n=n()}else{if(n=t(),ye===null)throw Error(T(349));(bn&30)!==0||Ld(r,t,n)}o.memoizedState=n;var l={value:n,getSnapshot:t};return o.queue=l,Zc(Ad.bind(null,r,l,e),[e]),r.flags|=2048,Co(9,Nd.bind(null,r,l,n,t),void 0,null),n},useId:function(){var e=At(),t=ye.identifierPrefix;if(te){var n=Bt,r=jt;n=(r&~(1<<32-St(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=wo++,0<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=i.createElement(n,{is:r.is}):(e=i.createElement(n),n==="select"&&(i=e,r.multiple?i.multiple=!0:r.size&&(i.size=r.size))):e=i.createElementNS(e,n),e[Lt]=t,e[Eo]=r,Zd(e,t,!1,!1),t.stateNode=e;e:{switch(i=Os(n,r),n){case"dialog":Y("cancel",e),Y("close",e),o=r;break;case"iframe":case"object":case"embed":Y("load",e),o=r;break;case"video":case"audio":for(o=0;oLr&&(t.flags|=128,r=!0,Gr(l,!1),t.lanes=4194304)}else{if(!r)if(e=Vl(i),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),Gr(l,!0),l.tail===null&&l.tailMode==="hidden"&&!i.alternate&&!ne)return Ae(t),null}else 2*ae()-l.renderingStartTime>Lr&&n!==1073741824&&(t.flags|=128,r=!0,Gr(l,!1),t.lanes=4194304);l.isBackwards?(i.sibling=t.child,t.child=i):(n=l.last,n!==null?n.sibling=i:t.child=i,l.last=i)}return l.tail!==null?(t=l.tail,l.rendering=t,l.tail=t.sibling,l.renderingStartTime=ae(),t.sibling=null,n=re.current,K(re,r?n&1|2:n&1),t):(Ae(t),null);case 22:case 23:return Ka(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&(t.mode&1)!==0?($e&1073741824)!==0&&(Ae(t),t.subtreeFlags&6&&(t.flags|=8192)):Ae(t),null;case 24:return null;case 25:return null}throw Error(w(156,t.tag))}function Yh(e,t){switch(Aa(t),t.tag){case 1:return We(t.type)&&zl(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Cr(),Q(qe),Q(Oe),za(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 5:return Fa(t),null;case 13:if(Q(re),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(w(340));wr()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Q(re),null;case 4:return Cr(),null;case 10:return Pa(t.type._context),null;case 22:case 23:return Ka(),null;case 24:return null;default:return null}}var vl=!1,xe=!1,Qh=typeof WeakSet=="function"?WeakSet:Set,M=null;function dr(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){se(e,t,r)}else n.current=null}function oa(e,t,n){try{n()}catch(r){se(e,t,r)}}var cf=!1;function Zh(e,t){if(js=Il,e=ld(),Na(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var o=r.anchorOffset,l=r.focusNode;r=r.focusOffset;try{n.nodeType,l.nodeType}catch{n=null;break e}var i=0,s=-1,a=-1,u=0,m=0,g=e,h=null;t:for(;;){for(var _;g!==n||o!==0&&g.nodeType!==3||(s=i+o),g!==l||r!==0&&g.nodeType!==3||(a=i+r),g.nodeType===3&&(i+=g.nodeValue.length),(_=g.firstChild)!==null;)h=g,g=_;for(;;){if(g===e)break t;if(h===n&&++u===o&&(s=i),h===l&&++m===r&&(a=i),(_=g.nextSibling)!==null)break;g=h,h=g.parentNode}g=_}n=s===-1||a===-1?null:{start:s,end:a}}else n=null}n=n||{start:0,end:0}}else n=null;for(Bs={focusedElem:e,selectionRange:n},Il=!1,M=t;M!==null;)if(t=M,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,M=e;else for(;M!==null;){t=M;try{var E=t.alternate;if((t.flags&1024)!==0)switch(t.tag){case 0:case 11:case 15:break;case 1:if(E!==null){var k=E.memoizedProps,P=E.memoizedState,c=t.stateNode,f=c.getSnapshotBeforeUpdate(t.elementType===t.type?k:dt(t.type,k),P);c.__reactInternalSnapshotBeforeUpdate=f}break;case 3:var p=t.stateNode.containerInfo;p.nodeType===1?p.textContent="":p.nodeType===9&&p.documentElement&&p.removeChild(p.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(w(163))}}catch(v){se(t,t.return,v)}if(e=t.sibling,e!==null){e.return=t.return,M=e;break}M=t.return}return E=cf,cf=!1,E}function lo(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var o=r=r.next;do{if((o.tag&e)===e){var l=o.destroy;o.destroy=void 0,l!==void 0&&oa(t,n,l)}o=o.next}while(o!==r)}}function si(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function la(e){var t=e.ref;if(t!==null){var n=e.stateNode;e.tag,e=n,typeof t=="function"?t(e):t.current=e}}function tp(e){var t=e.alternate;t!==null&&(e.alternate=null,tp(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Lt],delete t[Eo],delete t[Vs],delete t[Ih],delete t[Uh])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function np(e){return e.tag===5||e.tag===3||e.tag===4}function ff(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||np(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function ia(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Fl));else if(r!==4&&(e=e.child,e!==null))for(ia(e,t,n),e=e.sibling;e!==null;)ia(e,t,n),e=e.sibling}function sa(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(sa(e,t,n),e=e.sibling;e!==null;)sa(e,t,n),e=e.sibling}var _e=null,pt=!1;function Kt(e,t,n){for(n=n.child;n!==null;)rp(e,t,n),n=n.sibling}function rp(e,t,n){if(Nt&&typeof Nt.onCommitFiberUnmount=="function")try{Nt.onCommitFiberUnmount(Jl,n)}catch{}switch(n.tag){case 5:xe||dr(n,t);case 6:var r=_e,o=pt;_e=null,Kt(e,t,n),_e=r,pt=o,_e!==null&&(pt?(e=_e,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):_e.removeChild(n.stateNode));break;case 18:_e!==null&&(pt?(e=_e,n=n.stateNode,e.nodeType===8?cs(e.parentNode,n):e.nodeType===1&&cs(e,n),mo(e)):cs(_e,n.stateNode));break;case 4:r=_e,o=pt,_e=n.stateNode.containerInfo,pt=!0,Kt(e,t,n),_e=r,pt=o;break;case 0:case 11:case 14:case 15:if(!xe&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){o=r=r.next;do{var l=o,i=l.destroy;l=l.tag,i!==void 0&&((l&2)!==0||(l&4)!==0)&&oa(n,t,i),o=o.next}while(o!==r)}Kt(e,t,n);break;case 1:if(!xe&&(dr(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(s){se(n,t,s)}Kt(e,t,n);break;case 21:Kt(e,t,n);break;case 22:n.mode&1?(xe=(r=xe)||n.memoizedState!==null,Kt(e,t,n),xe=r):Kt(e,t,n);break;default:Kt(e,t,n)}}function df(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new Qh),t.forEach(function(r){var o=sv.bind(null,e,r);n.has(r)||(n.add(r),r.then(o,o))})}}function ft(e,t){var n=t.deletions;if(n!==null)for(var r=0;ro&&(o=i),r&=~l}if(r=o,r=ae()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*ev(r/1960))-r,10e?16:e,tn===null)var r=!1;else{if(e=tn,tn=null,Yl=0,(H&6)!==0)throw Error(w(331));var o=H;for(H|=4,M=e.current;M!==null;){var l=M,i=l.child;if((M.flags&16)!==0){var s=l.deletions;if(s!==null){for(var a=0;aae()-Xa?In(e,0):Ga|=n),Ve(e,t)}function fp(e,t){t===0&&((e.mode&1)===0?t=1:(t=ol,ol<<=1,(ol&130023424)===0&&(ol=4194304)));var n=Ue();e=qt(e,t),e!==null&&(Lo(e,t,n),Ve(e,n))}function iv(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),fp(e,n)}function sv(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,o=e.memoizedState;o!==null&&(n=o.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(w(314))}r!==null&&r.delete(t),fp(e,n)}var dp;dp=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||qe.current)Be=!0;else{if((e.lanes&n)===0&&(t.flags&128)===0)return Be=!1,$h(e,t,n);Be=(e.flags&131072)!==0}else Be=!1,ne&&(t.flags&1048576)!==0&&hd(t,jl,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;kl(e,t),e=t.pendingProps;var o=_r(t,Oe.current);yr(t,n),o=Ha(null,t,r,e,o,n);var l=ja();return t.flags|=1,typeof o=="object"&&o!==null&&typeof o.render=="function"&&o.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,We(r)?(l=!0,bl(t)):l=!1,t.memoizedState=o.state!==null&&o.state!==void 0?o.state:null,Ua(t),o.updater=ii,t.stateNode=o,o._reactInternals=t,Qs(t,r,e,n),t=ea(null,t,r,!0,l,n)):(t.tag=0,ne&&l&&Ma(t),Ie(null,t,o,n),t=t.child),t;case 16:r=t.elementType;e:{switch(kl(e,t),e=t.pendingProps,o=r._init,r=o(r._payload),t.type=r,o=t.tag=uv(r),e=dt(r,e),o){case 0:t=Js(null,t,r,e,n);break e;case 1:t=sf(null,t,r,e,n);break e;case 11:t=of(null,t,r,e,n);break e;case 14:t=lf(null,t,r,dt(r.type,e),n);break e}throw Error(w(306,r,""))}return t;case 0:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:dt(r,o),Js(e,t,r,o,n);case 1:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:dt(r,o),sf(e,t,r,o,n);case 3:e:{if(Kd(t),e===null)throw Error(w(387));r=t.pendingProps,l=t.memoizedState,o=l.element,wd(e,t),Wl(t,r,null,n);var i=t.memoizedState;if(r=i.element,l.isDehydrated)if(l={element:r,isDehydrated:!1,cache:i.cache,pendingSuspenseBoundaries:i.pendingSuspenseBoundaries,transitions:i.transitions},t.updateQueue.baseState=l,t.memoizedState=l,t.flags&256){o=kr(Error(w(423)),t),t=af(e,t,r,n,o);break e}else if(r!==o){o=kr(Error(w(424)),t),t=af(e,t,r,n,o);break e}else for(Ke=ln(t.stateNode.containerInfo.firstChild),Ye=t,ne=!0,mt=null,n=Sd(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(wr(),r===o){t=Wt(e,t,n);break e}Ie(e,t,r,n)}t=t.child}return t;case 5:return Td(t),e===null&&$s(t),r=t.type,o=t.pendingProps,l=e!==null?e.memoizedProps:null,i=o.children,qs(r,o)?i=null:l!==null&&qs(r,l)&&(t.flags|=32),$d(e,t),Ie(e,t,i,n),t.child;case 6:return e===null&&$s(t),null;case 13:return Yd(e,t,n);case 4:return Ra(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Tr(t,null,r,n):Ie(e,t,r,n),t.child;case 11:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:dt(r,o),of(e,t,r,o,n);case 7:return Ie(e,t,t.pendingProps,n),t.child;case 8:return Ie(e,t,t.pendingProps.children,n),t.child;case 12:return Ie(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,o=t.pendingProps,l=t.memoizedProps,i=o.value,K(Bl,r._currentValue),r._currentValue=i,l!==null)if(vt(l.value,i)){if(l.children===o.children&&!qe.current){t=Wt(e,t,n);break e}}else for(l=t.child,l!==null&&(l.return=t);l!==null;){var s=l.dependencies;if(s!==null){i=l.child;for(var a=s.firstContext;a!==null;){if(a.context===r){if(l.tag===1){a=Ht(-1,n&-n),a.tag=2;var u=l.updateQueue;if(u!==null){u=u.shared;var m=u.pending;m===null?a.next=a:(a.next=m.next,m.next=a),u.pending=a}}l.lanes|=n,a=l.alternate,a!==null&&(a.lanes|=n),Ks(l.return,n,t),s.lanes|=n;break}a=a.next}}else if(l.tag===10)i=l.type===t.type?null:l.child;else if(l.tag===18){if(i=l.return,i===null)throw Error(w(341));i.lanes|=n,s=i.alternate,s!==null&&(s.lanes|=n),Ks(i,n,t),i=l.sibling}else i=l.child;if(i!==null)i.return=l;else for(i=l;i!==null;){if(i===t){i=null;break}if(l=i.sibling,l!==null){l.return=i.return,i=l;break}i=i.return}l=i}Ie(e,t,o.children,n),t=t.child}return t;case 9:return o=t.type,r=t.pendingProps.children,yr(t,n),o=st(o),r=r(o),t.flags|=1,Ie(e,t,r,n),t.child;case 14:return r=t.type,o=dt(r,t.pendingProps),o=dt(r.type,o),lf(e,t,r,o,n);case 15:return Gd(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:dt(r,o),kl(e,t),t.tag=1,We(r)?(e=!0,bl(t)):e=!1,yr(t,n),qd(t,r,o),Qs(t,r,o,n),ea(null,t,r,!0,e,n);case 19:return Qd(e,t,n);case 22:return Xd(e,t,n)}throw Error(w(156,t.tag))};function pp(e,t){return Hf(e,t)}function av(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function lt(e,t,n,r){return new av(e,t,n,r)}function Qa(e){return e=e.prototype,!(!e||!e.isReactComponent)}function uv(e){if(typeof e=="function")return Qa(e)?1:0;if(e!=null){if(e=e.$$typeof,e===ha)return 11;if(e===va)return 14}return 2}function cn(e,t){var n=e.alternate;return n===null?(n=lt(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Ml(e,t,n,r,o,l){var i=2;if(r=e,typeof e=="function")Qa(e)&&(i=1);else if(typeof e=="string")i=5;else e:switch(e){case rr:return Un(n.children,o,l,t);case ga:i=8,o|=8;break;case _s:return e=lt(12,n,t,o|2),e.elementType=_s,e.lanes=l,e;case ws:return e=lt(13,n,t,o),e.elementType=ws,e.lanes=l,e;case Ts:return e=lt(19,n,t,o),e.elementType=Ts,e.lanes=l,e;case Tf:return ui(n,o,l,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case _f:i=10;break e;case wf:i=9;break e;case ha:i=11;break e;case va:i=14;break e;case Yt:i=16,r=null;break e}throw Error(w(130,e==null?e:typeof e,""))}return t=lt(i,n,t,o),t.elementType=e,t.type=r,t.lanes=l,t}function Un(e,t,n,r){return e=lt(7,e,r,t),e.lanes=n,e}function ui(e,t,n,r){return e=lt(22,e,r,t),e.elementType=Tf,e.lanes=n,e.stateNode={isHidden:!1},e}function ys(e,t,n){return e=lt(6,e,null,t),e.lanes=n,e}function Es(e,t,n){return t=lt(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function cv(e,t,n,r,o){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=ns(0),this.expirationTimes=ns(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ns(0),this.identifierPrefix=r,this.onRecoverableError=o,this.mutableSourceEagerHydrationData=null}function Za(e,t,n,r,o,l,i,s,a){return e=new cv(e,t,n,s,a),t===1?(t=1,l===!0&&(t|=8)):t=0,l=lt(3,null,null,t),e.current=l,l.stateNode=e,l.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Ua(l),e}function fv(e,t,n){var r=3{"use strict";function yp(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(yp)}catch(e){console.error(e)}}yp(),Ep.exports=vp()});var wp=Le(nu=>{"use strict";var _p=Sp();nu.createRoot=_p.createRoot,nu.hydrateRoot=_p.hydrateRoot;var M0});var ru=Le((n1,hv)=>{hv.exports={Aacute:"\xC1",aacute:"\xE1",Abreve:"\u0102",abreve:"\u0103",ac:"\u223E",acd:"\u223F",acE:"\u223E\u0333",Acirc:"\xC2",acirc:"\xE2",acute:"\xB4",Acy:"\u0410",acy:"\u0430",AElig:"\xC6",aelig:"\xE6",af:"\u2061",Afr:"\u{1D504}",afr:"\u{1D51E}",Agrave:"\xC0",agrave:"\xE0",alefsym:"\u2135",aleph:"\u2135",Alpha:"\u0391",alpha:"\u03B1",Amacr:"\u0100",amacr:"\u0101",amalg:"\u2A3F",amp:"&",AMP:"&",andand:"\u2A55",And:"\u2A53",and:"\u2227",andd:"\u2A5C",andslope:"\u2A58",andv:"\u2A5A",ang:"\u2220",ange:"\u29A4",angle:"\u2220",angmsdaa:"\u29A8",angmsdab:"\u29A9",angmsdac:"\u29AA",angmsdad:"\u29AB",angmsdae:"\u29AC",angmsdaf:"\u29AD",angmsdag:"\u29AE",angmsdah:"\u29AF",angmsd:"\u2221",angrt:"\u221F",angrtvb:"\u22BE",angrtvbd:"\u299D",angsph:"\u2222",angst:"\xC5",angzarr:"\u237C",Aogon:"\u0104",aogon:"\u0105",Aopf:"\u{1D538}",aopf:"\u{1D552}",apacir:"\u2A6F",ap:"\u2248",apE:"\u2A70",ape:"\u224A",apid:"\u224B",apos:"'",ApplyFunction:"\u2061",approx:"\u2248",approxeq:"\u224A",Aring:"\xC5",aring:"\xE5",Ascr:"\u{1D49C}",ascr:"\u{1D4B6}",Assign:"\u2254",ast:"*",asymp:"\u2248",asympeq:"\u224D",Atilde:"\xC3",atilde:"\xE3",Auml:"\xC4",auml:"\xE4",awconint:"\u2233",awint:"\u2A11",backcong:"\u224C",backepsilon:"\u03F6",backprime:"\u2035",backsim:"\u223D",backsimeq:"\u22CD",Backslash:"\u2216",Barv:"\u2AE7",barvee:"\u22BD",barwed:"\u2305",Barwed:"\u2306",barwedge:"\u2305",bbrk:"\u23B5",bbrktbrk:"\u23B6",bcong:"\u224C",Bcy:"\u0411",bcy:"\u0431",bdquo:"\u201E",becaus:"\u2235",because:"\u2235",Because:"\u2235",bemptyv:"\u29B0",bepsi:"\u03F6",bernou:"\u212C",Bernoullis:"\u212C",Beta:"\u0392",beta:"\u03B2",beth:"\u2136",between:"\u226C",Bfr:"\u{1D505}",bfr:"\u{1D51F}",bigcap:"\u22C2",bigcirc:"\u25EF",bigcup:"\u22C3",bigodot:"\u2A00",bigoplus:"\u2A01",bigotimes:"\u2A02",bigsqcup:"\u2A06",bigstar:"\u2605",bigtriangledown:"\u25BD",bigtriangleup:"\u25B3",biguplus:"\u2A04",bigvee:"\u22C1",bigwedge:"\u22C0",bkarow:"\u290D",blacklozenge:"\u29EB",blacksquare:"\u25AA",blacktriangle:"\u25B4",blacktriangledown:"\u25BE",blacktriangleleft:"\u25C2",blacktriangleright:"\u25B8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20E5",bnequiv:"\u2261\u20E5",bNot:"\u2AED",bnot:"\u2310",Bopf:"\u{1D539}",bopf:"\u{1D553}",bot:"\u22A5",bottom:"\u22A5",bowtie:"\u22C8",boxbox:"\u29C9",boxdl:"\u2510",boxdL:"\u2555",boxDl:"\u2556",boxDL:"\u2557",boxdr:"\u250C",boxdR:"\u2552",boxDr:"\u2553",boxDR:"\u2554",boxh:"\u2500",boxH:"\u2550",boxhd:"\u252C",boxHd:"\u2564",boxhD:"\u2565",boxHD:"\u2566",boxhu:"\u2534",boxHu:"\u2567",boxhU:"\u2568",boxHU:"\u2569",boxminus:"\u229F",boxplus:"\u229E",boxtimes:"\u22A0",boxul:"\u2518",boxuL:"\u255B",boxUl:"\u255C",boxUL:"\u255D",boxur:"\u2514",boxuR:"\u2558",boxUr:"\u2559",boxUR:"\u255A",boxv:"\u2502",boxV:"\u2551",boxvh:"\u253C",boxvH:"\u256A",boxVh:"\u256B",boxVH:"\u256C",boxvl:"\u2524",boxvL:"\u2561",boxVl:"\u2562",boxVL:"\u2563",boxvr:"\u251C",boxvR:"\u255E",boxVr:"\u255F",boxVR:"\u2560",bprime:"\u2035",breve:"\u02D8",Breve:"\u02D8",brvbar:"\xA6",bscr:"\u{1D4B7}",Bscr:"\u212C",bsemi:"\u204F",bsim:"\u223D",bsime:"\u22CD",bsolb:"\u29C5",bsol:"\\",bsolhsub:"\u27C8",bull:"\u2022",bullet:"\u2022",bump:"\u224E",bumpE:"\u2AAE",bumpe:"\u224F",Bumpeq:"\u224E",bumpeq:"\u224F",Cacute:"\u0106",cacute:"\u0107",capand:"\u2A44",capbrcup:"\u2A49",capcap:"\u2A4B",cap:"\u2229",Cap:"\u22D2",capcup:"\u2A47",capdot:"\u2A40",CapitalDifferentialD:"\u2145",caps:"\u2229\uFE00",caret:"\u2041",caron:"\u02C7",Cayleys:"\u212D",ccaps:"\u2A4D",Ccaron:"\u010C",ccaron:"\u010D",Ccedil:"\xC7",ccedil:"\xE7",Ccirc:"\u0108",ccirc:"\u0109",Cconint:"\u2230",ccups:"\u2A4C",ccupssm:"\u2A50",Cdot:"\u010A",cdot:"\u010B",cedil:"\xB8",Cedilla:"\xB8",cemptyv:"\u29B2",cent:"\xA2",centerdot:"\xB7",CenterDot:"\xB7",cfr:"\u{1D520}",Cfr:"\u212D",CHcy:"\u0427",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",Chi:"\u03A7",chi:"\u03C7",circ:"\u02C6",circeq:"\u2257",circlearrowleft:"\u21BA",circlearrowright:"\u21BB",circledast:"\u229B",circledcirc:"\u229A",circleddash:"\u229D",CircleDot:"\u2299",circledR:"\xAE",circledS:"\u24C8",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",cir:"\u25CB",cirE:"\u29C3",cire:"\u2257",cirfnint:"\u2A10",cirmid:"\u2AEF",cirscir:"\u29C2",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201D",CloseCurlyQuote:"\u2019",clubs:"\u2663",clubsuit:"\u2663",colon:":",Colon:"\u2237",Colone:"\u2A74",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2A6D",Congruent:"\u2261",conint:"\u222E",Conint:"\u222F",ContourIntegral:"\u222E",copf:"\u{1D554}",Copf:"\u2102",coprod:"\u2210",Coproduct:"\u2210",copy:"\xA9",COPY:"\xA9",copysr:"\u2117",CounterClockwiseContourIntegral:"\u2233",crarr:"\u21B5",cross:"\u2717",Cross:"\u2A2F",Cscr:"\u{1D49E}",cscr:"\u{1D4B8}",csub:"\u2ACF",csube:"\u2AD1",csup:"\u2AD0",csupe:"\u2AD2",ctdot:"\u22EF",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22DE",cuesc:"\u22DF",cularr:"\u21B6",cularrp:"\u293D",cupbrcap:"\u2A48",cupcap:"\u2A46",CupCap:"\u224D",cup:"\u222A",Cup:"\u22D3",cupcup:"\u2A4A",cupdot:"\u228D",cupor:"\u2A45",cups:"\u222A\uFE00",curarr:"\u21B7",curarrm:"\u293C",curlyeqprec:"\u22DE",curlyeqsucc:"\u22DF",curlyvee:"\u22CE",curlywedge:"\u22CF",curren:"\xA4",curvearrowleft:"\u21B6",curvearrowright:"\u21B7",cuvee:"\u22CE",cuwed:"\u22CF",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232D",dagger:"\u2020",Dagger:"\u2021",daleth:"\u2138",darr:"\u2193",Darr:"\u21A1",dArr:"\u21D3",dash:"\u2010",Dashv:"\u2AE4",dashv:"\u22A3",dbkarow:"\u290F",dblac:"\u02DD",Dcaron:"\u010E",dcaron:"\u010F",Dcy:"\u0414",dcy:"\u0434",ddagger:"\u2021",ddarr:"\u21CA",DD:"\u2145",dd:"\u2146",DDotrahd:"\u2911",ddotseq:"\u2A77",deg:"\xB0",Del:"\u2207",Delta:"\u0394",delta:"\u03B4",demptyv:"\u29B1",dfisht:"\u297F",Dfr:"\u{1D507}",dfr:"\u{1D521}",dHar:"\u2965",dharl:"\u21C3",dharr:"\u21C2",DiacriticalAcute:"\xB4",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",DiacriticalGrave:"`",DiacriticalTilde:"\u02DC",diam:"\u22C4",diamond:"\u22C4",Diamond:"\u22C4",diamondsuit:"\u2666",diams:"\u2666",die:"\xA8",DifferentialD:"\u2146",digamma:"\u03DD",disin:"\u22F2",div:"\xF7",divide:"\xF7",divideontimes:"\u22C7",divonx:"\u22C7",DJcy:"\u0402",djcy:"\u0452",dlcorn:"\u231E",dlcrop:"\u230D",dollar:"$",Dopf:"\u{1D53B}",dopf:"\u{1D555}",Dot:"\xA8",dot:"\u02D9",DotDot:"\u20DC",doteq:"\u2250",doteqdot:"\u2251",DotEqual:"\u2250",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22A1",doublebarwedge:"\u2306",DoubleContourIntegral:"\u222F",DoubleDot:"\xA8",DoubleDownArrow:"\u21D3",DoubleLeftArrow:"\u21D0",DoubleLeftRightArrow:"\u21D4",DoubleLeftTee:"\u2AE4",DoubleLongLeftArrow:"\u27F8",DoubleLongLeftRightArrow:"\u27FA",DoubleLongRightArrow:"\u27F9",DoubleRightArrow:"\u21D2",DoubleRightTee:"\u22A8",DoubleUpArrow:"\u21D1",DoubleUpDownArrow:"\u21D5",DoubleVerticalBar:"\u2225",DownArrowBar:"\u2913",downarrow:"\u2193",DownArrow:"\u2193",Downarrow:"\u21D3",DownArrowUpArrow:"\u21F5",DownBreve:"\u0311",downdownarrows:"\u21CA",downharpoonleft:"\u21C3",downharpoonright:"\u21C2",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295E",DownLeftVectorBar:"\u2956",DownLeftVector:"\u21BD",DownRightTeeVector:"\u295F",DownRightVectorBar:"\u2957",DownRightVector:"\u21C1",DownTeeArrow:"\u21A7",DownTee:"\u22A4",drbkarow:"\u2910",drcorn:"\u231F",drcrop:"\u230C",Dscr:"\u{1D49F}",dscr:"\u{1D4B9}",DScy:"\u0405",dscy:"\u0455",dsol:"\u29F6",Dstrok:"\u0110",dstrok:"\u0111",dtdot:"\u22F1",dtri:"\u25BF",dtrif:"\u25BE",duarr:"\u21F5",duhar:"\u296F",dwangle:"\u29A6",DZcy:"\u040F",dzcy:"\u045F",dzigrarr:"\u27FF",Eacute:"\xC9",eacute:"\xE9",easter:"\u2A6E",Ecaron:"\u011A",ecaron:"\u011B",Ecirc:"\xCA",ecirc:"\xEA",ecir:"\u2256",ecolon:"\u2255",Ecy:"\u042D",ecy:"\u044D",eDDot:"\u2A77",Edot:"\u0116",edot:"\u0117",eDot:"\u2251",ee:"\u2147",efDot:"\u2252",Efr:"\u{1D508}",efr:"\u{1D522}",eg:"\u2A9A",Egrave:"\xC8",egrave:"\xE8",egs:"\u2A96",egsdot:"\u2A98",el:"\u2A99",Element:"\u2208",elinters:"\u23E7",ell:"\u2113",els:"\u2A95",elsdot:"\u2A97",Emacr:"\u0112",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",EmptySmallSquare:"\u25FB",emptyv:"\u2205",EmptyVerySmallSquare:"\u25AB",emsp13:"\u2004",emsp14:"\u2005",emsp:"\u2003",ENG:"\u014A",eng:"\u014B",ensp:"\u2002",Eogon:"\u0118",eogon:"\u0119",Eopf:"\u{1D53C}",eopf:"\u{1D556}",epar:"\u22D5",eparsl:"\u29E3",eplus:"\u2A71",epsi:"\u03B5",Epsilon:"\u0395",epsilon:"\u03B5",epsiv:"\u03F5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2A96",eqslantless:"\u2A95",Equal:"\u2A75",equals:"=",EqualTilde:"\u2242",equest:"\u225F",Equilibrium:"\u21CC",equiv:"\u2261",equivDD:"\u2A78",eqvparsl:"\u29E5",erarr:"\u2971",erDot:"\u2253",escr:"\u212F",Escr:"\u2130",esdot:"\u2250",Esim:"\u2A73",esim:"\u2242",Eta:"\u0397",eta:"\u03B7",ETH:"\xD0",eth:"\xF0",Euml:"\xCB",euml:"\xEB",euro:"\u20AC",excl:"!",exist:"\u2203",Exists:"\u2203",expectation:"\u2130",exponentiale:"\u2147",ExponentialE:"\u2147",fallingdotseq:"\u2252",Fcy:"\u0424",fcy:"\u0444",female:"\u2640",ffilig:"\uFB03",fflig:"\uFB00",ffllig:"\uFB04",Ffr:"\u{1D509}",ffr:"\u{1D523}",filig:"\uFB01",FilledSmallSquare:"\u25FC",FilledVerySmallSquare:"\u25AA",fjlig:"fj",flat:"\u266D",fllig:"\uFB02",fltns:"\u25B1",fnof:"\u0192",Fopf:"\u{1D53D}",fopf:"\u{1D557}",forall:"\u2200",ForAll:"\u2200",fork:"\u22D4",forkv:"\u2AD9",Fouriertrf:"\u2131",fpartint:"\u2A0D",frac12:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044",frown:"\u2322",fscr:"\u{1D4BB}",Fscr:"\u2131",gacute:"\u01F5",Gamma:"\u0393",gamma:"\u03B3",Gammad:"\u03DC",gammad:"\u03DD",gap:"\u2A86",Gbreve:"\u011E",gbreve:"\u011F",Gcedil:"\u0122",Gcirc:"\u011C",gcirc:"\u011D",Gcy:"\u0413",gcy:"\u0433",Gdot:"\u0120",gdot:"\u0121",ge:"\u2265",gE:"\u2267",gEl:"\u2A8C",gel:"\u22DB",geq:"\u2265",geqq:"\u2267",geqslant:"\u2A7E",gescc:"\u2AA9",ges:"\u2A7E",gesdot:"\u2A80",gesdoto:"\u2A82",gesdotol:"\u2A84",gesl:"\u22DB\uFE00",gesles:"\u2A94",Gfr:"\u{1D50A}",gfr:"\u{1D524}",gg:"\u226B",Gg:"\u22D9",ggg:"\u22D9",gimel:"\u2137",GJcy:"\u0403",gjcy:"\u0453",gla:"\u2AA5",gl:"\u2277",glE:"\u2A92",glj:"\u2AA4",gnap:"\u2A8A",gnapprox:"\u2A8A",gne:"\u2A88",gnE:"\u2269",gneq:"\u2A88",gneqq:"\u2269",gnsim:"\u22E7",Gopf:"\u{1D53E}",gopf:"\u{1D558}",grave:"`",GreaterEqual:"\u2265",GreaterEqualLess:"\u22DB",GreaterFullEqual:"\u2267",GreaterGreater:"\u2AA2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2A7E",GreaterTilde:"\u2273",Gscr:"\u{1D4A2}",gscr:"\u210A",gsim:"\u2273",gsime:"\u2A8E",gsiml:"\u2A90",gtcc:"\u2AA7",gtcir:"\u2A7A",gt:">",GT:">",Gt:"\u226B",gtdot:"\u22D7",gtlPar:"\u2995",gtquest:"\u2A7C",gtrapprox:"\u2A86",gtrarr:"\u2978",gtrdot:"\u22D7",gtreqless:"\u22DB",gtreqqless:"\u2A8C",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\uFE00",gvnE:"\u2269\uFE00",Hacek:"\u02C7",hairsp:"\u200A",half:"\xBD",hamilt:"\u210B",HARDcy:"\u042A",hardcy:"\u044A",harrcir:"\u2948",harr:"\u2194",hArr:"\u21D4",harrw:"\u21AD",Hat:"^",hbar:"\u210F",Hcirc:"\u0124",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22B9",hfr:"\u{1D525}",Hfr:"\u210C",HilbertSpace:"\u210B",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21FF",homtht:"\u223B",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",hopf:"\u{1D559}",Hopf:"\u210D",horbar:"\u2015",HorizontalLine:"\u2500",hscr:"\u{1D4BD}",Hscr:"\u210B",hslash:"\u210F",Hstrok:"\u0126",hstrok:"\u0127",HumpDownHump:"\u224E",HumpEqual:"\u224F",hybull:"\u2043",hyphen:"\u2010",Iacute:"\xCD",iacute:"\xED",ic:"\u2063",Icirc:"\xCE",icirc:"\xEE",Icy:"\u0418",icy:"\u0438",Idot:"\u0130",IEcy:"\u0415",iecy:"\u0435",iexcl:"\xA1",iff:"\u21D4",ifr:"\u{1D526}",Ifr:"\u2111",Igrave:"\xCC",igrave:"\xEC",ii:"\u2148",iiiint:"\u2A0C",iiint:"\u222D",iinfin:"\u29DC",iiota:"\u2129",IJlig:"\u0132",ijlig:"\u0133",Imacr:"\u012A",imacr:"\u012B",image:"\u2111",ImaginaryI:"\u2148",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",Im:"\u2111",imof:"\u22B7",imped:"\u01B5",Implies:"\u21D2",incare:"\u2105",in:"\u2208",infin:"\u221E",infintie:"\u29DD",inodot:"\u0131",intcal:"\u22BA",int:"\u222B",Int:"\u222C",integers:"\u2124",Integral:"\u222B",intercal:"\u22BA",Intersection:"\u22C2",intlarhk:"\u2A17",intprod:"\u2A3C",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",IOcy:"\u0401",iocy:"\u0451",Iogon:"\u012E",iogon:"\u012F",Iopf:"\u{1D540}",iopf:"\u{1D55A}",Iota:"\u0399",iota:"\u03B9",iprod:"\u2A3C",iquest:"\xBF",iscr:"\u{1D4BE}",Iscr:"\u2110",isin:"\u2208",isindot:"\u22F5",isinE:"\u22F9",isins:"\u22F4",isinsv:"\u22F3",isinv:"\u2208",it:"\u2062",Itilde:"\u0128",itilde:"\u0129",Iukcy:"\u0406",iukcy:"\u0456",Iuml:"\xCF",iuml:"\xEF",Jcirc:"\u0134",jcirc:"\u0135",Jcy:"\u0419",jcy:"\u0439",Jfr:"\u{1D50D}",jfr:"\u{1D527}",jmath:"\u0237",Jopf:"\u{1D541}",jopf:"\u{1D55B}",Jscr:"\u{1D4A5}",jscr:"\u{1D4BF}",Jsercy:"\u0408",jsercy:"\u0458",Jukcy:"\u0404",jukcy:"\u0454",Kappa:"\u039A",kappa:"\u03BA",kappav:"\u03F0",Kcedil:"\u0136",kcedil:"\u0137",Kcy:"\u041A",kcy:"\u043A",Kfr:"\u{1D50E}",kfr:"\u{1D528}",kgreen:"\u0138",KHcy:"\u0425",khcy:"\u0445",KJcy:"\u040C",kjcy:"\u045C",Kopf:"\u{1D542}",kopf:"\u{1D55C}",Kscr:"\u{1D4A6}",kscr:"\u{1D4C0}",lAarr:"\u21DA",Lacute:"\u0139",lacute:"\u013A",laemptyv:"\u29B4",lagran:"\u2112",Lambda:"\u039B",lambda:"\u03BB",lang:"\u27E8",Lang:"\u27EA",langd:"\u2991",langle:"\u27E8",lap:"\u2A85",Laplacetrf:"\u2112",laquo:"\xAB",larrb:"\u21E4",larrbfs:"\u291F",larr:"\u2190",Larr:"\u219E",lArr:"\u21D0",larrfs:"\u291D",larrhk:"\u21A9",larrlp:"\u21AB",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21A2",latail:"\u2919",lAtail:"\u291B",lat:"\u2AAB",late:"\u2AAD",lates:"\u2AAD\uFE00",lbarr:"\u290C",lBarr:"\u290E",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298B",lbrksld:"\u298F",lbrkslu:"\u298D",Lcaron:"\u013D",lcaron:"\u013E",Lcedil:"\u013B",lcedil:"\u013C",lceil:"\u2308",lcub:"{",Lcy:"\u041B",lcy:"\u043B",ldca:"\u2936",ldquo:"\u201C",ldquor:"\u201E",ldrdhar:"\u2967",ldrushar:"\u294B",ldsh:"\u21B2",le:"\u2264",lE:"\u2266",LeftAngleBracket:"\u27E8",LeftArrowBar:"\u21E4",leftarrow:"\u2190",LeftArrow:"\u2190",Leftarrow:"\u21D0",LeftArrowRightArrow:"\u21C6",leftarrowtail:"\u21A2",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27E6",LeftDownTeeVector:"\u2961",LeftDownVectorBar:"\u2959",LeftDownVector:"\u21C3",LeftFloor:"\u230A",leftharpoondown:"\u21BD",leftharpoonup:"\u21BC",leftleftarrows:"\u21C7",leftrightarrow:"\u2194",LeftRightArrow:"\u2194",Leftrightarrow:"\u21D4",leftrightarrows:"\u21C6",leftrightharpoons:"\u21CB",leftrightsquigarrow:"\u21AD",LeftRightVector:"\u294E",LeftTeeArrow:"\u21A4",LeftTee:"\u22A3",LeftTeeVector:"\u295A",leftthreetimes:"\u22CB",LeftTriangleBar:"\u29CF",LeftTriangle:"\u22B2",LeftTriangleEqual:"\u22B4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVectorBar:"\u2958",LeftUpVector:"\u21BF",LeftVectorBar:"\u2952",LeftVector:"\u21BC",lEg:"\u2A8B",leg:"\u22DA",leq:"\u2264",leqq:"\u2266",leqslant:"\u2A7D",lescc:"\u2AA8",les:"\u2A7D",lesdot:"\u2A7F",lesdoto:"\u2A81",lesdotor:"\u2A83",lesg:"\u22DA\uFE00",lesges:"\u2A93",lessapprox:"\u2A85",lessdot:"\u22D6",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",LessEqualGreater:"\u22DA",LessFullEqual:"\u2266",LessGreater:"\u2276",lessgtr:"\u2276",LessLess:"\u2AA1",lesssim:"\u2272",LessSlantEqual:"\u2A7D",LessTilde:"\u2272",lfisht:"\u297C",lfloor:"\u230A",Lfr:"\u{1D50F}",lfr:"\u{1D529}",lg:"\u2276",lgE:"\u2A91",lHar:"\u2962",lhard:"\u21BD",lharu:"\u21BC",lharul:"\u296A",lhblk:"\u2584",LJcy:"\u0409",ljcy:"\u0459",llarr:"\u21C7",ll:"\u226A",Ll:"\u22D8",llcorner:"\u231E",Lleftarrow:"\u21DA",llhard:"\u296B",lltri:"\u25FA",Lmidot:"\u013F",lmidot:"\u0140",lmoustache:"\u23B0",lmoust:"\u23B0",lnap:"\u2A89",lnapprox:"\u2A89",lne:"\u2A87",lnE:"\u2268",lneq:"\u2A87",lneqq:"\u2268",lnsim:"\u22E6",loang:"\u27EC",loarr:"\u21FD",lobrk:"\u27E6",longleftarrow:"\u27F5",LongLeftArrow:"\u27F5",Longleftarrow:"\u27F8",longleftrightarrow:"\u27F7",LongLeftRightArrow:"\u27F7",Longleftrightarrow:"\u27FA",longmapsto:"\u27FC",longrightarrow:"\u27F6",LongRightArrow:"\u27F6",Longrightarrow:"\u27F9",looparrowleft:"\u21AB",looparrowright:"\u21AC",lopar:"\u2985",Lopf:"\u{1D543}",lopf:"\u{1D55D}",loplus:"\u2A2D",lotimes:"\u2A34",lowast:"\u2217",lowbar:"_",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",loz:"\u25CA",lozenge:"\u25CA",lozf:"\u29EB",lpar:"(",lparlt:"\u2993",lrarr:"\u21C6",lrcorner:"\u231F",lrhar:"\u21CB",lrhard:"\u296D",lrm:"\u200E",lrtri:"\u22BF",lsaquo:"\u2039",lscr:"\u{1D4C1}",Lscr:"\u2112",lsh:"\u21B0",Lsh:"\u21B0",lsim:"\u2272",lsime:"\u2A8D",lsimg:"\u2A8F",lsqb:"[",lsquo:"\u2018",lsquor:"\u201A",Lstrok:"\u0141",lstrok:"\u0142",ltcc:"\u2AA6",ltcir:"\u2A79",lt:"<",LT:"<",Lt:"\u226A",ltdot:"\u22D6",lthree:"\u22CB",ltimes:"\u22C9",ltlarr:"\u2976",ltquest:"\u2A7B",ltri:"\u25C3",ltrie:"\u22B4",ltrif:"\u25C2",ltrPar:"\u2996",lurdshar:"\u294A",luruhar:"\u2966",lvertneqq:"\u2268\uFE00",lvnE:"\u2268\uFE00",macr:"\xAF",male:"\u2642",malt:"\u2720",maltese:"\u2720",Map:"\u2905",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",mapstoleft:"\u21A4",mapstoup:"\u21A5",marker:"\u25AE",mcomma:"\u2A29",Mcy:"\u041C",mcy:"\u043C",mdash:"\u2014",mDDot:"\u223A",measuredangle:"\u2221",MediumSpace:"\u205F",Mellintrf:"\u2133",Mfr:"\u{1D510}",mfr:"\u{1D52A}",mho:"\u2127",micro:"\xB5",midast:"*",midcir:"\u2AF0",mid:"\u2223",middot:"\xB7",minusb:"\u229F",minus:"\u2212",minusd:"\u2238",minusdu:"\u2A2A",MinusPlus:"\u2213",mlcp:"\u2ADB",mldr:"\u2026",mnplus:"\u2213",models:"\u22A7",Mopf:"\u{1D544}",mopf:"\u{1D55E}",mp:"\u2213",mscr:"\u{1D4C2}",Mscr:"\u2133",mstpos:"\u223E",Mu:"\u039C",mu:"\u03BC",multimap:"\u22B8",mumap:"\u22B8",nabla:"\u2207",Nacute:"\u0143",nacute:"\u0144",nang:"\u2220\u20D2",nap:"\u2249",napE:"\u2A70\u0338",napid:"\u224B\u0338",napos:"\u0149",napprox:"\u2249",natural:"\u266E",naturals:"\u2115",natur:"\u266E",nbsp:"\xA0",nbump:"\u224E\u0338",nbumpe:"\u224F\u0338",ncap:"\u2A43",Ncaron:"\u0147",ncaron:"\u0148",Ncedil:"\u0145",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2A6D\u0338",ncup:"\u2A42",Ncy:"\u041D",ncy:"\u043D",ndash:"\u2013",nearhk:"\u2924",nearr:"\u2197",neArr:"\u21D7",nearrow:"\u2197",ne:"\u2260",nedot:"\u2250\u0338",NegativeMediumSpace:"\u200B",NegativeThickSpace:"\u200B",NegativeThinSpace:"\u200B",NegativeVeryThinSpace:"\u200B",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",NestedGreaterGreater:"\u226B",NestedLessLess:"\u226A",NewLine:` -`,nexist:"\u2204",nexists:"\u2204",Nfr:"\u{1D511}",nfr:"\u{1D52B}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2A7E\u0338",nges:"\u2A7E\u0338",nGg:"\u22D9\u0338",ngsim:"\u2275",nGt:"\u226B\u20D2",ngt:"\u226F",ngtr:"\u226F",nGtv:"\u226B\u0338",nharr:"\u21AE",nhArr:"\u21CE",nhpar:"\u2AF2",ni:"\u220B",nis:"\u22FC",nisd:"\u22FA",niv:"\u220B",NJcy:"\u040A",njcy:"\u045A",nlarr:"\u219A",nlArr:"\u21CD",nldr:"\u2025",nlE:"\u2266\u0338",nle:"\u2270",nleftarrow:"\u219A",nLeftarrow:"\u21CD",nleftrightarrow:"\u21AE",nLeftrightarrow:"\u21CE",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2A7D\u0338",nles:"\u2A7D\u0338",nless:"\u226E",nLl:"\u22D8\u0338",nlsim:"\u2274",nLt:"\u226A\u20D2",nlt:"\u226E",nltri:"\u22EA",nltrie:"\u22EC",nLtv:"\u226A\u0338",nmid:"\u2224",NoBreak:"\u2060",NonBreakingSpace:"\xA0",nopf:"\u{1D55F}",Nopf:"\u2115",Not:"\u2AEC",not:"\xAC",NotCongruent:"\u2262",NotCupCap:"\u226D",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226F",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226B\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2A7E\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224E\u0338",NotHumpEqual:"\u224F\u0338",notin:"\u2209",notindot:"\u22F5\u0338",notinE:"\u22F9\u0338",notinva:"\u2209",notinvb:"\u22F7",notinvc:"\u22F6",NotLeftTriangleBar:"\u29CF\u0338",NotLeftTriangle:"\u22EA",NotLeftTriangleEqual:"\u22EC",NotLess:"\u226E",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226A\u0338",NotLessSlantEqual:"\u2A7D\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2AA2\u0338",NotNestedLessLess:"\u2AA1\u0338",notni:"\u220C",notniva:"\u220C",notnivb:"\u22FE",notnivc:"\u22FD",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2AAF\u0338",NotPrecedesSlantEqual:"\u22E0",NotReverseElement:"\u220C",NotRightTriangleBar:"\u29D0\u0338",NotRightTriangle:"\u22EB",NotRightTriangleEqual:"\u22ED",NotSquareSubset:"\u228F\u0338",NotSquareSubsetEqual:"\u22E2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22E3",NotSubset:"\u2282\u20D2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2AB0\u0338",NotSucceedsSlantEqual:"\u22E1",NotSucceedsTilde:"\u227F\u0338",NotSuperset:"\u2283\u20D2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",nparallel:"\u2226",npar:"\u2226",nparsl:"\u2AFD\u20E5",npart:"\u2202\u0338",npolint:"\u2A14",npr:"\u2280",nprcue:"\u22E0",nprec:"\u2280",npreceq:"\u2AAF\u0338",npre:"\u2AAF\u0338",nrarrc:"\u2933\u0338",nrarr:"\u219B",nrArr:"\u21CF",nrarrw:"\u219D\u0338",nrightarrow:"\u219B",nRightarrow:"\u21CF",nrtri:"\u22EB",nrtrie:"\u22ED",nsc:"\u2281",nsccue:"\u22E1",nsce:"\u2AB0\u0338",Nscr:"\u{1D4A9}",nscr:"\u{1D4C3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22E2",nsqsupe:"\u22E3",nsub:"\u2284",nsubE:"\u2AC5\u0338",nsube:"\u2288",nsubset:"\u2282\u20D2",nsubseteq:"\u2288",nsubseteqq:"\u2AC5\u0338",nsucc:"\u2281",nsucceq:"\u2AB0\u0338",nsup:"\u2285",nsupE:"\u2AC6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20D2",nsupseteq:"\u2289",nsupseteqq:"\u2AC6\u0338",ntgl:"\u2279",Ntilde:"\xD1",ntilde:"\xF1",ntlg:"\u2278",ntriangleleft:"\u22EA",ntrianglelefteq:"\u22EC",ntriangleright:"\u22EB",ntrianglerighteq:"\u22ED",Nu:"\u039D",nu:"\u03BD",num:"#",numero:"\u2116",numsp:"\u2007",nvap:"\u224D\u20D2",nvdash:"\u22AC",nvDash:"\u22AD",nVdash:"\u22AE",nVDash:"\u22AF",nvge:"\u2265\u20D2",nvgt:">\u20D2",nvHarr:"\u2904",nvinfin:"\u29DE",nvlArr:"\u2902",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvltrie:"\u22B4\u20D2",nvrArr:"\u2903",nvrtrie:"\u22B5\u20D2",nvsim:"\u223C\u20D2",nwarhk:"\u2923",nwarr:"\u2196",nwArr:"\u21D6",nwarrow:"\u2196",nwnear:"\u2927",Oacute:"\xD3",oacute:"\xF3",oast:"\u229B",Ocirc:"\xD4",ocirc:"\xF4",ocir:"\u229A",Ocy:"\u041E",ocy:"\u043E",odash:"\u229D",Odblac:"\u0150",odblac:"\u0151",odiv:"\u2A38",odot:"\u2299",odsold:"\u29BC",OElig:"\u0152",oelig:"\u0153",ofcir:"\u29BF",Ofr:"\u{1D512}",ofr:"\u{1D52C}",ogon:"\u02DB",Ograve:"\xD2",ograve:"\xF2",ogt:"\u29C1",ohbar:"\u29B5",ohm:"\u03A9",oint:"\u222E",olarr:"\u21BA",olcir:"\u29BE",olcross:"\u29BB",oline:"\u203E",olt:"\u29C0",Omacr:"\u014C",omacr:"\u014D",Omega:"\u03A9",omega:"\u03C9",Omicron:"\u039F",omicron:"\u03BF",omid:"\u29B6",ominus:"\u2296",Oopf:"\u{1D546}",oopf:"\u{1D560}",opar:"\u29B7",OpenCurlyDoubleQuote:"\u201C",OpenCurlyQuote:"\u2018",operp:"\u29B9",oplus:"\u2295",orarr:"\u21BB",Or:"\u2A54",or:"\u2228",ord:"\u2A5D",order:"\u2134",orderof:"\u2134",ordf:"\xAA",ordm:"\xBA",origof:"\u22B6",oror:"\u2A56",orslope:"\u2A57",orv:"\u2A5B",oS:"\u24C8",Oscr:"\u{1D4AA}",oscr:"\u2134",Oslash:"\xD8",oslash:"\xF8",osol:"\u2298",Otilde:"\xD5",otilde:"\xF5",otimesas:"\u2A36",Otimes:"\u2A37",otimes:"\u2297",Ouml:"\xD6",ouml:"\xF6",ovbar:"\u233D",OverBar:"\u203E",OverBrace:"\u23DE",OverBracket:"\u23B4",OverParenthesis:"\u23DC",para:"\xB6",parallel:"\u2225",par:"\u2225",parsim:"\u2AF3",parsl:"\u2AFD",part:"\u2202",PartialD:"\u2202",Pcy:"\u041F",pcy:"\u043F",percnt:"%",period:".",permil:"\u2030",perp:"\u22A5",pertenk:"\u2031",Pfr:"\u{1D513}",pfr:"\u{1D52D}",Phi:"\u03A6",phi:"\u03C6",phiv:"\u03D5",phmmat:"\u2133",phone:"\u260E",Pi:"\u03A0",pi:"\u03C0",pitchfork:"\u22D4",piv:"\u03D6",planck:"\u210F",planckh:"\u210E",plankv:"\u210F",plusacir:"\u2A23",plusb:"\u229E",pluscir:"\u2A22",plus:"+",plusdo:"\u2214",plusdu:"\u2A25",pluse:"\u2A72",PlusMinus:"\xB1",plusmn:"\xB1",plussim:"\u2A26",plustwo:"\u2A27",pm:"\xB1",Poincareplane:"\u210C",pointint:"\u2A15",popf:"\u{1D561}",Popf:"\u2119",pound:"\xA3",prap:"\u2AB7",Pr:"\u2ABB",pr:"\u227A",prcue:"\u227C",precapprox:"\u2AB7",prec:"\u227A",preccurlyeq:"\u227C",Precedes:"\u227A",PrecedesEqual:"\u2AAF",PrecedesSlantEqual:"\u227C",PrecedesTilde:"\u227E",preceq:"\u2AAF",precnapprox:"\u2AB9",precneqq:"\u2AB5",precnsim:"\u22E8",pre:"\u2AAF",prE:"\u2AB3",precsim:"\u227E",prime:"\u2032",Prime:"\u2033",primes:"\u2119",prnap:"\u2AB9",prnE:"\u2AB5",prnsim:"\u22E8",prod:"\u220F",Product:"\u220F",profalar:"\u232E",profline:"\u2312",profsurf:"\u2313",prop:"\u221D",Proportional:"\u221D",Proportion:"\u2237",propto:"\u221D",prsim:"\u227E",prurel:"\u22B0",Pscr:"\u{1D4AB}",pscr:"\u{1D4C5}",Psi:"\u03A8",psi:"\u03C8",puncsp:"\u2008",Qfr:"\u{1D514}",qfr:"\u{1D52E}",qint:"\u2A0C",qopf:"\u{1D562}",Qopf:"\u211A",qprime:"\u2057",Qscr:"\u{1D4AC}",qscr:"\u{1D4C6}",quaternions:"\u210D",quatint:"\u2A16",quest:"?",questeq:"\u225F",quot:'"',QUOT:'"',rAarr:"\u21DB",race:"\u223D\u0331",Racute:"\u0154",racute:"\u0155",radic:"\u221A",raemptyv:"\u29B3",rang:"\u27E9",Rang:"\u27EB",rangd:"\u2992",range:"\u29A5",rangle:"\u27E9",raquo:"\xBB",rarrap:"\u2975",rarrb:"\u21E5",rarrbfs:"\u2920",rarrc:"\u2933",rarr:"\u2192",Rarr:"\u21A0",rArr:"\u21D2",rarrfs:"\u291E",rarrhk:"\u21AA",rarrlp:"\u21AC",rarrpl:"\u2945",rarrsim:"\u2974",Rarrtl:"\u2916",rarrtl:"\u21A3",rarrw:"\u219D",ratail:"\u291A",rAtail:"\u291C",ratio:"\u2236",rationals:"\u211A",rbarr:"\u290D",rBarr:"\u290F",RBarr:"\u2910",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298C",rbrksld:"\u298E",rbrkslu:"\u2990",Rcaron:"\u0158",rcaron:"\u0159",Rcedil:"\u0156",rcedil:"\u0157",rceil:"\u2309",rcub:"}",Rcy:"\u0420",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201D",rdquor:"\u201D",rdsh:"\u21B3",real:"\u211C",realine:"\u211B",realpart:"\u211C",reals:"\u211D",Re:"\u211C",rect:"\u25AD",reg:"\xAE",REG:"\xAE",ReverseElement:"\u220B",ReverseEquilibrium:"\u21CB",ReverseUpEquilibrium:"\u296F",rfisht:"\u297D",rfloor:"\u230B",rfr:"\u{1D52F}",Rfr:"\u211C",rHar:"\u2964",rhard:"\u21C1",rharu:"\u21C0",rharul:"\u296C",Rho:"\u03A1",rho:"\u03C1",rhov:"\u03F1",RightAngleBracket:"\u27E9",RightArrowBar:"\u21E5",rightarrow:"\u2192",RightArrow:"\u2192",Rightarrow:"\u21D2",RightArrowLeftArrow:"\u21C4",rightarrowtail:"\u21A3",RightCeiling:"\u2309",RightDoubleBracket:"\u27E7",RightDownTeeVector:"\u295D",RightDownVectorBar:"\u2955",RightDownVector:"\u21C2",RightFloor:"\u230B",rightharpoondown:"\u21C1",rightharpoonup:"\u21C0",rightleftarrows:"\u21C4",rightleftharpoons:"\u21CC",rightrightarrows:"\u21C9",rightsquigarrow:"\u219D",RightTeeArrow:"\u21A6",RightTee:"\u22A2",RightTeeVector:"\u295B",rightthreetimes:"\u22CC",RightTriangleBar:"\u29D0",RightTriangle:"\u22B3",RightTriangleEqual:"\u22B5",RightUpDownVector:"\u294F",RightUpTeeVector:"\u295C",RightUpVectorBar:"\u2954",RightUpVector:"\u21BE",RightVectorBar:"\u2953",RightVector:"\u21C0",ring:"\u02DA",risingdotseq:"\u2253",rlarr:"\u21C4",rlhar:"\u21CC",rlm:"\u200F",rmoustache:"\u23B1",rmoust:"\u23B1",rnmid:"\u2AEE",roang:"\u27ED",roarr:"\u21FE",robrk:"\u27E7",ropar:"\u2986",ropf:"\u{1D563}",Ropf:"\u211D",roplus:"\u2A2E",rotimes:"\u2A35",RoundImplies:"\u2970",rpar:")",rpargt:"\u2994",rppolint:"\u2A12",rrarr:"\u21C9",Rrightarrow:"\u21DB",rsaquo:"\u203A",rscr:"\u{1D4C7}",Rscr:"\u211B",rsh:"\u21B1",Rsh:"\u21B1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22CC",rtimes:"\u22CA",rtri:"\u25B9",rtrie:"\u22B5",rtrif:"\u25B8",rtriltri:"\u29CE",RuleDelayed:"\u29F4",ruluhar:"\u2968",rx:"\u211E",Sacute:"\u015A",sacute:"\u015B",sbquo:"\u201A",scap:"\u2AB8",Scaron:"\u0160",scaron:"\u0161",Sc:"\u2ABC",sc:"\u227B",sccue:"\u227D",sce:"\u2AB0",scE:"\u2AB4",Scedil:"\u015E",scedil:"\u015F",Scirc:"\u015C",scirc:"\u015D",scnap:"\u2ABA",scnE:"\u2AB6",scnsim:"\u22E9",scpolint:"\u2A13",scsim:"\u227F",Scy:"\u0421",scy:"\u0441",sdotb:"\u22A1",sdot:"\u22C5",sdote:"\u2A66",searhk:"\u2925",searr:"\u2198",seArr:"\u21D8",searrow:"\u2198",sect:"\xA7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",Sfr:"\u{1D516}",sfr:"\u{1D530}",sfrown:"\u2322",sharp:"\u266F",SHCHcy:"\u0429",shchcy:"\u0449",SHcy:"\u0428",shcy:"\u0448",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",shortmid:"\u2223",shortparallel:"\u2225",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",shy:"\xAD",Sigma:"\u03A3",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",sim:"\u223C",simdot:"\u2A6A",sime:"\u2243",simeq:"\u2243",simg:"\u2A9E",simgE:"\u2AA0",siml:"\u2A9D",simlE:"\u2A9F",simne:"\u2246",simplus:"\u2A24",simrarr:"\u2972",slarr:"\u2190",SmallCircle:"\u2218",smallsetminus:"\u2216",smashp:"\u2A33",smeparsl:"\u29E4",smid:"\u2223",smile:"\u2323",smt:"\u2AAA",smte:"\u2AAC",smtes:"\u2AAC\uFE00",SOFTcy:"\u042C",softcy:"\u044C",solbar:"\u233F",solb:"\u29C4",sol:"/",Sopf:"\u{1D54A}",sopf:"\u{1D564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\uFE00",sqcup:"\u2294",sqcups:"\u2294\uFE00",Sqrt:"\u221A",sqsub:"\u228F",sqsube:"\u2291",sqsubset:"\u228F",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",square:"\u25A1",Square:"\u25A1",SquareIntersection:"\u2293",SquareSubset:"\u228F",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",squarf:"\u25AA",squ:"\u25A1",squf:"\u25AA",srarr:"\u2192",Sscr:"\u{1D4AE}",sscr:"\u{1D4C8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22C6",Star:"\u22C6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03F5",straightphi:"\u03D5",strns:"\xAF",sub:"\u2282",Sub:"\u22D0",subdot:"\u2ABD",subE:"\u2AC5",sube:"\u2286",subedot:"\u2AC3",submult:"\u2AC1",subnE:"\u2ACB",subne:"\u228A",subplus:"\u2ABF",subrarr:"\u2979",subset:"\u2282",Subset:"\u22D0",subseteq:"\u2286",subseteqq:"\u2AC5",SubsetEqual:"\u2286",subsetneq:"\u228A",subsetneqq:"\u2ACB",subsim:"\u2AC7",subsub:"\u2AD5",subsup:"\u2AD3",succapprox:"\u2AB8",succ:"\u227B",succcurlyeq:"\u227D",Succeeds:"\u227B",SucceedsEqual:"\u2AB0",SucceedsSlantEqual:"\u227D",SucceedsTilde:"\u227F",succeq:"\u2AB0",succnapprox:"\u2ABA",succneqq:"\u2AB6",succnsim:"\u22E9",succsim:"\u227F",SuchThat:"\u220B",sum:"\u2211",Sum:"\u2211",sung:"\u266A",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",sup:"\u2283",Sup:"\u22D1",supdot:"\u2ABE",supdsub:"\u2AD8",supE:"\u2AC6",supe:"\u2287",supedot:"\u2AC4",Superset:"\u2283",SupersetEqual:"\u2287",suphsol:"\u27C9",suphsub:"\u2AD7",suplarr:"\u297B",supmult:"\u2AC2",supnE:"\u2ACC",supne:"\u228B",supplus:"\u2AC0",supset:"\u2283",Supset:"\u22D1",supseteq:"\u2287",supseteqq:"\u2AC6",supsetneq:"\u228B",supsetneqq:"\u2ACC",supsim:"\u2AC8",supsub:"\u2AD4",supsup:"\u2AD6",swarhk:"\u2926",swarr:"\u2199",swArr:"\u21D9",swarrow:"\u2199",swnwar:"\u292A",szlig:"\xDF",Tab:" ",target:"\u2316",Tau:"\u03A4",tau:"\u03C4",tbrk:"\u23B4",Tcaron:"\u0164",tcaron:"\u0165",Tcedil:"\u0162",tcedil:"\u0163",Tcy:"\u0422",tcy:"\u0442",tdot:"\u20DB",telrec:"\u2315",Tfr:"\u{1D517}",tfr:"\u{1D531}",there4:"\u2234",therefore:"\u2234",Therefore:"\u2234",Theta:"\u0398",theta:"\u03B8",thetasym:"\u03D1",thetav:"\u03D1",thickapprox:"\u2248",thicksim:"\u223C",ThickSpace:"\u205F\u200A",ThinSpace:"\u2009",thinsp:"\u2009",thkap:"\u2248",thksim:"\u223C",THORN:"\xDE",thorn:"\xFE",tilde:"\u02DC",Tilde:"\u223C",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",timesbar:"\u2A31",timesb:"\u22A0",times:"\xD7",timesd:"\u2A30",tint:"\u222D",toea:"\u2928",topbot:"\u2336",topcir:"\u2AF1",top:"\u22A4",Topf:"\u{1D54B}",topf:"\u{1D565}",topfork:"\u2ADA",tosa:"\u2929",tprime:"\u2034",trade:"\u2122",TRADE:"\u2122",triangle:"\u25B5",triangledown:"\u25BF",triangleleft:"\u25C3",trianglelefteq:"\u22B4",triangleq:"\u225C",triangleright:"\u25B9",trianglerighteq:"\u22B5",tridot:"\u25EC",trie:"\u225C",triminus:"\u2A3A",TripleDot:"\u20DB",triplus:"\u2A39",trisb:"\u29CD",tritime:"\u2A3B",trpezium:"\u23E2",Tscr:"\u{1D4AF}",tscr:"\u{1D4C9}",TScy:"\u0426",tscy:"\u0446",TSHcy:"\u040B",tshcy:"\u045B",Tstrok:"\u0166",tstrok:"\u0167",twixt:"\u226C",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",Uacute:"\xDA",uacute:"\xFA",uarr:"\u2191",Uarr:"\u219F",uArr:"\u21D1",Uarrocir:"\u2949",Ubrcy:"\u040E",ubrcy:"\u045E",Ubreve:"\u016C",ubreve:"\u016D",Ucirc:"\xDB",ucirc:"\xFB",Ucy:"\u0423",ucy:"\u0443",udarr:"\u21C5",Udblac:"\u0170",udblac:"\u0171",udhar:"\u296E",ufisht:"\u297E",Ufr:"\u{1D518}",ufr:"\u{1D532}",Ugrave:"\xD9",ugrave:"\xF9",uHar:"\u2963",uharl:"\u21BF",uharr:"\u21BE",uhblk:"\u2580",ulcorn:"\u231C",ulcorner:"\u231C",ulcrop:"\u230F",ultri:"\u25F8",Umacr:"\u016A",umacr:"\u016B",uml:"\xA8",UnderBar:"_",UnderBrace:"\u23DF",UnderBracket:"\u23B5",UnderParenthesis:"\u23DD",Union:"\u22C3",UnionPlus:"\u228E",Uogon:"\u0172",uogon:"\u0173",Uopf:"\u{1D54C}",uopf:"\u{1D566}",UpArrowBar:"\u2912",uparrow:"\u2191",UpArrow:"\u2191",Uparrow:"\u21D1",UpArrowDownArrow:"\u21C5",updownarrow:"\u2195",UpDownArrow:"\u2195",Updownarrow:"\u21D5",UpEquilibrium:"\u296E",upharpoonleft:"\u21BF",upharpoonright:"\u21BE",uplus:"\u228E",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",upsi:"\u03C5",Upsi:"\u03D2",upsih:"\u03D2",Upsilon:"\u03A5",upsilon:"\u03C5",UpTeeArrow:"\u21A5",UpTee:"\u22A5",upuparrows:"\u21C8",urcorn:"\u231D",urcorner:"\u231D",urcrop:"\u230E",Uring:"\u016E",uring:"\u016F",urtri:"\u25F9",Uscr:"\u{1D4B0}",uscr:"\u{1D4CA}",utdot:"\u22F0",Utilde:"\u0168",utilde:"\u0169",utri:"\u25B5",utrif:"\u25B4",uuarr:"\u21C8",Uuml:"\xDC",uuml:"\xFC",uwangle:"\u29A7",vangrt:"\u299C",varepsilon:"\u03F5",varkappa:"\u03F0",varnothing:"\u2205",varphi:"\u03D5",varpi:"\u03D6",varpropto:"\u221D",varr:"\u2195",vArr:"\u21D5",varrho:"\u03F1",varsigma:"\u03C2",varsubsetneq:"\u228A\uFE00",varsubsetneqq:"\u2ACB\uFE00",varsupsetneq:"\u228B\uFE00",varsupsetneqq:"\u2ACC\uFE00",vartheta:"\u03D1",vartriangleleft:"\u22B2",vartriangleright:"\u22B3",vBar:"\u2AE8",Vbar:"\u2AEB",vBarv:"\u2AE9",Vcy:"\u0412",vcy:"\u0432",vdash:"\u22A2",vDash:"\u22A8",Vdash:"\u22A9",VDash:"\u22AB",Vdashl:"\u2AE6",veebar:"\u22BB",vee:"\u2228",Vee:"\u22C1",veeeq:"\u225A",vellip:"\u22EE",verbar:"|",Verbar:"\u2016",vert:"|",Vert:"\u2016",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200A",Vfr:"\u{1D519}",vfr:"\u{1D533}",vltri:"\u22B2",vnsub:"\u2282\u20D2",vnsup:"\u2283\u20D2",Vopf:"\u{1D54D}",vopf:"\u{1D567}",vprop:"\u221D",vrtri:"\u22B3",Vscr:"\u{1D4B1}",vscr:"\u{1D4CB}",vsubnE:"\u2ACB\uFE00",vsubne:"\u228A\uFE00",vsupnE:"\u2ACC\uFE00",vsupne:"\u228B\uFE00",Vvdash:"\u22AA",vzigzag:"\u299A",Wcirc:"\u0174",wcirc:"\u0175",wedbar:"\u2A5F",wedge:"\u2227",Wedge:"\u22C0",wedgeq:"\u2259",weierp:"\u2118",Wfr:"\u{1D51A}",wfr:"\u{1D534}",Wopf:"\u{1D54E}",wopf:"\u{1D568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",Wscr:"\u{1D4B2}",wscr:"\u{1D4CC}",xcap:"\u22C2",xcirc:"\u25EF",xcup:"\u22C3",xdtri:"\u25BD",Xfr:"\u{1D51B}",xfr:"\u{1D535}",xharr:"\u27F7",xhArr:"\u27FA",Xi:"\u039E",xi:"\u03BE",xlarr:"\u27F5",xlArr:"\u27F8",xmap:"\u27FC",xnis:"\u22FB",xodot:"\u2A00",Xopf:"\u{1D54F}",xopf:"\u{1D569}",xoplus:"\u2A01",xotime:"\u2A02",xrarr:"\u27F6",xrArr:"\u27F9",Xscr:"\u{1D4B3}",xscr:"\u{1D4CD}",xsqcup:"\u2A06",xuplus:"\u2A04",xutri:"\u25B3",xvee:"\u22C1",xwedge:"\u22C0",Yacute:"\xDD",yacute:"\xFD",YAcy:"\u042F",yacy:"\u044F",Ycirc:"\u0176",ycirc:"\u0177",Ycy:"\u042B",ycy:"\u044B",yen:"\xA5",Yfr:"\u{1D51C}",yfr:"\u{1D536}",YIcy:"\u0407",yicy:"\u0457",Yopf:"\u{1D550}",yopf:"\u{1D56A}",Yscr:"\u{1D4B4}",yscr:"\u{1D4CE}",YUcy:"\u042E",yucy:"\u044E",yuml:"\xFF",Yuml:"\u0178",Zacute:"\u0179",zacute:"\u017A",Zcaron:"\u017D",zcaron:"\u017E",Zcy:"\u0417",zcy:"\u0437",Zdot:"\u017B",zdot:"\u017C",zeetrf:"\u2128",ZeroWidthSpace:"\u200B",Zeta:"\u0396",zeta:"\u03B6",zfr:"\u{1D537}",Zfr:"\u2128",ZHcy:"\u0416",zhcy:"\u0436",zigrarr:"\u21DD",zopf:"\u{1D56B}",Zopf:"\u2124",Zscr:"\u{1D4B5}",zscr:"\u{1D4CF}",zwj:"\u200D",zwnj:"\u200C"}});var Up=Le((r1,vv)=>{vv.exports={Aacute:"\xC1",aacute:"\xE1",Acirc:"\xC2",acirc:"\xE2",acute:"\xB4",AElig:"\xC6",aelig:"\xE6",Agrave:"\xC0",agrave:"\xE0",amp:"&",AMP:"&",Aring:"\xC5",aring:"\xE5",Atilde:"\xC3",atilde:"\xE3",Auml:"\xC4",auml:"\xE4",brvbar:"\xA6",Ccedil:"\xC7",ccedil:"\xE7",cedil:"\xB8",cent:"\xA2",copy:"\xA9",COPY:"\xA9",curren:"\xA4",deg:"\xB0",divide:"\xF7",Eacute:"\xC9",eacute:"\xE9",Ecirc:"\xCA",ecirc:"\xEA",Egrave:"\xC8",egrave:"\xE8",ETH:"\xD0",eth:"\xF0",Euml:"\xCB",euml:"\xEB",frac12:"\xBD",frac14:"\xBC",frac34:"\xBE",gt:">",GT:">",Iacute:"\xCD",iacute:"\xED",Icirc:"\xCE",icirc:"\xEE",iexcl:"\xA1",Igrave:"\xCC",igrave:"\xEC",iquest:"\xBF",Iuml:"\xCF",iuml:"\xEF",laquo:"\xAB",lt:"<",LT:"<",macr:"\xAF",micro:"\xB5",middot:"\xB7",nbsp:"\xA0",not:"\xAC",Ntilde:"\xD1",ntilde:"\xF1",Oacute:"\xD3",oacute:"\xF3",Ocirc:"\xD4",ocirc:"\xF4",Ograve:"\xD2",ograve:"\xF2",ordf:"\xAA",ordm:"\xBA",Oslash:"\xD8",oslash:"\xF8",Otilde:"\xD5",otilde:"\xF5",Ouml:"\xD6",ouml:"\xF6",para:"\xB6",plusmn:"\xB1",pound:"\xA3",quot:'"',QUOT:'"',raquo:"\xBB",reg:"\xAE",REG:"\xAE",sect:"\xA7",shy:"\xAD",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",szlig:"\xDF",THORN:"\xDE",thorn:"\xFE",times:"\xD7",Uacute:"\xDA",uacute:"\xFA",Ucirc:"\xDB",ucirc:"\xFB",Ugrave:"\xD9",ugrave:"\xF9",uml:"\xA8",Uuml:"\xDC",uuml:"\xFC",Yacute:"\xDD",yacute:"\xFD",yen:"\xA5",yuml:"\xFF"}});var ou=Le((o1,yv)=>{yv.exports={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'}});var Rp=Le((l1,Ev)=>{Ev.exports={"0":65533,"128":8364,"130":8218,"131":402,"132":8222,"133":8230,"134":8224,"135":8225,"136":710,"137":8240,"138":352,"139":8249,"140":338,"142":381,"145":8216,"146":8217,"147":8220,"148":8221,"149":8226,"150":8211,"151":8212,"152":732,"153":8482,"154":353,"155":8250,"156":339,"158":382,"159":376}});var zp=Le(Oo=>{"use strict";var Sv=Oo&&Oo.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Oo,"__esModule",{value:!0});var Fp=Sv(Rp()),_v=String.fromCodePoint||function(e){var t="";return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|e&1023),t+=String.fromCharCode(e),t};function wv(e){return e>=55296&&e<=57343||e>1114111?"\uFFFD":(e in Fp.default&&(e=Fp.default[e]),_v(e))}Oo.default=wv});var iu=Le(xt=>{"use strict";var mi=xt&&xt.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xt,"__esModule",{value:!0});xt.decodeHTML=xt.decodeHTMLStrict=xt.decodeXML=void 0;var lu=mi(ru()),Tv=mi(Up()),Cv=mi(ou()),bp=mi(zp()),kv=/&(?:[a-zA-Z0-9]+|#[xX][\da-fA-F]+|#\d+);/g;xt.decodeXML=jp(Cv.default);xt.decodeHTMLStrict=jp(lu.default);function jp(e){var t=Bp(e);return function(n){return String(n).replace(kv,t)}}var Hp=function(e,t){return e{"use strict";var qp=Ge&&Ge.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Ge,"__esModule",{value:!0});Ge.escapeUTF8=Ge.escape=Ge.encodeNonAsciiHTML=Ge.encodeHTML=Ge.encodeXML=void 0;var Lv=qp(ou()),Wp=Gp(Lv.default),Vp=Xp(Wp);Ge.encodeXML=Yp(Wp);var Nv=qp(ru()),su=Gp(Nv.default),Mv=Xp(su);Ge.encodeHTML=xv(su,Mv);Ge.encodeNonAsciiHTML=Yp(su);function Gp(e){return Object.keys(e).sort().reduce(function(t,n){return t[e[n]]="&"+n+";",t},{})}function Xp(e){for(var t=[],n=[],r=0,o=Object.keys(e);r1?Av(e):e.charCodeAt(0)).toString(16).toUpperCase()+";"}function xv(e,t){return function(n){return n.replace(t,function(r){return e[r]}).replace($p,gi)}}var Kp=new RegExp(Vp.source+"|"+$p.source,"g");function Ov(e){return e.replace(Kp,gi)}Ge.escape=Ov;function Dv(e){return e.replace(Vp,gi)}Ge.escapeUTF8=Dv;function Yp(e){return function(t){return t.replace(Kp,function(n){return e[n]||gi(n)})}}});var Zp=Le(U=>{"use strict";Object.defineProperty(U,"__esModule",{value:!0});U.decodeXMLStrict=U.decodeHTML5Strict=U.decodeHTML4Strict=U.decodeHTML5=U.decodeHTML4=U.decodeHTMLStrict=U.decodeHTML=U.decodeXML=U.encodeHTML5=U.encodeHTML4=U.escapeUTF8=U.escape=U.encodeNonAsciiHTML=U.encodeHTML=U.encodeXML=U.encode=U.decodeStrict=U.decode=void 0;var hi=iu(),Qp=au();function Pv(e,t){return(!t||t<=0?hi.decodeXML:hi.decodeHTML)(e)}U.decode=Pv;function Iv(e,t){return(!t||t<=0?hi.decodeXML:hi.decodeHTMLStrict)(e)}U.decodeStrict=Iv;function Uv(e,t){return(!t||t<=0?Qp.encodeXML:Qp.encodeHTML)(e)}U.encode=Uv;var qn=au();Object.defineProperty(U,"encodeXML",{enumerable:!0,get:function(){return qn.encodeXML}});Object.defineProperty(U,"encodeHTML",{enumerable:!0,get:function(){return qn.encodeHTML}});Object.defineProperty(U,"encodeNonAsciiHTML",{enumerable:!0,get:function(){return qn.encodeNonAsciiHTML}});Object.defineProperty(U,"escape",{enumerable:!0,get:function(){return qn.escape}});Object.defineProperty(U,"escapeUTF8",{enumerable:!0,get:function(){return qn.escapeUTF8}});Object.defineProperty(U,"encodeHTML4",{enumerable:!0,get:function(){return qn.encodeHTML}});Object.defineProperty(U,"encodeHTML5",{enumerable:!0,get:function(){return qn.encodeHTML}});var En=iu();Object.defineProperty(U,"decodeXML",{enumerable:!0,get:function(){return En.decodeXML}});Object.defineProperty(U,"decodeHTML",{enumerable:!0,get:function(){return En.decodeHTML}});Object.defineProperty(U,"decodeHTMLStrict",{enumerable:!0,get:function(){return En.decodeHTMLStrict}});Object.defineProperty(U,"decodeHTML4",{enumerable:!0,get:function(){return En.decodeHTML}});Object.defineProperty(U,"decodeHTML5",{enumerable:!0,get:function(){return En.decodeHTML}});Object.defineProperty(U,"decodeHTML4Strict",{enumerable:!0,get:function(){return En.decodeHTMLStrict}});Object.defineProperty(U,"decodeHTML5Strict",{enumerable:!0,get:function(){return En.decodeHTMLStrict}});Object.defineProperty(U,"decodeXMLStrict",{enumerable:!0,get:function(){return En.decodeXML}})});var um=Le((c1,am)=>{"use strict";function Rv(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Jp(e,t){for(var n=0;n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(u){throw u},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var l=!0,i=!1,s;return{s:function(){n=n.call(e)},n:function(){var u=n.next();return l=u.done,u},e:function(u){i=!0,s=u},f:function(){try{!l&&n.return!=null&&n.return()}finally{if(i)throw s}}}}function zv(e,t){if(e){if(typeof e=="string")return em(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return em(e,t)}}function em(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0?e*40+55:0,i=t>0?t*40+55:0,s=n>0?n*40+55:0;r[o]=Bv([l,i,s])}function im(e){for(var t=e.toString(16);t.length<2;)t="0"+t;return t}function Bv(e){var t=[],n=lm(e),r;try{for(n.s();!(r=n.n()).done;){var o=r.value;t.push(im(o))}}catch(l){n.e(l)}finally{n.f()}return"#"+t.join("")}function nm(e,t,n,r){var o;return t==="text"?o=Gv(n,r):t==="display"?o=Wv(e,n,r):t==="xterm256Foreground"?o=Ei(e,r.colors[n]):t==="xterm256Background"?o=Si(e,r.colors[n]):t==="rgb"&&(o=qv(e,n)),o}function qv(e,t){t=t.substring(2).slice(0,-1);var n=+t.substr(0,2),r=t.substring(5).split(";"),o=r.map(function(l){return("0"+Number(l).toString(16)).substr(-2)}).join("");return yi(e,(n===38?"color:#":"background-color:#")+o)}function Wv(e,t,n){t=parseInt(t,10);var r={"-1":function(){return"
"},0:function(){return e.length&&sm(e)},1:function(){return Sn(e,"b")},3:function(){return Sn(e,"i")},4:function(){return Sn(e,"u")},8:function(){return yi(e,"display:none")},9:function(){return Sn(e,"strike")},22:function(){return yi(e,"font-weight:normal;text-decoration:none;font-style:normal")},23:function(){return om(e,"i")},24:function(){return om(e,"u")},39:function(){return Ei(e,n.fg)},49:function(){return Si(e,n.bg)},53:function(){return yi(e,"text-decoration:overline")}},o;return r[t]?o=r[t]():4"}).join("")}function vi(e,t){for(var n=[],r=e;r<=t;r++)n.push(r);return n}function Vv(e){return function(t){return(e===null||t.category!==e)&&e!=="all"}}function rm(e){e=parseInt(e,10);var t=null;return e===0?t="all":e===1?t="bold":2")}function yi(e,t){return Sn(e,"span",t)}function Ei(e,t){return Sn(e,"span","color:"+t)}function Si(e,t){return Sn(e,"span","background-color:"+t)}function om(e,t){var n;if(e.slice(-1)[0]===t&&(n=e.pop()),n)return""}function Xv(e,t,n){var r=!1,o=3;function l(){return""}function i(C,L){return n("xterm256Foreground",L),""}function s(C,L){return n("xterm256Background",L),""}function a(C){return t.newline?n("display",-1):n("text",C),""}function u(C,L){r=!0,L.trim().length===0&&(L="0"),L=L.trimRight(";").split(";");var A=lm(L),O;try{for(A.s();!(O=A.n()).done;){var V=O.value;n("display",V)}}catch(I){A.e(I)}finally{A.f()}return""}function m(C){return n("text",C),""}function g(C){return n("rgb",C),""}var h=[{pattern:/^\x08+/,sub:l},{pattern:/^\x1b\[[012]?K/,sub:l},{pattern:/^\x1b\[\(B/,sub:l},{pattern:/^\x1b\[[34]8;2;\d+;\d+;\d+m/,sub:g},{pattern:/^\x1b\[38;5;(\d+)m/,sub:i},{pattern:/^\x1b\[48;5;(\d+)m/,sub:s},{pattern:/^\n/,sub:a},{pattern:/^\r+\n/,sub:a},{pattern:/^\r/,sub:a},{pattern:/^\x1b\[((?:\d{1,3};?)+|)m/,sub:u},{pattern:/^\x1b\[\d?J/,sub:l},{pattern:/^\x1b\[\d{0,3};\d{0,3}f/,sub:l},{pattern:/^\x1b\[?[\d;]{0,3}/,sub:l},{pattern:/^(([^\x1b\x08\r\n])+)/,sub:m}];function _(C,L){L>o&&r||(r=!1,e=e.replace(C.pattern,C.sub))}var E=[],k=e,P=k.length;e:for(;P>0;){for(var c=0,f=0,p=h.length;f{let l=["system","light","dark"],s=(l.indexOf(e)+1)%l.length;t(l[s])},r=()=>{switch(e){case"light":return Ee.default.createElement("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},Ee.default.createElement("circle",{cx:"12",cy:"12",r:"5"}),Ee.default.createElement("line",{x1:"12",y1:"1",x2:"12",y2:"3"}),Ee.default.createElement("line",{x1:"12",y1:"21",x2:"12",y2:"23"}),Ee.default.createElement("line",{x1:"4.22",y1:"4.22",x2:"5.64",y2:"5.64"}),Ee.default.createElement("line",{x1:"18.36",y1:"18.36",x2:"19.78",y2:"19.78"}),Ee.default.createElement("line",{x1:"1",y1:"12",x2:"3",y2:"12"}),Ee.default.createElement("line",{x1:"21",y1:"12",x2:"23",y2:"12"}),Ee.default.createElement("line",{x1:"4.22",y1:"19.78",x2:"5.64",y2:"18.36"}),Ee.default.createElement("line",{x1:"18.36",y1:"5.64",x2:"19.78",y2:"4.22"}));case"dark":return Ee.default.createElement("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},Ee.default.createElement("path",{d:"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"}));default:return Ee.default.createElement("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},Ee.default.createElement("rect",{x:"2",y:"3",width:"20",height:"14",rx:"2",ry:"2"}),Ee.default.createElement("line",{x1:"8",y1:"21",x2:"16",y2:"21"}),Ee.default.createElement("line",{x1:"12",y1:"17",x2:"12",y2:"21"}))}},o=()=>{switch(e){case"light":return"Theme: Light (click for Dark)";case"dark":return"Theme: Dark (click for System)";default:return"Theme: System (click for Light)"}};return Ee.default.createElement("button",{className:"theme-toggle-btn",onClick:n,title:o(),"aria-label":o()},r())}var At=ee(te(),1);var hn=ee(te(),1);function Cp(e,t){let[n,r]=(0,hn.useState)(null),[o,l]=(0,hn.useState)(!0),[i,s]=(0,hn.useState)(null),a=(0,hn.useCallback)(async()=>{try{l(!0),s(null);let u=await fetch(`https://api.github.com/repos/${e}/${t}`);if(!u.ok)throw new Error(`GitHub API error: ${u.status}`);let m=await u.json();r(m.stargazers_count)}catch(u){console.error("Failed to fetch GitHub stars:",u),s(u instanceof Error?u:new Error("Unknown error"))}finally{l(!1)}},[e,t]);return(0,hn.useEffect)(()=>{a()},[a]),{stars:n,isLoading:o,error:i}}function kp(e){return e<1e3?e.toString():e<1e6?`${(e/1e3).toFixed(1)}k`:`${(e/1e6).toFixed(1)}M`}function Lp({username:e,repo:t,className:n=""}){let{stars:r,isLoading:o,error:l}=Cp(e,t),i=`https://github.com/${e}/${t}`;return l?At.default.createElement("a",{href:i,target:"_blank",rel:"noopener noreferrer",title:"GitHub",className:"icon-link"},At.default.createElement("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"currentColor"},At.default.createElement("path",{d:"M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"}))):At.default.createElement("a",{href:i,target:"_blank",rel:"noopener noreferrer",className:`github-stars-btn ${n}`,title:`Star us on GitHub${r!==null?` (${r.toLocaleString()} stars)`:""}`},At.default.createElement("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"currentColor",style:{marginRight:"6px"}},At.default.createElement("path",{d:"M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"})),At.default.createElement("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"currentColor",style:{marginRight:"4px"}},At.default.createElement("path",{d:"M12 .587l3.668 7.431 8.2 1.192-5.934 5.787 1.4 8.166L12 18.896l-7.334 3.867 1.4-8.166-5.934-5.787 8.2-1.192z"})),At.default.createElement("span",{className:o?"stars-loading":"stars-count"},o?"...":r!==null?kp(r):"\u2014"))}var vn=ee(te(),1);function Np(e){let t=(0,vn.useRef)(null),n=(0,vn.useRef)(null),r=(0,vn.useRef)(null),o=(0,vn.useRef)(0),l=(0,vn.useRef)(null);(0,vn.useEffect)(()=>{if(n.current||(n.current=document.createElement("canvas"),n.current.width=32,n.current.height=32),r.current||(r.current=new Image,r.current.src="claude-mem-logomark.webp"),!l.current){let g=document.querySelector('link[rel="icon"]');g&&(l.current=g.href)}let i=n.current,s=i.getContext("2d"),a=r.current;if(!s)return;let u=g=>{let h=document.querySelector('link[rel="icon"]');h||(h=document.createElement("link"),h.rel="icon",document.head.appendChild(h)),h.href=g},m=()=>{if(!a.complete){t.current=requestAnimationFrame(m);return}o.current+=2*Math.PI/90,s.clearRect(0,0,32,32),s.save(),s.translate(16,16),s.rotate(o.current),s.drawImage(a,-16,-16,32,32),s.restore(),u(i.toDataURL("image/png")),t.current=requestAnimationFrame(m)};return e?(o.current=0,m()):(t.current&&(cancelAnimationFrame(t.current),t.current=null),l.current&&u(l.current)),()=>{t.current&&(cancelAnimationFrame(t.current),t.current=null)}},[e])}function Mp({isConnected:e,projects:t,currentFilter:n,onFilterChange:r,isProcessing:o,queueDepth:l,themePreference:i,onThemeChange:s,onContextPreviewToggle:a}){return Np(o),X.default.createElement("div",{className:"header"},X.default.createElement("h1",null,X.default.createElement("div",{style:{position:"relative",display:"inline-block"}},X.default.createElement("img",{src:"claude-mem-logomark.webp",alt:"",className:`logomark ${o?"spinning":""}`}),l>0&&X.default.createElement("div",{className:"queue-bubble"},l)),X.default.createElement("span",{className:"logo-text"},"claude-mem")),X.default.createElement("div",{className:"status"},X.default.createElement("a",{href:"https://docs.claude-mem.ai",target:"_blank",rel:"noopener noreferrer",className:"icon-link",title:"Documentation"},X.default.createElement("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},X.default.createElement("path",{d:"M4 19.5A2.5 2.5 0 0 1 6.5 17H20"}),X.default.createElement("path",{d:"M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z"}))),X.default.createElement("a",{href:"https://x.com/Claude_Memory",target:"_blank",rel:"noopener noreferrer",className:"icon-link",title:"Follow us on X"},X.default.createElement("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"currentColor"},X.default.createElement("path",{d:"M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"}))),X.default.createElement("a",{href:"https://discord.gg/J4wttp9vDu",target:"_blank",rel:"noopener noreferrer",className:"icon-link",title:"Join our Discord community"},X.default.createElement("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"currentColor"},X.default.createElement("path",{d:"M20.317 4.37a19.791 19.791 0 0 0-4.885-1.515a.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 0 0-5.487 0a12.64 12.64 0 0 0-.617-1.25a.077.077 0 0 0-.079-.037A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057a19.9 19.9 0 0 0 5.993 3.03a.078.078 0 0 0 .084-.028a14.09 14.09 0 0 0 1.226-1.994a.076.076 0 0 0-.041-.106a13.107 13.107 0 0 1-1.872-.892a.077.077 0 0 1-.008-.128a10.2 10.2 0 0 0 .372-.292a.074.074 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 0 1 .078.01c.12.098.246.198.373.292a.077.077 0 0 1-.006.127a12.299 12.299 0 0 1-1.873.892a.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028a19.839 19.839 0 0 0 6.002-3.03a.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419c0-1.333.956-2.419 2.157-2.419c1.21 0 2.176 1.096 2.157 2.42c0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419c0-1.333.955-2.419 2.157-2.419c1.21 0 2.176 1.096 2.157 2.42c0 1.333-.946 2.418-2.157 2.418z"}))),X.default.createElement(Lp,{username:"thedotmack",repo:"claude-mem"}),X.default.createElement("select",{value:n,onChange:u=>r(u.target.value)},X.default.createElement("option",{value:""},"All Projects"),t.map(u=>X.default.createElement("option",{key:u,value:u},u))),X.default.createElement(Tp,{preference:i,onThemeChange:s}),X.default.createElement("button",{className:"settings-btn",onClick:a,title:"Settings"},X.default.createElement("svg",{className:"settings-icon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},X.default.createElement("path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"}),X.default.createElement("circle",{cx:"12",cy:"12",r:"3"})))))}var ue=ee(te(),1);var z=ee(te(),1);function Ar(e){return new Date(e).toLocaleString()}function Ap(e){let t=["/Scripts/","/src/","/plugin/","/docs/"];for(let o of t){let l=e.indexOf(o);if(l!==-1)return e.substring(l+1)}let n=e.indexOf("claude-mem/");if(n!==-1)return e.substring(n+11);let r=e.split("/");return r.length>3?r.slice(-3).join("/"):e}function xp({observation:e}){let[t,n]=(0,z.useState)(!1),[r,o]=(0,z.useState)(!1),l=Ar(e.created_at_epoch),i=e.facts?JSON.parse(e.facts):[],s=e.concepts?JSON.parse(e.concepts):[],a=e.files_read?JSON.parse(e.files_read).map(Ap):[],u=e.files_modified?JSON.parse(e.files_modified).map(Ap):[],m=i.length>0||s.length>0||a.length>0||u.length>0;return z.default.createElement("div",{className:"card"},z.default.createElement("div",{className:"card-header"},z.default.createElement("div",{className:"card-header-left"},z.default.createElement("span",{className:`card-type type-${e.type}`},e.type),z.default.createElement("span",{className:"card-project"},e.project)),z.default.createElement("div",{className:"view-mode-toggles"},m&&z.default.createElement("button",{className:`view-mode-toggle ${t?"active":""}`,onClick:()=>{n(!t),t||o(!1)}},z.default.createElement("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},z.default.createElement("polyline",{points:"9 11 12 14 22 4"}),z.default.createElement("path",{d:"M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11"})),z.default.createElement("span",null,"facts")),e.narrative&&z.default.createElement("button",{className:`view-mode-toggle ${r?"active":""}`,onClick:()=>{o(!r),r||n(!1)}},z.default.createElement("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},z.default.createElement("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"}),z.default.createElement("polyline",{points:"14 2 14 8 20 8"}),z.default.createElement("line",{x1:"16",y1:"13",x2:"8",y2:"13"}),z.default.createElement("line",{x1:"16",y1:"17",x2:"8",y2:"17"})),z.default.createElement("span",null,"narrative")))),z.default.createElement("div",{className:"card-title"},e.title||"Untitled"),z.default.createElement("div",{className:"view-mode-content"},!t&&!r&&e.subtitle&&z.default.createElement("div",{className:"card-subtitle"},e.subtitle),t&&i.length>0&&z.default.createElement("ul",{className:"facts-list"},i.map((g,h)=>z.default.createElement("li",{key:h},g))),r&&e.narrative&&z.default.createElement("div",{className:"narrative"},e.narrative)),z.default.createElement("div",{className:"card-meta"},z.default.createElement("span",{className:"meta-date"},"#",e.id," \u2022 ",l),t&&(s.length>0||a.length>0||u.length>0)&&z.default.createElement("div",{style:{display:"flex",flexWrap:"wrap",gap:"8px",alignItems:"center"}},s.map((g,h)=>z.default.createElement("span",{key:h,style:{padding:"2px 8px",background:"var(--color-type-badge-bg)",color:"var(--color-type-badge-text)",borderRadius:"3px",fontWeight:"500",fontSize:"10px"}},g)),a.length>0&&z.default.createElement("span",{className:"meta-files"},z.default.createElement("span",{className:"file-label"},"read:")," ",a.join(", ")),u.length>0&&z.default.createElement("span",{className:"meta-files"},z.default.createElement("span",{className:"file-label"},"modified:")," ",u.join(", ")))))}var Ce=ee(te(),1);function Op({summary:e}){let t=Ar(e.created_at_epoch),n=[{key:"investigated",label:"Investigated",content:e.investigated,icon:"/icon-thick-investigated.svg"},{key:"learned",label:"Learned",content:e.learned,icon:"/icon-thick-learned.svg"},{key:"completed",label:"Completed",content:e.completed,icon:"/icon-thick-completed.svg"},{key:"next_steps",label:"Next Steps",content:e.next_steps,icon:"/icon-thick-next-steps.svg"}].filter(r=>r.content);return Ce.default.createElement("article",{className:"card summary-card"},Ce.default.createElement("header",{className:"summary-card-header"},Ce.default.createElement("div",{className:"summary-badge-row"},Ce.default.createElement("span",{className:"card-type summary-badge"},"Session Summary"),Ce.default.createElement("span",{className:"summary-project-badge"},e.project)),e.request&&Ce.default.createElement("h2",{className:"summary-title"},e.request)),Ce.default.createElement("div",{className:"summary-sections"},n.map((r,o)=>Ce.default.createElement("section",{key:r.key,className:"summary-section",style:{animationDelay:`${o*50}ms`}},Ce.default.createElement("div",{className:"summary-section-header"},Ce.default.createElement("img",{src:r.icon,alt:r.label,className:`summary-section-icon summary-section-icon--${r.key}`}),Ce.default.createElement("h3",{className:"summary-section-label"},r.label)),Ce.default.createElement("div",{className:"summary-section-content"},r.content)))),Ce.default.createElement("footer",{className:"summary-card-footer"},Ce.default.createElement("span",{className:"summary-meta-id"},"Session #",e.id),Ce.default.createElement("span",{className:"summary-meta-divider"},"\u2022"),Ce.default.createElement("time",{className:"summary-meta-date",dateTime:new Date(e.created_at_epoch).toISOString()},t)))}var Gt=ee(te(),1);function Dp({prompt:e}){let t=Ar(e.created_at_epoch);return Gt.default.createElement("div",{className:"card prompt-card"},Gt.default.createElement("div",{className:"card-header"},Gt.default.createElement("div",{className:"card-header-left"},Gt.default.createElement("span",{className:"card-type"},"Prompt"),Gt.default.createElement("span",{className:"card-project"},e.project))),Gt.default.createElement("div",{className:"card-content"},e.prompt_text),Gt.default.createElement("div",{className:"card-meta"},Gt.default.createElement("span",{className:"meta-date"},"#",e.id," \u2022 ",t)))}var yn=ee(te(),1);function Pp({targetRef:e}){let[t,n]=(0,yn.useState)(!1);(0,yn.useEffect)(()=>{let o=()=>{let i=e.current;i&&n(i.scrollTop>300)},l=e.current;if(l)return l.addEventListener("scroll",o),()=>l.removeEventListener("scroll",o)},[]);let r=()=>{let o=e.current;o&&o.scrollTo({top:0,behavior:"smooth"})};return t?yn.default.createElement("button",{onClick:r,className:"scroll-to-top","aria-label":"Scroll to top"},yn.default.createElement("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},yn.default.createElement("polyline",{points:"18 15 12 9 6 15"}))):null}var xo={PAGINATION_PAGE_SIZE:50,LOAD_MORE_THRESHOLD:.1};function Ip({observations:e,summaries:t,prompts:n,onLoadMore:r,isLoading:o,hasMore:l}){let i=(0,ue.useRef)(null),s=(0,ue.useRef)(null),a=(0,ue.useRef)(r);(0,ue.useEffect)(()=>{a.current=r},[r]),(0,ue.useEffect)(()=>{let m=i.current;if(!m)return;let g=new IntersectionObserver(h=>{h[0].isIntersecting&&l&&!o&&a.current?.()},{threshold:xo.LOAD_MORE_THRESHOLD});return g.observe(m),()=>{m&&g.unobserve(m),g.disconnect()}},[l,o]);let u=(0,ue.useMemo)(()=>[...e.map(g=>({...g,itemType:"observation"})),...t.map(g=>({...g,itemType:"summary"})),...n.map(g=>({...g,itemType:"prompt"}))].sort((g,h)=>h.created_at_epoch-g.created_at_epoch),[e,t,n]);return ue.default.createElement("div",{className:"feed",ref:s},ue.default.createElement(Pp,{targetRef:s}),ue.default.createElement("div",{className:"feed-content"},u.map(m=>{let g=`${m.itemType}-${m.id}`;return m.itemType==="observation"?ue.default.createElement(xp,{key:g,observation:m}):m.itemType==="summary"?ue.default.createElement(Op,{key:g,summary:m}):ue.default.createElement(Dp,{key:g,prompt:m})}),u.length===0&&!o&&ue.default.createElement("div",{style:{textAlign:"center",padding:"40px",color:"#8b949e"}},"No items to display"),o&&ue.default.createElement("div",{style:{textAlign:"center",padding:"20px",color:"#8b949e"}},ue.default.createElement("div",{className:"spinner",style:{display:"inline-block",marginRight:"10px"}}),"Loading more..."),l&&!o&&u.length>0&&ue.default.createElement("div",{ref:i,style:{height:"20px",margin:"10px 0"}}),!l&&u.length>0&&ue.default.createElement("div",{style:{textAlign:"center",padding:"20px",color:"#8b949e",fontSize:"14px"}},"No more items to load")))}var y=ee(te(),1);var ge=ee(te(),1),Tm=ee(um(),1);var{entries:ym,setPrototypeOf:cm,isFrozen:Yv,getPrototypeOf:Qv,getOwnPropertyDescriptor:Zv}=Object,{freeze:ze,seal:ut,create:gu}=Object,{apply:hu,construct:vu}=typeof Reflect<"u"&&Reflect;ze||(ze=function(t){return t});ut||(ut=function(t){return t});hu||(hu=function(t,n){for(var r=arguments.length,o=new Array(r>2?r-2:0),l=2;l1?n-1:0),o=1;o1?n-1:0),o=1;o2&&arguments[2]!==void 0?arguments[2]:Ti;cm&&cm(e,null);let r=t.length;for(;r--;){let o=t[r];if(typeof o=="string"){let l=n(o);l!==o&&(Yv(t)||(t[r]=l),o=l)}e[o]=!0}return e}function o0(e){for(let t=0;t/gm),u0=ut(/\$\{[\w\W]*/gm),c0=ut(/^data-[\-\w.\u00B7-\uFFFF]+$/),f0=ut(/^aria-[\-\w]+$/),Em=ut(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),d0=ut(/^(?:\w+script|data):/i),p0=ut(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Sm=ut(/^html$/i),m0=ut(/^[a-z][.\w]*(-[.\w]+)+$/i),hm=Object.freeze({__proto__:null,ARIA_ATTR:f0,ATTR_WHITESPACE:p0,CUSTOM_ELEMENT:m0,DATA_ATTR:c0,DOCTYPE_NAME:Sm,ERB_EXPR:a0,IS_ALLOWED_URI:Em,IS_SCRIPT_OR_DATA:d0,MUSTACHE_EXPR:s0,TMPLIT_EXPR:u0}),Ro={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},g0=function(){return typeof window>"u"?null:window},h0=function(t,n){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let r=null,o="data-tt-policy-suffix";n&&n.hasAttribute(o)&&(r=n.getAttribute(o));let l="dompurify"+(r?"#"+r:"");try{return t.createPolicy(l,{createHTML(i){return i},createScriptURL(i){return i}})}catch{return console.warn("TrustedTypes policy "+l+" could not be created."),null}},vm=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function _m(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:g0(),t=D=>_m(D);if(t.version="3.3.1",t.removed=[],!e||!e.document||e.document.nodeType!==Ro.document||!e.Element)return t.isSupported=!1,t;let{document:n}=e,r=n,o=r.currentScript,{DocumentFragment:l,HTMLTemplateElement:i,Node:s,Element:a,NodeFilter:u,NamedNodeMap:m=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:g,DOMParser:h,trustedTypes:_}=e,E=a.prototype,k=Uo(E,"cloneNode"),P=Uo(E,"remove"),c=Uo(E,"nextSibling"),f=Uo(E,"childNodes"),p=Uo(E,"parentNode");if(typeof i=="function"){let D=n.createElement("template");D.content&&D.content.ownerDocument&&(n=D.content.ownerDocument)}let v,C="",{implementation:L,createNodeIterator:A,createDocumentFragment:O,getElementsByTagName:V}=n,{importNode:I}=r,j=vm();t.isSupported=typeof ym=="function"&&typeof p=="function"&&L&&L.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:Z,ERB_EXPR:wn,TMPLIT_EXPR:Tn,DATA_ATTR:Ir,ARIA_ATTR:Wn,IS_SCRIPT_OR_DATA:Vn,ATTR_WHITESPACE:Cn,CUSTOM_ELEMENT:he}=hm,{IS_ALLOWED_URI:Xe}=hm,S=null,G=R({},[...dm,...fu,...du,...pu,...pm]),b=null,De=R({},[...mm,...mu,...gm,...wi]),B=Object.seal(gu(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Dt=null,kn=null,Gn=Object.seal(gu(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),_u=!0,Ni=!0,wu=!1,Tu=!0,Xn=!1,bo=!0,Ln=!1,Mi=!1,Ai=!1,$n=!1,Ho=!1,jo=!1,Cu=!0,ku=!1,bm="user-content-",xi=!0,Ur=!1,Kn={},_t=null,Oi=R({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Lu=null,Nu=R({},["audio","video","img","source","image","track"]),Di=null,Mu=R({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Bo="http://www.w3.org/1998/Math/MathML",qo="http://www.w3.org/2000/svg",Pt="http://www.w3.org/1999/xhtml",Yn=Pt,Pi=!1,Ii=null,Hm=R({},[Bo,qo,Pt],uu),Wo=R({},["mi","mo","mn","ms","mtext"]),Vo=R({},["annotation-xml"]),jm=R({},["title","style","font","a","script"]),Rr=null,Bm=["application/xhtml+xml","text/html"],qm="text/html",de=null,Qn=null,Wm=n.createElement("form"),Au=function(d){return d instanceof RegExp||d instanceof Function},Ui=function(){let d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(Qn&&Qn===d)){if((!d||typeof d!="object")&&(d={}),d=Ot(d),Rr=Bm.indexOf(d.PARSER_MEDIA_TYPE)===-1?qm:d.PARSER_MEDIA_TYPE,de=Rr==="application/xhtml+xml"?uu:Ti,S=yt(d,"ALLOWED_TAGS")?R({},d.ALLOWED_TAGS,de):G,b=yt(d,"ALLOWED_ATTR")?R({},d.ALLOWED_ATTR,de):De,Ii=yt(d,"ALLOWED_NAMESPACES")?R({},d.ALLOWED_NAMESPACES,uu):Hm,Di=yt(d,"ADD_URI_SAFE_ATTR")?R(Ot(Mu),d.ADD_URI_SAFE_ATTR,de):Mu,Lu=yt(d,"ADD_DATA_URI_TAGS")?R(Ot(Nu),d.ADD_DATA_URI_TAGS,de):Nu,_t=yt(d,"FORBID_CONTENTS")?R({},d.FORBID_CONTENTS,de):Oi,Dt=yt(d,"FORBID_TAGS")?R({},d.FORBID_TAGS,de):Ot({}),kn=yt(d,"FORBID_ATTR")?R({},d.FORBID_ATTR,de):Ot({}),Kn=yt(d,"USE_PROFILES")?d.USE_PROFILES:!1,_u=d.ALLOW_ARIA_ATTR!==!1,Ni=d.ALLOW_DATA_ATTR!==!1,wu=d.ALLOW_UNKNOWN_PROTOCOLS||!1,Tu=d.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Xn=d.SAFE_FOR_TEMPLATES||!1,bo=d.SAFE_FOR_XML!==!1,Ln=d.WHOLE_DOCUMENT||!1,$n=d.RETURN_DOM||!1,Ho=d.RETURN_DOM_FRAGMENT||!1,jo=d.RETURN_TRUSTED_TYPE||!1,Ai=d.FORCE_BODY||!1,Cu=d.SANITIZE_DOM!==!1,ku=d.SANITIZE_NAMED_PROPS||!1,xi=d.KEEP_CONTENT!==!1,Ur=d.IN_PLACE||!1,Xe=d.ALLOWED_URI_REGEXP||Em,Yn=d.NAMESPACE||Pt,Wo=d.MATHML_TEXT_INTEGRATION_POINTS||Wo,Vo=d.HTML_INTEGRATION_POINTS||Vo,B=d.CUSTOM_ELEMENT_HANDLING||{},d.CUSTOM_ELEMENT_HANDLING&&Au(d.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(B.tagNameCheck=d.CUSTOM_ELEMENT_HANDLING.tagNameCheck),d.CUSTOM_ELEMENT_HANDLING&&Au(d.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(B.attributeNameCheck=d.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),d.CUSTOM_ELEMENT_HANDLING&&typeof d.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(B.allowCustomizedBuiltInElements=d.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Xn&&(Ni=!1),Ho&&($n=!0),Kn&&(S=R({},pm),b=[],Kn.html===!0&&(R(S,dm),R(b,mm)),Kn.svg===!0&&(R(S,fu),R(b,mu),R(b,wi)),Kn.svgFilters===!0&&(R(S,du),R(b,mu),R(b,wi)),Kn.mathMl===!0&&(R(S,pu),R(b,gm),R(b,wi))),d.ADD_TAGS&&(typeof d.ADD_TAGS=="function"?Gn.tagCheck=d.ADD_TAGS:(S===G&&(S=Ot(S)),R(S,d.ADD_TAGS,de))),d.ADD_ATTR&&(typeof d.ADD_ATTR=="function"?Gn.attributeCheck=d.ADD_ATTR:(b===De&&(b=Ot(b)),R(b,d.ADD_ATTR,de))),d.ADD_URI_SAFE_ATTR&&R(Di,d.ADD_URI_SAFE_ATTR,de),d.FORBID_CONTENTS&&(_t===Oi&&(_t=Ot(_t)),R(_t,d.FORBID_CONTENTS,de)),d.ADD_FORBID_CONTENTS&&(_t===Oi&&(_t=Ot(_t)),R(_t,d.ADD_FORBID_CONTENTS,de)),xi&&(S["#text"]=!0),Ln&&R(S,["html","head","body"]),S.table&&(R(S,["tbody"]),delete Dt.tbody),d.TRUSTED_TYPES_POLICY){if(typeof d.TRUSTED_TYPES_POLICY.createHTML!="function")throw Io('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof d.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Io('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');v=d.TRUSTED_TYPES_POLICY,C=v.createHTML("")}else v===void 0&&(v=h0(_,o)),v!==null&&typeof C=="string"&&(C=v.createHTML(""));ze&&ze(d),Qn=d}},xu=R({},[...fu,...du,...l0]),Ou=R({},[...pu,...i0]),Vm=function(d){let T=p(d);(!T||!T.tagName)&&(T={namespaceURI:Yn,tagName:"template"});let x=Ti(d.tagName),J=Ti(T.tagName);return Ii[d.namespaceURI]?d.namespaceURI===qo?T.namespaceURI===Pt?x==="svg":T.namespaceURI===Bo?x==="svg"&&(J==="annotation-xml"||Wo[J]):!!xu[x]:d.namespaceURI===Bo?T.namespaceURI===Pt?x==="math":T.namespaceURI===qo?x==="math"&&Vo[J]:!!Ou[x]:d.namespaceURI===Pt?T.namespaceURI===qo&&!Vo[J]||T.namespaceURI===Bo&&!Wo[J]?!1:!Ou[x]&&(jm[x]||!xu[x]):!!(Rr==="application/xhtml+xml"&&Ii[d.namespaceURI]):!1},wt=function(d){Do(t.removed,{element:d});try{p(d).removeChild(d)}catch{P(d)}},Nn=function(d,T){try{Do(t.removed,{attribute:T.getAttributeNode(d),from:T})}catch{Do(t.removed,{attribute:null,from:T})}if(T.removeAttribute(d),d==="is")if($n||Ho)try{wt(T)}catch{}else try{T.setAttribute(d,"")}catch{}},Du=function(d){let T=null,x=null;if(Ai)d=""+d;else{let ce=cu(d,/^[\r\n\t ]+/);x=ce&&ce[0]}Rr==="application/xhtml+xml"&&Yn===Pt&&(d=''+d+"");let J=v?v.createHTML(d):d;if(Yn===Pt)try{T=new h().parseFromString(J,Rr)}catch{}if(!T||!T.documentElement){T=L.createDocument(Yn,"template",null);try{T.documentElement.innerHTML=Pi?C:J}catch{}}let ke=T.body||T.documentElement;return d&&x&&ke.insertBefore(n.createTextNode(x),ke.childNodes[0]||null),Yn===Pt?V.call(T,Ln?"html":"body")[0]:Ln?T.documentElement:ke},Pu=function(d){return A.call(d.ownerDocument||d,d,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT|u.SHOW_PROCESSING_INSTRUCTION|u.SHOW_CDATA_SECTION,null)},Ri=function(d){return d instanceof g&&(typeof d.nodeName!="string"||typeof d.textContent!="string"||typeof d.removeChild!="function"||!(d.attributes instanceof m)||typeof d.removeAttribute!="function"||typeof d.setAttribute!="function"||typeof d.namespaceURI!="string"||typeof d.insertBefore!="function"||typeof d.hasChildNodes!="function")},Iu=function(d){return typeof s=="function"&&d instanceof s};function It(D,d,T){_i(D,x=>{x.call(t,d,T,Qn)})}let Uu=function(d){let T=null;if(It(j.beforeSanitizeElements,d,null),Ri(d))return wt(d),!0;let x=de(d.nodeName);if(It(j.uponSanitizeElement,d,{tagName:x,allowedTags:S}),bo&&d.hasChildNodes()&&!Iu(d.firstElementChild)&&Fe(/<[/\w!]/g,d.innerHTML)&&Fe(/<[/\w!]/g,d.textContent)||d.nodeType===Ro.progressingInstruction||bo&&d.nodeType===Ro.comment&&Fe(/<[/\w]/g,d.data))return wt(d),!0;if(!(Gn.tagCheck instanceof Function&&Gn.tagCheck(x))&&(!S[x]||Dt[x])){if(!Dt[x]&&Fu(x)&&(B.tagNameCheck instanceof RegExp&&Fe(B.tagNameCheck,x)||B.tagNameCheck instanceof Function&&B.tagNameCheck(x)))return!1;if(xi&&!_t[x]){let J=p(d)||d.parentNode,ke=f(d)||d.childNodes;if(ke&&J){let ce=ke.length;for(let He=ce-1;He>=0;--He){let Ut=k(ke[He],!0);Ut.__removalCount=(d.__removalCount||0)+1,J.insertBefore(Ut,c(d))}}}return wt(d),!0}return d instanceof a&&!Vm(d)||(x==="noscript"||x==="noembed"||x==="noframes")&&Fe(/<\/no(script|embed|frames)/i,d.innerHTML)?(wt(d),!0):(Xn&&d.nodeType===Ro.text&&(T=d.textContent,_i([Z,wn,Tn],J=>{T=Po(T,J," ")}),d.textContent!==T&&(Do(t.removed,{element:d.cloneNode()}),d.textContent=T)),It(j.afterSanitizeElements,d,null),!1)},Ru=function(d,T,x){if(Cu&&(T==="id"||T==="name")&&(x in n||x in Wm))return!1;if(!(Ni&&!kn[T]&&Fe(Ir,T))){if(!(_u&&Fe(Wn,T))){if(!(Gn.attributeCheck instanceof Function&&Gn.attributeCheck(T,d))){if(!b[T]||kn[T]){if(!(Fu(d)&&(B.tagNameCheck instanceof RegExp&&Fe(B.tagNameCheck,d)||B.tagNameCheck instanceof Function&&B.tagNameCheck(d))&&(B.attributeNameCheck instanceof RegExp&&Fe(B.attributeNameCheck,T)||B.attributeNameCheck instanceof Function&&B.attributeNameCheck(T,d))||T==="is"&&B.allowCustomizedBuiltInElements&&(B.tagNameCheck instanceof RegExp&&Fe(B.tagNameCheck,x)||B.tagNameCheck instanceof Function&&B.tagNameCheck(x))))return!1}else if(!Di[T]){if(!Fe(Xe,Po(x,Cn,""))){if(!((T==="src"||T==="xlink:href"||T==="href")&&d!=="script"&&t0(x,"data:")===0&&Lu[d])){if(!(wu&&!Fe(Vn,Po(x,Cn,"")))){if(x)return!1}}}}}}}return!0},Fu=function(d){return d!=="annotation-xml"&&cu(d,he)},zu=function(d){It(j.beforeSanitizeAttributes,d,null);let{attributes:T}=d;if(!T||Ri(d))return;let x={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:b,forceKeepAttr:void 0},J=T.length;for(;J--;){let ke=T[J],{name:ce,namespaceURI:He,value:Ut}=ke,Zn=de(ce),Fi=Ut,Se=ce==="value"?Fi:n0(Fi);if(x.attrName=Zn,x.attrValue=Se,x.keepAttr=!0,x.forceKeepAttr=void 0,It(j.uponSanitizeAttribute,d,x),Se=x.attrValue,ku&&(Zn==="id"||Zn==="name")&&(Nn(ce,d),Se=bm+Se),bo&&Fe(/((--!?|])>)|<\/(style|title|textarea)/i,Se)){Nn(ce,d);continue}if(Zn==="attributename"&&cu(Se,"href")){Nn(ce,d);continue}if(x.forceKeepAttr)continue;if(!x.keepAttr){Nn(ce,d);continue}if(!Tu&&Fe(/\/>/i,Se)){Nn(ce,d);continue}Xn&&_i([Z,wn,Tn],Hu=>{Se=Po(Se,Hu," ")});let bu=de(d.nodeName);if(!Ru(bu,Zn,Se)){Nn(ce,d);continue}if(v&&typeof _=="object"&&typeof _.getAttributeType=="function"&&!He)switch(_.getAttributeType(bu,Zn)){case"TrustedHTML":{Se=v.createHTML(Se);break}case"TrustedScriptURL":{Se=v.createScriptURL(Se);break}}if(Se!==Fi)try{He?d.setAttributeNS(He,ce,Se):d.setAttribute(ce,Se),Ri(d)?wt(d):fm(t.removed)}catch{Nn(ce,d)}}It(j.afterSanitizeAttributes,d,null)},Gm=function D(d){let T=null,x=Pu(d);for(It(j.beforeSanitizeShadowDOM,d,null);T=x.nextNode();)It(j.uponSanitizeShadowNode,T,null),Uu(T),zu(T),T.content instanceof l&&D(T.content);It(j.afterSanitizeShadowDOM,d,null)};return t.sanitize=function(D){let d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},T=null,x=null,J=null,ke=null;if(Pi=!D,Pi&&(D=""),typeof D!="string"&&!Iu(D))if(typeof D.toString=="function"){if(D=D.toString(),typeof D!="string")throw Io("dirty is not a string, aborting")}else throw Io("toString is not a function");if(!t.isSupported)return D;if(Mi||Ui(d),t.removed=[],typeof D=="string"&&(Ur=!1),Ur){if(D.nodeName){let Ut=de(D.nodeName);if(!S[Ut]||Dt[Ut])throw Io("root node is forbidden and cannot be sanitized in-place")}}else if(D instanceof s)T=Du(""),x=T.ownerDocument.importNode(D,!0),x.nodeType===Ro.element&&x.nodeName==="BODY"||x.nodeName==="HTML"?T=x:T.appendChild(x);else{if(!$n&&!Xn&&!Ln&&D.indexOf("<")===-1)return v&&jo?v.createHTML(D):D;if(T=Du(D),!T)return $n?null:jo?C:""}T&&Ai&&wt(T.firstChild);let ce=Pu(Ur?D:T);for(;J=ce.nextNode();)Uu(J),zu(J),J.content instanceof l&&Gm(J.content);if(Ur)return D;if($n){if(Ho)for(ke=O.call(T.ownerDocument);T.firstChild;)ke.appendChild(T.firstChild);else ke=T;return(b.shadowroot||b.shadowrootmode)&&(ke=I.call(r,ke,!0)),ke}let He=Ln?T.outerHTML:T.innerHTML;return Ln&&S["!doctype"]&&T.ownerDocument&&T.ownerDocument.doctype&&T.ownerDocument.doctype.name&&Fe(Sm,T.ownerDocument.doctype.name)&&(He=" -`+He),Xn&&_i([Z,wn,Tn],Ut=>{He=Po(He,Ut," ")}),v&&jo?v.createHTML(He):He},t.setConfig=function(){let D=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Ui(D),Mi=!0},t.clearConfig=function(){Qn=null,Mi=!1},t.isValidAttribute=function(D,d,T){Qn||Ui({});let x=de(D),J=de(d);return Ru(x,J,T)},t.addHook=function(D,d){typeof d=="function"&&Do(j[D],d)},t.removeHook=function(D,d){if(d!==void 0){let T=Jv(j[D],d);return T===-1?void 0:e0(j[D],T,1)[0]}return fm(j[D])},t.removeHooks=function(D){j[D]=[]},t.removeAllHooks=function(){j=vm()},t}var wm=_m();var v0=new Tm.default({fg:"#dcd6cc",bg:"#252320",newline:!1,escapeXML:!0,stream:!1});function Cm({content:e,isLoading:t=!1,className:n=""}){let r=(0,ge.useRef)(null),o=(0,ge.useRef)(0),[l,i]=(0,ge.useState)(!0),s=(0,ge.useMemo)(()=>{if(r.current&&(o.current=r.current.scrollTop),!e)return"";let u=v0.toHtml(e);return wm.sanitize(u,{ALLOWED_TAGS:["span","div","br"],ALLOWED_ATTR:["style","class"],ALLOW_DATA_ATTR:!1})},[e]);return(0,ge.useLayoutEffect)(()=>{r.current&&o.current>0&&(r.current.scrollTop=o.current)},[s]),ge.default.createElement("div",{className:n,style:{backgroundColor:"var(--color-bg-card)",border:"1px solid var(--color-border-primary)",borderRadius:"8px",overflow:"hidden",height:"100%",display:"flex",flexDirection:"column",boxShadow:"0 10px 40px rgba(0, 0, 0, 0.4), 0 4px 12px rgba(0, 0, 0, 0.3)"}},ge.default.createElement("div",{style:{padding:"12px",borderBottom:"1px solid var(--color-border-primary)",display:"flex",gap:"6px",alignItems:"center",backgroundColor:"var(--color-bg-header)"}},ge.default.createElement("div",{style:{width:"12px",height:"12px",borderRadius:"50%",backgroundColor:"#ff5f57"}}),ge.default.createElement("div",{style:{width:"12px",height:"12px",borderRadius:"50%",backgroundColor:"#ffbd2e"}}),ge.default.createElement("div",{style:{width:"12px",height:"12px",borderRadius:"50%",backgroundColor:"#28c840"}}),ge.default.createElement("button",{onClick:()=>i(!l),style:{marginLeft:"auto",padding:"4px 8px",fontSize:"11px",fontWeight:500,color:l?"var(--color-text-secondary)":"var(--color-accent-primary)",backgroundColor:"transparent",border:"1px solid",borderColor:l?"var(--color-border-primary)":"var(--color-accent-primary)",borderRadius:"4px",cursor:"pointer",transition:"all 0.2s",whiteSpace:"nowrap"},onMouseEnter:u=>{u.currentTarget.style.borderColor="var(--color-accent-primary)",u.currentTarget.style.color="var(--color-accent-primary)"},onMouseLeave:u=>{u.currentTarget.style.borderColor=l?"var(--color-border-primary)":"var(--color-accent-primary)",u.currentTarget.style.color=l?"var(--color-text-secondary)":"var(--color-accent-primary)"},title:l?"Disable word wrap (scroll horizontally)":"Enable word wrap"},l?"\u2922 Wrap":"\u21C4 Scroll")),t?ge.default.createElement("div",{style:{padding:"16px",fontFamily:"var(--font-terminal)",fontSize:"12px",color:"var(--color-text-secondary)"}},"Loading preview..."):ge.default.createElement("div",{style:{position:"relative",flex:1,overflow:"hidden"}},ge.default.createElement("pre",{ref:r,style:{padding:"16px",margin:0,fontFamily:"var(--font-terminal)",fontSize:"12px",lineHeight:"1.6",overflow:"auto",color:"var(--color-text-primary)",backgroundColor:"var(--color-bg-card)",whiteSpace:l?"pre-wrap":"pre",wordBreak:l?"break-word":"normal",position:"absolute",inset:0},dangerouslySetInnerHTML:{__html:s}})))}var Et=ee(te(),1);function km(e){let[t,n]=(0,Et.useState)(""),[r,o]=(0,Et.useState)(!1),[l,i]=(0,Et.useState)(null),[s,a]=(0,Et.useState)([]),[u,m]=(0,Et.useState)(null);(0,Et.useEffect)(()=>{async function h(){try{let E=await(await fetch("/api/projects")).json();E.projects&&E.projects.length>0&&(a(E.projects),m(E.projects[0]))}catch(_){console.error("Failed to fetch projects:",_)}}h()},[]);let g=(0,Et.useCallback)(async()=>{if(!u){n("No project selected");return}o(!0),i(null);let h=new URLSearchParams({project:u}),_=await fetch(`/api/context/preview?${h}`),E=await _.text();_.ok?n(E):i("Failed to load preview"),o(!1)},[u]);return(0,Et.useEffect)(()=>{let h=setTimeout(()=>{g()},300);return()=>clearTimeout(h)},[e,g]),{preview:t,isLoading:r,error:l,refresh:g,projects:s,selectedProject:u,setSelectedProject:m}}function yu({title:e,description:t,children:n,defaultOpen:r=!0}){let[o,l]=(0,y.useState)(r);return y.default.createElement("div",{className:`settings-section-collapsible ${o?"open":""}`},y.default.createElement("button",{className:"section-header-btn",onClick:()=>l(!o),type:"button"},y.default.createElement("div",{className:"section-header-content"},y.default.createElement("span",{className:"section-title"},e),t&&y.default.createElement("span",{className:"section-description"},t)),y.default.createElement("svg",{className:`chevron-icon ${o?"rotated":""}`,width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2"},y.default.createElement("polyline",{points:"6 9 12 15 18 9"}))),o&&y.default.createElement("div",{className:"section-content"},n))}function et({label:e,tooltip:t,children:n}){return y.default.createElement("div",{className:"form-field"},y.default.createElement("label",{className:"form-field-label"},e,t&&y.default.createElement("span",{className:"tooltip-trigger",title:t},y.default.createElement("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2"},y.default.createElement("circle",{cx:"12",cy:"12",r:"10"}),y.default.createElement("path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"}),y.default.createElement("line",{x1:"12",y1:"17",x2:"12.01",y2:"17"})))),n)}function xr({id:e,label:t,description:n,checked:r,onChange:o,disabled:l}){return y.default.createElement("div",{className:"toggle-row"},y.default.createElement("div",{className:"toggle-info"},y.default.createElement("label",{htmlFor:e,className:"toggle-label"},t),n&&y.default.createElement("span",{className:"toggle-description"},n)),y.default.createElement("button",{type:"button",id:e,role:"switch","aria-checked":r,className:`toggle-switch ${r?"on":""} ${l?"disabled":""}`,onClick:()=>!l&&o(!r),disabled:l},y.default.createElement("span",{className:"toggle-knob"})))}function Lm({isOpen:e,onClose:t,settings:n,onSave:r,isSaving:o,saveStatus:l}){let[i,s]=(0,y.useState)(n);(0,y.useEffect)(()=>{s(n)},[n]);let{preview:a,isLoading:u,error:m,projects:g,selectedProject:h,setSelectedProject:_}=km(i),E=(0,y.useCallback)((c,f)=>{let p={...i,[c]:f};s(p)},[i]),k=(0,y.useCallback)(()=>{r(i)},[i,r]),P=(0,y.useCallback)(c=>{let p=i[c]==="true"?"false":"true";E(c,p)},[i,E]);return(0,y.useEffect)(()=>{let c=f=>{f.key==="Escape"&&t()};if(e)return window.addEventListener("keydown",c),()=>window.removeEventListener("keydown",c)},[e,t]),e?y.default.createElement("div",{className:"modal-backdrop",onClick:t},y.default.createElement("div",{className:"context-settings-modal",onClick:c=>c.stopPropagation()},y.default.createElement("div",{className:"modal-header"},y.default.createElement("h2",null,"Settings"),y.default.createElement("div",{className:"header-controls"},y.default.createElement("label",{className:"preview-selector"},"Preview for:",y.default.createElement("select",{value:h||"",onChange:c=>_(c.target.value)},g.map(c=>y.default.createElement("option",{key:c,value:c},c)))),y.default.createElement("button",{onClick:t,className:"modal-close-btn",title:"Close (Esc)"},y.default.createElement("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2"},y.default.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),y.default.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"}))))),y.default.createElement("div",{className:"modal-body"},y.default.createElement("div",{className:"preview-column"},y.default.createElement("div",{className:"preview-content"},m?y.default.createElement("div",{style:{color:"#ff6b6b"}},"Error loading preview: ",m):y.default.createElement(Cm,{content:a,isLoading:u}))),y.default.createElement("div",{className:"settings-column"},y.default.createElement(yu,{title:"Loading",description:"How many observations to inject"},y.default.createElement(et,{label:"Observations",tooltip:"Number of recent observations to include in context (1-200)"},y.default.createElement("input",{type:"number",min:"1",max:"200",value:i.CLAUDE_MEM_CONTEXT_OBSERVATIONS||"50",onChange:c=>E("CLAUDE_MEM_CONTEXT_OBSERVATIONS",c.target.value)})),y.default.createElement(et,{label:"Sessions",tooltip:"Number of recent sessions to pull observations from (1-50)"},y.default.createElement("input",{type:"number",min:"1",max:"50",value:i.CLAUDE_MEM_CONTEXT_SESSION_COUNT||"10",onChange:c=>E("CLAUDE_MEM_CONTEXT_SESSION_COUNT",c.target.value)}))),y.default.createElement(yu,{title:"Display",description:"What to show in context tables"},y.default.createElement("div",{className:"display-subsection"},y.default.createElement("span",{className:"subsection-label"},"Full Observations"),y.default.createElement(et,{label:"Count",tooltip:"How many observations show expanded details (0-20)"},y.default.createElement("input",{type:"number",min:"0",max:"20",value:i.CLAUDE_MEM_CONTEXT_FULL_COUNT||"5",onChange:c=>E("CLAUDE_MEM_CONTEXT_FULL_COUNT",c.target.value)})),y.default.createElement(et,{label:"Field",tooltip:"Which field to expand for full observations"},y.default.createElement("select",{value:i.CLAUDE_MEM_CONTEXT_FULL_FIELD||"narrative",onChange:c=>E("CLAUDE_MEM_CONTEXT_FULL_FIELD",c.target.value)},y.default.createElement("option",{value:"narrative"},"Narrative"),y.default.createElement("option",{value:"facts"},"Facts")))),y.default.createElement("div",{className:"display-subsection"},y.default.createElement("span",{className:"subsection-label"},"Token Economics"),y.default.createElement("div",{className:"toggle-group"},y.default.createElement(xr,{id:"show-read-tokens",label:"Read cost",description:"Tokens to read this observation",checked:i.CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS==="true",onChange:()=>P("CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS")}),y.default.createElement(xr,{id:"show-work-tokens",label:"Work investment",description:"Tokens spent creating this observation",checked:i.CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS==="true",onChange:()=>P("CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS")}),y.default.createElement(xr,{id:"show-savings-amount",label:"Savings",description:"Total tokens saved by reusing context",checked:i.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT==="true",onChange:()=>P("CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT")})))),y.default.createElement(yu,{title:"Advanced",description:"AI provider and model selection",defaultOpen:!1},y.default.createElement(et,{label:"AI Provider",tooltip:"Choose between Claude (via Agent SDK) or Gemini (via REST API)"},y.default.createElement("select",{value:i.CLAUDE_MEM_PROVIDER||"claude",onChange:c=>E("CLAUDE_MEM_PROVIDER",c.target.value)},y.default.createElement("option",{value:"claude"},"Claude (uses your Claude account)"),y.default.createElement("option",{value:"gemini"},"Gemini (uses API key)"),y.default.createElement("option",{value:"openrouter"},"OpenRouter (multi-model)"))),i.CLAUDE_MEM_PROVIDER==="claude"&&y.default.createElement(et,{label:"Claude Model",tooltip:"Claude model used for generating observations"},y.default.createElement("select",{value:i.CLAUDE_MEM_MODEL||"haiku",onChange:c=>E("CLAUDE_MEM_MODEL",c.target.value)},y.default.createElement("option",{value:"haiku"},"haiku (fastest)"),y.default.createElement("option",{value:"sonnet"},"sonnet (balanced)"),y.default.createElement("option",{value:"opus"},"opus (highest quality)"))),i.CLAUDE_MEM_PROVIDER==="gemini"&&y.default.createElement(y.default.Fragment,null,y.default.createElement(et,{label:"Gemini API Key",tooltip:"Your Google AI Studio API key (or set GEMINI_API_KEY env var)"},y.default.createElement("input",{type:"password",value:i.CLAUDE_MEM_GEMINI_API_KEY||"",onChange:c=>E("CLAUDE_MEM_GEMINI_API_KEY",c.target.value),placeholder:"Enter Gemini API key..."})),y.default.createElement(et,{label:"Gemini Model",tooltip:"Gemini model used for generating observations"},y.default.createElement("select",{value:i.CLAUDE_MEM_GEMINI_MODEL||"gemini-2.5-flash-lite",onChange:c=>E("CLAUDE_MEM_GEMINI_MODEL",c.target.value)},y.default.createElement("option",{value:"gemini-2.5-flash-lite"},"gemini-2.5-flash-lite (10 RPM free)"),y.default.createElement("option",{value:"gemini-2.5-flash"},"gemini-2.5-flash (5 RPM free)"),y.default.createElement("option",{value:"gemini-3-flash-preview"},"gemini-3-flash-preview (5 RPM free)"))),y.default.createElement("div",{className:"toggle-group",style:{marginTop:"8px"}},y.default.createElement(xr,{id:"gemini-rate-limiting",label:"Rate Limiting",description:"Enable for free tier (10-30 RPM). Disable if you have billing set up (1000+ RPM).",checked:i.CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED==="true",onChange:c=>E("CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED",c?"true":"false")}))),i.CLAUDE_MEM_PROVIDER==="openrouter"&&y.default.createElement(y.default.Fragment,null,y.default.createElement(et,{label:"OpenRouter API Key",tooltip:"Your OpenRouter API key from openrouter.ai (or set OPENROUTER_API_KEY env var)"},y.default.createElement("input",{type:"password",value:i.CLAUDE_MEM_OPENROUTER_API_KEY||"",onChange:c=>E("CLAUDE_MEM_OPENROUTER_API_KEY",c.target.value),placeholder:"Enter OpenRouter API key..."})),y.default.createElement(et,{label:"OpenRouter Model",tooltip:"Model identifier from OpenRouter (e.g., anthropic/claude-3.5-sonnet, google/gemini-2.0-flash-thinking-exp)"},y.default.createElement("input",{type:"text",value:i.CLAUDE_MEM_OPENROUTER_MODEL||"xiaomi/mimo-v2-flash:free",onChange:c=>E("CLAUDE_MEM_OPENROUTER_MODEL",c.target.value),placeholder:"e.g., xiaomi/mimo-v2-flash:free"})),y.default.createElement(et,{label:"Site URL (Optional)",tooltip:"Your site URL for OpenRouter analytics (optional)"},y.default.createElement("input",{type:"text",value:i.CLAUDE_MEM_OPENROUTER_SITE_URL||"",onChange:c=>E("CLAUDE_MEM_OPENROUTER_SITE_URL",c.target.value),placeholder:"https://yoursite.com"})),y.default.createElement(et,{label:"App Name (Optional)",tooltip:"Your app name for OpenRouter analytics (optional)"},y.default.createElement("input",{type:"text",value:i.CLAUDE_MEM_OPENROUTER_APP_NAME||"claude-mem",onChange:c=>E("CLAUDE_MEM_OPENROUTER_APP_NAME",c.target.value),placeholder:"claude-mem"}))),y.default.createElement(et,{label:"Worker Port",tooltip:"Port for the background worker service"},y.default.createElement("input",{type:"number",min:"1024",max:"65535",value:i.CLAUDE_MEM_WORKER_PORT||"37777",onChange:c=>E("CLAUDE_MEM_WORKER_PORT",c.target.value)})),y.default.createElement("div",{className:"toggle-group",style:{marginTop:"12px"}},y.default.createElement(xr,{id:"show-last-summary",label:"Include last summary",description:"Add previous session's summary to context",checked:i.CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY==="true",onChange:()=>P("CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY")}),y.default.createElement(xr,{id:"show-last-message",label:"Include last message",description:"Add previous session's final message",checked:i.CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE==="true",onChange:()=>P("CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE")}))))),y.default.createElement("div",{className:"modal-footer"},y.default.createElement("div",{className:"save-status"},l&&y.default.createElement("span",{className:l.includes("\u2713")?"success":l.includes("\u2717")?"error":""},l)),y.default.createElement("button",{className:"save-btn",onClick:k,disabled:o},o?"Saving...":"Save")))):null}var N=ee(te(),1),Fo=[{key:"DEBUG",label:"Debug",icon:"\u{1F50D}",color:"#8b8b8b"},{key:"INFO",label:"Info",icon:"\u2139\uFE0F",color:"#58a6ff"},{key:"WARN",label:"Warn",icon:"\u26A0\uFE0F",color:"#d29922"},{key:"ERROR",label:"Error",icon:"\u274C",color:"#f85149"}],zo=[{key:"HOOK",label:"Hook",icon:"\u{1FA9D}",color:"#a371f7"},{key:"WORKER",label:"Worker",icon:"\u2699\uFE0F",color:"#58a6ff"},{key:"SDK",label:"SDK",icon:"\u{1F4E6}",color:"#3fb950"},{key:"PARSER",label:"Parser",icon:"\u{1F4C4}",color:"#79c0ff"},{key:"DB",label:"DB",icon:"\u{1F5C4}\uFE0F",color:"#f0883e"},{key:"SYSTEM",label:"System",icon:"\u{1F4BB}",color:"#8b949e"},{key:"HTTP",label:"HTTP",icon:"\u{1F310}",color:"#39d353"},{key:"SESSION",label:"Session",icon:"\u{1F4CB}",color:"#db61a2"},{key:"CHROMA",label:"Chroma",icon:"\u{1F52E}",color:"#a855f7"}];function y0(e){let t=/^\[([^\]]+)\]\s+\[(\w+)\s*\]\s+\[(\w+)\s*\]\s+(?:\[([^\]]+)\]\s+)?(.*)$/,n=e.match(t);if(!n)return{raw:e};let[,r,o,l,i,s]=n,a;return s.startsWith("\u2192")?a="dataIn":s.startsWith("\u2190")?a="dataOut":s.startsWith("\u2713")?a="success":s.startsWith("\u2717")?a="failure":s.startsWith("\u23F1")?a="timing":s.includes("[HAPPY-PATH]")&&(a="happyPath"),{raw:e,timestamp:r,level:o?.trim(),component:l?.trim(),correlationId:i||void 0,message:s,isSpecial:a}}function Nm({isOpen:e,onClose:t}){let[n,r]=(0,N.useState)(""),[o,l]=(0,N.useState)(!1),[i,s]=(0,N.useState)(null),[a,u]=(0,N.useState)(!1),[m,g]=(0,N.useState)(350),[h,_]=(0,N.useState)(!1),E=(0,N.useRef)(0),k=(0,N.useRef)(0),P=(0,N.useRef)(null),c=(0,N.useRef)(!0),[f,p]=(0,N.useState)(new Set(["DEBUG","INFO","WARN","ERROR"])),[v,C]=(0,N.useState)(new Set(["HOOK","WORKER","SDK","PARSER","DB","SYSTEM","HTTP","SESSION","CHROMA"])),[L,A]=(0,N.useState)(!1),O=(0,N.useMemo)(()=>n?n.split(` -`).map(y0):[],[n]),V=(0,N.useMemo)(()=>O.filter(S=>L?S.raw.includes("[ALIGNMENT]"):!S.level||!S.component?!0:f.has(S.level)&&v.has(S.component)),[O,f,v,L]),I=(0,N.useCallback)(()=>{if(!P.current)return!0;let{scrollTop:S,scrollHeight:G,clientHeight:b}=P.current;return G-S-b<50},[]),j=(0,N.useCallback)(()=>{P.current&&c.current&&(P.current.scrollTop=P.current.scrollHeight)},[]),Z=(0,N.useCallback)(async()=>{c.current=I(),l(!0),s(null);try{let S=await fetch("/api/logs");if(!S.ok)throw new Error(`Failed to fetch logs: ${S.statusText}`);let G=await S.json();r(G.logs||"")}catch(S){s(S instanceof Error?S.message:"Unknown error")}finally{l(!1)}},[I]);(0,N.useEffect)(()=>{j()},[n,j]);let wn=(0,N.useCallback)(async()=>{if(confirm("Are you sure you want to clear all logs?")){l(!0),s(null);try{let S=await fetch("/api/logs/clear",{method:"POST"});if(!S.ok)throw new Error(`Failed to clear logs: ${S.statusText}`);r("")}catch(S){s(S instanceof Error?S.message:"Unknown error")}finally{l(!1)}}},[]),Tn=(0,N.useCallback)(S=>{S.preventDefault(),_(!0),E.current=S.clientY,k.current=m},[m]);(0,N.useEffect)(()=>{if(!h)return;let S=b=>{let De=E.current-b.clientY,B=Math.min(Math.max(150,k.current+De),window.innerHeight-100);g(B)},G=()=>{_(!1)};return document.addEventListener("mousemove",S),document.addEventListener("mouseup",G),()=>{document.removeEventListener("mousemove",S),document.removeEventListener("mouseup",G)}},[h]),(0,N.useEffect)(()=>{e&&(c.current=!0,Z())},[e,Z]),(0,N.useEffect)(()=>{if(!e||!a)return;let S=setInterval(Z,2e3);return()=>clearInterval(S)},[e,a,Z]);let Ir=(0,N.useCallback)(S=>{p(G=>{let b=new Set(G);return b.has(S)?b.delete(S):b.add(S),b})},[]),Wn=(0,N.useCallback)(S=>{C(G=>{let b=new Set(G);return b.has(S)?b.delete(S):b.add(S),b})},[]),Vn=(0,N.useCallback)(S=>{p(S?new Set(["DEBUG","INFO","WARN","ERROR"]):new Set)},[]),Cn=(0,N.useCallback)(S=>{C(S?new Set(["HOOK","WORKER","SDK","PARSER","DB","SYSTEM","HTTP","SESSION","CHROMA"]):new Set)},[]);if(!e)return null;let he=S=>{let G=Fo.find(kn=>kn.key===S.level),b=zo.find(kn=>kn.key===S.component),De="var(--color-text-primary)",B="normal",Dt="transparent";return S.level==="ERROR"?(De="#f85149",Dt="rgba(248, 81, 73, 0.1)"):S.level==="WARN"?(De="#d29922",Dt="rgba(210, 153, 34, 0.05)"):S.isSpecial==="success"?De="#3fb950":S.isSpecial==="failure"?De="#f85149":S.isSpecial==="happyPath"?De="#d29922":G&&(De=G.color),{color:De,fontWeight:B,backgroundColor:Dt,padding:"1px 0",borderRadius:"2px"}},Xe=(S,G)=>{if(!S.timestamp)return N.default.createElement("div",{key:G,className:"log-line log-line-raw"},S.raw);let b=Fo.find(B=>B.key===S.level),De=zo.find(B=>B.key===S.component);return N.default.createElement("div",{key:G,className:"log-line",style:he(S)},N.default.createElement("span",{className:"log-timestamp"},"[",S.timestamp,"]")," ",N.default.createElement("span",{className:"log-level",style:{color:b?.color},title:S.level},"[",b?.icon||""," ",S.level?.padEnd(5),"]")," ",N.default.createElement("span",{className:"log-component",style:{color:De?.color},title:S.component},"[",De?.icon||""," ",S.component?.padEnd(7),"]")," ",S.correlationId&&N.default.createElement(N.default.Fragment,null,N.default.createElement("span",{className:"log-correlation"},"[",S.correlationId,"]")," "),N.default.createElement("span",{className:"log-message"},S.message))};return N.default.createElement("div",{className:"console-drawer",style:{height:`${m}px`}},N.default.createElement("div",{className:"console-resize-handle",onMouseDown:Tn},N.default.createElement("div",{className:"console-resize-bar"})),N.default.createElement("div",{className:"console-header"},N.default.createElement("div",{className:"console-tabs"},N.default.createElement("div",{className:"console-tab active"},"Console")),N.default.createElement("div",{className:"console-controls"},N.default.createElement("label",{className:"console-auto-refresh"},N.default.createElement("input",{type:"checkbox",checked:a,onChange:S=>u(S.target.checked)}),"Auto-refresh"),N.default.createElement("button",{className:"console-control-btn",onClick:Z,disabled:o,title:"Refresh logs"},"\u21BB"),N.default.createElement("button",{className:"console-control-btn",onClick:()=>{c.current=!0,j()},title:"Scroll to bottom"},"\u2B07"),N.default.createElement("button",{className:"console-control-btn console-clear-btn",onClick:wn,disabled:o,title:"Clear logs"},"\u{1F5D1}"),N.default.createElement("button",{className:"console-control-btn",onClick:t,title:"Close console"},"\u2715"))),N.default.createElement("div",{className:"console-filters"},N.default.createElement("div",{className:"console-filter-section"},N.default.createElement("span",{className:"console-filter-label"},"Quick:"),N.default.createElement("div",{className:"console-filter-chips"},N.default.createElement("button",{className:`console-filter-chip ${L?"active":""}`,onClick:()=>A(!L),style:{"--chip-color":"#f0883e"},title:"Show only session alignment logs"},"\u{1F517} Alignment"))),N.default.createElement("div",{className:"console-filter-section"},N.default.createElement("span",{className:"console-filter-label"},"Levels:"),N.default.createElement("div",{className:"console-filter-chips"},Fo.map(S=>N.default.createElement("button",{key:S.key,className:`console-filter-chip ${f.has(S.key)?"active":""}`,onClick:()=>Ir(S.key),style:{"--chip-color":S.color},title:S.label},S.icon," ",S.label)),N.default.createElement("button",{className:"console-filter-action",onClick:()=>Vn(f.size===0),title:f.size===Fo.length?"Select none":"Select all"},f.size===Fo.length?"\u25CB":"\u25CF"))),N.default.createElement("div",{className:"console-filter-section"},N.default.createElement("span",{className:"console-filter-label"},"Components:"),N.default.createElement("div",{className:"console-filter-chips"},zo.map(S=>N.default.createElement("button",{key:S.key,className:`console-filter-chip ${v.has(S.key)?"active":""}`,onClick:()=>Wn(S.key),style:{"--chip-color":S.color},title:S.label},S.icon," ",S.label)),N.default.createElement("button",{className:"console-filter-action",onClick:()=>Cn(v.size===0),title:v.size===zo.length?"Select none":"Select all"},v.size===zo.length?"\u25CB":"\u25CF")))),i&&N.default.createElement("div",{className:"console-error"},"\u26A0 ",i),N.default.createElement("div",{className:"console-content",ref:P},N.default.createElement("div",{className:"console-logs"},V.length===0?N.default.createElement("div",{className:"log-line log-line-empty"},"No logs available"):V.map((S,G)=>Xe(S,G)))))}var tt=ee(te(),1);var St={OBSERVATIONS:"/api/observations",SUMMARIES:"/api/summaries",PROMPTS:"/api/prompts",SETTINGS:"/api/settings",STATS:"/api/stats",PROCESSING_STATUS:"/api/processing-status",STREAM:"/stream"};var Ci={SSE_RECONNECT_DELAY_MS:3e3,STATS_REFRESH_INTERVAL_MS:1e4,SAVE_STATUS_DISPLAY_DURATION_MS:3e3};function Mm(){let[e,t]=(0,tt.useState)([]),[n,r]=(0,tt.useState)([]),[o,l]=(0,tt.useState)([]),[i,s]=(0,tt.useState)([]),[a,u]=(0,tt.useState)(!1),[m,g]=(0,tt.useState)(!1),[h,_]=(0,tt.useState)(0),E=(0,tt.useRef)(null),k=(0,tt.useRef)();return(0,tt.useEffect)(()=>{let P=()=>{E.current&&E.current.close();let c=new EventSource(St.STREAM);E.current=c,c.onopen=()=>{console.log("[SSE] Connected"),u(!0),k.current&&clearTimeout(k.current)},c.onerror=f=>{console.error("[SSE] Connection error:",f),u(!1),c.close(),k.current=setTimeout(()=>{k.current=void 0,console.log("[SSE] Attempting to reconnect..."),P()},Ci.SSE_RECONNECT_DELAY_MS)},c.onmessage=f=>{let p=JSON.parse(f.data);switch(p.type){case"initial_load":console.log("[SSE] Initial load:",{projects:p.projects?.length||0}),s(p.projects||[]);break;case"new_observation":p.observation&&(console.log("[SSE] New observation:",p.observation.id),t(v=>[p.observation,...v]));break;case"new_summary":if(p.summary){let v=p.summary;console.log("[SSE] New summary:",v.id),r(C=>[v,...C])}break;case"new_prompt":if(p.prompt){let v=p.prompt;console.log("[SSE] New prompt:",v.id),l(C=>[v,...C])}break;case"processing_status":typeof p.isProcessing=="boolean"&&(console.log("[SSE] Processing status:",p.isProcessing,"Queue depth:",p.queueDepth),g(p.isProcessing),_(p.queueDepth||0));break}}};return P(),()=>{E.current&&E.current.close(),k.current&&clearTimeout(k.current)}},[]),{observations:e,summaries:n,prompts:o,projects:i,isProcessing:m,queueDepth:h,isConnected:a}}var Or=ee(te(),1);var ie={CLAUDE_MEM_MODEL:"claude-sonnet-4-5",CLAUDE_MEM_CONTEXT_OBSERVATIONS:"50",CLAUDE_MEM_WORKER_PORT:"37777",CLAUDE_MEM_WORKER_HOST:"127.0.0.1",CLAUDE_MEM_PROVIDER:"claude",CLAUDE_MEM_GEMINI_API_KEY:"",CLAUDE_MEM_GEMINI_MODEL:"gemini-2.5-flash-lite",CLAUDE_MEM_OPENROUTER_API_KEY:"",CLAUDE_MEM_OPENROUTER_MODEL:"xiaomi/mimo-v2-flash:free",CLAUDE_MEM_OPENROUTER_SITE_URL:"",CLAUDE_MEM_OPENROUTER_APP_NAME:"claude-mem",CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED:"true",CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT:"true",CLAUDE_MEM_CONTEXT_FULL_COUNT:"0",CLAUDE_MEM_CONTEXT_FULL_FIELD:"narrative",CLAUDE_MEM_CONTEXT_SESSION_COUNT:"10",CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY:"true",CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE:"false",CLAUDE_MEM_EXCLUDED_PROJECTS:"",CLAUDE_MEM_FOLDER_MD_EXCLUDE:"[]"};function Am(){let[e,t]=(0,Or.useState)(ie),[n,r]=(0,Or.useState)(!1),[o,l]=(0,Or.useState)("");return(0,Or.useEffect)(()=>{fetch(St.SETTINGS).then(s=>s.json()).then(s=>{t({CLAUDE_MEM_MODEL:s.CLAUDE_MEM_MODEL??ie.CLAUDE_MEM_MODEL,CLAUDE_MEM_CONTEXT_OBSERVATIONS:s.CLAUDE_MEM_CONTEXT_OBSERVATIONS??ie.CLAUDE_MEM_CONTEXT_OBSERVATIONS,CLAUDE_MEM_WORKER_PORT:s.CLAUDE_MEM_WORKER_PORT??ie.CLAUDE_MEM_WORKER_PORT,CLAUDE_MEM_WORKER_HOST:s.CLAUDE_MEM_WORKER_HOST??ie.CLAUDE_MEM_WORKER_HOST,CLAUDE_MEM_PROVIDER:s.CLAUDE_MEM_PROVIDER??ie.CLAUDE_MEM_PROVIDER,CLAUDE_MEM_GEMINI_API_KEY:s.CLAUDE_MEM_GEMINI_API_KEY??ie.CLAUDE_MEM_GEMINI_API_KEY,CLAUDE_MEM_GEMINI_MODEL:s.CLAUDE_MEM_GEMINI_MODEL??ie.CLAUDE_MEM_GEMINI_MODEL,CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED:s.CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED??ie.CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED,CLAUDE_MEM_OPENROUTER_API_KEY:s.CLAUDE_MEM_OPENROUTER_API_KEY??ie.CLAUDE_MEM_OPENROUTER_API_KEY,CLAUDE_MEM_OPENROUTER_MODEL:s.CLAUDE_MEM_OPENROUTER_MODEL??ie.CLAUDE_MEM_OPENROUTER_MODEL,CLAUDE_MEM_OPENROUTER_SITE_URL:s.CLAUDE_MEM_OPENROUTER_SITE_URL??ie.CLAUDE_MEM_OPENROUTER_SITE_URL,CLAUDE_MEM_OPENROUTER_APP_NAME:s.CLAUDE_MEM_OPENROUTER_APP_NAME??ie.CLAUDE_MEM_OPENROUTER_APP_NAME,CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS:s.CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS??ie.CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS,CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS:s.CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS??ie.CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS,CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT:s.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT??ie.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT,CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT:s.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT??ie.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT,CLAUDE_MEM_CONTEXT_FULL_COUNT:s.CLAUDE_MEM_CONTEXT_FULL_COUNT??ie.CLAUDE_MEM_CONTEXT_FULL_COUNT,CLAUDE_MEM_CONTEXT_FULL_FIELD:s.CLAUDE_MEM_CONTEXT_FULL_FIELD??ie.CLAUDE_MEM_CONTEXT_FULL_FIELD,CLAUDE_MEM_CONTEXT_SESSION_COUNT:s.CLAUDE_MEM_CONTEXT_SESSION_COUNT??ie.CLAUDE_MEM_CONTEXT_SESSION_COUNT,CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY:s.CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY??ie.CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY,CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE:s.CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE??ie.CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE})}).catch(s=>{console.error("Failed to load settings:",s)})},[]),{settings:e,saveSettings:async s=>{r(!0),l("Saving...");let u=await(await fetch(St.SETTINGS,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(s)})).json();u.success?(t(s),l("\u2713 Saved"),setTimeout(()=>l(""),Ci.SAVE_STATUS_DISPLAY_DURATION_MS)):l(`\u2717 Error: ${u.error}`),r(!1)},isSaving:n,saveStatus:o}}var Dr=ee(te(),1);function xm(){let[e,t]=(0,Dr.useState)({}),n=(0,Dr.useCallback)(async()=>{try{let o=await(await fetch(St.STATS)).json();t(o)}catch(r){console.error("Failed to load stats:",r)}},[]);return(0,Dr.useEffect)(()=>{n()},[n]),{stats:e,refreshStats:n}}var _n=ee(te(),1);function Eu(e,t,n){let[r,o]=(0,_n.useState)({isLoading:!1,hasMore:!0}),l=(0,_n.useRef)(0),i=(0,_n.useRef)(n),s=(0,_n.useRef)(r),a=(0,_n.useCallback)(async()=>{let u=i.current!==n;if(u){l.current=0,i.current=n;let _={isLoading:!1,hasMore:!0};o(_),s.current=_}if(!u&&(s.current.isLoading||!s.current.hasMore))return[];o(_=>({..._,isLoading:!0}));let m=new URLSearchParams({offset:l.current.toString(),limit:xo.PAGINATION_PAGE_SIZE.toString()});n&&m.append("project",n);let g=await fetch(`${e}?${m}`);if(!g.ok)throw new Error(`Failed to load ${t}: ${g.statusText}`);let h=await g.json();return o(_=>({..._,isLoading:!1,hasMore:h.hasMore})),l.current+=xo.PAGINATION_PAGE_SIZE,h.items},[n,e,t]);return{...r,loadMore:a}}function Om(e){let t=Eu(St.OBSERVATIONS,"observations",e),n=Eu(St.SUMMARIES,"summaries",e),r=Eu(St.PROMPTS,"prompts",e);return{observations:t,summaries:n,prompts:r}}var Pr=ee(te(),1),Im="claude-mem-theme";function E0(){return typeof window>"u"||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}function Dm(){try{let e=localStorage.getItem(Im);if(e==="system"||e==="light"||e==="dark")return e}catch(e){console.warn("Failed to read theme preference from localStorage:",e)}return"system"}function Pm(e){return e==="system"?E0():e}function Um(){let[e,t]=(0,Pr.useState)(Dm),[n,r]=(0,Pr.useState)(()=>Pm(Dm()));return(0,Pr.useEffect)(()=>{let l=Pm(e);r(l),document.documentElement.setAttribute("data-theme",l)},[e]),(0,Pr.useEffect)(()=>{if(e!=="system")return;let l=window.matchMedia("(prefers-color-scheme: dark)"),i=s=>{let a=s.matches?"dark":"light";r(a),document.documentElement.setAttribute("data-theme",a)};return l.addEventListener("change",i),()=>l.removeEventListener("change",i)},[e]),{preference:e,resolvedTheme:n,setThemePreference:l=>{try{localStorage.setItem(Im,l),t(l)}catch(i){console.warn("Failed to save theme preference to localStorage:",i),t(l)}}}}function ki(e,t){let n=new Set;return[...e,...t].filter(r=>n.has(r.id)?!1:(n.add(r.id),!0))}function Rm(){let[e,t]=(0,W.useState)(""),[n,r]=(0,W.useState)(!1),[o,l]=(0,W.useState)(!1),[i,s]=(0,W.useState)([]),[a,u]=(0,W.useState)([]),[m,g]=(0,W.useState)([]),{observations:h,summaries:_,prompts:E,projects:k,isProcessing:P,queueDepth:c,isConnected:f}=Mm(),{settings:p,saveSettings:v,isSaving:C,saveStatus:L}=Am(),{stats:A,refreshStats:O}=xm(),{preference:V,resolvedTheme:I,setThemePreference:j}=Um(),Z=Om(e),wn=(0,W.useMemo)(()=>{let he=e?h.filter(Xe=>Xe.project===e):h;return ki(he,i)},[h,i,e]),Tn=(0,W.useMemo)(()=>{let he=e?_.filter(Xe=>Xe.project===e):_;return ki(he,a)},[_,a,e]),Ir=(0,W.useMemo)(()=>{let he=e?E.filter(Xe=>Xe.project===e):E;return ki(he,m)},[E,m,e]),Wn=(0,W.useCallback)(()=>{r(he=>!he)},[]),Vn=(0,W.useCallback)(()=>{l(he=>!he)},[]),Cn=(0,W.useCallback)(async()=>{try{let[he,Xe,S]=await Promise.all([Z.observations.loadMore(),Z.summaries.loadMore(),Z.prompts.loadMore()]);he.length>0&&s(G=>[...G,...he]),Xe.length>0&&u(G=>[...G,...Xe]),S.length>0&&g(G=>[...G,...S])}catch(he){console.error("Failed to load more data:",he)}},[e,Z.observations,Z.summaries,Z.prompts]);return(0,W.useEffect)(()=>{s([]),u([]),g([]),Cn()},[e]),W.default.createElement(W.default.Fragment,null,W.default.createElement(Mp,{isConnected:f,projects:k,currentFilter:e,onFilterChange:t,isProcessing:P,queueDepth:c,themePreference:V,onThemeChange:j,onContextPreviewToggle:Wn}),W.default.createElement(Ip,{observations:wn,summaries:Tn,prompts:Ir,onLoadMore:Cn,isLoading:Z.observations.isLoading||Z.summaries.isLoading||Z.prompts.isLoading,hasMore:Z.observations.hasMore||Z.summaries.hasMore||Z.prompts.hasMore}),W.default.createElement(Lm,{isOpen:n,onClose:Wn,settings:p,onSave:v,isSaving:C,saveStatus:L}),W.default.createElement("button",{className:"console-toggle-btn",onClick:Vn,title:"Toggle Console"},W.default.createElement("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},W.default.createElement("polyline",{points:"4 17 10 11 4 5"}),W.default.createElement("line",{x1:"12",y1:"19",x2:"20",y2:"19"}))),W.default.createElement(Nm,{isOpen:o,onClose:Vn}))}var Xt=ee(te(),1),Li=class extends Xt.Component{constructor(t){super(t),this.state={hasError:!1,error:null,errorInfo:null}}static getDerivedStateFromError(t){return{hasError:!0,error:t}}componentDidCatch(t,n){console.error("[ErrorBoundary] Caught error:",t,n),this.setState({error:t,errorInfo:n})}render(){return this.state.hasError?Xt.default.createElement("div",{style:{padding:"20px",color:"#ff6b6b",backgroundColor:"#1a1a1a",minHeight:"100vh"}},Xt.default.createElement("h1",{style:{fontSize:"24px",marginBottom:"10px"}},"Something went wrong"),Xt.default.createElement("p",{style:{marginBottom:"10px",color:"#8b949e"}},"The application encountered an error. Please refresh the page to try again."),this.state.error&&Xt.default.createElement("details",{style:{marginTop:"20px",color:"#8b949e"}},Xt.default.createElement("summary",{style:{cursor:"pointer",marginBottom:"10px"}},"Error details"),Xt.default.createElement("pre",{style:{backgroundColor:"#0d1117",padding:"10px",borderRadius:"6px",overflow:"auto"}},this.state.error.toString(),this.state.errorInfo&&` +`+l.stack}return{value:e,source:t,stack:o,digest:null}}function vs(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function Js(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var Vh=typeof WeakMap=="function"?WeakMap:Map;function Wd(e,t,n){n=qt(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Kl||(Kl=!0,ua=r),Js(e,t)},n}function Vd(e,t,n){n=qt(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var o=t.value;n.payload=function(){return r(o)},n.callback=function(){Js(e,t)}}var l=e.stateNode;return l!==null&&typeof l.componentDidCatch=="function"&&(n.callback=function(){Js(e,t),typeof r!="function"&&(cn===null?cn=new Set([this]):cn.add(this));var i=t.stack;this.componentDidCatch(t.value,{componentStack:i!==null?i:""})}),n}function tf(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Vh;var o=new Set;r.set(t,o)}else o=r.get(t),o===void 0&&(o=new Set,r.set(t,o));o.has(n)||(o.add(n),e=lv.bind(null,e,t,n),t.then(e,e))}function nf(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function rf(e,t,n,r,o){return(e.mode&1)===0?(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=qt(-1,1),t.tag=2,un(n,t,1))),n.lanes|=1),e):(e.flags|=65536,e.lanes=o,e)}var Gh=$t.ReactCurrentOwner,We=!1;function Ie(e,t,n,r){t.child=e===null?Sd(t,null,n,r):wr(t,e.child,n,r)}function of(e,t,n,r,o){n=n.render;var l=t.ref;return vr(t,o),r=ja(e,t,n,r,l,o),n=Ba(),e!==null&&!We?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,Xt(e,t,o)):(te&&n&&Ma(t),t.flags|=1,Ie(e,t,r,o),t.child)}function lf(e,t,n,r,o){if(e===null){var l=n.type;return typeof l=="function"&&!Za(l)&&l.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=l,Gd(e,t,l,r,o)):(e=Al(n.type,null,r,t,t.mode,o),e.ref=t.ref,e.return=t,t.child=e)}if(l=e.child,(e.lanes&o)===0){var i=l.memoizedProps;if(n=n.compare,n=n!==null?n:ho,n(i,r)&&e.ref===t.ref)return Xt(e,t,o)}return t.flags|=1,e=dn(l,r),e.ref=t.ref,e.return=t,t.child=e}function Gd(e,t,n,r,o){if(e!==null){var l=e.memoizedProps;if(ho(l,r)&&e.ref===t.ref)if(We=!1,t.pendingProps=r=l,(e.lanes&o)!==0)(e.flags&131072)!==0&&(We=!0);else return t.lanes=e.lanes,Xt(e,t,o)}return ea(e,t,n,r,o)}function Xd(e,t,n){var r=t.pendingProps,o=r.children,l=e!==null?e.memoizedState:null;if(r.mode==="hidden")if((t.mode&1)===0)t.memoizedState={baseLanes:0,cachePool:null,transitions:null},$(dr,Qe),Qe|=n;else{if((n&1073741824)===0)return e=l!==null?l.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,$(dr,Qe),Qe|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=l!==null?l.baseLanes:n,$(dr,Qe),Qe|=r}else l!==null?(r=l.baseLanes|n,t.memoizedState=null):r=n,$(dr,Qe),Qe|=r;return Ie(e,t,o,n),t.child}function $d(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function ea(e,t,n,r,o){var l=Ge(n)?Rn:De.current;return l=Sr(t,l),vr(t,o),n=ja(e,t,n,r,l,o),r=Ba(),e!==null&&!We?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,Xt(e,t,o)):(te&&r&&Ma(t),t.flags|=1,Ie(e,t,n,o),t.child)}function sf(e,t,n,r,o){if(Ge(n)){var l=!0;zl(t)}else l=!1;if(vr(t,o),t.stateNode===null)kl(e,t),qd(t,n,r),Zs(t,n,r,o),r=!0;else if(e===null){var i=t.stateNode,s=t.memoizedProps;i.props=s;var a=i.context,u=n.contextType;typeof u=="object"&&u!==null?u=dt(u):(u=Ge(n)?Rn:De.current,u=Sr(t,u));var g=n.getDerivedStateFromProps,h=typeof g=="function"||typeof i.getSnapshotBeforeUpdate=="function";h||typeof i.UNSAFE_componentWillReceiveProps!="function"&&typeof i.componentWillReceiveProps!="function"||(s!==r||a!==u)&&ef(t,i,r,u),Jt=!1;var v=t.memoizedState;i.state=v,Wl(t,r,i,o),a=t.memoizedState,s!==r||v!==a||Ve.current||Jt?(typeof g=="function"&&(Qs(t,n,g,r),a=t.memoizedState),(s=Jt||Jc(t,n,s,r,v,a,u))?(h||typeof i.UNSAFE_componentWillMount!="function"&&typeof i.componentWillMount!="function"||(typeof i.componentWillMount=="function"&&i.componentWillMount(),typeof i.UNSAFE_componentWillMount=="function"&&i.UNSAFE_componentWillMount()),typeof i.componentDidMount=="function"&&(t.flags|=4194308)):(typeof i.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=a),i.props=r,i.state=a,i.context=u,r=s):(typeof i.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{i=t.stateNode,wd(e,t),s=t.memoizedProps,u=t.type===t.elementType?s:vt(t.type,s),i.props=u,h=t.pendingProps,v=i.context,a=n.contextType,typeof a=="object"&&a!==null?a=dt(a):(a=Ge(n)?Rn:De.current,a=Sr(t,a));var E=n.getDerivedStateFromProps;(g=typeof E=="function"||typeof i.getSnapshotBeforeUpdate=="function")||typeof i.UNSAFE_componentWillReceiveProps!="function"&&typeof i.componentWillReceiveProps!="function"||(s!==h||v!==a)&&ef(t,i,r,a),Jt=!1,v=t.memoizedState,i.state=v,Wl(t,r,i,o);var w=t.memoizedState;s!==h||v!==w||Ve.current||Jt?(typeof E=="function"&&(Qs(t,n,E,r),w=t.memoizedState),(u=Jt||Jc(t,n,u,r,v,w,a)||!1)?(g||typeof i.UNSAFE_componentWillUpdate!="function"&&typeof i.componentWillUpdate!="function"||(typeof i.componentWillUpdate=="function"&&i.componentWillUpdate(r,w,a),typeof i.UNSAFE_componentWillUpdate=="function"&&i.UNSAFE_componentWillUpdate(r,w,a)),typeof i.componentDidUpdate=="function"&&(t.flags|=4),typeof i.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof i.componentDidUpdate!="function"||s===e.memoizedProps&&v===e.memoizedState||(t.flags|=4),typeof i.getSnapshotBeforeUpdate!="function"||s===e.memoizedProps&&v===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=w),i.props=r,i.state=w,i.context=a,r=u):(typeof i.componentDidUpdate!="function"||s===e.memoizedProps&&v===e.memoizedState||(t.flags|=4),typeof i.getSnapshotBeforeUpdate!="function"||s===e.memoizedProps&&v===e.memoizedState||(t.flags|=1024),r=!1)}return ta(e,t,n,r,l,o)}function ta(e,t,n,r,o,l){$d(e,t);var i=(t.flags&128)!==0;if(!r&&!i)return o&&Vc(t,n,!1),Xt(e,t,l);r=t.stateNode,Gh.current=t;var s=i&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&i?(t.child=wr(t,e.child,null,l),t.child=wr(t,null,s,l)):Ie(e,t,s,l),t.memoizedState=r.state,o&&Vc(t,n,!0),t.child}function Kd(e){var t=e.stateNode;t.pendingContext?Wc(e,t.pendingContext,t.pendingContext!==t.context):t.context&&Wc(e,t.context,!1),Fa(e,t.containerInfo)}function af(e,t,n,r,o){return _r(),Oa(o),t.flags|=256,Ie(e,t,n,r),t.child}var na={dehydrated:null,treeContext:null,retryLane:0};function ra(e){return{baseLanes:e,cachePool:null,transitions:null}}function Yd(e,t,n){var r=t.pendingProps,o=ne.current,l=!1,i=(t.flags&128)!==0,s;if((s=i)||(s=e!==null&&e.memoizedState===null?!1:(o&2)!==0),s?(l=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(o|=1),$(ne,o&1),e===null)return Ks(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?((t.mode&1)===0?t.lanes=1:e.data==="$!"?t.lanes=8:t.lanes=1073741824,null):(i=r.children,e=r.fallback,l?(r=t.mode,l=t.child,i={mode:"hidden",children:i},(r&1)===0&&l!==null?(l.childLanes=0,l.pendingProps=i):l=ui(i,r,0,null),e=Un(e,r,n,null),l.return=t,e.return=t,l.sibling=e,t.child=l,t.child.memoizedState=ra(n),t.memoizedState=na,e):Va(t,i));if(o=e.memoizedState,o!==null&&(s=o.dehydrated,s!==null))return Xh(e,t,i,r,s,o,n);if(l){l=r.fallback,i=t.mode,o=e.child,s=o.sibling;var a={mode:"hidden",children:r.children};return(i&1)===0&&t.child!==o?(r=t.child,r.childLanes=0,r.pendingProps=a,t.deletions=null):(r=dn(o,a),r.subtreeFlags=o.subtreeFlags&14680064),s!==null?l=dn(s,l):(l=Un(l,i,n,null),l.flags|=2),l.return=t,r.return=t,r.sibling=l,t.child=r,r=l,l=t.child,i=e.child.memoizedState,i=i===null?ra(n):{baseLanes:i.baseLanes|n,cachePool:null,transitions:i.transitions},l.memoizedState=i,l.childLanes=e.childLanes&~n,t.memoizedState=na,r}return l=e.child,e=l.sibling,r=dn(l,{mode:"visible",children:r.children}),(t.mode&1)===0&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function Va(e,t){return t=ui({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function hl(e,t,n,r){return r!==null&&Oa(r),wr(t,e.child,null,n),e=Va(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function Xh(e,t,n,r,o,l,i){if(n)return t.flags&256?(t.flags&=-257,r=vs(Error(T(422))),hl(e,t,i,r)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(l=r.fallback,o=t.mode,r=ui({mode:"visible",children:r.children},o,0,null),l=Un(l,o,i,null),l.flags|=2,r.return=t,l.return=t,r.sibling=l,t.child=r,(t.mode&1)!==0&&wr(t,e.child,null,i),t.child.memoizedState=ra(i),t.memoizedState=na,l);if((t.mode&1)===0)return hl(e,t,i,null);if(o.data==="$!"){if(r=o.nextSibling&&o.nextSibling.dataset,r)var s=r.dgst;return r=s,l=Error(T(419)),r=vs(l,r,void 0),hl(e,t,i,r)}if(s=(i&e.childLanes)!==0,We||s){if(r=ye,r!==null){switch(i&-i){case 4:o=2;break;case 16:o=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:o=32;break;case 536870912:o=268435456;break;default:o=0}o=(o&(r.suspendedLanes|i))!==0?0:o,o!==0&&o!==l.retryLane&&(l.retryLane=o,Gt(e,o),_t(r,e,o,-1))}return Qa(),r=vs(Error(T(421))),hl(e,t,i,r)}return o.data==="$?"?(t.flags|=128,t.child=e.child,t=iv.bind(null,e),o._reactRetry=t,null):(e=l.treeContext,Ze=an(o.nextSibling),Je=t,te=!0,Et=null,e!==null&&(at[ut++]=jt,at[ut++]=Bt,at[ut++]=Fn,jt=e.id,Bt=e.overflow,Fn=t),t=Va(t,r.children),t.flags|=4096,t)}function uf(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Ys(e.return,t,n)}function ys(e,t,n,r,o){var l=e.memoizedState;l===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:o}:(l.isBackwards=t,l.rendering=null,l.renderingStartTime=0,l.last=r,l.tail=n,l.tailMode=o)}function Qd(e,t,n){var r=t.pendingProps,o=r.revealOrder,l=r.tail;if(Ie(e,t,r.children,n),r=ne.current,(r&2)!==0)r=r&1|2,t.flags|=128;else{if(e!==null&&(e.flags&128)!==0)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&uf(e,n,t);else if(e.tag===19)uf(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if($(ne,r),(t.mode&1)===0)t.memoizedState=null;else switch(o){case"forwards":for(n=t.child,o=null;n!==null;)e=n.alternate,e!==null&&Vl(e)===null&&(o=n),n=n.sibling;n=o,n===null?(o=t.child,t.child=null):(o=n.sibling,n.sibling=null),ys(t,!1,o,n,l);break;case"backwards":for(n=null,o=t.child,t.child=null;o!==null;){if(e=o.alternate,e!==null&&Vl(e)===null){t.child=o;break}e=o.sibling,o.sibling=n,n=o,o=e}ys(t,!0,n,null,l);break;case"together":ys(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function kl(e,t){(t.mode&1)===0&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Xt(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),zn|=t.lanes,(n&t.childLanes)===0)return null;if(e!==null&&t.child!==e.child)throw Error(T(153));if(t.child!==null){for(e=t.child,n=dn(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=dn(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function $h(e,t,n){switch(t.tag){case 3:Kd(t),_r();break;case 5:Td(t);break;case 1:Ge(t.type)&&zl(t);break;case 4:Fa(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,o=t.memoizedProps.value;$(Bl,r._currentValue),r._currentValue=o;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated!==null?($(ne,ne.current&1),t.flags|=128,null):(n&t.child.childLanes)!==0?Yd(e,t,n):($(ne,ne.current&1),e=Xt(e,t,n),e!==null?e.sibling:null);$(ne,ne.current&1);break;case 19:if(r=(n&t.childLanes)!==0,(e.flags&128)!==0){if(r)return Qd(e,t,n);t.flags|=128}if(o=t.memoizedState,o!==null&&(o.rendering=null,o.tail=null,o.lastEffect=null),$(ne,ne.current),r)break;return null;case 22:case 23:return t.lanes=0,Xd(e,t,n)}return Xt(e,t,n)}var Zd,oa,Jd,ep;Zd=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};oa=function(){};Jd=function(e,t,n,r){var o=e.memoizedProps;if(o!==r){e=t.stateNode,Pn(Ot.current);var l=null;switch(n){case"input":o=Ls(e,o),r=Ls(e,r),l=[];break;case"select":o=oe({},o,{value:void 0}),r=oe({},r,{value:void 0}),l=[];break;case"textarea":o=Ms(e,o),r=Ms(e,r),l=[];break;default:typeof o.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=Fl)}Os(n,r);var i;n=null;for(u in o)if(!r.hasOwnProperty(u)&&o.hasOwnProperty(u)&&o[u]!=null)if(u==="style"){var s=o[u];for(i in s)s.hasOwnProperty(i)&&(n||(n={}),n[i]="")}else u!=="dangerouslySetInnerHTML"&&u!=="children"&&u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&u!=="autoFocus"&&(ao.hasOwnProperty(u)?l||(l=[]):(l=l||[]).push(u,null));for(u in r){var a=r[u];if(s=o?.[u],r.hasOwnProperty(u)&&a!==s&&(a!=null||s!=null))if(u==="style")if(s){for(i in s)!s.hasOwnProperty(i)||a&&a.hasOwnProperty(i)||(n||(n={}),n[i]="");for(i in a)a.hasOwnProperty(i)&&s[i]!==a[i]&&(n||(n={}),n[i]=a[i])}else n||(l||(l=[]),l.push(u,n)),n=a;else u==="dangerouslySetInnerHTML"?(a=a?a.__html:void 0,s=s?s.__html:void 0,a!=null&&s!==a&&(l=l||[]).push(u,a)):u==="children"?typeof a!="string"&&typeof a!="number"||(l=l||[]).push(u,""+a):u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&(ao.hasOwnProperty(u)?(a!=null&&u==="onScroll"&&K("scroll",e),l||s===a||(l=[])):(l=l||[]).push(u,a))}n&&(l=l||[]).push("style",n);var u=l;(t.updateQueue=u)&&(t.flags|=4)}};ep=function(e,t,n,r){n!==r&&(t.flags|=4)};function Gr(e,t){if(!te)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function xe(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var o=e.child;o!==null;)n|=o.lanes|o.childLanes,r|=o.subtreeFlags&14680064,r|=o.flags&14680064,o.return=e,o=o.sibling;else for(o=e.child;o!==null;)n|=o.lanes|o.childLanes,r|=o.subtreeFlags,r|=o.flags,o.return=e,o=o.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Kh(e,t,n){var r=t.pendingProps;switch(xa(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return xe(t),null;case 1:return Ge(t.type)&&bl(),xe(t),null;case 3:return r=t.stateNode,Tr(),Y(Ve),Y(De),za(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(ml(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&(t.flags&256)===0||(t.flags|=1024,Et!==null&&(da(Et),Et=null))),oa(e,t),xe(t),null;case 5:ba(t);var o=Pn(_o.current);if(n=t.type,e!==null&&t.stateNode!=null)Jd(e,t,n,r,o),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(T(166));return xe(t),null}if(e=Pn(Ot.current),ml(t)){r=t.stateNode,n=t.type;var l=t.memoizedProps;switch(r[Mt]=t,r[Eo]=l,e=(t.mode&1)!==0,n){case"dialog":K("cancel",r),K("close",r);break;case"iframe":case"object":case"embed":K("load",r);break;case"video":case"audio":for(o=0;o<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=i.createElement(n,{is:r.is}):(e=i.createElement(n),n==="select"&&(i=e,r.multiple?i.multiple=!0:r.size&&(i.size=r.size))):e=i.createElementNS(e,n),e[Mt]=t,e[Eo]=r,Zd(e,t,!1,!1),t.stateNode=e;e:{switch(i=Ds(n,r),n){case"dialog":K("cancel",e),K("close",e),o=r;break;case"iframe":case"object":case"embed":K("load",e),o=r;break;case"video":case"audio":for(o=0;okr&&(t.flags|=128,r=!0,Gr(l,!1),t.lanes=4194304)}else{if(!r)if(e=Vl(i),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),Gr(l,!0),l.tail===null&&l.tailMode==="hidden"&&!i.alternate&&!te)return xe(t),null}else 2*se()-l.renderingStartTime>kr&&n!==1073741824&&(t.flags|=128,r=!0,Gr(l,!1),t.lanes=4194304);l.isBackwards?(i.sibling=t.child,t.child=i):(n=l.last,n!==null?n.sibling=i:t.child=i,l.last=i)}return l.tail!==null?(t=l.tail,l.rendering=t,l.tail=t.sibling,l.renderingStartTime=se(),t.sibling=null,n=ne.current,$(ne,r?n&1|2:n&1),t):(xe(t),null);case 22:case 23:return Ya(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&(t.mode&1)!==0?(Qe&1073741824)!==0&&(xe(t),t.subtreeFlags&6&&(t.flags|=8192)):xe(t),null;case 24:return null;case 25:return null}throw Error(T(156,t.tag))}function Yh(e,t){switch(xa(t),t.tag){case 1:return Ge(t.type)&&bl(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Tr(),Y(Ve),Y(De),za(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 5:return ba(t),null;case 13:if(Y(ne),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(T(340));_r()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Y(ne),null;case 4:return Tr(),null;case 10:return Ia(t.type._context),null;case 22:case 23:return Ya(),null;case 24:return null;default:return null}}var vl=!1,Oe=!1,Qh=typeof WeakSet=="function"?WeakSet:Set,A=null;function fr(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){ie(e,t,r)}else n.current=null}function la(e,t,n){try{n()}catch(r){ie(e,t,r)}}var cf=!1;function Zh(e,t){if(Bs=Il,e=ld(),Aa(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var o=r.anchorOffset,l=r.focusNode;r=r.focusOffset;try{n.nodeType,l.nodeType}catch{n=null;break e}var i=0,s=-1,a=-1,u=0,g=0,h=e,v=null;t:for(;;){for(var E;h!==n||o!==0&&h.nodeType!==3||(s=i+o),h!==l||r!==0&&h.nodeType!==3||(a=i+r),h.nodeType===3&&(i+=h.nodeValue.length),(E=h.firstChild)!==null;)v=h,h=E;for(;;){if(h===e)break t;if(v===n&&++u===o&&(s=i),v===l&&++g===r&&(a=i),(E=h.nextSibling)!==null)break;h=v,v=h.parentNode}h=E}n=s===-1||a===-1?null:{start:s,end:a}}else n=null}n=n||{start:0,end:0}}else n=null;for(qs={focusedElem:e,selectionRange:n},Il=!1,A=t;A!==null;)if(t=A,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,A=e;else for(;A!==null;){t=A;try{var w=t.alternate;if((t.flags&1024)!==0)switch(t.tag){case 0:case 11:case 15:break;case 1:if(w!==null){var k=w.memoizedProps,M=w.memoizedState,f=t.stateNode,c=f.getSnapshotBeforeUpdate(t.elementType===t.type?k:vt(t.type,k),M);f.__reactInternalSnapshotBeforeUpdate=c}break;case 3:var m=t.stateNode.containerInfo;m.nodeType===1?m.textContent="":m.nodeType===9&&m.documentElement&&m.removeChild(m.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(T(163))}}catch(p){ie(t,t.return,p)}if(e=t.sibling,e!==null){e.return=t.return,A=e;break}A=t.return}return w=cf,cf=!1,w}function lo(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var o=r=r.next;do{if((o.tag&e)===e){var l=o.destroy;o.destroy=void 0,l!==void 0&&la(t,n,l)}o=o.next}while(o!==r)}}function si(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function ia(e){var t=e.ref;if(t!==null){var n=e.stateNode;e.tag,e=n,typeof t=="function"?t(e):t.current=e}}function tp(e){var t=e.alternate;t!==null&&(e.alternate=null,tp(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Mt],delete t[Eo],delete t[Gs],delete t[Ih],delete t[Uh])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function np(e){return e.tag===5||e.tag===3||e.tag===4}function ff(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||np(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function sa(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Fl));else if(r!==4&&(e=e.child,e!==null))for(sa(e,t,n),e=e.sibling;e!==null;)sa(e,t,n),e=e.sibling}function aa(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(aa(e,t,n),e=e.sibling;e!==null;)aa(e,t,n),e=e.sibling}var we=null,yt=!1;function Qt(e,t,n){for(n=n.child;n!==null;)rp(e,t,n),n=n.sibling}function rp(e,t,n){if(xt&&typeof xt.onCommitFiberUnmount=="function")try{xt.onCommitFiberUnmount(Jl,n)}catch{}switch(n.tag){case 5:Oe||fr(n,t);case 6:var r=we,o=yt;we=null,Qt(e,t,n),we=r,yt=o,we!==null&&(yt?(e=we,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):we.removeChild(n.stateNode));break;case 18:we!==null&&(yt?(e=we,n=n.stateNode,e.nodeType===8?fs(e.parentNode,n):e.nodeType===1&&fs(e,n),mo(e)):fs(we,n.stateNode));break;case 4:r=we,o=yt,we=n.stateNode.containerInfo,yt=!0,Qt(e,t,n),we=r,yt=o;break;case 0:case 11:case 14:case 15:if(!Oe&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){o=r=r.next;do{var l=o,i=l.destroy;l=l.tag,i!==void 0&&((l&2)!==0||(l&4)!==0)&&la(n,t,i),o=o.next}while(o!==r)}Qt(e,t,n);break;case 1:if(!Oe&&(fr(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(s){ie(n,t,s)}Qt(e,t,n);break;case 21:Qt(e,t,n);break;case 22:n.mode&1?(Oe=(r=Oe)||n.memoizedState!==null,Qt(e,t,n),Oe=r):Qt(e,t,n);break;default:Qt(e,t,n)}}function df(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new Qh),t.forEach(function(r){var o=sv.bind(null,e,r);n.has(r)||(n.add(r),r.then(o,o))})}}function ht(e,t){var n=t.deletions;if(n!==null)for(var r=0;ro&&(o=i),r&=~l}if(r=o,r=se()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*ev(r/1960))-r,10e?16:e,rn===null)var r=!1;else{if(e=rn,rn=null,Yl=0,(j&6)!==0)throw Error(T(331));var o=j;for(j|=4,A=e.current;A!==null;){var l=A,i=l.child;if((A.flags&16)!==0){var s=l.deletions;if(s!==null){for(var a=0;ase()-$a?In(e,0):Xa|=n),Xe(e,t)}function fp(e,t){t===0&&((e.mode&1)===0?t=1:(t=ol,ol<<=1,(ol&130023424)===0&&(ol=4194304)));var n=Ue();e=Gt(e,t),e!==null&&(Lo(e,t,n),Xe(e,n))}function iv(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),fp(e,n)}function sv(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,o=e.memoizedState;o!==null&&(n=o.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(T(314))}r!==null&&r.delete(t),fp(e,n)}var dp;dp=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Ve.current)We=!0;else{if((e.lanes&n)===0&&(t.flags&128)===0)return We=!1,$h(e,t,n);We=(e.flags&131072)!==0}else We=!1,te&&(t.flags&1048576)!==0&&hd(t,jl,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;kl(e,t),e=t.pendingProps;var o=Sr(t,De.current);vr(t,n),o=ja(null,t,r,e,o,n);var l=Ba();return t.flags|=1,typeof o=="object"&&o!==null&&typeof o.render=="function"&&o.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Ge(r)?(l=!0,zl(t)):l=!1,t.memoizedState=o.state!==null&&o.state!==void 0?o.state:null,Ra(t),o.updater=ii,t.stateNode=o,o._reactInternals=t,Zs(t,r,e,n),t=ta(null,t,r,!0,l,n)):(t.tag=0,te&&l&&Ma(t),Ie(null,t,o,n),t=t.child),t;case 16:r=t.elementType;e:{switch(kl(e,t),e=t.pendingProps,o=r._init,r=o(r._payload),t.type=r,o=t.tag=uv(r),e=vt(r,e),o){case 0:t=ea(null,t,r,e,n);break e;case 1:t=sf(null,t,r,e,n);break e;case 11:t=of(null,t,r,e,n);break e;case 14:t=lf(null,t,r,vt(r.type,e),n);break e}throw Error(T(306,r,""))}return t;case 0:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:vt(r,o),ea(e,t,r,o,n);case 1:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:vt(r,o),sf(e,t,r,o,n);case 3:e:{if(Kd(t),e===null)throw Error(T(387));r=t.pendingProps,l=t.memoizedState,o=l.element,wd(e,t),Wl(t,r,null,n);var i=t.memoizedState;if(r=i.element,l.isDehydrated)if(l={element:r,isDehydrated:!1,cache:i.cache,pendingSuspenseBoundaries:i.pendingSuspenseBoundaries,transitions:i.transitions},t.updateQueue.baseState=l,t.memoizedState=l,t.flags&256){o=Cr(Error(T(423)),t),t=af(e,t,r,n,o);break e}else if(r!==o){o=Cr(Error(T(424)),t),t=af(e,t,r,n,o);break e}else for(Ze=an(t.stateNode.containerInfo.firstChild),Je=t,te=!0,Et=null,n=Sd(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(_r(),r===o){t=Xt(e,t,n);break e}Ie(e,t,r,n)}t=t.child}return t;case 5:return Td(t),e===null&&Ks(t),r=t.type,o=t.pendingProps,l=e!==null?e.memoizedProps:null,i=o.children,Ws(r,o)?i=null:l!==null&&Ws(r,l)&&(t.flags|=32),$d(e,t),Ie(e,t,i,n),t.child;case 6:return e===null&&Ks(t),null;case 13:return Yd(e,t,n);case 4:return Fa(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=wr(t,null,r,n):Ie(e,t,r,n),t.child;case 11:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:vt(r,o),of(e,t,r,o,n);case 7:return Ie(e,t,t.pendingProps,n),t.child;case 8:return Ie(e,t,t.pendingProps.children,n),t.child;case 12:return Ie(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,o=t.pendingProps,l=t.memoizedProps,i=o.value,$(Bl,r._currentValue),r._currentValue=i,l!==null)if(wt(l.value,i)){if(l.children===o.children&&!Ve.current){t=Xt(e,t,n);break e}}else for(l=t.child,l!==null&&(l.return=t);l!==null;){var s=l.dependencies;if(s!==null){i=l.child;for(var a=s.firstContext;a!==null;){if(a.context===r){if(l.tag===1){a=qt(-1,n&-n),a.tag=2;var u=l.updateQueue;if(u!==null){u=u.shared;var g=u.pending;g===null?a.next=a:(a.next=g.next,g.next=a),u.pending=a}}l.lanes|=n,a=l.alternate,a!==null&&(a.lanes|=n),Ys(l.return,n,t),s.lanes|=n;break}a=a.next}}else if(l.tag===10)i=l.type===t.type?null:l.child;else if(l.tag===18){if(i=l.return,i===null)throw Error(T(341));i.lanes|=n,s=i.alternate,s!==null&&(s.lanes|=n),Ys(i,n,t),i=l.sibling}else i=l.child;if(i!==null)i.return=l;else for(i=l;i!==null;){if(i===t){i=null;break}if(l=i.sibling,l!==null){l.return=i.return,i=l;break}i=i.return}l=i}Ie(e,t,o.children,n),t=t.child}return t;case 9:return o=t.type,r=t.pendingProps.children,vr(t,n),o=dt(o),r=r(o),t.flags|=1,Ie(e,t,r,n),t.child;case 14:return r=t.type,o=vt(r,t.pendingProps),o=vt(r.type,o),lf(e,t,r,o,n);case 15:return Gd(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:vt(r,o),kl(e,t),t.tag=1,Ge(r)?(e=!0,zl(t)):e=!1,vr(t,n),qd(t,r,o),Zs(t,r,o,n),ta(null,t,r,!0,e,n);case 19:return Qd(e,t,n);case 22:return Xd(e,t,n)}throw Error(T(156,t.tag))};function pp(e,t){return Hf(e,t)}function av(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function ct(e,t,n,r){return new av(e,t,n,r)}function Za(e){return e=e.prototype,!(!e||!e.isReactComponent)}function uv(e){if(typeof e=="function")return Za(e)?1:0;if(e!=null){if(e=e.$$typeof,e===va)return 11;if(e===ya)return 14}return 2}function dn(e,t){var n=e.alternate;return n===null?(n=ct(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Al(e,t,n,r,o,l){var i=2;if(r=e,typeof e=="function")Za(e)&&(i=1);else if(typeof e=="string")i=5;else e:switch(e){case nr:return Un(n.children,o,l,t);case ha:i=8,o|=8;break;case ws:return e=ct(12,n,t,o|2),e.elementType=ws,e.lanes=l,e;case Ts:return e=ct(13,n,t,o),e.elementType=Ts,e.lanes=l,e;case Cs:return e=ct(19,n,t,o),e.elementType=Cs,e.lanes=l,e;case Tf:return ui(n,o,l,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case _f:i=10;break e;case wf:i=9;break e;case va:i=11;break e;case ya:i=14;break e;case Zt:i=16,r=null;break e}throw Error(T(130,e==null?e:typeof e,""))}return t=ct(i,n,t,o),t.elementType=e,t.type=r,t.lanes=l,t}function Un(e,t,n,r){return e=ct(7,e,r,t),e.lanes=n,e}function ui(e,t,n,r){return e=ct(22,e,r,t),e.elementType=Tf,e.lanes=n,e.stateNode={isHidden:!1},e}function Es(e,t,n){return e=ct(6,e,null,t),e.lanes=n,e}function Ss(e,t,n){return t=ct(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function cv(e,t,n,r,o){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=rs(0),this.expirationTimes=rs(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=rs(0),this.identifierPrefix=r,this.onRecoverableError=o,this.mutableSourceEagerHydrationData=null}function Ja(e,t,n,r,o,l,i,s,a){return e=new cv(e,t,n,s,a),t===1?(t=1,l===!0&&(t|=8)):t=0,l=ct(3,null,null,t),e.current=l,l.stateNode=e,l.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Ra(l),e}function fv(e,t,n){var r=3{"use strict";function yp(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(yp)}catch(e){console.error(e)}}yp(),Ep.exports=vp()});var wp=Ne(ru=>{"use strict";var _p=Sp();ru.createRoot=_p.createRoot,ru.hydrateRoot=_p.hydrateRoot;var D0});var ou=Ne((i1,yv)=>{yv.exports={Aacute:"\xC1",aacute:"\xE1",Abreve:"\u0102",abreve:"\u0103",ac:"\u223E",acd:"\u223F",acE:"\u223E\u0333",Acirc:"\xC2",acirc:"\xE2",acute:"\xB4",Acy:"\u0410",acy:"\u0430",AElig:"\xC6",aelig:"\xE6",af:"\u2061",Afr:"\u{1D504}",afr:"\u{1D51E}",Agrave:"\xC0",agrave:"\xE0",alefsym:"\u2135",aleph:"\u2135",Alpha:"\u0391",alpha:"\u03B1",Amacr:"\u0100",amacr:"\u0101",amalg:"\u2A3F",amp:"&",AMP:"&",andand:"\u2A55",And:"\u2A53",and:"\u2227",andd:"\u2A5C",andslope:"\u2A58",andv:"\u2A5A",ang:"\u2220",ange:"\u29A4",angle:"\u2220",angmsdaa:"\u29A8",angmsdab:"\u29A9",angmsdac:"\u29AA",angmsdad:"\u29AB",angmsdae:"\u29AC",angmsdaf:"\u29AD",angmsdag:"\u29AE",angmsdah:"\u29AF",angmsd:"\u2221",angrt:"\u221F",angrtvb:"\u22BE",angrtvbd:"\u299D",angsph:"\u2222",angst:"\xC5",angzarr:"\u237C",Aogon:"\u0104",aogon:"\u0105",Aopf:"\u{1D538}",aopf:"\u{1D552}",apacir:"\u2A6F",ap:"\u2248",apE:"\u2A70",ape:"\u224A",apid:"\u224B",apos:"'",ApplyFunction:"\u2061",approx:"\u2248",approxeq:"\u224A",Aring:"\xC5",aring:"\xE5",Ascr:"\u{1D49C}",ascr:"\u{1D4B6}",Assign:"\u2254",ast:"*",asymp:"\u2248",asympeq:"\u224D",Atilde:"\xC3",atilde:"\xE3",Auml:"\xC4",auml:"\xE4",awconint:"\u2233",awint:"\u2A11",backcong:"\u224C",backepsilon:"\u03F6",backprime:"\u2035",backsim:"\u223D",backsimeq:"\u22CD",Backslash:"\u2216",Barv:"\u2AE7",barvee:"\u22BD",barwed:"\u2305",Barwed:"\u2306",barwedge:"\u2305",bbrk:"\u23B5",bbrktbrk:"\u23B6",bcong:"\u224C",Bcy:"\u0411",bcy:"\u0431",bdquo:"\u201E",becaus:"\u2235",because:"\u2235",Because:"\u2235",bemptyv:"\u29B0",bepsi:"\u03F6",bernou:"\u212C",Bernoullis:"\u212C",Beta:"\u0392",beta:"\u03B2",beth:"\u2136",between:"\u226C",Bfr:"\u{1D505}",bfr:"\u{1D51F}",bigcap:"\u22C2",bigcirc:"\u25EF",bigcup:"\u22C3",bigodot:"\u2A00",bigoplus:"\u2A01",bigotimes:"\u2A02",bigsqcup:"\u2A06",bigstar:"\u2605",bigtriangledown:"\u25BD",bigtriangleup:"\u25B3",biguplus:"\u2A04",bigvee:"\u22C1",bigwedge:"\u22C0",bkarow:"\u290D",blacklozenge:"\u29EB",blacksquare:"\u25AA",blacktriangle:"\u25B4",blacktriangledown:"\u25BE",blacktriangleleft:"\u25C2",blacktriangleright:"\u25B8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20E5",bnequiv:"\u2261\u20E5",bNot:"\u2AED",bnot:"\u2310",Bopf:"\u{1D539}",bopf:"\u{1D553}",bot:"\u22A5",bottom:"\u22A5",bowtie:"\u22C8",boxbox:"\u29C9",boxdl:"\u2510",boxdL:"\u2555",boxDl:"\u2556",boxDL:"\u2557",boxdr:"\u250C",boxdR:"\u2552",boxDr:"\u2553",boxDR:"\u2554",boxh:"\u2500",boxH:"\u2550",boxhd:"\u252C",boxHd:"\u2564",boxhD:"\u2565",boxHD:"\u2566",boxhu:"\u2534",boxHu:"\u2567",boxhU:"\u2568",boxHU:"\u2569",boxminus:"\u229F",boxplus:"\u229E",boxtimes:"\u22A0",boxul:"\u2518",boxuL:"\u255B",boxUl:"\u255C",boxUL:"\u255D",boxur:"\u2514",boxuR:"\u2558",boxUr:"\u2559",boxUR:"\u255A",boxv:"\u2502",boxV:"\u2551",boxvh:"\u253C",boxvH:"\u256A",boxVh:"\u256B",boxVH:"\u256C",boxvl:"\u2524",boxvL:"\u2561",boxVl:"\u2562",boxVL:"\u2563",boxvr:"\u251C",boxvR:"\u255E",boxVr:"\u255F",boxVR:"\u2560",bprime:"\u2035",breve:"\u02D8",Breve:"\u02D8",brvbar:"\xA6",bscr:"\u{1D4B7}",Bscr:"\u212C",bsemi:"\u204F",bsim:"\u223D",bsime:"\u22CD",bsolb:"\u29C5",bsol:"\\",bsolhsub:"\u27C8",bull:"\u2022",bullet:"\u2022",bump:"\u224E",bumpE:"\u2AAE",bumpe:"\u224F",Bumpeq:"\u224E",bumpeq:"\u224F",Cacute:"\u0106",cacute:"\u0107",capand:"\u2A44",capbrcup:"\u2A49",capcap:"\u2A4B",cap:"\u2229",Cap:"\u22D2",capcup:"\u2A47",capdot:"\u2A40",CapitalDifferentialD:"\u2145",caps:"\u2229\uFE00",caret:"\u2041",caron:"\u02C7",Cayleys:"\u212D",ccaps:"\u2A4D",Ccaron:"\u010C",ccaron:"\u010D",Ccedil:"\xC7",ccedil:"\xE7",Ccirc:"\u0108",ccirc:"\u0109",Cconint:"\u2230",ccups:"\u2A4C",ccupssm:"\u2A50",Cdot:"\u010A",cdot:"\u010B",cedil:"\xB8",Cedilla:"\xB8",cemptyv:"\u29B2",cent:"\xA2",centerdot:"\xB7",CenterDot:"\xB7",cfr:"\u{1D520}",Cfr:"\u212D",CHcy:"\u0427",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",Chi:"\u03A7",chi:"\u03C7",circ:"\u02C6",circeq:"\u2257",circlearrowleft:"\u21BA",circlearrowright:"\u21BB",circledast:"\u229B",circledcirc:"\u229A",circleddash:"\u229D",CircleDot:"\u2299",circledR:"\xAE",circledS:"\u24C8",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",cir:"\u25CB",cirE:"\u29C3",cire:"\u2257",cirfnint:"\u2A10",cirmid:"\u2AEF",cirscir:"\u29C2",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201D",CloseCurlyQuote:"\u2019",clubs:"\u2663",clubsuit:"\u2663",colon:":",Colon:"\u2237",Colone:"\u2A74",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2A6D",Congruent:"\u2261",conint:"\u222E",Conint:"\u222F",ContourIntegral:"\u222E",copf:"\u{1D554}",Copf:"\u2102",coprod:"\u2210",Coproduct:"\u2210",copy:"\xA9",COPY:"\xA9",copysr:"\u2117",CounterClockwiseContourIntegral:"\u2233",crarr:"\u21B5",cross:"\u2717",Cross:"\u2A2F",Cscr:"\u{1D49E}",cscr:"\u{1D4B8}",csub:"\u2ACF",csube:"\u2AD1",csup:"\u2AD0",csupe:"\u2AD2",ctdot:"\u22EF",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22DE",cuesc:"\u22DF",cularr:"\u21B6",cularrp:"\u293D",cupbrcap:"\u2A48",cupcap:"\u2A46",CupCap:"\u224D",cup:"\u222A",Cup:"\u22D3",cupcup:"\u2A4A",cupdot:"\u228D",cupor:"\u2A45",cups:"\u222A\uFE00",curarr:"\u21B7",curarrm:"\u293C",curlyeqprec:"\u22DE",curlyeqsucc:"\u22DF",curlyvee:"\u22CE",curlywedge:"\u22CF",curren:"\xA4",curvearrowleft:"\u21B6",curvearrowright:"\u21B7",cuvee:"\u22CE",cuwed:"\u22CF",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232D",dagger:"\u2020",Dagger:"\u2021",daleth:"\u2138",darr:"\u2193",Darr:"\u21A1",dArr:"\u21D3",dash:"\u2010",Dashv:"\u2AE4",dashv:"\u22A3",dbkarow:"\u290F",dblac:"\u02DD",Dcaron:"\u010E",dcaron:"\u010F",Dcy:"\u0414",dcy:"\u0434",ddagger:"\u2021",ddarr:"\u21CA",DD:"\u2145",dd:"\u2146",DDotrahd:"\u2911",ddotseq:"\u2A77",deg:"\xB0",Del:"\u2207",Delta:"\u0394",delta:"\u03B4",demptyv:"\u29B1",dfisht:"\u297F",Dfr:"\u{1D507}",dfr:"\u{1D521}",dHar:"\u2965",dharl:"\u21C3",dharr:"\u21C2",DiacriticalAcute:"\xB4",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",DiacriticalGrave:"`",DiacriticalTilde:"\u02DC",diam:"\u22C4",diamond:"\u22C4",Diamond:"\u22C4",diamondsuit:"\u2666",diams:"\u2666",die:"\xA8",DifferentialD:"\u2146",digamma:"\u03DD",disin:"\u22F2",div:"\xF7",divide:"\xF7",divideontimes:"\u22C7",divonx:"\u22C7",DJcy:"\u0402",djcy:"\u0452",dlcorn:"\u231E",dlcrop:"\u230D",dollar:"$",Dopf:"\u{1D53B}",dopf:"\u{1D555}",Dot:"\xA8",dot:"\u02D9",DotDot:"\u20DC",doteq:"\u2250",doteqdot:"\u2251",DotEqual:"\u2250",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22A1",doublebarwedge:"\u2306",DoubleContourIntegral:"\u222F",DoubleDot:"\xA8",DoubleDownArrow:"\u21D3",DoubleLeftArrow:"\u21D0",DoubleLeftRightArrow:"\u21D4",DoubleLeftTee:"\u2AE4",DoubleLongLeftArrow:"\u27F8",DoubleLongLeftRightArrow:"\u27FA",DoubleLongRightArrow:"\u27F9",DoubleRightArrow:"\u21D2",DoubleRightTee:"\u22A8",DoubleUpArrow:"\u21D1",DoubleUpDownArrow:"\u21D5",DoubleVerticalBar:"\u2225",DownArrowBar:"\u2913",downarrow:"\u2193",DownArrow:"\u2193",Downarrow:"\u21D3",DownArrowUpArrow:"\u21F5",DownBreve:"\u0311",downdownarrows:"\u21CA",downharpoonleft:"\u21C3",downharpoonright:"\u21C2",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295E",DownLeftVectorBar:"\u2956",DownLeftVector:"\u21BD",DownRightTeeVector:"\u295F",DownRightVectorBar:"\u2957",DownRightVector:"\u21C1",DownTeeArrow:"\u21A7",DownTee:"\u22A4",drbkarow:"\u2910",drcorn:"\u231F",drcrop:"\u230C",Dscr:"\u{1D49F}",dscr:"\u{1D4B9}",DScy:"\u0405",dscy:"\u0455",dsol:"\u29F6",Dstrok:"\u0110",dstrok:"\u0111",dtdot:"\u22F1",dtri:"\u25BF",dtrif:"\u25BE",duarr:"\u21F5",duhar:"\u296F",dwangle:"\u29A6",DZcy:"\u040F",dzcy:"\u045F",dzigrarr:"\u27FF",Eacute:"\xC9",eacute:"\xE9",easter:"\u2A6E",Ecaron:"\u011A",ecaron:"\u011B",Ecirc:"\xCA",ecirc:"\xEA",ecir:"\u2256",ecolon:"\u2255",Ecy:"\u042D",ecy:"\u044D",eDDot:"\u2A77",Edot:"\u0116",edot:"\u0117",eDot:"\u2251",ee:"\u2147",efDot:"\u2252",Efr:"\u{1D508}",efr:"\u{1D522}",eg:"\u2A9A",Egrave:"\xC8",egrave:"\xE8",egs:"\u2A96",egsdot:"\u2A98",el:"\u2A99",Element:"\u2208",elinters:"\u23E7",ell:"\u2113",els:"\u2A95",elsdot:"\u2A97",Emacr:"\u0112",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",EmptySmallSquare:"\u25FB",emptyv:"\u2205",EmptyVerySmallSquare:"\u25AB",emsp13:"\u2004",emsp14:"\u2005",emsp:"\u2003",ENG:"\u014A",eng:"\u014B",ensp:"\u2002",Eogon:"\u0118",eogon:"\u0119",Eopf:"\u{1D53C}",eopf:"\u{1D556}",epar:"\u22D5",eparsl:"\u29E3",eplus:"\u2A71",epsi:"\u03B5",Epsilon:"\u0395",epsilon:"\u03B5",epsiv:"\u03F5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2A96",eqslantless:"\u2A95",Equal:"\u2A75",equals:"=",EqualTilde:"\u2242",equest:"\u225F",Equilibrium:"\u21CC",equiv:"\u2261",equivDD:"\u2A78",eqvparsl:"\u29E5",erarr:"\u2971",erDot:"\u2253",escr:"\u212F",Escr:"\u2130",esdot:"\u2250",Esim:"\u2A73",esim:"\u2242",Eta:"\u0397",eta:"\u03B7",ETH:"\xD0",eth:"\xF0",Euml:"\xCB",euml:"\xEB",euro:"\u20AC",excl:"!",exist:"\u2203",Exists:"\u2203",expectation:"\u2130",exponentiale:"\u2147",ExponentialE:"\u2147",fallingdotseq:"\u2252",Fcy:"\u0424",fcy:"\u0444",female:"\u2640",ffilig:"\uFB03",fflig:"\uFB00",ffllig:"\uFB04",Ffr:"\u{1D509}",ffr:"\u{1D523}",filig:"\uFB01",FilledSmallSquare:"\u25FC",FilledVerySmallSquare:"\u25AA",fjlig:"fj",flat:"\u266D",fllig:"\uFB02",fltns:"\u25B1",fnof:"\u0192",Fopf:"\u{1D53D}",fopf:"\u{1D557}",forall:"\u2200",ForAll:"\u2200",fork:"\u22D4",forkv:"\u2AD9",Fouriertrf:"\u2131",fpartint:"\u2A0D",frac12:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044",frown:"\u2322",fscr:"\u{1D4BB}",Fscr:"\u2131",gacute:"\u01F5",Gamma:"\u0393",gamma:"\u03B3",Gammad:"\u03DC",gammad:"\u03DD",gap:"\u2A86",Gbreve:"\u011E",gbreve:"\u011F",Gcedil:"\u0122",Gcirc:"\u011C",gcirc:"\u011D",Gcy:"\u0413",gcy:"\u0433",Gdot:"\u0120",gdot:"\u0121",ge:"\u2265",gE:"\u2267",gEl:"\u2A8C",gel:"\u22DB",geq:"\u2265",geqq:"\u2267",geqslant:"\u2A7E",gescc:"\u2AA9",ges:"\u2A7E",gesdot:"\u2A80",gesdoto:"\u2A82",gesdotol:"\u2A84",gesl:"\u22DB\uFE00",gesles:"\u2A94",Gfr:"\u{1D50A}",gfr:"\u{1D524}",gg:"\u226B",Gg:"\u22D9",ggg:"\u22D9",gimel:"\u2137",GJcy:"\u0403",gjcy:"\u0453",gla:"\u2AA5",gl:"\u2277",glE:"\u2A92",glj:"\u2AA4",gnap:"\u2A8A",gnapprox:"\u2A8A",gne:"\u2A88",gnE:"\u2269",gneq:"\u2A88",gneqq:"\u2269",gnsim:"\u22E7",Gopf:"\u{1D53E}",gopf:"\u{1D558}",grave:"`",GreaterEqual:"\u2265",GreaterEqualLess:"\u22DB",GreaterFullEqual:"\u2267",GreaterGreater:"\u2AA2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2A7E",GreaterTilde:"\u2273",Gscr:"\u{1D4A2}",gscr:"\u210A",gsim:"\u2273",gsime:"\u2A8E",gsiml:"\u2A90",gtcc:"\u2AA7",gtcir:"\u2A7A",gt:">",GT:">",Gt:"\u226B",gtdot:"\u22D7",gtlPar:"\u2995",gtquest:"\u2A7C",gtrapprox:"\u2A86",gtrarr:"\u2978",gtrdot:"\u22D7",gtreqless:"\u22DB",gtreqqless:"\u2A8C",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\uFE00",gvnE:"\u2269\uFE00",Hacek:"\u02C7",hairsp:"\u200A",half:"\xBD",hamilt:"\u210B",HARDcy:"\u042A",hardcy:"\u044A",harrcir:"\u2948",harr:"\u2194",hArr:"\u21D4",harrw:"\u21AD",Hat:"^",hbar:"\u210F",Hcirc:"\u0124",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22B9",hfr:"\u{1D525}",Hfr:"\u210C",HilbertSpace:"\u210B",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21FF",homtht:"\u223B",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",hopf:"\u{1D559}",Hopf:"\u210D",horbar:"\u2015",HorizontalLine:"\u2500",hscr:"\u{1D4BD}",Hscr:"\u210B",hslash:"\u210F",Hstrok:"\u0126",hstrok:"\u0127",HumpDownHump:"\u224E",HumpEqual:"\u224F",hybull:"\u2043",hyphen:"\u2010",Iacute:"\xCD",iacute:"\xED",ic:"\u2063",Icirc:"\xCE",icirc:"\xEE",Icy:"\u0418",icy:"\u0438",Idot:"\u0130",IEcy:"\u0415",iecy:"\u0435",iexcl:"\xA1",iff:"\u21D4",ifr:"\u{1D526}",Ifr:"\u2111",Igrave:"\xCC",igrave:"\xEC",ii:"\u2148",iiiint:"\u2A0C",iiint:"\u222D",iinfin:"\u29DC",iiota:"\u2129",IJlig:"\u0132",ijlig:"\u0133",Imacr:"\u012A",imacr:"\u012B",image:"\u2111",ImaginaryI:"\u2148",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",Im:"\u2111",imof:"\u22B7",imped:"\u01B5",Implies:"\u21D2",incare:"\u2105",in:"\u2208",infin:"\u221E",infintie:"\u29DD",inodot:"\u0131",intcal:"\u22BA",int:"\u222B",Int:"\u222C",integers:"\u2124",Integral:"\u222B",intercal:"\u22BA",Intersection:"\u22C2",intlarhk:"\u2A17",intprod:"\u2A3C",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",IOcy:"\u0401",iocy:"\u0451",Iogon:"\u012E",iogon:"\u012F",Iopf:"\u{1D540}",iopf:"\u{1D55A}",Iota:"\u0399",iota:"\u03B9",iprod:"\u2A3C",iquest:"\xBF",iscr:"\u{1D4BE}",Iscr:"\u2110",isin:"\u2208",isindot:"\u22F5",isinE:"\u22F9",isins:"\u22F4",isinsv:"\u22F3",isinv:"\u2208",it:"\u2062",Itilde:"\u0128",itilde:"\u0129",Iukcy:"\u0406",iukcy:"\u0456",Iuml:"\xCF",iuml:"\xEF",Jcirc:"\u0134",jcirc:"\u0135",Jcy:"\u0419",jcy:"\u0439",Jfr:"\u{1D50D}",jfr:"\u{1D527}",jmath:"\u0237",Jopf:"\u{1D541}",jopf:"\u{1D55B}",Jscr:"\u{1D4A5}",jscr:"\u{1D4BF}",Jsercy:"\u0408",jsercy:"\u0458",Jukcy:"\u0404",jukcy:"\u0454",Kappa:"\u039A",kappa:"\u03BA",kappav:"\u03F0",Kcedil:"\u0136",kcedil:"\u0137",Kcy:"\u041A",kcy:"\u043A",Kfr:"\u{1D50E}",kfr:"\u{1D528}",kgreen:"\u0138",KHcy:"\u0425",khcy:"\u0445",KJcy:"\u040C",kjcy:"\u045C",Kopf:"\u{1D542}",kopf:"\u{1D55C}",Kscr:"\u{1D4A6}",kscr:"\u{1D4C0}",lAarr:"\u21DA",Lacute:"\u0139",lacute:"\u013A",laemptyv:"\u29B4",lagran:"\u2112",Lambda:"\u039B",lambda:"\u03BB",lang:"\u27E8",Lang:"\u27EA",langd:"\u2991",langle:"\u27E8",lap:"\u2A85",Laplacetrf:"\u2112",laquo:"\xAB",larrb:"\u21E4",larrbfs:"\u291F",larr:"\u2190",Larr:"\u219E",lArr:"\u21D0",larrfs:"\u291D",larrhk:"\u21A9",larrlp:"\u21AB",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21A2",latail:"\u2919",lAtail:"\u291B",lat:"\u2AAB",late:"\u2AAD",lates:"\u2AAD\uFE00",lbarr:"\u290C",lBarr:"\u290E",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298B",lbrksld:"\u298F",lbrkslu:"\u298D",Lcaron:"\u013D",lcaron:"\u013E",Lcedil:"\u013B",lcedil:"\u013C",lceil:"\u2308",lcub:"{",Lcy:"\u041B",lcy:"\u043B",ldca:"\u2936",ldquo:"\u201C",ldquor:"\u201E",ldrdhar:"\u2967",ldrushar:"\u294B",ldsh:"\u21B2",le:"\u2264",lE:"\u2266",LeftAngleBracket:"\u27E8",LeftArrowBar:"\u21E4",leftarrow:"\u2190",LeftArrow:"\u2190",Leftarrow:"\u21D0",LeftArrowRightArrow:"\u21C6",leftarrowtail:"\u21A2",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27E6",LeftDownTeeVector:"\u2961",LeftDownVectorBar:"\u2959",LeftDownVector:"\u21C3",LeftFloor:"\u230A",leftharpoondown:"\u21BD",leftharpoonup:"\u21BC",leftleftarrows:"\u21C7",leftrightarrow:"\u2194",LeftRightArrow:"\u2194",Leftrightarrow:"\u21D4",leftrightarrows:"\u21C6",leftrightharpoons:"\u21CB",leftrightsquigarrow:"\u21AD",LeftRightVector:"\u294E",LeftTeeArrow:"\u21A4",LeftTee:"\u22A3",LeftTeeVector:"\u295A",leftthreetimes:"\u22CB",LeftTriangleBar:"\u29CF",LeftTriangle:"\u22B2",LeftTriangleEqual:"\u22B4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVectorBar:"\u2958",LeftUpVector:"\u21BF",LeftVectorBar:"\u2952",LeftVector:"\u21BC",lEg:"\u2A8B",leg:"\u22DA",leq:"\u2264",leqq:"\u2266",leqslant:"\u2A7D",lescc:"\u2AA8",les:"\u2A7D",lesdot:"\u2A7F",lesdoto:"\u2A81",lesdotor:"\u2A83",lesg:"\u22DA\uFE00",lesges:"\u2A93",lessapprox:"\u2A85",lessdot:"\u22D6",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",LessEqualGreater:"\u22DA",LessFullEqual:"\u2266",LessGreater:"\u2276",lessgtr:"\u2276",LessLess:"\u2AA1",lesssim:"\u2272",LessSlantEqual:"\u2A7D",LessTilde:"\u2272",lfisht:"\u297C",lfloor:"\u230A",Lfr:"\u{1D50F}",lfr:"\u{1D529}",lg:"\u2276",lgE:"\u2A91",lHar:"\u2962",lhard:"\u21BD",lharu:"\u21BC",lharul:"\u296A",lhblk:"\u2584",LJcy:"\u0409",ljcy:"\u0459",llarr:"\u21C7",ll:"\u226A",Ll:"\u22D8",llcorner:"\u231E",Lleftarrow:"\u21DA",llhard:"\u296B",lltri:"\u25FA",Lmidot:"\u013F",lmidot:"\u0140",lmoustache:"\u23B0",lmoust:"\u23B0",lnap:"\u2A89",lnapprox:"\u2A89",lne:"\u2A87",lnE:"\u2268",lneq:"\u2A87",lneqq:"\u2268",lnsim:"\u22E6",loang:"\u27EC",loarr:"\u21FD",lobrk:"\u27E6",longleftarrow:"\u27F5",LongLeftArrow:"\u27F5",Longleftarrow:"\u27F8",longleftrightarrow:"\u27F7",LongLeftRightArrow:"\u27F7",Longleftrightarrow:"\u27FA",longmapsto:"\u27FC",longrightarrow:"\u27F6",LongRightArrow:"\u27F6",Longrightarrow:"\u27F9",looparrowleft:"\u21AB",looparrowright:"\u21AC",lopar:"\u2985",Lopf:"\u{1D543}",lopf:"\u{1D55D}",loplus:"\u2A2D",lotimes:"\u2A34",lowast:"\u2217",lowbar:"_",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",loz:"\u25CA",lozenge:"\u25CA",lozf:"\u29EB",lpar:"(",lparlt:"\u2993",lrarr:"\u21C6",lrcorner:"\u231F",lrhar:"\u21CB",lrhard:"\u296D",lrm:"\u200E",lrtri:"\u22BF",lsaquo:"\u2039",lscr:"\u{1D4C1}",Lscr:"\u2112",lsh:"\u21B0",Lsh:"\u21B0",lsim:"\u2272",lsime:"\u2A8D",lsimg:"\u2A8F",lsqb:"[",lsquo:"\u2018",lsquor:"\u201A",Lstrok:"\u0141",lstrok:"\u0142",ltcc:"\u2AA6",ltcir:"\u2A79",lt:"<",LT:"<",Lt:"\u226A",ltdot:"\u22D6",lthree:"\u22CB",ltimes:"\u22C9",ltlarr:"\u2976",ltquest:"\u2A7B",ltri:"\u25C3",ltrie:"\u22B4",ltrif:"\u25C2",ltrPar:"\u2996",lurdshar:"\u294A",luruhar:"\u2966",lvertneqq:"\u2268\uFE00",lvnE:"\u2268\uFE00",macr:"\xAF",male:"\u2642",malt:"\u2720",maltese:"\u2720",Map:"\u2905",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",mapstoleft:"\u21A4",mapstoup:"\u21A5",marker:"\u25AE",mcomma:"\u2A29",Mcy:"\u041C",mcy:"\u043C",mdash:"\u2014",mDDot:"\u223A",measuredangle:"\u2221",MediumSpace:"\u205F",Mellintrf:"\u2133",Mfr:"\u{1D510}",mfr:"\u{1D52A}",mho:"\u2127",micro:"\xB5",midast:"*",midcir:"\u2AF0",mid:"\u2223",middot:"\xB7",minusb:"\u229F",minus:"\u2212",minusd:"\u2238",minusdu:"\u2A2A",MinusPlus:"\u2213",mlcp:"\u2ADB",mldr:"\u2026",mnplus:"\u2213",models:"\u22A7",Mopf:"\u{1D544}",mopf:"\u{1D55E}",mp:"\u2213",mscr:"\u{1D4C2}",Mscr:"\u2133",mstpos:"\u223E",Mu:"\u039C",mu:"\u03BC",multimap:"\u22B8",mumap:"\u22B8",nabla:"\u2207",Nacute:"\u0143",nacute:"\u0144",nang:"\u2220\u20D2",nap:"\u2249",napE:"\u2A70\u0338",napid:"\u224B\u0338",napos:"\u0149",napprox:"\u2249",natural:"\u266E",naturals:"\u2115",natur:"\u266E",nbsp:"\xA0",nbump:"\u224E\u0338",nbumpe:"\u224F\u0338",ncap:"\u2A43",Ncaron:"\u0147",ncaron:"\u0148",Ncedil:"\u0145",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2A6D\u0338",ncup:"\u2A42",Ncy:"\u041D",ncy:"\u043D",ndash:"\u2013",nearhk:"\u2924",nearr:"\u2197",neArr:"\u21D7",nearrow:"\u2197",ne:"\u2260",nedot:"\u2250\u0338",NegativeMediumSpace:"\u200B",NegativeThickSpace:"\u200B",NegativeThinSpace:"\u200B",NegativeVeryThinSpace:"\u200B",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",NestedGreaterGreater:"\u226B",NestedLessLess:"\u226A",NewLine:` +`,nexist:"\u2204",nexists:"\u2204",Nfr:"\u{1D511}",nfr:"\u{1D52B}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2A7E\u0338",nges:"\u2A7E\u0338",nGg:"\u22D9\u0338",ngsim:"\u2275",nGt:"\u226B\u20D2",ngt:"\u226F",ngtr:"\u226F",nGtv:"\u226B\u0338",nharr:"\u21AE",nhArr:"\u21CE",nhpar:"\u2AF2",ni:"\u220B",nis:"\u22FC",nisd:"\u22FA",niv:"\u220B",NJcy:"\u040A",njcy:"\u045A",nlarr:"\u219A",nlArr:"\u21CD",nldr:"\u2025",nlE:"\u2266\u0338",nle:"\u2270",nleftarrow:"\u219A",nLeftarrow:"\u21CD",nleftrightarrow:"\u21AE",nLeftrightarrow:"\u21CE",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2A7D\u0338",nles:"\u2A7D\u0338",nless:"\u226E",nLl:"\u22D8\u0338",nlsim:"\u2274",nLt:"\u226A\u20D2",nlt:"\u226E",nltri:"\u22EA",nltrie:"\u22EC",nLtv:"\u226A\u0338",nmid:"\u2224",NoBreak:"\u2060",NonBreakingSpace:"\xA0",nopf:"\u{1D55F}",Nopf:"\u2115",Not:"\u2AEC",not:"\xAC",NotCongruent:"\u2262",NotCupCap:"\u226D",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226F",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226B\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2A7E\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224E\u0338",NotHumpEqual:"\u224F\u0338",notin:"\u2209",notindot:"\u22F5\u0338",notinE:"\u22F9\u0338",notinva:"\u2209",notinvb:"\u22F7",notinvc:"\u22F6",NotLeftTriangleBar:"\u29CF\u0338",NotLeftTriangle:"\u22EA",NotLeftTriangleEqual:"\u22EC",NotLess:"\u226E",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226A\u0338",NotLessSlantEqual:"\u2A7D\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2AA2\u0338",NotNestedLessLess:"\u2AA1\u0338",notni:"\u220C",notniva:"\u220C",notnivb:"\u22FE",notnivc:"\u22FD",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2AAF\u0338",NotPrecedesSlantEqual:"\u22E0",NotReverseElement:"\u220C",NotRightTriangleBar:"\u29D0\u0338",NotRightTriangle:"\u22EB",NotRightTriangleEqual:"\u22ED",NotSquareSubset:"\u228F\u0338",NotSquareSubsetEqual:"\u22E2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22E3",NotSubset:"\u2282\u20D2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2AB0\u0338",NotSucceedsSlantEqual:"\u22E1",NotSucceedsTilde:"\u227F\u0338",NotSuperset:"\u2283\u20D2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",nparallel:"\u2226",npar:"\u2226",nparsl:"\u2AFD\u20E5",npart:"\u2202\u0338",npolint:"\u2A14",npr:"\u2280",nprcue:"\u22E0",nprec:"\u2280",npreceq:"\u2AAF\u0338",npre:"\u2AAF\u0338",nrarrc:"\u2933\u0338",nrarr:"\u219B",nrArr:"\u21CF",nrarrw:"\u219D\u0338",nrightarrow:"\u219B",nRightarrow:"\u21CF",nrtri:"\u22EB",nrtrie:"\u22ED",nsc:"\u2281",nsccue:"\u22E1",nsce:"\u2AB0\u0338",Nscr:"\u{1D4A9}",nscr:"\u{1D4C3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22E2",nsqsupe:"\u22E3",nsub:"\u2284",nsubE:"\u2AC5\u0338",nsube:"\u2288",nsubset:"\u2282\u20D2",nsubseteq:"\u2288",nsubseteqq:"\u2AC5\u0338",nsucc:"\u2281",nsucceq:"\u2AB0\u0338",nsup:"\u2285",nsupE:"\u2AC6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20D2",nsupseteq:"\u2289",nsupseteqq:"\u2AC6\u0338",ntgl:"\u2279",Ntilde:"\xD1",ntilde:"\xF1",ntlg:"\u2278",ntriangleleft:"\u22EA",ntrianglelefteq:"\u22EC",ntriangleright:"\u22EB",ntrianglerighteq:"\u22ED",Nu:"\u039D",nu:"\u03BD",num:"#",numero:"\u2116",numsp:"\u2007",nvap:"\u224D\u20D2",nvdash:"\u22AC",nvDash:"\u22AD",nVdash:"\u22AE",nVDash:"\u22AF",nvge:"\u2265\u20D2",nvgt:">\u20D2",nvHarr:"\u2904",nvinfin:"\u29DE",nvlArr:"\u2902",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvltrie:"\u22B4\u20D2",nvrArr:"\u2903",nvrtrie:"\u22B5\u20D2",nvsim:"\u223C\u20D2",nwarhk:"\u2923",nwarr:"\u2196",nwArr:"\u21D6",nwarrow:"\u2196",nwnear:"\u2927",Oacute:"\xD3",oacute:"\xF3",oast:"\u229B",Ocirc:"\xD4",ocirc:"\xF4",ocir:"\u229A",Ocy:"\u041E",ocy:"\u043E",odash:"\u229D",Odblac:"\u0150",odblac:"\u0151",odiv:"\u2A38",odot:"\u2299",odsold:"\u29BC",OElig:"\u0152",oelig:"\u0153",ofcir:"\u29BF",Ofr:"\u{1D512}",ofr:"\u{1D52C}",ogon:"\u02DB",Ograve:"\xD2",ograve:"\xF2",ogt:"\u29C1",ohbar:"\u29B5",ohm:"\u03A9",oint:"\u222E",olarr:"\u21BA",olcir:"\u29BE",olcross:"\u29BB",oline:"\u203E",olt:"\u29C0",Omacr:"\u014C",omacr:"\u014D",Omega:"\u03A9",omega:"\u03C9",Omicron:"\u039F",omicron:"\u03BF",omid:"\u29B6",ominus:"\u2296",Oopf:"\u{1D546}",oopf:"\u{1D560}",opar:"\u29B7",OpenCurlyDoubleQuote:"\u201C",OpenCurlyQuote:"\u2018",operp:"\u29B9",oplus:"\u2295",orarr:"\u21BB",Or:"\u2A54",or:"\u2228",ord:"\u2A5D",order:"\u2134",orderof:"\u2134",ordf:"\xAA",ordm:"\xBA",origof:"\u22B6",oror:"\u2A56",orslope:"\u2A57",orv:"\u2A5B",oS:"\u24C8",Oscr:"\u{1D4AA}",oscr:"\u2134",Oslash:"\xD8",oslash:"\xF8",osol:"\u2298",Otilde:"\xD5",otilde:"\xF5",otimesas:"\u2A36",Otimes:"\u2A37",otimes:"\u2297",Ouml:"\xD6",ouml:"\xF6",ovbar:"\u233D",OverBar:"\u203E",OverBrace:"\u23DE",OverBracket:"\u23B4",OverParenthesis:"\u23DC",para:"\xB6",parallel:"\u2225",par:"\u2225",parsim:"\u2AF3",parsl:"\u2AFD",part:"\u2202",PartialD:"\u2202",Pcy:"\u041F",pcy:"\u043F",percnt:"%",period:".",permil:"\u2030",perp:"\u22A5",pertenk:"\u2031",Pfr:"\u{1D513}",pfr:"\u{1D52D}",Phi:"\u03A6",phi:"\u03C6",phiv:"\u03D5",phmmat:"\u2133",phone:"\u260E",Pi:"\u03A0",pi:"\u03C0",pitchfork:"\u22D4",piv:"\u03D6",planck:"\u210F",planckh:"\u210E",plankv:"\u210F",plusacir:"\u2A23",plusb:"\u229E",pluscir:"\u2A22",plus:"+",plusdo:"\u2214",plusdu:"\u2A25",pluse:"\u2A72",PlusMinus:"\xB1",plusmn:"\xB1",plussim:"\u2A26",plustwo:"\u2A27",pm:"\xB1",Poincareplane:"\u210C",pointint:"\u2A15",popf:"\u{1D561}",Popf:"\u2119",pound:"\xA3",prap:"\u2AB7",Pr:"\u2ABB",pr:"\u227A",prcue:"\u227C",precapprox:"\u2AB7",prec:"\u227A",preccurlyeq:"\u227C",Precedes:"\u227A",PrecedesEqual:"\u2AAF",PrecedesSlantEqual:"\u227C",PrecedesTilde:"\u227E",preceq:"\u2AAF",precnapprox:"\u2AB9",precneqq:"\u2AB5",precnsim:"\u22E8",pre:"\u2AAF",prE:"\u2AB3",precsim:"\u227E",prime:"\u2032",Prime:"\u2033",primes:"\u2119",prnap:"\u2AB9",prnE:"\u2AB5",prnsim:"\u22E8",prod:"\u220F",Product:"\u220F",profalar:"\u232E",profline:"\u2312",profsurf:"\u2313",prop:"\u221D",Proportional:"\u221D",Proportion:"\u2237",propto:"\u221D",prsim:"\u227E",prurel:"\u22B0",Pscr:"\u{1D4AB}",pscr:"\u{1D4C5}",Psi:"\u03A8",psi:"\u03C8",puncsp:"\u2008",Qfr:"\u{1D514}",qfr:"\u{1D52E}",qint:"\u2A0C",qopf:"\u{1D562}",Qopf:"\u211A",qprime:"\u2057",Qscr:"\u{1D4AC}",qscr:"\u{1D4C6}",quaternions:"\u210D",quatint:"\u2A16",quest:"?",questeq:"\u225F",quot:'"',QUOT:'"',rAarr:"\u21DB",race:"\u223D\u0331",Racute:"\u0154",racute:"\u0155",radic:"\u221A",raemptyv:"\u29B3",rang:"\u27E9",Rang:"\u27EB",rangd:"\u2992",range:"\u29A5",rangle:"\u27E9",raquo:"\xBB",rarrap:"\u2975",rarrb:"\u21E5",rarrbfs:"\u2920",rarrc:"\u2933",rarr:"\u2192",Rarr:"\u21A0",rArr:"\u21D2",rarrfs:"\u291E",rarrhk:"\u21AA",rarrlp:"\u21AC",rarrpl:"\u2945",rarrsim:"\u2974",Rarrtl:"\u2916",rarrtl:"\u21A3",rarrw:"\u219D",ratail:"\u291A",rAtail:"\u291C",ratio:"\u2236",rationals:"\u211A",rbarr:"\u290D",rBarr:"\u290F",RBarr:"\u2910",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298C",rbrksld:"\u298E",rbrkslu:"\u2990",Rcaron:"\u0158",rcaron:"\u0159",Rcedil:"\u0156",rcedil:"\u0157",rceil:"\u2309",rcub:"}",Rcy:"\u0420",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201D",rdquor:"\u201D",rdsh:"\u21B3",real:"\u211C",realine:"\u211B",realpart:"\u211C",reals:"\u211D",Re:"\u211C",rect:"\u25AD",reg:"\xAE",REG:"\xAE",ReverseElement:"\u220B",ReverseEquilibrium:"\u21CB",ReverseUpEquilibrium:"\u296F",rfisht:"\u297D",rfloor:"\u230B",rfr:"\u{1D52F}",Rfr:"\u211C",rHar:"\u2964",rhard:"\u21C1",rharu:"\u21C0",rharul:"\u296C",Rho:"\u03A1",rho:"\u03C1",rhov:"\u03F1",RightAngleBracket:"\u27E9",RightArrowBar:"\u21E5",rightarrow:"\u2192",RightArrow:"\u2192",Rightarrow:"\u21D2",RightArrowLeftArrow:"\u21C4",rightarrowtail:"\u21A3",RightCeiling:"\u2309",RightDoubleBracket:"\u27E7",RightDownTeeVector:"\u295D",RightDownVectorBar:"\u2955",RightDownVector:"\u21C2",RightFloor:"\u230B",rightharpoondown:"\u21C1",rightharpoonup:"\u21C0",rightleftarrows:"\u21C4",rightleftharpoons:"\u21CC",rightrightarrows:"\u21C9",rightsquigarrow:"\u219D",RightTeeArrow:"\u21A6",RightTee:"\u22A2",RightTeeVector:"\u295B",rightthreetimes:"\u22CC",RightTriangleBar:"\u29D0",RightTriangle:"\u22B3",RightTriangleEqual:"\u22B5",RightUpDownVector:"\u294F",RightUpTeeVector:"\u295C",RightUpVectorBar:"\u2954",RightUpVector:"\u21BE",RightVectorBar:"\u2953",RightVector:"\u21C0",ring:"\u02DA",risingdotseq:"\u2253",rlarr:"\u21C4",rlhar:"\u21CC",rlm:"\u200F",rmoustache:"\u23B1",rmoust:"\u23B1",rnmid:"\u2AEE",roang:"\u27ED",roarr:"\u21FE",robrk:"\u27E7",ropar:"\u2986",ropf:"\u{1D563}",Ropf:"\u211D",roplus:"\u2A2E",rotimes:"\u2A35",RoundImplies:"\u2970",rpar:")",rpargt:"\u2994",rppolint:"\u2A12",rrarr:"\u21C9",Rrightarrow:"\u21DB",rsaquo:"\u203A",rscr:"\u{1D4C7}",Rscr:"\u211B",rsh:"\u21B1",Rsh:"\u21B1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22CC",rtimes:"\u22CA",rtri:"\u25B9",rtrie:"\u22B5",rtrif:"\u25B8",rtriltri:"\u29CE",RuleDelayed:"\u29F4",ruluhar:"\u2968",rx:"\u211E",Sacute:"\u015A",sacute:"\u015B",sbquo:"\u201A",scap:"\u2AB8",Scaron:"\u0160",scaron:"\u0161",Sc:"\u2ABC",sc:"\u227B",sccue:"\u227D",sce:"\u2AB0",scE:"\u2AB4",Scedil:"\u015E",scedil:"\u015F",Scirc:"\u015C",scirc:"\u015D",scnap:"\u2ABA",scnE:"\u2AB6",scnsim:"\u22E9",scpolint:"\u2A13",scsim:"\u227F",Scy:"\u0421",scy:"\u0441",sdotb:"\u22A1",sdot:"\u22C5",sdote:"\u2A66",searhk:"\u2925",searr:"\u2198",seArr:"\u21D8",searrow:"\u2198",sect:"\xA7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",Sfr:"\u{1D516}",sfr:"\u{1D530}",sfrown:"\u2322",sharp:"\u266F",SHCHcy:"\u0429",shchcy:"\u0449",SHcy:"\u0428",shcy:"\u0448",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",shortmid:"\u2223",shortparallel:"\u2225",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",shy:"\xAD",Sigma:"\u03A3",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",sim:"\u223C",simdot:"\u2A6A",sime:"\u2243",simeq:"\u2243",simg:"\u2A9E",simgE:"\u2AA0",siml:"\u2A9D",simlE:"\u2A9F",simne:"\u2246",simplus:"\u2A24",simrarr:"\u2972",slarr:"\u2190",SmallCircle:"\u2218",smallsetminus:"\u2216",smashp:"\u2A33",smeparsl:"\u29E4",smid:"\u2223",smile:"\u2323",smt:"\u2AAA",smte:"\u2AAC",smtes:"\u2AAC\uFE00",SOFTcy:"\u042C",softcy:"\u044C",solbar:"\u233F",solb:"\u29C4",sol:"/",Sopf:"\u{1D54A}",sopf:"\u{1D564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\uFE00",sqcup:"\u2294",sqcups:"\u2294\uFE00",Sqrt:"\u221A",sqsub:"\u228F",sqsube:"\u2291",sqsubset:"\u228F",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",square:"\u25A1",Square:"\u25A1",SquareIntersection:"\u2293",SquareSubset:"\u228F",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",squarf:"\u25AA",squ:"\u25A1",squf:"\u25AA",srarr:"\u2192",Sscr:"\u{1D4AE}",sscr:"\u{1D4C8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22C6",Star:"\u22C6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03F5",straightphi:"\u03D5",strns:"\xAF",sub:"\u2282",Sub:"\u22D0",subdot:"\u2ABD",subE:"\u2AC5",sube:"\u2286",subedot:"\u2AC3",submult:"\u2AC1",subnE:"\u2ACB",subne:"\u228A",subplus:"\u2ABF",subrarr:"\u2979",subset:"\u2282",Subset:"\u22D0",subseteq:"\u2286",subseteqq:"\u2AC5",SubsetEqual:"\u2286",subsetneq:"\u228A",subsetneqq:"\u2ACB",subsim:"\u2AC7",subsub:"\u2AD5",subsup:"\u2AD3",succapprox:"\u2AB8",succ:"\u227B",succcurlyeq:"\u227D",Succeeds:"\u227B",SucceedsEqual:"\u2AB0",SucceedsSlantEqual:"\u227D",SucceedsTilde:"\u227F",succeq:"\u2AB0",succnapprox:"\u2ABA",succneqq:"\u2AB6",succnsim:"\u22E9",succsim:"\u227F",SuchThat:"\u220B",sum:"\u2211",Sum:"\u2211",sung:"\u266A",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",sup:"\u2283",Sup:"\u22D1",supdot:"\u2ABE",supdsub:"\u2AD8",supE:"\u2AC6",supe:"\u2287",supedot:"\u2AC4",Superset:"\u2283",SupersetEqual:"\u2287",suphsol:"\u27C9",suphsub:"\u2AD7",suplarr:"\u297B",supmult:"\u2AC2",supnE:"\u2ACC",supne:"\u228B",supplus:"\u2AC0",supset:"\u2283",Supset:"\u22D1",supseteq:"\u2287",supseteqq:"\u2AC6",supsetneq:"\u228B",supsetneqq:"\u2ACC",supsim:"\u2AC8",supsub:"\u2AD4",supsup:"\u2AD6",swarhk:"\u2926",swarr:"\u2199",swArr:"\u21D9",swarrow:"\u2199",swnwar:"\u292A",szlig:"\xDF",Tab:" ",target:"\u2316",Tau:"\u03A4",tau:"\u03C4",tbrk:"\u23B4",Tcaron:"\u0164",tcaron:"\u0165",Tcedil:"\u0162",tcedil:"\u0163",Tcy:"\u0422",tcy:"\u0442",tdot:"\u20DB",telrec:"\u2315",Tfr:"\u{1D517}",tfr:"\u{1D531}",there4:"\u2234",therefore:"\u2234",Therefore:"\u2234",Theta:"\u0398",theta:"\u03B8",thetasym:"\u03D1",thetav:"\u03D1",thickapprox:"\u2248",thicksim:"\u223C",ThickSpace:"\u205F\u200A",ThinSpace:"\u2009",thinsp:"\u2009",thkap:"\u2248",thksim:"\u223C",THORN:"\xDE",thorn:"\xFE",tilde:"\u02DC",Tilde:"\u223C",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",timesbar:"\u2A31",timesb:"\u22A0",times:"\xD7",timesd:"\u2A30",tint:"\u222D",toea:"\u2928",topbot:"\u2336",topcir:"\u2AF1",top:"\u22A4",Topf:"\u{1D54B}",topf:"\u{1D565}",topfork:"\u2ADA",tosa:"\u2929",tprime:"\u2034",trade:"\u2122",TRADE:"\u2122",triangle:"\u25B5",triangledown:"\u25BF",triangleleft:"\u25C3",trianglelefteq:"\u22B4",triangleq:"\u225C",triangleright:"\u25B9",trianglerighteq:"\u22B5",tridot:"\u25EC",trie:"\u225C",triminus:"\u2A3A",TripleDot:"\u20DB",triplus:"\u2A39",trisb:"\u29CD",tritime:"\u2A3B",trpezium:"\u23E2",Tscr:"\u{1D4AF}",tscr:"\u{1D4C9}",TScy:"\u0426",tscy:"\u0446",TSHcy:"\u040B",tshcy:"\u045B",Tstrok:"\u0166",tstrok:"\u0167",twixt:"\u226C",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",Uacute:"\xDA",uacute:"\xFA",uarr:"\u2191",Uarr:"\u219F",uArr:"\u21D1",Uarrocir:"\u2949",Ubrcy:"\u040E",ubrcy:"\u045E",Ubreve:"\u016C",ubreve:"\u016D",Ucirc:"\xDB",ucirc:"\xFB",Ucy:"\u0423",ucy:"\u0443",udarr:"\u21C5",Udblac:"\u0170",udblac:"\u0171",udhar:"\u296E",ufisht:"\u297E",Ufr:"\u{1D518}",ufr:"\u{1D532}",Ugrave:"\xD9",ugrave:"\xF9",uHar:"\u2963",uharl:"\u21BF",uharr:"\u21BE",uhblk:"\u2580",ulcorn:"\u231C",ulcorner:"\u231C",ulcrop:"\u230F",ultri:"\u25F8",Umacr:"\u016A",umacr:"\u016B",uml:"\xA8",UnderBar:"_",UnderBrace:"\u23DF",UnderBracket:"\u23B5",UnderParenthesis:"\u23DD",Union:"\u22C3",UnionPlus:"\u228E",Uogon:"\u0172",uogon:"\u0173",Uopf:"\u{1D54C}",uopf:"\u{1D566}",UpArrowBar:"\u2912",uparrow:"\u2191",UpArrow:"\u2191",Uparrow:"\u21D1",UpArrowDownArrow:"\u21C5",updownarrow:"\u2195",UpDownArrow:"\u2195",Updownarrow:"\u21D5",UpEquilibrium:"\u296E",upharpoonleft:"\u21BF",upharpoonright:"\u21BE",uplus:"\u228E",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",upsi:"\u03C5",Upsi:"\u03D2",upsih:"\u03D2",Upsilon:"\u03A5",upsilon:"\u03C5",UpTeeArrow:"\u21A5",UpTee:"\u22A5",upuparrows:"\u21C8",urcorn:"\u231D",urcorner:"\u231D",urcrop:"\u230E",Uring:"\u016E",uring:"\u016F",urtri:"\u25F9",Uscr:"\u{1D4B0}",uscr:"\u{1D4CA}",utdot:"\u22F0",Utilde:"\u0168",utilde:"\u0169",utri:"\u25B5",utrif:"\u25B4",uuarr:"\u21C8",Uuml:"\xDC",uuml:"\xFC",uwangle:"\u29A7",vangrt:"\u299C",varepsilon:"\u03F5",varkappa:"\u03F0",varnothing:"\u2205",varphi:"\u03D5",varpi:"\u03D6",varpropto:"\u221D",varr:"\u2195",vArr:"\u21D5",varrho:"\u03F1",varsigma:"\u03C2",varsubsetneq:"\u228A\uFE00",varsubsetneqq:"\u2ACB\uFE00",varsupsetneq:"\u228B\uFE00",varsupsetneqq:"\u2ACC\uFE00",vartheta:"\u03D1",vartriangleleft:"\u22B2",vartriangleright:"\u22B3",vBar:"\u2AE8",Vbar:"\u2AEB",vBarv:"\u2AE9",Vcy:"\u0412",vcy:"\u0432",vdash:"\u22A2",vDash:"\u22A8",Vdash:"\u22A9",VDash:"\u22AB",Vdashl:"\u2AE6",veebar:"\u22BB",vee:"\u2228",Vee:"\u22C1",veeeq:"\u225A",vellip:"\u22EE",verbar:"|",Verbar:"\u2016",vert:"|",Vert:"\u2016",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200A",Vfr:"\u{1D519}",vfr:"\u{1D533}",vltri:"\u22B2",vnsub:"\u2282\u20D2",vnsup:"\u2283\u20D2",Vopf:"\u{1D54D}",vopf:"\u{1D567}",vprop:"\u221D",vrtri:"\u22B3",Vscr:"\u{1D4B1}",vscr:"\u{1D4CB}",vsubnE:"\u2ACB\uFE00",vsubne:"\u228A\uFE00",vsupnE:"\u2ACC\uFE00",vsupne:"\u228B\uFE00",Vvdash:"\u22AA",vzigzag:"\u299A",Wcirc:"\u0174",wcirc:"\u0175",wedbar:"\u2A5F",wedge:"\u2227",Wedge:"\u22C0",wedgeq:"\u2259",weierp:"\u2118",Wfr:"\u{1D51A}",wfr:"\u{1D534}",Wopf:"\u{1D54E}",wopf:"\u{1D568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",Wscr:"\u{1D4B2}",wscr:"\u{1D4CC}",xcap:"\u22C2",xcirc:"\u25EF",xcup:"\u22C3",xdtri:"\u25BD",Xfr:"\u{1D51B}",xfr:"\u{1D535}",xharr:"\u27F7",xhArr:"\u27FA",Xi:"\u039E",xi:"\u03BE",xlarr:"\u27F5",xlArr:"\u27F8",xmap:"\u27FC",xnis:"\u22FB",xodot:"\u2A00",Xopf:"\u{1D54F}",xopf:"\u{1D569}",xoplus:"\u2A01",xotime:"\u2A02",xrarr:"\u27F6",xrArr:"\u27F9",Xscr:"\u{1D4B3}",xscr:"\u{1D4CD}",xsqcup:"\u2A06",xuplus:"\u2A04",xutri:"\u25B3",xvee:"\u22C1",xwedge:"\u22C0",Yacute:"\xDD",yacute:"\xFD",YAcy:"\u042F",yacy:"\u044F",Ycirc:"\u0176",ycirc:"\u0177",Ycy:"\u042B",ycy:"\u044B",yen:"\xA5",Yfr:"\u{1D51C}",yfr:"\u{1D536}",YIcy:"\u0407",yicy:"\u0457",Yopf:"\u{1D550}",yopf:"\u{1D56A}",Yscr:"\u{1D4B4}",yscr:"\u{1D4CE}",YUcy:"\u042E",yucy:"\u044E",yuml:"\xFF",Yuml:"\u0178",Zacute:"\u0179",zacute:"\u017A",Zcaron:"\u017D",zcaron:"\u017E",Zcy:"\u0417",zcy:"\u0437",Zdot:"\u017B",zdot:"\u017C",zeetrf:"\u2128",ZeroWidthSpace:"\u200B",Zeta:"\u0396",zeta:"\u03B6",zfr:"\u{1D537}",Zfr:"\u2128",ZHcy:"\u0416",zhcy:"\u0436",zigrarr:"\u21DD",zopf:"\u{1D56B}",Zopf:"\u2124",Zscr:"\u{1D4B5}",zscr:"\u{1D4CF}",zwj:"\u200D",zwnj:"\u200C"}});var Up=Ne((s1,Ev)=>{Ev.exports={Aacute:"\xC1",aacute:"\xE1",Acirc:"\xC2",acirc:"\xE2",acute:"\xB4",AElig:"\xC6",aelig:"\xE6",Agrave:"\xC0",agrave:"\xE0",amp:"&",AMP:"&",Aring:"\xC5",aring:"\xE5",Atilde:"\xC3",atilde:"\xE3",Auml:"\xC4",auml:"\xE4",brvbar:"\xA6",Ccedil:"\xC7",ccedil:"\xE7",cedil:"\xB8",cent:"\xA2",copy:"\xA9",COPY:"\xA9",curren:"\xA4",deg:"\xB0",divide:"\xF7",Eacute:"\xC9",eacute:"\xE9",Ecirc:"\xCA",ecirc:"\xEA",Egrave:"\xC8",egrave:"\xE8",ETH:"\xD0",eth:"\xF0",Euml:"\xCB",euml:"\xEB",frac12:"\xBD",frac14:"\xBC",frac34:"\xBE",gt:">",GT:">",Iacute:"\xCD",iacute:"\xED",Icirc:"\xCE",icirc:"\xEE",iexcl:"\xA1",Igrave:"\xCC",igrave:"\xEC",iquest:"\xBF",Iuml:"\xCF",iuml:"\xEF",laquo:"\xAB",lt:"<",LT:"<",macr:"\xAF",micro:"\xB5",middot:"\xB7",nbsp:"\xA0",not:"\xAC",Ntilde:"\xD1",ntilde:"\xF1",Oacute:"\xD3",oacute:"\xF3",Ocirc:"\xD4",ocirc:"\xF4",Ograve:"\xD2",ograve:"\xF2",ordf:"\xAA",ordm:"\xBA",Oslash:"\xD8",oslash:"\xF8",Otilde:"\xD5",otilde:"\xF5",Ouml:"\xD6",ouml:"\xF6",para:"\xB6",plusmn:"\xB1",pound:"\xA3",quot:'"',QUOT:'"',raquo:"\xBB",reg:"\xAE",REG:"\xAE",sect:"\xA7",shy:"\xAD",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",szlig:"\xDF",THORN:"\xDE",thorn:"\xFE",times:"\xD7",Uacute:"\xDA",uacute:"\xFA",Ucirc:"\xDB",ucirc:"\xFB",Ugrave:"\xD9",ugrave:"\xF9",uml:"\xA8",Uuml:"\xDC",uuml:"\xFC",Yacute:"\xDD",yacute:"\xFD",yen:"\xA5",yuml:"\xFF"}});var lu=Ne((a1,Sv)=>{Sv.exports={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'}});var Rp=Ne((u1,_v)=>{_v.exports={"0":65533,"128":8364,"130":8218,"131":402,"132":8222,"133":8230,"134":8224,"135":8225,"136":710,"137":8240,"138":352,"139":8249,"140":338,"142":381,"145":8216,"146":8217,"147":8220,"148":8221,"149":8226,"150":8211,"151":8212,"152":732,"153":8482,"154":353,"155":8250,"156":339,"158":382,"159":376}});var bp=Ne(Oo=>{"use strict";var wv=Oo&&Oo.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Oo,"__esModule",{value:!0});var Fp=wv(Rp()),Tv=String.fromCodePoint||function(e){var t="";return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|e&1023),t+=String.fromCharCode(e),t};function Cv(e){return e>=55296&&e<=57343||e>1114111?"\uFFFD":(e in Fp.default&&(e=Fp.default[e]),Tv(e))}Oo.default=Cv});var su=Ne(It=>{"use strict";var mi=It&&It.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(It,"__esModule",{value:!0});It.decodeHTML=It.decodeHTMLStrict=It.decodeXML=void 0;var iu=mi(ou()),kv=mi(Up()),Lv=mi(lu()),zp=mi(bp()),Nv=/&(?:[a-zA-Z0-9]+|#[xX][\da-fA-F]+|#\d+);/g;It.decodeXML=jp(Lv.default);It.decodeHTMLStrict=jp(iu.default);function jp(e){var t=Bp(e);return function(n){return String(n).replace(Nv,t)}}var Hp=function(e,t){return e{"use strict";var qp=$e&&$e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty($e,"__esModule",{value:!0});$e.escapeUTF8=$e.escape=$e.encodeNonAsciiHTML=$e.encodeHTML=$e.encodeXML=void 0;var Av=qp(lu()),Wp=Gp(Av.default),Vp=Xp(Wp);$e.encodeXML=Yp(Wp);var Mv=qp(ou()),au=Gp(Mv.default),xv=Xp(au);$e.encodeHTML=Dv(au,xv);$e.encodeNonAsciiHTML=Yp(au);function Gp(e){return Object.keys(e).sort().reduce(function(t,n){return t[e[n]]="&"+n+";",t},{})}function Xp(e){for(var t=[],n=[],r=0,o=Object.keys(e);r1?Ov(e):e.charCodeAt(0)).toString(16).toUpperCase()+";"}function Dv(e,t){return function(n){return n.replace(t,function(r){return e[r]}).replace($p,gi)}}var Kp=new RegExp(Vp.source+"|"+$p.source,"g");function Pv(e){return e.replace(Kp,gi)}$e.escape=Pv;function Iv(e){return e.replace(Vp,gi)}$e.escapeUTF8=Iv;function Yp(e){return function(t){return t.replace(Kp,function(n){return e[n]||gi(n)})}}});var Zp=Ne(F=>{"use strict";Object.defineProperty(F,"__esModule",{value:!0});F.decodeXMLStrict=F.decodeHTML5Strict=F.decodeHTML4Strict=F.decodeHTML5=F.decodeHTML4=F.decodeHTMLStrict=F.decodeHTML=F.decodeXML=F.encodeHTML5=F.encodeHTML4=F.escapeUTF8=F.escape=F.encodeNonAsciiHTML=F.encodeHTML=F.encodeXML=F.encode=F.decodeStrict=F.decode=void 0;var hi=su(),Qp=uu();function Uv(e,t){return(!t||t<=0?hi.decodeXML:hi.decodeHTML)(e)}F.decode=Uv;function Rv(e,t){return(!t||t<=0?hi.decodeXML:hi.decodeHTMLStrict)(e)}F.decodeStrict=Rv;function Fv(e,t){return(!t||t<=0?Qp.encodeXML:Qp.encodeHTML)(e)}F.encode=Fv;var qn=uu();Object.defineProperty(F,"encodeXML",{enumerable:!0,get:function(){return qn.encodeXML}});Object.defineProperty(F,"encodeHTML",{enumerable:!0,get:function(){return qn.encodeHTML}});Object.defineProperty(F,"encodeNonAsciiHTML",{enumerable:!0,get:function(){return qn.encodeNonAsciiHTML}});Object.defineProperty(F,"escape",{enumerable:!0,get:function(){return qn.escape}});Object.defineProperty(F,"escapeUTF8",{enumerable:!0,get:function(){return qn.escapeUTF8}});Object.defineProperty(F,"encodeHTML4",{enumerable:!0,get:function(){return qn.encodeHTML}});Object.defineProperty(F,"encodeHTML5",{enumerable:!0,get:function(){return qn.encodeHTML}});var _n=su();Object.defineProperty(F,"decodeXML",{enumerable:!0,get:function(){return _n.decodeXML}});Object.defineProperty(F,"decodeHTML",{enumerable:!0,get:function(){return _n.decodeHTML}});Object.defineProperty(F,"decodeHTMLStrict",{enumerable:!0,get:function(){return _n.decodeHTMLStrict}});Object.defineProperty(F,"decodeHTML4",{enumerable:!0,get:function(){return _n.decodeHTML}});Object.defineProperty(F,"decodeHTML5",{enumerable:!0,get:function(){return _n.decodeHTML}});Object.defineProperty(F,"decodeHTML4Strict",{enumerable:!0,get:function(){return _n.decodeHTMLStrict}});Object.defineProperty(F,"decodeHTML5Strict",{enumerable:!0,get:function(){return _n.decodeHTMLStrict}});Object.defineProperty(F,"decodeXMLStrict",{enumerable:!0,get:function(){return _n.decodeXML}})});var um=Ne((m1,am)=>{"use strict";function bv(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Jp(e,t){for(var n=0;n=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(u){throw u},f:o}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var l=!0,i=!1,s;return{s:function(){n=n.call(e)},n:function(){var u=n.next();return l=u.done,u},e:function(u){i=!0,s=u},f:function(){try{!l&&n.return!=null&&n.return()}finally{if(i)throw s}}}}function Hv(e,t){if(e){if(typeof e=="string")return em(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return em(e,t)}}function em(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0?e*40+55:0,i=t>0?t*40+55:0,s=n>0?n*40+55:0;r[o]=Wv([l,i,s])}function im(e){for(var t=e.toString(16);t.length<2;)t="0"+t;return t}function Wv(e){var t=[],n=lm(e),r;try{for(n.s();!(r=n.n()).done;){var o=r.value;t.push(im(o))}}catch(l){n.e(l)}finally{n.f()}return"#"+t.join("")}function nm(e,t,n,r){var o;return t==="text"?o=$v(n,r):t==="display"?o=Gv(e,n,r):t==="xterm256Foreground"?o=Ei(e,r.colors[n]):t==="xterm256Background"?o=Si(e,r.colors[n]):t==="rgb"&&(o=Vv(e,n)),o}function Vv(e,t){t=t.substring(2).slice(0,-1);var n=+t.substr(0,2),r=t.substring(5).split(";"),o=r.map(function(l){return("0"+Number(l).toString(16)).substr(-2)}).join("");return yi(e,(n===38?"color:#":"background-color:#")+o)}function Gv(e,t,n){t=parseInt(t,10);var r={"-1":function(){return"
"},0:function(){return e.length&&sm(e)},1:function(){return wn(e,"b")},3:function(){return wn(e,"i")},4:function(){return wn(e,"u")},8:function(){return yi(e,"display:none")},9:function(){return wn(e,"strike")},22:function(){return yi(e,"font-weight:normal;text-decoration:none;font-style:normal")},23:function(){return om(e,"i")},24:function(){return om(e,"u")},39:function(){return Ei(e,n.fg)},49:function(){return Si(e,n.bg)},53:function(){return yi(e,"text-decoration:overline")}},o;return r[t]?o=r[t]():4"}).join("")}function vi(e,t){for(var n=[],r=e;r<=t;r++)n.push(r);return n}function Xv(e){return function(t){return(e===null||t.category!==e)&&e!=="all"}}function rm(e){e=parseInt(e,10);var t=null;return e===0?t="all":e===1?t="bold":2")}function yi(e,t){return wn(e,"span",t)}function Ei(e,t){return wn(e,"span","color:"+t)}function Si(e,t){return wn(e,"span","background-color:"+t)}function om(e,t){var n;if(e.slice(-1)[0]===t&&(n=e.pop()),n)return""}function Kv(e,t,n){var r=!1,o=3;function l(){return""}function i(_,L){return n("xterm256Foreground",L),""}function s(_,L){return n("xterm256Background",L),""}function a(_){return t.newline?n("display",-1):n("text",_),""}function u(_,L){r=!0,L.trim().length===0&&(L="0"),L=L.trimRight(";").split(";");var x=lm(L),D;try{for(x.s();!(D=x.n()).done;){var G=D.value;n("display",G)}}catch(U){x.e(U)}finally{x.f()}return""}function g(_){return n("text",_),""}function h(_){return n("rgb",_),""}var v=[{pattern:/^\x08+/,sub:l},{pattern:/^\x1b\[[012]?K/,sub:l},{pattern:/^\x1b\[\(B/,sub:l},{pattern:/^\x1b\[[34]8;2;\d+;\d+;\d+m/,sub:h},{pattern:/^\x1b\[38;5;(\d+)m/,sub:i},{pattern:/^\x1b\[48;5;(\d+)m/,sub:s},{pattern:/^\n/,sub:a},{pattern:/^\r+\n/,sub:a},{pattern:/^\r/,sub:a},{pattern:/^\x1b\[((?:\d{1,3};?)+|)m/,sub:u},{pattern:/^\x1b\[\d?J/,sub:l},{pattern:/^\x1b\[\d{0,3};\d{0,3}f/,sub:l},{pattern:/^\x1b\[?[\d;]{0,3}/,sub:l},{pattern:/^(([^\x1b\x08\r\n])+)/,sub:g}];function E(_,L){L>o&&r||(r=!1,e=e.replace(_.pattern,_.sub))}var w=[],k=e,M=k.length;e:for(;M>0;){for(var f=0,c=0,m=v.length;c{let l=["system","light","dark"],s=(l.indexOf(e)+1)%l.length;t(l[s])},r=()=>{switch(e){case"light":return Ee.default.createElement("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},Ee.default.createElement("circle",{cx:"12",cy:"12",r:"5"}),Ee.default.createElement("line",{x1:"12",y1:"1",x2:"12",y2:"3"}),Ee.default.createElement("line",{x1:"12",y1:"21",x2:"12",y2:"23"}),Ee.default.createElement("line",{x1:"4.22",y1:"4.22",x2:"5.64",y2:"5.64"}),Ee.default.createElement("line",{x1:"18.36",y1:"18.36",x2:"19.78",y2:"19.78"}),Ee.default.createElement("line",{x1:"1",y1:"12",x2:"3",y2:"12"}),Ee.default.createElement("line",{x1:"21",y1:"12",x2:"23",y2:"12"}),Ee.default.createElement("line",{x1:"4.22",y1:"19.78",x2:"5.64",y2:"18.36"}),Ee.default.createElement("line",{x1:"18.36",y1:"5.64",x2:"19.78",y2:"4.22"}));case"dark":return Ee.default.createElement("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},Ee.default.createElement("path",{d:"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"}));default:return Ee.default.createElement("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},Ee.default.createElement("rect",{x:"2",y:"3",width:"20",height:"14",rx:"2",ry:"2"}),Ee.default.createElement("line",{x1:"8",y1:"21",x2:"16",y2:"21"}),Ee.default.createElement("line",{x1:"12",y1:"17",x2:"12",y2:"21"}))}},o=()=>{switch(e){case"light":return"Theme: Light (click for Dark)";case"dark":return"Theme: Dark (click for System)";default:return"Theme: System (click for Light)"}};return Ee.default.createElement("button",{className:"theme-toggle-btn",onClick:n,title:o(),"aria-label":o()},r())}var Dt=J(ee(),1);var yn=J(ee(),1);function Cp(e,t){let[n,r]=(0,yn.useState)(null),[o,l]=(0,yn.useState)(!0),[i,s]=(0,yn.useState)(null),a=(0,yn.useCallback)(async()=>{try{l(!0),s(null);let u=await fetch(`https://api.github.com/repos/${e}/${t}`);if(!u.ok)throw new Error(`GitHub API error: ${u.status}`);let g=await u.json();r(g.stargazers_count)}catch(u){console.error("Failed to fetch GitHub stars:",u),s(u instanceof Error?u:new Error("Unknown error"))}finally{l(!1)}},[e,t]);return(0,yn.useEffect)(()=>{a()},[a]),{stars:n,isLoading:o,error:i}}function kp(e){return e<1e3?e.toString():e<1e6?`${(e/1e3).toFixed(1)}k`:`${(e/1e6).toFixed(1)}M`}function Lp({username:e,repo:t,className:n=""}){let{stars:r,isLoading:o,error:l}=Cp(e,t),i=`https://github.com/${e}/${t}`;return l?Dt.default.createElement("a",{href:i,target:"_blank",rel:"noopener noreferrer",title:"GitHub",className:"icon-link"},Dt.default.createElement("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"currentColor"},Dt.default.createElement("path",{d:"M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"}))):Dt.default.createElement("a",{href:i,target:"_blank",rel:"noopener noreferrer",className:`github-stars-btn ${n}`,title:`Star us on GitHub${r!==null?` (${r.toLocaleString()} stars)`:""}`},Dt.default.createElement("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"currentColor",style:{marginRight:"6px"}},Dt.default.createElement("path",{d:"M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"})),Dt.default.createElement("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"currentColor",style:{marginRight:"4px"}},Dt.default.createElement("path",{d:"M12 .587l3.668 7.431 8.2 1.192-5.934 5.787 1.4 8.166L12 18.896l-7.334 3.867 1.4-8.166-5.934-5.787 8.2-1.192z"})),Dt.default.createElement("span",{className:o?"stars-loading":"stars-count"},o?"...":r!==null?kp(r):"\u2014"))}var En=J(ee(),1);function Np(e){let t=(0,En.useRef)(null),n=(0,En.useRef)(null),r=(0,En.useRef)(null),o=(0,En.useRef)(0),l=(0,En.useRef)(null);(0,En.useEffect)(()=>{if(n.current||(n.current=document.createElement("canvas"),n.current.width=32,n.current.height=32),r.current||(r.current=new Image,r.current.src="claude-mem-logomark.webp"),!l.current){let h=document.querySelector('link[rel="icon"]');h&&(l.current=h.href)}let i=n.current,s=i.getContext("2d"),a=r.current;if(!s)return;let u=h=>{let v=document.querySelector('link[rel="icon"]');v||(v=document.createElement("link"),v.rel="icon",document.head.appendChild(v)),v.href=h},g=()=>{if(!a.complete){t.current=requestAnimationFrame(g);return}o.current+=2*Math.PI/90,s.clearRect(0,0,32,32),s.save(),s.translate(16,16),s.rotate(o.current),s.drawImage(a,-16,-16,32,32),s.restore(),u(i.toDataURL("image/png")),t.current=requestAnimationFrame(g)};return e?(o.current=0,g()):(t.current&&(cancelAnimationFrame(t.current),t.current=null),l.current&&u(l.current)),()=>{t.current&&(cancelAnimationFrame(t.current),t.current=null)}},[e])}function hv(e){return e==="all"?"All":e==="claude"?"Claude":e==="codex"?"Codex":e.charAt(0).toUpperCase()+e.slice(1)}function vv(e){let t=["all","claude","codex",...e];return Array.from(new Set(t.filter(Boolean)))}function Ap({isConnected:e,projects:t,sources:n,currentFilter:r,currentSource:o,onFilterChange:l,onSourceChange:i,isProcessing:s,queueDepth:a,themePreference:u,onThemeChange:g,onContextPreviewToggle:h}){Np(s);let v=vv(n);return q.default.createElement("div",{className:"header"},q.default.createElement("div",{className:"header-main"},q.default.createElement("h1",null,q.default.createElement("div",{style:{position:"relative",display:"inline-block"}},q.default.createElement("img",{src:"claude-mem-logomark.webp",alt:"",className:`logomark ${s?"spinning":""}`}),a>0&&q.default.createElement("div",{className:"queue-bubble"},a)),q.default.createElement("span",{className:"logo-text"},"claude-mem")),q.default.createElement("div",{className:"source-tabs",role:"tablist","aria-label":"Context source tabs"},v.map(E=>q.default.createElement("button",{key:E,type:"button",className:`source-tab ${o===E?"active":""}`,onClick:()=>i(E),"aria-pressed":o===E},hv(E))))),q.default.createElement("div",{className:"status"},q.default.createElement("a",{href:"https://docs.claude-mem.ai",target:"_blank",rel:"noopener noreferrer",className:"icon-link",title:"Documentation"},q.default.createElement("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},q.default.createElement("path",{d:"M4 19.5A2.5 2.5 0 0 1 6.5 17H20"}),q.default.createElement("path",{d:"M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z"}))),q.default.createElement("a",{href:"https://x.com/Claude_Memory",target:"_blank",rel:"noopener noreferrer",className:"icon-link",title:"Follow us on X"},q.default.createElement("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"currentColor"},q.default.createElement("path",{d:"M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"}))),q.default.createElement("a",{href:"https://discord.gg/J4wttp9vDu",target:"_blank",rel:"noopener noreferrer",className:"icon-link",title:"Join our Discord community"},q.default.createElement("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"currentColor"},q.default.createElement("path",{d:"M20.317 4.37a19.791 19.791 0 0 0-4.885-1.515a.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 0 0-5.487 0a12.64 12.64 0 0 0-.617-1.25a.077.077 0 0 0-.079-.037A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057a19.9 19.9 0 0 0 5.993 3.03a.078.078 0 0 0 .084-.028a14.09 14.09 0 0 0 1.226-1.994a.076.076 0 0 0-.041-.106a13.107 13.107 0 0 1-1.872-.892a.077.077 0 0 1-.008-.128a10.2 10.2 0 0 0 .372-.292a.074.074 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 0 1 .078.01c.12.098.246.198.373.292a.077.077 0 0 1-.006.127a12.299 12.299 0 0 1-1.873.892a.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028a19.839 19.839 0 0 0 6.002-3.03a.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419c0-1.333.956-2.419 2.157-2.419c1.21 0 2.176 1.096 2.157 2.42c0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419c0-1.333.955-2.419 2.157-2.419c1.21 0 2.176 1.096 2.157 2.42c0 1.333-.946 2.418-2.157 2.418z"}))),q.default.createElement(Lp,{username:"thedotmack",repo:"claude-mem"}),q.default.createElement("select",{value:r,onChange:E=>l(E.target.value)},q.default.createElement("option",{value:""},"All Projects"),t.map(E=>q.default.createElement("option",{key:E,value:E},E))),q.default.createElement(Tp,{preference:u,onThemeChange:g}),q.default.createElement("button",{className:"settings-btn",onClick:h,title:"Settings"},q.default.createElement("svg",{className:"settings-icon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},q.default.createElement("path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z"}),q.default.createElement("circle",{cx:"12",cy:"12",r:"3"})))))}var ae=J(ee(),1);var H=J(ee(),1);function Ar(e){return new Date(e).toLocaleString()}function Mp(e){let t=["/Scripts/","/src/","/plugin/","/docs/"];for(let o of t){let l=e.indexOf(o);if(l!==-1)return e.substring(l+1)}let n=e.indexOf("claude-mem/");if(n!==-1)return e.substring(n+11);let r=e.split("/");return r.length>3?r.slice(-3).join("/"):e}function xp({observation:e}){let[t,n]=(0,H.useState)(!1),[r,o]=(0,H.useState)(!1),l=Ar(e.created_at_epoch),i=e.facts?JSON.parse(e.facts):[],s=e.concepts?JSON.parse(e.concepts):[],a=e.files_read?JSON.parse(e.files_read).map(Mp):[],u=e.files_modified?JSON.parse(e.files_modified).map(Mp):[],g=i.length>0||s.length>0||a.length>0||u.length>0;return H.default.createElement("div",{className:"card"},H.default.createElement("div",{className:"card-header"},H.default.createElement("div",{className:"card-header-left"},H.default.createElement("span",{className:`card-type type-${e.type}`},e.type),H.default.createElement("span",{className:`card-source source-${e.platform_source||"claude"}`},e.platform_source||"claude"),H.default.createElement("span",{className:"card-project"},e.project)),H.default.createElement("div",{className:"view-mode-toggles"},g&&H.default.createElement("button",{className:`view-mode-toggle ${t?"active":""}`,onClick:()=>{n(!t),t||o(!1)}},H.default.createElement("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},H.default.createElement("polyline",{points:"9 11 12 14 22 4"}),H.default.createElement("path",{d:"M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11"})),H.default.createElement("span",null,"facts")),e.narrative&&H.default.createElement("button",{className:`view-mode-toggle ${r?"active":""}`,onClick:()=>{o(!r),r||n(!1)}},H.default.createElement("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},H.default.createElement("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"}),H.default.createElement("polyline",{points:"14 2 14 8 20 8"}),H.default.createElement("line",{x1:"16",y1:"13",x2:"8",y2:"13"}),H.default.createElement("line",{x1:"16",y1:"17",x2:"8",y2:"17"})),H.default.createElement("span",null,"narrative")))),H.default.createElement("div",{className:"card-title"},e.title||"Untitled"),H.default.createElement("div",{className:"view-mode-content"},!t&&!r&&e.subtitle&&H.default.createElement("div",{className:"card-subtitle"},e.subtitle),t&&i.length>0&&H.default.createElement("ul",{className:"facts-list"},i.map((h,v)=>H.default.createElement("li",{key:v},h))),r&&e.narrative&&H.default.createElement("div",{className:"narrative"},e.narrative)),H.default.createElement("div",{className:"card-meta"},H.default.createElement("span",{className:"meta-date"},"#",e.id," \u2022 ",l),t&&(s.length>0||a.length>0||u.length>0)&&H.default.createElement("div",{style:{display:"flex",flexWrap:"wrap",gap:"8px",alignItems:"center"}},s.map((h,v)=>H.default.createElement("span",{key:v,style:{padding:"2px 8px",background:"var(--color-type-badge-bg)",color:"var(--color-type-badge-text)",borderRadius:"3px",fontWeight:"500",fontSize:"10px"}},h)),a.length>0&&H.default.createElement("span",{className:"meta-files"},H.default.createElement("span",{className:"file-label"},"read:")," ",a.join(", ")),u.length>0&&H.default.createElement("span",{className:"meta-files"},H.default.createElement("span",{className:"file-label"},"modified:")," ",u.join(", ")))))}var Se=J(ee(),1);function Op({summary:e}){let t=Ar(e.created_at_epoch),n=[{key:"investigated",label:"Investigated",content:e.investigated,icon:"/icon-thick-investigated.svg"},{key:"learned",label:"Learned",content:e.learned,icon:"/icon-thick-learned.svg"},{key:"completed",label:"Completed",content:e.completed,icon:"/icon-thick-completed.svg"},{key:"next_steps",label:"Next Steps",content:e.next_steps,icon:"/icon-thick-next-steps.svg"}].filter(r=>r.content);return Se.default.createElement("article",{className:"card summary-card"},Se.default.createElement("header",{className:"summary-card-header"},Se.default.createElement("div",{className:"summary-badge-row"},Se.default.createElement("span",{className:"card-type summary-badge"},"Session Summary"),Se.default.createElement("span",{className:`card-source source-${e.platform_source||"claude"}`},e.platform_source||"claude"),Se.default.createElement("span",{className:"summary-project-badge"},e.project)),e.request&&Se.default.createElement("h2",{className:"summary-title"},e.request)),Se.default.createElement("div",{className:"summary-sections"},n.map((r,o)=>Se.default.createElement("section",{key:r.key,className:"summary-section",style:{animationDelay:`${o*50}ms`}},Se.default.createElement("div",{className:"summary-section-header"},Se.default.createElement("img",{src:r.icon,alt:r.label,className:`summary-section-icon summary-section-icon--${r.key}`}),Se.default.createElement("h3",{className:"summary-section-label"},r.label)),Se.default.createElement("div",{className:"summary-section-content"},r.content)))),Se.default.createElement("footer",{className:"summary-card-footer"},Se.default.createElement("span",{className:"summary-meta-id"},"Session #",e.id),Se.default.createElement("span",{className:"summary-meta-divider"},"\u2022"),Se.default.createElement("time",{className:"summary-meta-date",dateTime:new Date(e.created_at_epoch).toISOString()},t)))}var Pt=J(ee(),1);function Dp({prompt:e}){let t=Ar(e.created_at_epoch);return Pt.default.createElement("div",{className:"card prompt-card"},Pt.default.createElement("div",{className:"card-header"},Pt.default.createElement("div",{className:"card-header-left"},Pt.default.createElement("span",{className:"card-type"},"Prompt"),Pt.default.createElement("span",{className:`card-source source-${e.platform_source||"claude"}`},e.platform_source||"claude"),Pt.default.createElement("span",{className:"card-project"},e.project))),Pt.default.createElement("div",{className:"card-content"},e.prompt_text),Pt.default.createElement("div",{className:"card-meta"},Pt.default.createElement("span",{className:"meta-date"},"#",e.id," \u2022 ",t)))}var Sn=J(ee(),1);function Pp({targetRef:e}){let[t,n]=(0,Sn.useState)(!1);(0,Sn.useEffect)(()=>{let o=()=>{let i=e.current;i&&n(i.scrollTop>300)},l=e.current;if(l)return l.addEventListener("scroll",o),()=>l.removeEventListener("scroll",o)},[]);let r=()=>{let o=e.current;o&&o.scrollTo({top:0,behavior:"smooth"})};return t?Sn.default.createElement("button",{onClick:r,className:"scroll-to-top","aria-label":"Scroll to top"},Sn.default.createElement("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},Sn.default.createElement("polyline",{points:"18 15 12 9 6 15"}))):null}var xo={PAGINATION_PAGE_SIZE:50,LOAD_MORE_THRESHOLD:.1};function Ip({observations:e,summaries:t,prompts:n,onLoadMore:r,isLoading:o,hasMore:l}){let i=(0,ae.useRef)(null),s=(0,ae.useRef)(null),a=(0,ae.useRef)(r);(0,ae.useEffect)(()=>{a.current=r},[r]),(0,ae.useEffect)(()=>{let g=i.current;if(!g)return;let h=new IntersectionObserver(v=>{v[0].isIntersecting&&l&&!o&&a.current?.()},{threshold:xo.LOAD_MORE_THRESHOLD});return h.observe(g),()=>{g&&h.unobserve(g),h.disconnect()}},[l,o]);let u=(0,ae.useMemo)(()=>[...e.map(h=>({...h,itemType:"observation"})),...t.map(h=>({...h,itemType:"summary"})),...n.map(h=>({...h,itemType:"prompt"}))].sort((h,v)=>v.created_at_epoch-h.created_at_epoch),[e,t,n]);return ae.default.createElement("div",{className:"feed",ref:s},ae.default.createElement(Pp,{targetRef:s}),ae.default.createElement("div",{className:"feed-content"},u.map(g=>{let h=`${g.itemType}-${g.id}`;return g.itemType==="observation"?ae.default.createElement(xp,{key:h,observation:g}):g.itemType==="summary"?ae.default.createElement(Op,{key:h,summary:g}):ae.default.createElement(Dp,{key:h,prompt:g})}),u.length===0&&!o&&ae.default.createElement("div",{style:{textAlign:"center",padding:"40px",color:"#8b949e"}},"No items to display"),o&&ae.default.createElement("div",{style:{textAlign:"center",padding:"20px",color:"#8b949e"}},ae.default.createElement("div",{className:"spinner",style:{display:"inline-block",marginRight:"10px"}}),"Loading more..."),l&&!o&&u.length>0&&ae.default.createElement("div",{ref:i,style:{height:"20px",margin:"10px 0"}}),!l&&u.length>0&&ae.default.createElement("div",{style:{textAlign:"center",padding:"20px",color:"#8b949e",fontSize:"14px"}},"No more items to load")))}var y=J(ee(),1);var ge=J(ee(),1),Tm=J(um(),1);var{entries:ym,setPrototypeOf:cm,isFrozen:Zv,getPrototypeOf:Jv,getOwnPropertyDescriptor:e0}=Object,{freeze:be,seal:mt,create:Ti}=Object,{apply:hu,construct:vu}=typeof Reflect<"u"&&Reflect;be||(be=function(t){return t});mt||(mt=function(t){return t});hu||(hu=function(t,n){for(var r=arguments.length,o=new Array(r>2?r-2:0),l=2;l1?n-1:0),o=1;o1?n-1:0),o=1;o2&&arguments[2]!==void 0?arguments[2]:Ci;cm&&cm(e,null);let r=t.length;for(;r--;){let o=t[r];if(typeof o=="string"){let l=n(o);l!==o&&(Zv(t)||(t[r]=l),o=l)}e[o]=!0}return e}function i0(e){for(let t=0;t/gm),f0=mt(/\$\{[\w\W]*/gm),d0=mt(/^data-[\-\w.\u00B7-\uFFFF]+$/),p0=mt(/^aria-[\-\w]+$/),Em=mt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),m0=mt(/^(?:\w+script|data):/i),g0=mt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Sm=mt(/^html$/i),h0=mt(/^[a-z][.\w]*(-[.\w]+)+$/i),hm=Object.freeze({__proto__:null,ARIA_ATTR:p0,ATTR_WHITESPACE:g0,CUSTOM_ELEMENT:h0,DATA_ATTR:d0,DOCTYPE_NAME:Sm,ERB_EXPR:c0,IS_ALLOWED_URI:Em,IS_SCRIPT_OR_DATA:m0,MUSTACHE_EXPR:u0,TMPLIT_EXPR:f0}),Ro={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},v0=function(){return typeof window>"u"?null:window},y0=function(t,n){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let r=null,o="data-tt-policy-suffix";n&&n.hasAttribute(o)&&(r=n.getAttribute(o));let l="dompurify"+(r?"#"+r:"");try{return t.createPolicy(l,{createHTML(i){return i},createScriptURL(i){return i}})}catch{return console.warn("TrustedTypes policy "+l+" could not be created."),null}},vm=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function _m(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:v0(),t=P=>_m(P);if(t.version="3.3.3",t.removed=[],!e||!e.document||e.document.nodeType!==Ro.document||!e.Element)return t.isSupported=!1,t;let{document:n}=e,r=n,o=r.currentScript,{DocumentFragment:l,HTMLTemplateElement:i,Node:s,Element:a,NodeFilter:u,NamedNodeMap:g=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:h,DOMParser:v,trustedTypes:E}=e,w=a.prototype,k=Uo(w,"cloneNode"),M=Uo(w,"remove"),f=Uo(w,"nextSibling"),c=Uo(w,"childNodes"),m=Uo(w,"parentNode");if(typeof i=="function"){let P=n.createElement("template");P.content&&P.content.ownerDocument&&(n=P.content.ownerDocument)}let p,_="",{implementation:L,createNodeIterator:x,createDocumentFragment:D,getElementsByTagName:G}=n,{importNode:U}=r,W=vm();t.isSupported=typeof ym=="function"&&typeof m=="function"&&L&&L.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:it,ERB_EXPR:Cn,TMPLIT_EXPR:Wn,DATA_ATTR:Pr,ARIA_ATTR:ke,IS_SCRIPT_OR_DATA:kn,ATTR_WHITESPACE:He,CUSTOM_ELEMENT:Ir}=hm,{IS_ALLOWED_URI:Vn}=hm,S=null,Q=b({},[...dm,...du,...pu,...mu,...pm]),R=null,he=b({},[...mm,...gu,...gm,...wi]),I=Object.seal(Ti(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ue=null,Ye=null,je=Object.seal(Ti(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),_u=!0,Ai=!0,wu=!1,Tu=!0,Gn=!1,zo=!0,Ln=!1,Mi=!1,xi=!1,Xn=!1,Ho=!1,jo=!1,Cu=!0,ku=!1,zm="user-content-",Oi=!0,Ur=!1,$n={},Ct=null,Di=b({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Lu=null,Nu=b({},["audio","video","img","source","image","track"]),Pi=null,Au=b({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Bo="http://www.w3.org/1998/Math/MathML",qo="http://www.w3.org/2000/svg",Rt="http://www.w3.org/1999/xhtml",Kn=Rt,Ii=!1,Ui=null,Hm=b({},[Bo,qo,Rt],cu),Wo=b({},["mi","mo","mn","ms","mtext"]),Vo=b({},["annotation-xml"]),jm=b({},["title","style","font","a","script"]),Rr=null,Bm=["application/xhtml+xml","text/html"],qm="text/html",de=null,Yn=null,Wm=n.createElement("form"),Mu=function(d){return d instanceof RegExp||d instanceof Function},Ri=function(){let d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(Yn&&Yn===d)){if((!d||typeof d!="object")&&(d={}),d=Ut(d),Rr=Bm.indexOf(d.PARSER_MEDIA_TYPE)===-1?qm:d.PARSER_MEDIA_TYPE,de=Rr==="application/xhtml+xml"?cu:Ci,S=rt(d,"ALLOWED_TAGS")?b({},d.ALLOWED_TAGS,de):Q,R=rt(d,"ALLOWED_ATTR")?b({},d.ALLOWED_ATTR,de):he,Ui=rt(d,"ALLOWED_NAMESPACES")?b({},d.ALLOWED_NAMESPACES,cu):Hm,Pi=rt(d,"ADD_URI_SAFE_ATTR")?b(Ut(Au),d.ADD_URI_SAFE_ATTR,de):Au,Lu=rt(d,"ADD_DATA_URI_TAGS")?b(Ut(Nu),d.ADD_DATA_URI_TAGS,de):Nu,Ct=rt(d,"FORBID_CONTENTS")?b({},d.FORBID_CONTENTS,de):Di,ue=rt(d,"FORBID_TAGS")?b({},d.FORBID_TAGS,de):Ut({}),Ye=rt(d,"FORBID_ATTR")?b({},d.FORBID_ATTR,de):Ut({}),$n=rt(d,"USE_PROFILES")?d.USE_PROFILES:!1,_u=d.ALLOW_ARIA_ATTR!==!1,Ai=d.ALLOW_DATA_ATTR!==!1,wu=d.ALLOW_UNKNOWN_PROTOCOLS||!1,Tu=d.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Gn=d.SAFE_FOR_TEMPLATES||!1,zo=d.SAFE_FOR_XML!==!1,Ln=d.WHOLE_DOCUMENT||!1,Xn=d.RETURN_DOM||!1,Ho=d.RETURN_DOM_FRAGMENT||!1,jo=d.RETURN_TRUSTED_TYPE||!1,xi=d.FORCE_BODY||!1,Cu=d.SANITIZE_DOM!==!1,ku=d.SANITIZE_NAMED_PROPS||!1,Oi=d.KEEP_CONTENT!==!1,Ur=d.IN_PLACE||!1,Vn=d.ALLOWED_URI_REGEXP||Em,Kn=d.NAMESPACE||Rt,Wo=d.MATHML_TEXT_INTEGRATION_POINTS||Wo,Vo=d.HTML_INTEGRATION_POINTS||Vo,I=d.CUSTOM_ELEMENT_HANDLING||{},d.CUSTOM_ELEMENT_HANDLING&&Mu(d.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(I.tagNameCheck=d.CUSTOM_ELEMENT_HANDLING.tagNameCheck),d.CUSTOM_ELEMENT_HANDLING&&Mu(d.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(I.attributeNameCheck=d.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),d.CUSTOM_ELEMENT_HANDLING&&typeof d.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(I.allowCustomizedBuiltInElements=d.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Gn&&(Ai=!1),Ho&&(Xn=!0),$n&&(S=b({},pm),R=Ti(null),$n.html===!0&&(b(S,dm),b(R,mm)),$n.svg===!0&&(b(S,du),b(R,gu),b(R,wi)),$n.svgFilters===!0&&(b(S,pu),b(R,gu),b(R,wi)),$n.mathMl===!0&&(b(S,mu),b(R,gm),b(R,wi))),rt(d,"ADD_TAGS")||(je.tagCheck=null),rt(d,"ADD_ATTR")||(je.attributeCheck=null),d.ADD_TAGS&&(typeof d.ADD_TAGS=="function"?je.tagCheck=d.ADD_TAGS:(S===Q&&(S=Ut(S)),b(S,d.ADD_TAGS,de))),d.ADD_ATTR&&(typeof d.ADD_ATTR=="function"?je.attributeCheck=d.ADD_ATTR:(R===he&&(R=Ut(R)),b(R,d.ADD_ATTR,de))),d.ADD_URI_SAFE_ATTR&&b(Pi,d.ADD_URI_SAFE_ATTR,de),d.FORBID_CONTENTS&&(Ct===Di&&(Ct=Ut(Ct)),b(Ct,d.FORBID_CONTENTS,de)),d.ADD_FORBID_CONTENTS&&(Ct===Di&&(Ct=Ut(Ct)),b(Ct,d.ADD_FORBID_CONTENTS,de)),Oi&&(S["#text"]=!0),Ln&&b(S,["html","head","body"]),S.table&&(b(S,["tbody"]),delete ue.tbody),d.TRUSTED_TYPES_POLICY){if(typeof d.TRUSTED_TYPES_POLICY.createHTML!="function")throw Io('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof d.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Io('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');p=d.TRUSTED_TYPES_POLICY,_=p.createHTML("")}else p===void 0&&(p=y0(E,o)),p!==null&&typeof _=="string"&&(_=p.createHTML(""));be&&be(d),Yn=d}},xu=b({},[...du,...pu,...s0]),Ou=b({},[...mu,...a0]),Vm=function(d){let C=m(d);(!C||!C.tagName)&&(C={namespaceURI:Kn,tagName:"template"});let O=Ci(d.tagName),Z=Ci(C.tagName);return Ui[d.namespaceURI]?d.namespaceURI===qo?C.namespaceURI===Rt?O==="svg":C.namespaceURI===Bo?O==="svg"&&(Z==="annotation-xml"||Wo[Z]):!!xu[O]:d.namespaceURI===Bo?C.namespaceURI===Rt?O==="math":C.namespaceURI===qo?O==="math"&&Vo[Z]:!!Ou[O]:d.namespaceURI===Rt?C.namespaceURI===qo&&!Vo[Z]||C.namespaceURI===Bo&&!Wo[Z]?!1:!Ou[O]&&(jm[O]||!xu[O]):!!(Rr==="application/xhtml+xml"&&Ui[d.namespaceURI]):!1},kt=function(d){Do(t.removed,{element:d});try{m(d).removeChild(d)}catch{M(d)}},Nn=function(d,C){try{Do(t.removed,{attribute:C.getAttributeNode(d),from:C})}catch{Do(t.removed,{attribute:null,from:C})}if(C.removeAttribute(d),d==="is")if(Xn||Ho)try{kt(C)}catch{}else try{C.setAttribute(d,"")}catch{}},Du=function(d){let C=null,O=null;if(xi)d=""+d;else{let ce=fu(d,/^[\r\n\t ]+/);O=ce&&ce[0]}Rr==="application/xhtml+xml"&&Kn===Rt&&(d=''+d+"");let Z=p?p.createHTML(d):d;if(Kn===Rt)try{C=new v().parseFromString(Z,Rr)}catch{}if(!C||!C.documentElement){C=L.createDocument(Kn,"template",null);try{C.documentElement.innerHTML=Ii?_:Z}catch{}}let Le=C.body||C.documentElement;return d&&O&&Le.insertBefore(n.createTextNode(O),Le.childNodes[0]||null),Kn===Rt?G.call(C,Ln?"html":"body")[0]:Ln?C.documentElement:Le},Pu=function(d){return x.call(d.ownerDocument||d,d,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT|u.SHOW_PROCESSING_INSTRUCTION|u.SHOW_CDATA_SECTION,null)},Fi=function(d){return d instanceof h&&(typeof d.nodeName!="string"||typeof d.textContent!="string"||typeof d.removeChild!="function"||!(d.attributes instanceof g)||typeof d.removeAttribute!="function"||typeof d.setAttribute!="function"||typeof d.namespaceURI!="string"||typeof d.insertBefore!="function"||typeof d.hasChildNodes!="function")},Iu=function(d){return typeof s=="function"&&d instanceof s};function Ft(P,d,C){_i(P,O=>{O.call(t,d,C,Yn)})}let Uu=function(d){let C=null;if(Ft(W.beforeSanitizeElements,d,null),Fi(d))return kt(d),!0;let O=de(d.nodeName);if(Ft(W.uponSanitizeElement,d,{tagName:O,allowedTags:S}),zo&&d.hasChildNodes()&&!Iu(d.firstElementChild)&&Fe(/<[/\w!]/g,d.innerHTML)&&Fe(/<[/\w!]/g,d.textContent)||d.nodeType===Ro.progressingInstruction||zo&&d.nodeType===Ro.comment&&Fe(/<[/\w]/g,d.data))return kt(d),!0;if(!(je.tagCheck instanceof Function&&je.tagCheck(O))&&(!S[O]||ue[O])){if(!ue[O]&&Fu(O)&&(I.tagNameCheck instanceof RegExp&&Fe(I.tagNameCheck,O)||I.tagNameCheck instanceof Function&&I.tagNameCheck(O)))return!1;if(Oi&&!Ct[O]){let Z=m(d)||d.parentNode,Le=c(d)||d.childNodes;if(Le&&Z){let ce=Le.length;for(let Be=ce-1;Be>=0;--Be){let bt=k(Le[Be],!0);bt.__removalCount=(d.__removalCount||0)+1,Z.insertBefore(bt,f(d))}}}return kt(d),!0}return d instanceof a&&!Vm(d)||(O==="noscript"||O==="noembed"||O==="noframes")&&Fe(/<\/no(script|embed|frames)/i,d.innerHTML)?(kt(d),!0):(Gn&&d.nodeType===Ro.text&&(C=d.textContent,_i([it,Cn,Wn],Z=>{C=Po(C,Z," ")}),d.textContent!==C&&(Do(t.removed,{element:d.cloneNode()}),d.textContent=C)),Ft(W.afterSanitizeElements,d,null),!1)},Ru=function(d,C,O){if(Ye[C]||Cu&&(C==="id"||C==="name")&&(O in n||O in Wm))return!1;if(!(Ai&&!Ye[C]&&Fe(Pr,C))){if(!(_u&&Fe(ke,C))){if(!(je.attributeCheck instanceof Function&&je.attributeCheck(C,d))){if(!R[C]||Ye[C]){if(!(Fu(d)&&(I.tagNameCheck instanceof RegExp&&Fe(I.tagNameCheck,d)||I.tagNameCheck instanceof Function&&I.tagNameCheck(d))&&(I.attributeNameCheck instanceof RegExp&&Fe(I.attributeNameCheck,C)||I.attributeNameCheck instanceof Function&&I.attributeNameCheck(C,d))||C==="is"&&I.allowCustomizedBuiltInElements&&(I.tagNameCheck instanceof RegExp&&Fe(I.tagNameCheck,O)||I.tagNameCheck instanceof Function&&I.tagNameCheck(O))))return!1}else if(!Pi[C]){if(!Fe(Vn,Po(O,He,""))){if(!((C==="src"||C==="xlink:href"||C==="href")&&d!=="script"&&r0(O,"data:")===0&&Lu[d])){if(!(wu&&!Fe(kn,Po(O,He,"")))){if(O)return!1}}}}}}}return!0},Fu=function(d){return d!=="annotation-xml"&&fu(d,Ir)},bu=function(d){Ft(W.beforeSanitizeAttributes,d,null);let{attributes:C}=d;if(!C||Fi(d))return;let O={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:R,forceKeepAttr:void 0},Z=C.length;for(;Z--;){let Le=C[Z],{name:ce,namespaceURI:Be,value:bt}=Le,Qn=de(ce),bi=bt,_e=ce==="value"?bi:o0(bi);if(O.attrName=Qn,O.attrValue=_e,O.keepAttr=!0,O.forceKeepAttr=void 0,Ft(W.uponSanitizeAttribute,d,O),_e=O.attrValue,ku&&(Qn==="id"||Qn==="name")&&(Nn(ce,d),_e=zm+_e),zo&&Fe(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,_e)){Nn(ce,d);continue}if(Qn==="attributename"&&fu(_e,"href")){Nn(ce,d);continue}if(O.forceKeepAttr)continue;if(!O.keepAttr){Nn(ce,d);continue}if(!Tu&&Fe(/\/>/i,_e)){Nn(ce,d);continue}Gn&&_i([it,Cn,Wn],Hu=>{_e=Po(_e,Hu," ")});let zu=de(d.nodeName);if(!Ru(zu,Qn,_e)){Nn(ce,d);continue}if(p&&typeof E=="object"&&typeof E.getAttributeType=="function"&&!Be)switch(E.getAttributeType(zu,Qn)){case"TrustedHTML":{_e=p.createHTML(_e);break}case"TrustedScriptURL":{_e=p.createScriptURL(_e);break}}if(_e!==bi)try{Be?d.setAttributeNS(Be,ce,_e):d.setAttribute(ce,_e),Fi(d)?kt(d):fm(t.removed)}catch{Nn(ce,d)}}Ft(W.afterSanitizeAttributes,d,null)},Gm=function P(d){let C=null,O=Pu(d);for(Ft(W.beforeSanitizeShadowDOM,d,null);C=O.nextNode();)Ft(W.uponSanitizeShadowNode,C,null),Uu(C),bu(C),C.content instanceof l&&P(C.content);Ft(W.afterSanitizeShadowDOM,d,null)};return t.sanitize=function(P){let d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},C=null,O=null,Z=null,Le=null;if(Ii=!P,Ii&&(P=""),typeof P!="string"&&!Iu(P))if(typeof P.toString=="function"){if(P=P.toString(),typeof P!="string")throw Io("dirty is not a string, aborting")}else throw Io("toString is not a function");if(!t.isSupported)return P;if(Mi||Ri(d),t.removed=[],typeof P=="string"&&(Ur=!1),Ur){if(P.nodeName){let bt=de(P.nodeName);if(!S[bt]||ue[bt])throw Io("root node is forbidden and cannot be sanitized in-place")}}else if(P instanceof s)C=Du(""),O=C.ownerDocument.importNode(P,!0),O.nodeType===Ro.element&&O.nodeName==="BODY"||O.nodeName==="HTML"?C=O:C.appendChild(O);else{if(!Xn&&!Gn&&!Ln&&P.indexOf("<")===-1)return p&&jo?p.createHTML(P):P;if(C=Du(P),!C)return Xn?null:jo?_:""}C&&xi&&kt(C.firstChild);let ce=Pu(Ur?P:C);for(;Z=ce.nextNode();)Uu(Z),bu(Z),Z.content instanceof l&&Gm(Z.content);if(Ur)return P;if(Xn){if(Ho)for(Le=D.call(C.ownerDocument);C.firstChild;)Le.appendChild(C.firstChild);else Le=C;return(R.shadowroot||R.shadowrootmode)&&(Le=U.call(r,Le,!0)),Le}let Be=Ln?C.outerHTML:C.innerHTML;return Ln&&S["!doctype"]&&C.ownerDocument&&C.ownerDocument.doctype&&C.ownerDocument.doctype.name&&Fe(Sm,C.ownerDocument.doctype.name)&&(Be=" +`+Be),Gn&&_i([it,Cn,Wn],bt=>{Be=Po(Be,bt," ")}),p&&jo?p.createHTML(Be):Be},t.setConfig=function(){let P=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Ri(P),Mi=!0},t.clearConfig=function(){Yn=null,Mi=!1},t.isValidAttribute=function(P,d,C){Yn||Ri({});let O=de(P),Z=de(d);return Ru(O,Z,C)},t.addHook=function(P,d){typeof d=="function"&&Do(W[P],d)},t.removeHook=function(P,d){if(d!==void 0){let C=t0(W[P],d);return C===-1?void 0:n0(W[P],C,1)[0]}return fm(W[P])},t.removeHooks=function(P){W[P]=[]},t.removeAllHooks=function(){W=vm()},t}var wm=_m();var E0=new Tm.default({fg:"#dcd6cc",bg:"#252320",newline:!1,escapeXML:!0,stream:!1});function Cm({content:e,isLoading:t=!1,className:n=""}){let r=(0,ge.useRef)(null),o=(0,ge.useRef)(0),[l,i]=(0,ge.useState)(!0),s=(0,ge.useMemo)(()=>{if(r.current&&(o.current=r.current.scrollTop),!e)return"";let u=E0.toHtml(e);return wm.sanitize(u,{ALLOWED_TAGS:["span","div","br"],ALLOWED_ATTR:["style","class"],ALLOW_DATA_ATTR:!1})},[e]);return(0,ge.useLayoutEffect)(()=>{r.current&&o.current>0&&(r.current.scrollTop=o.current)},[s]),ge.default.createElement("div",{className:n,style:{backgroundColor:"var(--color-bg-card)",border:"1px solid var(--color-border-primary)",borderRadius:"8px",overflow:"hidden",height:"100%",display:"flex",flexDirection:"column",boxShadow:"0 10px 40px rgba(0, 0, 0, 0.4), 0 4px 12px rgba(0, 0, 0, 0.3)"}},ge.default.createElement("div",{style:{padding:"12px",borderBottom:"1px solid var(--color-border-primary)",display:"flex",gap:"6px",alignItems:"center",backgroundColor:"var(--color-bg-header)"}},ge.default.createElement("div",{style:{width:"12px",height:"12px",borderRadius:"50%",backgroundColor:"#ff5f57"}}),ge.default.createElement("div",{style:{width:"12px",height:"12px",borderRadius:"50%",backgroundColor:"#ffbd2e"}}),ge.default.createElement("div",{style:{width:"12px",height:"12px",borderRadius:"50%",backgroundColor:"#28c840"}}),ge.default.createElement("button",{onClick:()=>i(!l),style:{marginLeft:"auto",padding:"4px 8px",fontSize:"11px",fontWeight:500,color:l?"var(--color-text-secondary)":"var(--color-accent-primary)",backgroundColor:"transparent",border:"1px solid",borderColor:l?"var(--color-border-primary)":"var(--color-accent-primary)",borderRadius:"4px",cursor:"pointer",transition:"all 0.2s",whiteSpace:"nowrap"},onMouseEnter:u=>{u.currentTarget.style.borderColor="var(--color-accent-primary)",u.currentTarget.style.color="var(--color-accent-primary)"},onMouseLeave:u=>{u.currentTarget.style.borderColor=l?"var(--color-border-primary)":"var(--color-accent-primary)",u.currentTarget.style.color=l?"var(--color-text-secondary)":"var(--color-accent-primary)"},title:l?"Disable word wrap (scroll horizontally)":"Enable word wrap"},l?"\u2922 Wrap":"\u21C4 Scroll")),t?ge.default.createElement("div",{style:{padding:"16px",fontFamily:"var(--font-terminal)",fontSize:"12px",color:"var(--color-text-secondary)"}},"Loading preview..."):ge.default.createElement("div",{style:{position:"relative",flex:1,overflow:"hidden"}},ge.default.createElement("pre",{ref:r,style:{padding:"16px",margin:0,fontFamily:"var(--font-terminal)",fontSize:"12px",lineHeight:"1.6",overflow:"auto",color:"var(--color-text-primary)",backgroundColor:"var(--color-bg-card)",whiteSpace:l?"pre-wrap":"pre",wordBreak:l?"break-word":"normal",position:"absolute",inset:0},dangerouslySetInnerHTML:{__html:s}})))}var Ke=J(ee(),1);function S0(e){return e.includes("claude")?"claude":e.includes("codex")?"codex":e[0]||null}function _0(e){let t=["claude","codex",...e];return Array.from(new Set(t))}function km(e){let[t,n]=(0,Ke.useState)(""),[r,o]=(0,Ke.useState)(!1),[l,i]=(0,Ke.useState)(null),[s,a]=(0,Ke.useState)({projects:[],sources:[],projectsBySource:{}}),[u,g]=(0,Ke.useState)([]),[h,v]=(0,Ke.useState)(null),[E,w]=(0,Ke.useState)(null);(0,Ke.useEffect)(()=>{async function M(){try{let c=await(await fetch("/api/projects")).json(),m={projects:c.projects||[],sources:_0(c.sources||[]),projectsBySource:c.projectsBySource||{}};a(m);let p=S0(m.sources);if(v(p),p){let _=m.projectsBySource[p]||[];g(_),w(_[0]||null);return}g(m.projects),w(m.projects[0]||null)}catch(f){console.error("Failed to fetch projects:",f)}}M()},[]),(0,Ke.useEffect)(()=>{if(!h){g(s.projects),w(f=>f&&s.projects.includes(f)?f:s.projects[0]||null);return}let M=s.projectsBySource[h]||[];g(M),w(f=>f&&M.includes(f)?f:M[0]||null)},[s,h]);let k=(0,Ke.useCallback)(async()=>{if(!E){n("No project selected");return}o(!0),i(null);let M=new URLSearchParams({project:E});h&&M.append("platformSource",h);try{let f=await fetch(`/api/context/preview?${M}`),c=await f.text();f.ok?n(c):i("Failed to load preview")}catch{i("Failed to load preview")}o(!1)},[E,h]);return(0,Ke.useEffect)(()=>{let M=setTimeout(()=>{k()},300);return()=>clearTimeout(M)},[e,k]),{preview:t,isLoading:r,error:l,refresh:k,projects:u,sources:s.sources,selectedSource:h,setSelectedSource:v,selectedProject:E,setSelectedProject:w}}function yu({title:e,description:t,children:n,defaultOpen:r=!0}){let[o,l]=(0,y.useState)(r);return y.default.createElement("div",{className:`settings-section-collapsible ${o?"open":""}`},y.default.createElement("button",{className:"section-header-btn",onClick:()=>l(!o),type:"button"},y.default.createElement("div",{className:"section-header-content"},y.default.createElement("span",{className:"section-title"},e),t&&y.default.createElement("span",{className:"section-description"},t)),y.default.createElement("svg",{className:`chevron-icon ${o?"rotated":""}`,width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2"},y.default.createElement("polyline",{points:"6 9 12 15 18 9"}))),o&&y.default.createElement("div",{className:"section-content"},n))}function ot({label:e,tooltip:t,children:n}){return y.default.createElement("div",{className:"form-field"},y.default.createElement("label",{className:"form-field-label"},e,t&&y.default.createElement("span",{className:"tooltip-trigger",title:t},y.default.createElement("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2"},y.default.createElement("circle",{cx:"12",cy:"12",r:"10"}),y.default.createElement("path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"}),y.default.createElement("line",{x1:"12",y1:"17",x2:"12.01",y2:"17"})))),n)}function Mr({id:e,label:t,description:n,checked:r,onChange:o,disabled:l}){return y.default.createElement("div",{className:"toggle-row"},y.default.createElement("div",{className:"toggle-info"},y.default.createElement("label",{htmlFor:e,className:"toggle-label"},t),n&&y.default.createElement("span",{className:"toggle-description"},n)),y.default.createElement("button",{type:"button",id:e,role:"switch","aria-checked":r,className:`toggle-switch ${r?"on":""} ${l?"disabled":""}`,onClick:()=>!l&&o(!r),disabled:l},y.default.createElement("span",{className:"toggle-knob"})))}function Lm({isOpen:e,onClose:t,settings:n,onSave:r,isSaving:o,saveStatus:l}){let[i,s]=(0,y.useState)(n);(0,y.useEffect)(()=>{s(n)},[n]);let{preview:a,isLoading:u,error:g,projects:h,sources:v,selectedSource:E,setSelectedSource:w,selectedProject:k,setSelectedProject:M}=km(i),f=(0,y.useCallback)((p,_)=>{let L={...i,[p]:_};s(L)},[i]),c=(0,y.useCallback)(()=>{r(i)},[i,r]),m=(0,y.useCallback)(p=>{let L=i[p]==="true"?"false":"true";f(p,L)},[i,f]);return(0,y.useEffect)(()=>{let p=_=>{_.key==="Escape"&&t()};if(e)return window.addEventListener("keydown",p),()=>window.removeEventListener("keydown",p)},[e,t]),e?y.default.createElement("div",{className:"modal-backdrop",onClick:t},y.default.createElement("div",{className:"context-settings-modal",onClick:p=>p.stopPropagation()},y.default.createElement("div",{className:"modal-header"},y.default.createElement("h2",null,"Settings"),y.default.createElement("div",{className:"header-controls"},y.default.createElement("label",{className:"preview-selector"},"Source:",y.default.createElement("select",{value:E||"",onChange:p=>w(p.target.value),disabled:v.length===0},v.map(p=>y.default.createElement("option",{key:p,value:p},p)))),y.default.createElement("label",{className:"preview-selector"},"Project:",y.default.createElement("select",{value:k||"",onChange:p=>M(p.target.value),disabled:h.length===0},h.map(p=>y.default.createElement("option",{key:p,value:p},p)))),y.default.createElement("button",{onClick:t,className:"modal-close-btn",title:"Close (Esc)"},y.default.createElement("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2"},y.default.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),y.default.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"}))))),y.default.createElement("div",{className:"modal-body"},y.default.createElement("div",{className:"preview-column"},y.default.createElement("div",{className:"preview-content"},g?y.default.createElement("div",{style:{color:"#ff6b6b"}},"Error loading preview: ",g):y.default.createElement(Cm,{content:a,isLoading:u}))),y.default.createElement("div",{className:"settings-column"},y.default.createElement(yu,{title:"Loading",description:"How many observations to inject"},y.default.createElement(ot,{label:"Observations",tooltip:"Number of recent observations to include in context (1-200)"},y.default.createElement("input",{type:"number",min:"1",max:"200",value:i.CLAUDE_MEM_CONTEXT_OBSERVATIONS||"50",onChange:p=>f("CLAUDE_MEM_CONTEXT_OBSERVATIONS",p.target.value)})),y.default.createElement(ot,{label:"Sessions",tooltip:"Number of recent sessions to pull observations from (1-50)"},y.default.createElement("input",{type:"number",min:"1",max:"50",value:i.CLAUDE_MEM_CONTEXT_SESSION_COUNT||"10",onChange:p=>f("CLAUDE_MEM_CONTEXT_SESSION_COUNT",p.target.value)}))),y.default.createElement(yu,{title:"Display",description:"What to show in context tables"},y.default.createElement("div",{className:"display-subsection"},y.default.createElement("span",{className:"subsection-label"},"Full Observations"),y.default.createElement(ot,{label:"Count",tooltip:"How many observations show expanded details (0-20)"},y.default.createElement("input",{type:"number",min:"0",max:"20",value:i.CLAUDE_MEM_CONTEXT_FULL_COUNT||"5",onChange:p=>f("CLAUDE_MEM_CONTEXT_FULL_COUNT",p.target.value)})),y.default.createElement(ot,{label:"Field",tooltip:"Which field to expand for full observations"},y.default.createElement("select",{value:i.CLAUDE_MEM_CONTEXT_FULL_FIELD||"narrative",onChange:p=>f("CLAUDE_MEM_CONTEXT_FULL_FIELD",p.target.value)},y.default.createElement("option",{value:"narrative"},"Narrative"),y.default.createElement("option",{value:"facts"},"Facts")))),y.default.createElement("div",{className:"display-subsection"},y.default.createElement("span",{className:"subsection-label"},"Token Economics"),y.default.createElement("div",{className:"toggle-group"},y.default.createElement(Mr,{id:"show-read-tokens",label:"Read cost",description:"Tokens to read this observation",checked:i.CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS==="true",onChange:()=>m("CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS")}),y.default.createElement(Mr,{id:"show-work-tokens",label:"Work investment",description:"Tokens spent creating this observation",checked:i.CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS==="true",onChange:()=>m("CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS")}),y.default.createElement(Mr,{id:"show-savings-amount",label:"Savings",description:"Total tokens saved by reusing context",checked:i.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT==="true",onChange:()=>m("CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT")})))),y.default.createElement(yu,{title:"Advanced",description:"AI provider and model selection",defaultOpen:!1},y.default.createElement(ot,{label:"AI Provider",tooltip:"Choose between Claude (via Agent SDK) or Gemini (via REST API)"},y.default.createElement("select",{value:i.CLAUDE_MEM_PROVIDER||"claude",onChange:p=>f("CLAUDE_MEM_PROVIDER",p.target.value)},y.default.createElement("option",{value:"claude"},"Claude (uses your Claude account)"),y.default.createElement("option",{value:"gemini"},"Gemini (uses API key)"),y.default.createElement("option",{value:"openrouter"},"OpenRouter (multi-model)"))),i.CLAUDE_MEM_PROVIDER==="claude"&&y.default.createElement(ot,{label:"Claude Model",tooltip:"Claude model used for generating observations"},y.default.createElement("select",{value:i.CLAUDE_MEM_MODEL||"haiku",onChange:p=>f("CLAUDE_MEM_MODEL",p.target.value)},y.default.createElement("option",{value:"haiku"},"haiku (fastest)"),y.default.createElement("option",{value:"sonnet"},"sonnet (balanced)"),y.default.createElement("option",{value:"opus"},"opus (highest quality)"))),i.CLAUDE_MEM_PROVIDER==="gemini"&&y.default.createElement(y.default.Fragment,null,y.default.createElement(ot,{label:"Gemini API Key",tooltip:"Your Google AI Studio API key (or set GEMINI_API_KEY env var)"},y.default.createElement("input",{type:"password",value:i.CLAUDE_MEM_GEMINI_API_KEY||"",onChange:p=>f("CLAUDE_MEM_GEMINI_API_KEY",p.target.value),placeholder:"Enter Gemini API key..."})),y.default.createElement(ot,{label:"Gemini Model",tooltip:"Gemini model used for generating observations"},y.default.createElement("select",{value:i.CLAUDE_MEM_GEMINI_MODEL||"gemini-2.5-flash-lite",onChange:p=>f("CLAUDE_MEM_GEMINI_MODEL",p.target.value)},y.default.createElement("option",{value:"gemini-2.5-flash-lite"},"gemini-2.5-flash-lite (10 RPM free)"),y.default.createElement("option",{value:"gemini-2.5-flash"},"gemini-2.5-flash (5 RPM free)"),y.default.createElement("option",{value:"gemini-3-flash-preview"},"gemini-3-flash-preview (5 RPM free)"))),y.default.createElement("div",{className:"toggle-group",style:{marginTop:"8px"}},y.default.createElement(Mr,{id:"gemini-rate-limiting",label:"Rate Limiting",description:"Enable for free tier (10-30 RPM). Disable if you have billing set up (1000+ RPM).",checked:i.CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED==="true",onChange:p=>f("CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED",p?"true":"false")}))),i.CLAUDE_MEM_PROVIDER==="openrouter"&&y.default.createElement(y.default.Fragment,null,y.default.createElement(ot,{label:"OpenRouter API Key",tooltip:"Your OpenRouter API key from openrouter.ai (or set OPENROUTER_API_KEY env var)"},y.default.createElement("input",{type:"password",value:i.CLAUDE_MEM_OPENROUTER_API_KEY||"",onChange:p=>f("CLAUDE_MEM_OPENROUTER_API_KEY",p.target.value),placeholder:"Enter OpenRouter API key..."})),y.default.createElement(ot,{label:"OpenRouter Model",tooltip:"Model identifier from OpenRouter (e.g., anthropic/claude-3.5-sonnet, google/gemini-2.0-flash-thinking-exp)"},y.default.createElement("input",{type:"text",value:i.CLAUDE_MEM_OPENROUTER_MODEL||"xiaomi/mimo-v2-flash:free",onChange:p=>f("CLAUDE_MEM_OPENROUTER_MODEL",p.target.value),placeholder:"e.g., xiaomi/mimo-v2-flash:free"})),y.default.createElement(ot,{label:"Site URL (Optional)",tooltip:"Your site URL for OpenRouter analytics (optional)"},y.default.createElement("input",{type:"text",value:i.CLAUDE_MEM_OPENROUTER_SITE_URL||"",onChange:p=>f("CLAUDE_MEM_OPENROUTER_SITE_URL",p.target.value),placeholder:"https://yoursite.com"})),y.default.createElement(ot,{label:"App Name (Optional)",tooltip:"Your app name for OpenRouter analytics (optional)"},y.default.createElement("input",{type:"text",value:i.CLAUDE_MEM_OPENROUTER_APP_NAME||"claude-mem",onChange:p=>f("CLAUDE_MEM_OPENROUTER_APP_NAME",p.target.value),placeholder:"claude-mem"}))),y.default.createElement(ot,{label:"Worker Port",tooltip:"Port for the background worker service"},y.default.createElement("input",{type:"number",min:"1024",max:"65535",value:i.CLAUDE_MEM_WORKER_PORT||"37777",onChange:p=>f("CLAUDE_MEM_WORKER_PORT",p.target.value)})),y.default.createElement("div",{className:"toggle-group",style:{marginTop:"12px"}},y.default.createElement(Mr,{id:"show-last-summary",label:"Include last summary",description:"Add previous session's summary to context",checked:i.CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY==="true",onChange:()=>m("CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY")}),y.default.createElement(Mr,{id:"show-last-message",label:"Include last message",description:"Add previous session's final message",checked:i.CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE==="true",onChange:()=>m("CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE")}))))),y.default.createElement("div",{className:"modal-footer"},y.default.createElement("div",{className:"save-status"},l&&y.default.createElement("span",{className:l.includes("\u2713")?"success":l.includes("\u2717")?"error":""},l)),y.default.createElement("button",{className:"save-btn",onClick:c,disabled:o},o?"Saving...":"Save")))):null}var N=J(ee(),1),Fo=[{key:"DEBUG",label:"Debug",icon:"\u{1F50D}",color:"#8b8b8b"},{key:"INFO",label:"Info",icon:"\u2139\uFE0F",color:"#58a6ff"},{key:"WARN",label:"Warn",icon:"\u26A0\uFE0F",color:"#d29922"},{key:"ERROR",label:"Error",icon:"\u274C",color:"#f85149"}],bo=[{key:"HOOK",label:"Hook",icon:"\u{1FA9D}",color:"#a371f7"},{key:"WORKER",label:"Worker",icon:"\u2699\uFE0F",color:"#58a6ff"},{key:"SDK",label:"SDK",icon:"\u{1F4E6}",color:"#3fb950"},{key:"PARSER",label:"Parser",icon:"\u{1F4C4}",color:"#79c0ff"},{key:"DB",label:"DB",icon:"\u{1F5C4}\uFE0F",color:"#f0883e"},{key:"SYSTEM",label:"System",icon:"\u{1F4BB}",color:"#8b949e"},{key:"HTTP",label:"HTTP",icon:"\u{1F310}",color:"#39d353"},{key:"SESSION",label:"Session",icon:"\u{1F4CB}",color:"#db61a2"},{key:"CHROMA",label:"Chroma",icon:"\u{1F52E}",color:"#a855f7"}];function w0(e){let t=/^\[([^\]]+)\]\s+\[(\w+)\s*\]\s+\[(\w+)\s*\]\s+(?:\[([^\]]+)\]\s+)?(.*)$/,n=e.match(t);if(!n)return{raw:e};let[,r,o,l,i,s]=n,a;return s.startsWith("\u2192")?a="dataIn":s.startsWith("\u2190")?a="dataOut":s.startsWith("\u2713")?a="success":s.startsWith("\u2717")?a="failure":s.startsWith("\u23F1")?a="timing":s.includes("[HAPPY-PATH]")&&(a="happyPath"),{raw:e,timestamp:r,level:o?.trim(),component:l?.trim(),correlationId:i||void 0,message:s,isSpecial:a}}function Nm({isOpen:e,onClose:t}){let[n,r]=(0,N.useState)(""),[o,l]=(0,N.useState)(!1),[i,s]=(0,N.useState)(null),[a,u]=(0,N.useState)(!1),[g,h]=(0,N.useState)(350),[v,E]=(0,N.useState)(!1),w=(0,N.useRef)(0),k=(0,N.useRef)(0),M=(0,N.useRef)(null),f=(0,N.useRef)(!0),[c,m]=(0,N.useState)(new Set(["DEBUG","INFO","WARN","ERROR"])),[p,_]=(0,N.useState)(new Set(["HOOK","WORKER","SDK","PARSER","DB","SYSTEM","HTTP","SESSION","CHROMA"])),[L,x]=(0,N.useState)(!1),D=(0,N.useMemo)(()=>n?n.split(` +`).map(w0):[],[n]),G=(0,N.useMemo)(()=>D.filter(S=>L?S.raw.includes("[ALIGNMENT]"):!S.level||!S.component?!0:c.has(S.level)&&p.has(S.component)),[D,c,p,L]),U=(0,N.useCallback)(()=>{if(!M.current)return!0;let{scrollTop:S,scrollHeight:Q,clientHeight:R}=M.current;return Q-S-R<50},[]),W=(0,N.useCallback)(()=>{M.current&&f.current&&(M.current.scrollTop=M.current.scrollHeight)},[]),it=(0,N.useCallback)(async()=>{f.current=U(),l(!0),s(null);try{let S=await fetch("/api/logs");if(!S.ok)throw new Error(`Failed to fetch logs: ${S.statusText}`);let Q=await S.json();r(Q.logs||"")}catch(S){s(S instanceof Error?S.message:"Unknown error")}finally{l(!1)}},[U]);(0,N.useEffect)(()=>{W()},[n,W]);let Cn=(0,N.useCallback)(async()=>{if(confirm("Are you sure you want to clear all logs?")){l(!0),s(null);try{let S=await fetch("/api/logs/clear",{method:"POST"});if(!S.ok)throw new Error(`Failed to clear logs: ${S.statusText}`);r("")}catch(S){s(S instanceof Error?S.message:"Unknown error")}finally{l(!1)}}},[]),Wn=(0,N.useCallback)(S=>{S.preventDefault(),E(!0),w.current=S.clientY,k.current=g},[g]);(0,N.useEffect)(()=>{if(!v)return;let S=R=>{let he=w.current-R.clientY,I=Math.min(Math.max(150,k.current+he),window.innerHeight-100);h(I)},Q=()=>{E(!1)};return document.addEventListener("mousemove",S),document.addEventListener("mouseup",Q),()=>{document.removeEventListener("mousemove",S),document.removeEventListener("mouseup",Q)}},[v]),(0,N.useEffect)(()=>{e&&(f.current=!0,it())},[e,it]),(0,N.useEffect)(()=>{if(!e||!a)return;let S=setInterval(it,2e3);return()=>clearInterval(S)},[e,a,it]);let Pr=(0,N.useCallback)(S=>{m(Q=>{let R=new Set(Q);return R.has(S)?R.delete(S):R.add(S),R})},[]),ke=(0,N.useCallback)(S=>{_(Q=>{let R=new Set(Q);return R.has(S)?R.delete(S):R.add(S),R})},[]),kn=(0,N.useCallback)(S=>{m(S?new Set(["DEBUG","INFO","WARN","ERROR"]):new Set)},[]),He=(0,N.useCallback)(S=>{_(S?new Set(["HOOK","WORKER","SDK","PARSER","DB","SYSTEM","HTTP","SESSION","CHROMA"]):new Set)},[]);if(!e)return null;let Ir=S=>{let Q=Fo.find(Ye=>Ye.key===S.level),R=bo.find(Ye=>Ye.key===S.component),he="var(--color-text-primary)",I="normal",ue="transparent";return S.level==="ERROR"?(he="#f85149",ue="rgba(248, 81, 73, 0.1)"):S.level==="WARN"?(he="#d29922",ue="rgba(210, 153, 34, 0.05)"):S.isSpecial==="success"?he="#3fb950":S.isSpecial==="failure"?he="#f85149":S.isSpecial==="happyPath"?he="#d29922":Q&&(he=Q.color),{color:he,fontWeight:I,backgroundColor:ue,padding:"1px 0",borderRadius:"2px"}},Vn=(S,Q)=>{if(!S.timestamp)return N.default.createElement("div",{key:Q,className:"log-line log-line-raw"},S.raw);let R=Fo.find(I=>I.key===S.level),he=bo.find(I=>I.key===S.component);return N.default.createElement("div",{key:Q,className:"log-line",style:Ir(S)},N.default.createElement("span",{className:"log-timestamp"},"[",S.timestamp,"]")," ",N.default.createElement("span",{className:"log-level",style:{color:R?.color},title:S.level},"[",R?.icon||""," ",S.level?.padEnd(5),"]")," ",N.default.createElement("span",{className:"log-component",style:{color:he?.color},title:S.component},"[",he?.icon||""," ",S.component?.padEnd(7),"]")," ",S.correlationId&&N.default.createElement(N.default.Fragment,null,N.default.createElement("span",{className:"log-correlation"},"[",S.correlationId,"]")," "),N.default.createElement("span",{className:"log-message"},S.message))};return N.default.createElement("div",{className:"console-drawer",style:{height:`${g}px`}},N.default.createElement("div",{className:"console-resize-handle",onMouseDown:Wn},N.default.createElement("div",{className:"console-resize-bar"})),N.default.createElement("div",{className:"console-header"},N.default.createElement("div",{className:"console-tabs"},N.default.createElement("div",{className:"console-tab active"},"Console")),N.default.createElement("div",{className:"console-controls"},N.default.createElement("label",{className:"console-auto-refresh"},N.default.createElement("input",{type:"checkbox",checked:a,onChange:S=>u(S.target.checked)}),"Auto-refresh"),N.default.createElement("button",{className:"console-control-btn",onClick:it,disabled:o,title:"Refresh logs"},"\u21BB"),N.default.createElement("button",{className:"console-control-btn",onClick:()=>{f.current=!0,W()},title:"Scroll to bottom"},"\u2B07"),N.default.createElement("button",{className:"console-control-btn console-clear-btn",onClick:Cn,disabled:o,title:"Clear logs"},"\u{1F5D1}"),N.default.createElement("button",{className:"console-control-btn",onClick:t,title:"Close console"},"\u2715"))),N.default.createElement("div",{className:"console-filters"},N.default.createElement("div",{className:"console-filter-section"},N.default.createElement("span",{className:"console-filter-label"},"Quick:"),N.default.createElement("div",{className:"console-filter-chips"},N.default.createElement("button",{className:`console-filter-chip ${L?"active":""}`,onClick:()=>x(!L),style:{"--chip-color":"#f0883e"},title:"Show only session alignment logs"},"\u{1F517} Alignment"))),N.default.createElement("div",{className:"console-filter-section"},N.default.createElement("span",{className:"console-filter-label"},"Levels:"),N.default.createElement("div",{className:"console-filter-chips"},Fo.map(S=>N.default.createElement("button",{key:S.key,className:`console-filter-chip ${c.has(S.key)?"active":""}`,onClick:()=>Pr(S.key),style:{"--chip-color":S.color},title:S.label},S.icon," ",S.label)),N.default.createElement("button",{className:"console-filter-action",onClick:()=>kn(c.size===0),title:c.size===Fo.length?"Select none":"Select all"},c.size===Fo.length?"\u25CB":"\u25CF"))),N.default.createElement("div",{className:"console-filter-section"},N.default.createElement("span",{className:"console-filter-label"},"Components:"),N.default.createElement("div",{className:"console-filter-chips"},bo.map(S=>N.default.createElement("button",{key:S.key,className:`console-filter-chip ${p.has(S.key)?"active":""}`,onClick:()=>ke(S.key),style:{"--chip-color":S.color},title:S.label},S.icon," ",S.label)),N.default.createElement("button",{className:"console-filter-action",onClick:()=>He(p.size===0),title:p.size===bo.length?"Select none":"Select all"},p.size===bo.length?"\u25CB":"\u25CF")))),i&&N.default.createElement("div",{className:"console-error"},"\u26A0 ",i),N.default.createElement("div",{className:"console-content",ref:M},N.default.createElement("div",{className:"console-logs"},G.length===0?N.default.createElement("div",{className:"log-line log-line-empty"},"No logs available"):G.map((S,Q)=>Vn(S,Q)))))}var lt=J(ee(),1);var Tt={OBSERVATIONS:"/api/observations",SUMMARIES:"/api/summaries",PROMPTS:"/api/prompts",SETTINGS:"/api/settings",STATS:"/api/stats",PROCESSING_STATUS:"/api/processing-status",STREAM:"/stream"};var ki={SSE_RECONNECT_DELAY_MS:3e3,STATS_REFRESH_INTERVAL_MS:1e4,SAVE_STATUS_DISPLAY_DURATION_MS:3e3};function Am(){let[e,t]=(0,lt.useState)([]),[n,r]=(0,lt.useState)([]),[o,l]=(0,lt.useState)([]),[i,s]=(0,lt.useState)({projects:[],sources:[],projectsBySource:{}}),[a,u]=(0,lt.useState)(!1),[g,h]=(0,lt.useState)(!1),[v,E]=(0,lt.useState)(0),w=(0,lt.useRef)(null),k=(0,lt.useRef)(),M=(f,c)=>{s(m=>{let p=m.projects.includes(f)?m.projects:[...m.projects,f],_=m.sources.includes(c)?m.sources:[...m.sources,c],L=m.projectsBySource[c]||[];return{projects:p,sources:_,projectsBySource:{...m.projectsBySource,[c]:L.includes(f)?L:[...L,f]}}})};return(0,lt.useEffect)(()=>{let f=()=>{w.current&&w.current.close();let c=new EventSource(Tt.STREAM);w.current=c,c.onopen=()=>{console.log("[SSE] Connected"),u(!0),k.current&&clearTimeout(k.current)},c.onerror=m=>{console.error("[SSE] Connection error:",m),u(!1),c.close(),k.current=setTimeout(()=>{k.current=void 0,console.log("[SSE] Attempting to reconnect..."),f()},ki.SSE_RECONNECT_DELAY_MS)},c.onmessage=m=>{let p=JSON.parse(m.data);switch(p.type){case"initial_load":console.log("[SSE] Initial load:",{projects:p.projects?.length||0,sources:p.sources?.length||0}),s({projects:p.projects||[],sources:p.sources||[],projectsBySource:p.projectsBySource||{}});break;case"new_observation":p.observation&&(console.log("[SSE] New observation:",p.observation.id),M(p.observation.project,p.observation.platform_source||"claude"),t(_=>[p.observation,..._]));break;case"new_summary":p.summary&&(console.log("[SSE] New summary:",p.summary.id),M(p.summary.project,p.summary.platform_source||"claude"),r(_=>[p.summary,..._]));break;case"new_prompt":p.prompt&&(console.log("[SSE] New prompt:",p.prompt.id),M(p.prompt.project,p.prompt.platform_source||"claude"),l(_=>[p.prompt,..._]));break;case"processing_status":typeof p.isProcessing=="boolean"&&(console.log("[SSE] Processing status:",p.isProcessing,"Queue depth:",p.queueDepth),h(p.isProcessing),E(p.queueDepth||0));break}}};return f(),()=>{w.current&&w.current.close(),k.current&&clearTimeout(k.current)}},[]),{observations:e,summaries:n,prompts:o,projects:i.projects,sources:i.sources,projectsBySource:i.projectsBySource,isProcessing:g,queueDepth:v,isConnected:a}}var xr=J(ee(),1);var le={CLAUDE_MEM_MODEL:"claude-sonnet-4-6",CLAUDE_MEM_CONTEXT_OBSERVATIONS:"50",CLAUDE_MEM_WORKER_PORT:"37777",CLAUDE_MEM_WORKER_HOST:"127.0.0.1",CLAUDE_MEM_PROVIDER:"claude",CLAUDE_MEM_GEMINI_API_KEY:"",CLAUDE_MEM_GEMINI_MODEL:"gemini-2.5-flash-lite",CLAUDE_MEM_OPENROUTER_API_KEY:"",CLAUDE_MEM_OPENROUTER_MODEL:"xiaomi/mimo-v2-flash:free",CLAUDE_MEM_OPENROUTER_SITE_URL:"",CLAUDE_MEM_OPENROUTER_APP_NAME:"claude-mem",CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED:"true",CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT:"false",CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT:"true",CLAUDE_MEM_CONTEXT_FULL_COUNT:"0",CLAUDE_MEM_CONTEXT_FULL_FIELD:"narrative",CLAUDE_MEM_CONTEXT_SESSION_COUNT:"10",CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY:"true",CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE:"false",CLAUDE_MEM_EXCLUDED_PROJECTS:"",CLAUDE_MEM_FOLDER_MD_EXCLUDE:"[]"};function Mm(){let[e,t]=(0,xr.useState)(le),[n,r]=(0,xr.useState)(!1),[o,l]=(0,xr.useState)("");return(0,xr.useEffect)(()=>{fetch(Tt.SETTINGS).then(s=>s.json()).then(s=>{t({CLAUDE_MEM_MODEL:s.CLAUDE_MEM_MODEL??le.CLAUDE_MEM_MODEL,CLAUDE_MEM_CONTEXT_OBSERVATIONS:s.CLAUDE_MEM_CONTEXT_OBSERVATIONS??le.CLAUDE_MEM_CONTEXT_OBSERVATIONS,CLAUDE_MEM_WORKER_PORT:s.CLAUDE_MEM_WORKER_PORT??le.CLAUDE_MEM_WORKER_PORT,CLAUDE_MEM_WORKER_HOST:s.CLAUDE_MEM_WORKER_HOST??le.CLAUDE_MEM_WORKER_HOST,CLAUDE_MEM_PROVIDER:s.CLAUDE_MEM_PROVIDER??le.CLAUDE_MEM_PROVIDER,CLAUDE_MEM_GEMINI_API_KEY:s.CLAUDE_MEM_GEMINI_API_KEY??le.CLAUDE_MEM_GEMINI_API_KEY,CLAUDE_MEM_GEMINI_MODEL:s.CLAUDE_MEM_GEMINI_MODEL??le.CLAUDE_MEM_GEMINI_MODEL,CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED:s.CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED??le.CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED,CLAUDE_MEM_OPENROUTER_API_KEY:s.CLAUDE_MEM_OPENROUTER_API_KEY??le.CLAUDE_MEM_OPENROUTER_API_KEY,CLAUDE_MEM_OPENROUTER_MODEL:s.CLAUDE_MEM_OPENROUTER_MODEL??le.CLAUDE_MEM_OPENROUTER_MODEL,CLAUDE_MEM_OPENROUTER_SITE_URL:s.CLAUDE_MEM_OPENROUTER_SITE_URL??le.CLAUDE_MEM_OPENROUTER_SITE_URL,CLAUDE_MEM_OPENROUTER_APP_NAME:s.CLAUDE_MEM_OPENROUTER_APP_NAME??le.CLAUDE_MEM_OPENROUTER_APP_NAME,CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS:s.CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS??le.CLAUDE_MEM_CONTEXT_SHOW_READ_TOKENS,CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS:s.CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS??le.CLAUDE_MEM_CONTEXT_SHOW_WORK_TOKENS,CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT:s.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT??le.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_AMOUNT,CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT:s.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT??le.CLAUDE_MEM_CONTEXT_SHOW_SAVINGS_PERCENT,CLAUDE_MEM_CONTEXT_FULL_COUNT:s.CLAUDE_MEM_CONTEXT_FULL_COUNT??le.CLAUDE_MEM_CONTEXT_FULL_COUNT,CLAUDE_MEM_CONTEXT_FULL_FIELD:s.CLAUDE_MEM_CONTEXT_FULL_FIELD??le.CLAUDE_MEM_CONTEXT_FULL_FIELD,CLAUDE_MEM_CONTEXT_SESSION_COUNT:s.CLAUDE_MEM_CONTEXT_SESSION_COUNT??le.CLAUDE_MEM_CONTEXT_SESSION_COUNT,CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY:s.CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY??le.CLAUDE_MEM_CONTEXT_SHOW_LAST_SUMMARY,CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE:s.CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE??le.CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE})}).catch(s=>{console.error("Failed to load settings:",s)})},[]),{settings:e,saveSettings:async s=>{r(!0),l("Saving...");let u=await(await fetch(Tt.SETTINGS,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(s)})).json();u.success?(t(s),l("\u2713 Saved"),setTimeout(()=>l(""),ki.SAVE_STATUS_DISPLAY_DURATION_MS)):l(`\u2717 Error: ${u.error}`),r(!1)},isSaving:n,saveStatus:o}}var Or=J(ee(),1);function xm(){let[e,t]=(0,Or.useState)({}),n=(0,Or.useCallback)(async()=>{try{let o=await(await fetch(Tt.STATS)).json();t(o)}catch(r){console.error("Failed to load stats:",r)}},[]);return(0,Or.useEffect)(()=>{n()},[n]),{stats:e,refreshStats:n}}var Tn=J(ee(),1);function Eu(e,t,n,r){let[o,l]=(0,Tn.useState)({isLoading:!1,hasMore:!0}),i=(0,Tn.useRef)(0),s=(0,Tn.useRef)(`${r}::${n}`),a=(0,Tn.useRef)(o),u=(0,Tn.useCallback)(async()=>{let g=`${r}::${n}`,h=s.current!==g;if(h){i.current=0,s.current=g;let M={isLoading:!1,hasMore:!0};l(M),a.current=M}if(!h&&(a.current.isLoading||!a.current.hasMore))return[];a.current={...a.current,isLoading:!0},l(M=>({...M,isLoading:!0}));let v=new URLSearchParams({offset:i.current.toString(),limit:xo.PAGINATION_PAGE_SIZE.toString()});n&&v.append("project",n),r&&r!=="all"&&v.append("platformSource",r);let E=await fetch(`${e}?${v}`);if(!E.ok)throw new Error(`Failed to load ${t}: ${E.statusText}`);let w=await E.json(),k={...a.current,isLoading:!1,hasMore:w.hasMore};return a.current=k,l(M=>({...M,isLoading:!1,hasMore:w.hasMore})),i.current+=xo.PAGINATION_PAGE_SIZE,w.items},[n,r,e,t]);return{...o,loadMore:u}}function Om(e,t){let n=Eu(Tt.OBSERVATIONS,"observations",e,t),r=Eu(Tt.SUMMARIES,"summaries",e,t),o=Eu(Tt.PROMPTS,"prompts",e,t);return{observations:n,summaries:r,prompts:o}}var Dr=J(ee(),1),Im="claude-mem-theme";function T0(){return typeof window>"u"||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}function Dm(){try{let e=localStorage.getItem(Im);if(e==="system"||e==="light"||e==="dark")return e}catch(e){console.warn("Failed to read theme preference from localStorage:",e)}return"system"}function Pm(e){return e==="system"?T0():e}function Um(){let[e,t]=(0,Dr.useState)(Dm),[n,r]=(0,Dr.useState)(()=>Pm(Dm()));return(0,Dr.useEffect)(()=>{let l=Pm(e);r(l),document.documentElement.setAttribute("data-theme",l)},[e]),(0,Dr.useEffect)(()=>{if(e!=="system")return;let l=window.matchMedia("(prefers-color-scheme: dark)"),i=s=>{let a=s.matches?"dark":"light";r(a),document.documentElement.setAttribute("data-theme",a)};return l.addEventListener("change",i),()=>l.removeEventListener("change",i)},[e]),{preference:e,resolvedTheme:n,setThemePreference:l=>{try{localStorage.setItem(Im,l),t(l)}catch(i){console.warn("Failed to save theme preference to localStorage:",i),t(l)}}}}function Li(e,t){let n=new Set;return[...e,...t].filter(r=>n.has(r.id)?!1:(n.add(r.id),!0))}function Rm(){let[e,t]=(0,B.useState)(""),[n,r]=(0,B.useState)("all"),[o,l]=(0,B.useState)(!1),[i,s]=(0,B.useState)(!1),[a,u]=(0,B.useState)([]),[g,h]=(0,B.useState)([]),[v,E]=(0,B.useState)([]),{observations:w,summaries:k,prompts:M,projects:f,sources:c,projectsBySource:m,isProcessing:p,queueDepth:_,isConnected:L}=Am(),{settings:x,saveSettings:D,isSaving:G,saveStatus:U}=Mm(),{stats:W,refreshStats:it}=xm(),{preference:Cn,resolvedTheme:Wn,setThemePreference:Pr}=Um(),ke=Om(e,n),kn=(0,B.useMemo)(()=>n==="all"?f:m[n]||[],[n,f,m]),He=(0,B.useCallback)(I=>{let ue=!e||I.project===e,Ye=n==="all"||(I.platform_source||"claude")===n;return ue&&Ye},[e,n]);(0,B.useEffect)(()=>{e&&!kn.includes(e)&&t("")},[kn,e]);let Ir=(0,B.useMemo)(()=>{let I=w.filter(He),ue=a.filter(He);return Li(I,ue)},[w,a,He]),Vn=(0,B.useMemo)(()=>{let I=k.filter(He),ue=g.filter(He);return Li(I,ue)},[k,g,He]),S=(0,B.useMemo)(()=>{let I=M.filter(He),ue=v.filter(He);return Li(I,ue)},[M,v,He]),Q=(0,B.useCallback)(()=>{l(I=>!I)},[]),R=(0,B.useCallback)(()=>{s(I=>!I)},[]),he=(0,B.useCallback)(async()=>{try{let[I,ue,Ye]=await Promise.all([ke.observations.loadMore(),ke.summaries.loadMore(),ke.prompts.loadMore()]);I.length>0&&u(je=>[...je,...I]),ue.length>0&&h(je=>[...je,...ue]),Ye.length>0&&E(je=>[...je,...Ye])}catch(I){console.error("Failed to load more data:",I)}},[ke.observations,ke.summaries,ke.prompts]);return(0,B.useEffect)(()=>{u([]),h([]),E([]),he()},[e,n]),B.default.createElement(B.default.Fragment,null,B.default.createElement(Ap,{isConnected:L,projects:kn,sources:c,currentFilter:e,currentSource:n,onFilterChange:t,onSourceChange:r,isProcessing:p,queueDepth:_,themePreference:Cn,onThemeChange:Pr,onContextPreviewToggle:Q}),B.default.createElement(Ip,{observations:Ir,summaries:Vn,prompts:S,onLoadMore:he,isLoading:ke.observations.isLoading||ke.summaries.isLoading||ke.prompts.isLoading,hasMore:ke.observations.hasMore||ke.summaries.hasMore||ke.prompts.hasMore}),B.default.createElement(Lm,{isOpen:o,onClose:Q,settings:x,onSave:D,isSaving:G,saveStatus:U}),B.default.createElement("button",{className:"console-toggle-btn",onClick:R,title:"Toggle Console"},B.default.createElement("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},B.default.createElement("polyline",{points:"4 17 10 11 4 5"}),B.default.createElement("line",{x1:"12",y1:"19",x2:"20",y2:"19"}))),B.default.createElement(Nm,{isOpen:i,onClose:R}))}var Kt=J(ee(),1),Ni=class extends Kt.Component{constructor(t){super(t),this.state={hasError:!1,error:null,errorInfo:null}}static getDerivedStateFromError(t){return{hasError:!0,error:t}}componentDidCatch(t,n){console.error("[ErrorBoundary] Caught error:",t,n),this.setState({error:t,errorInfo:n})}render(){return this.state.hasError?Kt.default.createElement("div",{style:{padding:"20px",color:"#ff6b6b",backgroundColor:"#1a1a1a",minHeight:"100vh"}},Kt.default.createElement("h1",{style:{fontSize:"24px",marginBottom:"10px"}},"Something went wrong"),Kt.default.createElement("p",{style:{marginBottom:"10px",color:"#8b949e"}},"The application encountered an error. Please refresh the page to try again."),this.state.error&&Kt.default.createElement("details",{style:{marginTop:"20px",color:"#8b949e"}},Kt.default.createElement("summary",{style:{cursor:"pointer",marginBottom:"10px"}},"Error details"),Kt.default.createElement("pre",{style:{backgroundColor:"#0d1117",padding:"10px",borderRadius:"6px",overflow:"auto"}},this.state.error.toString(),this.state.errorInfo&&` -`+this.state.errorInfo.componentStack))):this.props.children}};var zm=document.getElementById("root");if(!zm)throw new Error("Root element not found");var S0=(0,Fm.createRoot)(zm);S0.render(Su.default.createElement(Li,null,Su.default.createElement(Rm,null)));})(); +`+this.state.errorInfo.componentStack))):this.props.children}};var bm=document.getElementById("root");if(!bm)throw new Error("Root element not found");var C0=(0,Fm.createRoot)(bm);C0.render(Su.default.createElement(Ni,null,Su.default.createElement(Rm,null)));})(); /*! Bundled license information: react/cjs/react.production.min.js: @@ -48,5 +48,5 @@ react-dom/cjs/react-dom.production.min.js: *) dompurify/dist/purify.es.mjs: - (*! @license DOMPurify 3.3.1 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.3.1/LICENSE *) + (*! @license DOMPurify 3.3.3 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.3.3/LICENSE *) */ diff --git a/plugin/ui/viewer.html b/plugin/ui/viewer.html index 934a3cd6..c540310c 100644 --- a/plugin/ui/viewer.html +++ b/plugin/ui/viewer.html @@ -355,6 +355,14 @@ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03); } + .header-main { + display: flex; + align-items: center; + gap: 18px; + min-width: 0; + flex-wrap: wrap; + } + .sidebar-header { padding: 14px 18px; border-bottom: 1px solid var(--color-border-primary); @@ -549,6 +557,42 @@ font-size: 13px; } + .source-tabs { + display: inline-flex; + align-items: center; + gap: 6px; + flex-wrap: wrap; + } + + .source-tab { + background: transparent; + border: 1px solid var(--color-border-primary); + color: var(--color-text-secondary); + border-radius: 999px; + padding: 6px 12px; + font-size: 12px; + line-height: 1; + font-weight: 600; + letter-spacing: 0.01em; + cursor: pointer; + transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1); + white-space: nowrap; + } + + .source-tab:hover { + background: var(--color-bg-card-hover); + border-color: var(--color-border-focus); + color: var(--color-text-primary); + transform: translateY(-1px); + } + + .source-tab.active { + background: linear-gradient(135deg, var(--color-bg-button) 0%, var(--color-accent-primary) 100%); + border-color: var(--color-bg-button); + color: var(--color-text-button); + box-shadow: 0 2px 8px rgba(9, 105, 218, 0.18); + } + .settings-btn, .theme-toggle-btn { background: var(--color-bg-card); @@ -887,6 +931,49 @@ letter-spacing: 0.5px; } + .card-source { + padding: 2px 8px; + border-radius: 999px; + font-weight: 600; + font-size: 10px; + letter-spacing: 0.04em; + text-transform: uppercase; + border: 1px solid transparent; + } + + .source-claude { + background: rgba(255, 138, 61, 0.12); + color: #c25a00; + border-color: rgba(255, 138, 61, 0.22); + } + + .source-codex { + background: rgba(33, 150, 243, 0.12); + color: #0f5ba7; + border-color: rgba(33, 150, 243, 0.24); + } + + .source-cursor { + background: rgba(124, 58, 237, 0.12); + color: #6d28d9; + border-color: rgba(124, 58, 237, 0.24); + } + + [data-theme="dark"] .source-claude { + color: #ffb067; + border-color: rgba(255, 176, 103, 0.2); + } + + [data-theme="dark"] .source-codex { + color: #8fc7ff; + border-color: rgba(143, 199, 255, 0.2); + } + + [data-theme="dark"] .source-cursor { + color: #c4b5fd; + border-color: rgba(196, 181, 253, 0.2); + } + .card-title { font-size: 17px; margin-bottom: 14px; @@ -1483,6 +1570,10 @@ padding: 14px 20px; } + .header-main { + gap: 12px; + } + .status { gap: 6px; } @@ -1491,6 +1582,11 @@ max-width: 160px; } + .source-tab { + padding: 6px 10px; + font-size: 11px; + } + /* Hide icon links (docs, github, twitter) on tablet */ .icon-link { display: none; @@ -1544,6 +1640,28 @@ gap: 8px; } + .header-main { + gap: 10px; + } + + .source-tabs { + width: 100%; + flex-wrap: nowrap; + overflow-x: auto; + padding-bottom: 2px; + scrollbar-width: none; + } + + .source-tabs::-webkit-scrollbar { + display: none; + } + + .source-tab { + flex-shrink: 0; + padding: 5px 10px; + font-size: 11px; + } + .logomark { height: 28px; } @@ -1732,6 +1850,11 @@ white-space: nowrap; } + .preview-selector select:disabled { + opacity: 0.6; + cursor: not-allowed; + } + .preview-selector select { background: var(--color-bg-card); border: 1px solid var(--color-border-primary); @@ -2873,4 +2996,4 @@ - \ No newline at end of file + diff --git a/scripts/build-hooks.js b/scripts/build-hooks.js index cb175627..0102864b 100644 --- a/scripts/build-hooks.js +++ b/scripts/build-hooks.js @@ -27,6 +27,48 @@ const CONTEXT_GENERATOR = { source: 'src/services/context-generator.ts' }; +/** + * Strip hardcoded __dirname/__filename from bundled CJS output. + * + * When esbuild converts ESM TypeScript source to CJS format, it inlines + * __dirname and __filename as static strings based on the SOURCE file paths + * at build time. These `var __dirname = "/build/machine/path/..."` declarations + * shadow the runtime's native __dirname (provided by Bun/Node's CJS module + * wrapper), causing path resolution to fail on end-user machines. + * + * This post-build step removes those hardcoded assignments so the runtime + * globals are used instead. + * + * See: https://github.com/thedotmack/claude-mem/issues/1410 + */ +function stripHardcodedDirname(filePath) { + let content = fs.readFileSync(filePath, 'utf-8'); + const before = content.length; + + // Match both double-quoted and single-quoted string literals. + // esbuild currently emits double quotes, but single quotes are handled + // defensively in case future versions change quoting style. + const str = `(?:"[^"]*"|'[^']*')`; + + for (const id of ['__dirname', '__filename']) { + // Remove `var = "...", rest` → `var rest` + content = content.replace(new RegExp(`\\bvar ${id}\\s*=\\s*${str},\\s*`, 'g'), 'var '); + // Remove standalone `var = "...";` + content = content.replace(new RegExp(`\\bvar ${id}\\s*=\\s*${str};\\s*`, 'g'), ''); + // Remove `, = "..."` from mid/end of var declarations + content = content.replace(new RegExp(`,\\s*${id}\\s*=\\s*${str}`, 'g'), ''); + } + + // Clean up dangling `var ;` left when __dirname was the sole declarator + content = content.replace(/\bvar\s*;/g, ''); + + const removed = before - content.length; + if (removed > 0) { + fs.writeFileSync(filePath, content); + console.log(` ✓ Stripped hardcoded __dirname/__filename paths (${removed} bytes)`); + } +} + async function buildHooks() { console.log('🔨 Building claude-mem hooks and worker service...\n'); @@ -69,6 +111,21 @@ async function buildHooks() { 'tree-sitter-ruby': '^0.23.1', 'tree-sitter-rust': '^0.24.0', 'tree-sitter-typescript': '^0.23.2', + 'tree-sitter-kotlin': '^0.3.8', + 'tree-sitter-swift': '^0.7.1', + 'tree-sitter-php': '^0.24.2', + 'tree-sitter-elixir': '^0.3.5', + '@tree-sitter-grammars/tree-sitter-lua': '^0.4.1', + 'tree-sitter-scala': '^0.24.0', + 'tree-sitter-bash': '^0.25.1', + 'tree-sitter-haskell': '^0.23.1', + '@tree-sitter-grammars/tree-sitter-zig': '^1.1.2', + 'tree-sitter-css': '^0.25.0', + 'tree-sitter-scss': '^1.0.0', + '@tree-sitter-grammars/tree-sitter-toml': '^0.7.0', + '@tree-sitter-grammars/tree-sitter-yaml': '^0.7.1', + '@derekstride/tree-sitter-sql': '^0.3.11', + '@tree-sitter-grammars/tree-sitter-markdown': '^0.3.2', }, engines: { node: '>=18.0.0', @@ -124,6 +181,9 @@ async function buildHooks() { } }); + // Fix hardcoded __dirname/__filename in bundled output (#1410) + stripHardcodedDirname(`${hooksDir}/${WORKER_SERVICE.name}.cjs`); + // Make worker service executable fs.chmodSync(`${hooksDir}/${WORKER_SERVICE.name}.cjs`, 0o755); const workerStats = fs.statSync(`${hooksDir}/${WORKER_SERVICE.name}.cjs`); @@ -152,6 +212,21 @@ async function buildHooks() { 'tree-sitter-java', 'tree-sitter-c', 'tree-sitter-cpp', + 'tree-sitter-kotlin', + 'tree-sitter-swift', + 'tree-sitter-php', + 'tree-sitter-elixir', + '@tree-sitter-grammars/tree-sitter-lua', + 'tree-sitter-scala', + 'tree-sitter-bash', + 'tree-sitter-haskell', + '@tree-sitter-grammars/tree-sitter-zig', + 'tree-sitter-css', + 'tree-sitter-scss', + '@tree-sitter-grammars/tree-sitter-toml', + '@tree-sitter-grammars/tree-sitter-yaml', + '@derekstride/tree-sitter-sql', + '@tree-sitter-grammars/tree-sitter-markdown', ], define: { '__DEFAULT_PACKAGE_VERSION__': `"${version}"` @@ -161,6 +236,9 @@ async function buildHooks() { } }); + // Fix hardcoded __dirname/__filename in bundled output (#1410) + stripHardcodedDirname(`${hooksDir}/${MCP_SERVER.name}.cjs`); + // Make MCP server executable fs.chmodSync(`${hooksDir}/${MCP_SERVER.name}.cjs`, 0o755); const mcpServerStats = fs.statSync(`${hooksDir}/${MCP_SERVER.name}.cjs`); @@ -184,6 +262,9 @@ async function buildHooks() { // No banner needed: CJS files under Node.js have __dirname/__filename natively }); + // Fix hardcoded __dirname/__filename in bundled output (#1410) + stripHardcodedDirname(`${hooksDir}/${CONTEXT_GENERATOR.name}.cjs`); + const contextGenStats = fs.statSync(`${hooksDir}/${CONTEXT_GENERATOR.name}.cjs`); console.log(`✓ context-generator built (${(contextGenStats.size / 1024).toFixed(2)} KB)`); diff --git a/scripts/regenerate-claude-md.ts b/scripts/regenerate-claude-md.ts index 4d88c1e6..41a9321a 100644 --- a/scripts/regenerate-claude-md.ts +++ b/scripts/regenerate-claude-md.ts @@ -94,9 +94,12 @@ function getTrackedFolders(workingDir: string): Set { const absPath = path.join(workingDir, file); let dir = path.dirname(absPath); - // Add all parent directories up to (but not including) the working dir - while (dir.length > workingDir.length && dir.startsWith(workingDir)) { + // Add all parent directories up to and including the working dir itself. + // The working dir is included so that root-level files (stored in the DB + // as bare filenames with no directory component) can be matched. Fixes #1514. + while (dir.length >= workingDir.length && dir.startsWith(workingDir)) { folders.add(dir); + if (dir === workingDir) break; dir = path.dirname(dir); } } @@ -164,19 +167,37 @@ function findObservationsByFolder(db: Database, relativeFolderPath: string, proj // Query more results than needed since we'll filter some out const queryLimit = limit * 3; - const sql = ` - SELECT o.*, o.discovery_tokens - FROM observations o - WHERE o.project = ? - AND (o.files_modified LIKE ? OR o.files_read LIKE ?) - ORDER BY o.created_at_epoch DESC - LIMIT ? - `; + // For the root folder (empty relativeFolderPath), observations may have bare + // filenames stored without any directory component (e.g. ["dashboard.html"]). + // In that case the LIKE pattern below would never match, so we fetch all + // observations for the project and let isDirectChild filter to root-level files. + // Fixes #1514. + let allMatches: ObservationRow[]; - // Files in DB are stored as relative paths like "src/services/foo.ts" - // Match any file that starts with this folder path (we'll filter to direct children below) - const likePattern = `%"${relativeFolderPath}/%`; - const allMatches = db.prepare(sql).all(project, likePattern, likePattern, queryLimit) as ObservationRow[]; + if (relativeFolderPath === '' || relativeFolderPath === '.') { + const sql = ` + SELECT o.*, o.discovery_tokens + FROM observations o + WHERE o.project = ? + AND (o.files_modified IS NOT NULL OR o.files_read IS NOT NULL) + ORDER BY o.created_at_epoch DESC + LIMIT ? + `; + allMatches = db.prepare(sql).all(project, queryLimit) as ObservationRow[]; + } else { + const sql = ` + SELECT o.*, o.discovery_tokens + FROM observations o + WHERE o.project = ? + AND (o.files_modified LIKE ? OR o.files_read LIKE ?) + ORDER BY o.created_at_epoch DESC + LIMIT ? + `; + // Files in DB are stored as relative paths like "src/services/foo.ts" + // Match any file that starts with this folder path (we'll filter to direct children below) + const likePattern = `%"${relativeFolderPath}/%`; + allMatches = db.prepare(sql).all(project, likePattern, likePattern, queryLimit) as ObservationRow[]; + } // Filter to only observations with direct child files (not in subfolders) return allMatches.filter(obs => hasDirectChildFile(obs, relativeFolderPath)).slice(0, limit); diff --git a/scripts/sync-plugin-manifests.js b/scripts/sync-plugin-manifests.js new file mode 100644 index 00000000..3a364978 --- /dev/null +++ b/scripts/sync-plugin-manifests.js @@ -0,0 +1,95 @@ +#!/usr/bin/env node + +import fs from 'fs'; +import path from 'path'; +import { fileURLToPath } from 'url'; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const rootDir = path.resolve(__dirname, '..'); + +const packageJsonPath = path.join(rootDir, 'package.json'); +const codexPluginPath = path.join(rootDir, '.codex-plugin', 'plugin.json'); +const claudePluginPath = path.join(rootDir, '.claude-plugin', 'plugin.json'); + +function readJson(filePath) { + return JSON.parse(fs.readFileSync(filePath, 'utf8')); +} + +function writeJson(filePath, value) { + fs.writeFileSync(filePath, JSON.stringify(value, null, 2) + '\n'); +} + +function syncCodexPlugin(plugin, pkg) { + const author = + typeof plugin.author === 'object' && plugin.author ? plugin.author : {}; + + return { + ...plugin, + name: pkg.name, + version: pkg.version, + description: pkg.description, + homepage: pkg.homepage, + repository: normalizeRepositoryUrl(pkg.repository), + license: pkg.license, + keywords: pkg.keywords, + author: { + ...author, + name: normalizeAuthorName(pkg.author), + }, + interface: { + ...plugin.interface, + developerName: normalizeAuthorName(pkg.author), + websiteURL: normalizeRepositoryUrl(pkg.repository), + }, + }; +} + +function syncClaudePlugin(plugin, pkg) { + return { + ...plugin, + name: pkg.name, + version: pkg.version, + description: pkg.description, + homepage: pkg.homepage, + repository: normalizeRepositoryUrl(pkg.repository), + license: pkg.license, + keywords: pkg.keywords, + author: { + ...(typeof plugin.author === 'object' && plugin.author ? plugin.author : {}), + name: normalizeAuthorName(pkg.author), + }, + }; +} + +function normalizeAuthorName(author) { + if (typeof author === 'string') return author; + if (author && typeof author === 'object' && typeof author.name === 'string') return author.name; + return ''; +} + +function normalizeRepositoryUrl(repository) { + if (typeof repository === 'string') return repository.replace(/\.git$/, ''); + if (repository && typeof repository === 'object' && typeof repository.url === 'string') + return repository.url.replace(/\.git$/, ''); + return ''; +} + +function main() { + for (const filePath of [packageJsonPath, codexPluginPath, claudePluginPath]) { + if (!fs.existsSync(filePath)) { + console.error(`Missing required file: ${filePath}`); + process.exit(1); + } + } + + const pkg = readJson(packageJsonPath); + const codexPlugin = readJson(codexPluginPath); + const claudePlugin = readJson(claudePluginPath); + + writeJson(codexPluginPath, syncCodexPlugin(codexPlugin, pkg)); + writeJson(claudePluginPath, syncClaudePlugin(claudePlugin, pkg)); + + console.log('✓ Synced plugin manifests from package.json'); +} + +main(); diff --git a/src/cli/handlers/context.ts b/src/cli/handlers/context.ts index f751ce40..cbb06b0b 100644 --- a/src/cli/handlers/context.ts +++ b/src/cli/handlers/context.ts @@ -12,6 +12,7 @@ import { HOOK_EXIT_CODES } from '../../shared/hook-constants.js'; import { logger } from '../../utils/logger.js'; import { SettingsDefaultsManager } from '../../shared/SettingsDefaultsManager.js'; import { USER_SETTINGS_PATH } from '../../shared/paths.js'; +import { normalizePlatformSource } from '../../shared/platform-source.js'; export const contextHandler: EventHandler = { async execute(input: NormalizedHookInput): Promise { @@ -31,6 +32,7 @@ export const contextHandler: EventHandler = { const cwd = input.cwd ?? process.cwd(); const context = getProjectContext(cwd); const port = getWorkerPort(); + const platformSource = normalizePlatformSource(input.platform); // Check if terminal output should be shown (load settings early) const settings = SettingsDefaultsManager.loadFromFile(USER_SETTINGS_PATH); @@ -38,7 +40,7 @@ export const contextHandler: EventHandler = { // Pass all projects (parent + worktree if applicable) for unified timeline const projectsParam = context.allProjects.join(','); - const apiPath = `/api/context/inject?projects=${encodeURIComponent(projectsParam)}`; +const apiPath = `/api/context/inject?projects=${encodeURIComponent(projectsParam)}&platformSource=${encodeURIComponent(platformSource)}`; const colorApiPath = input.platform === 'claude-code' ? `${apiPath}&colors=true` : apiPath; // Note: Removed AbortSignal.timeout due to Windows Bun cleanup issue (libuv assertion) diff --git a/src/cli/handlers/file-context.ts b/src/cli/handlers/file-context.ts new file mode 100644 index 00000000..c53818fd --- /dev/null +++ b/src/cli/handlers/file-context.ts @@ -0,0 +1,258 @@ +/** + * File Context Handler - PreToolUse + * + * Injects relevant observation history when Claude reads/edits a file, + * so it can avoid duplicating past work. + */ + +import type { EventHandler, NormalizedHookInput, HookResult } from '../types.js'; +import { ensureWorkerRunning, workerHttpRequest } from '../../shared/worker-utils.js'; +import { logger } from '../../utils/logger.js'; +import { parseJsonArray } from '../../shared/timeline-formatting.js'; +import { statSync } from 'fs'; +import path from 'path'; +import { isProjectExcluded } from '../../utils/project-filter.js'; +import { SettingsDefaultsManager } from '../../shared/SettingsDefaultsManager.js'; +import { USER_SETTINGS_PATH } from '../../shared/paths.js'; +import { getProjectContext } from '../../utils/project-name.js'; + +/** Skip the gate for files smaller than this — timeline overhead exceeds file read cost. */ +const FILE_READ_GATE_MIN_BYTES = 1_500; + +/** Fetch more candidates than the display limit so dedup still fills 15 slots. */ +const FETCH_LOOKAHEAD_LIMIT = 40; + +/** Maximum observations to show in the timeline. */ +const DISPLAY_LIMIT = 15; + +const TYPE_ICONS: Record = { + decision: '\u2696\uFE0F', + bugfix: '\uD83D\uDD34', + feature: '\uD83D\uDFE3', + refactor: '\uD83D\uDD04', + discovery: '\uD83D\uDD35', + change: '\u2705', +}; + +function compactTime(timeStr: string): string { + return timeStr.toLowerCase().replace(' am', 'a').replace(' pm', 'p'); +} + +function formatTime(epoch: number): string { + const date = new Date(epoch); + return date.toLocaleString('en-US', { hour: 'numeric', minute: '2-digit', hour12: true }); +} + +function formatDate(epoch: number): string { + const date = new Date(epoch); + return date.toLocaleString('en-US', { month: 'short', day: 'numeric', year: 'numeric' }); +} + +interface ObservationRow { + id: number; + memory_session_id: string; + title: string | null; + type: string; + created_at_epoch: number; + files_read: string | null; + files_modified: string | null; +} + +/** + * Deduplicate and rank observations for the timeline display. + * + * 1. Same-session dedup: keep only the most recent observation per session + * (input is already sorted newest-first by SQL). + * 2. Specificity scoring: rank by how specifically the observation is about + * the target file (modified > read-only, fewer total files > many). + * 3. Truncate to displayLimit. + */ +function deduplicateObservations( + observations: ObservationRow[], + targetPath: string, + displayLimit: number +): ObservationRow[] { + // Phase 1: Keep only the most recent observation per session + const seenSessions = new Set(); + const dedupedBySession: ObservationRow[] = []; + for (const obs of observations) { + const sessionKey = obs.memory_session_id ?? `no-session-${obs.id}`; + if (!seenSessions.has(sessionKey)) { + seenSessions.add(sessionKey); + dedupedBySession.push(obs); + } + } + + // Phase 2: Score by specificity to the target file + const scored = dedupedBySession.map(obs => { + const filesRead = parseJsonArray(obs.files_read); + const filesModified = parseJsonArray(obs.files_modified); + const totalFiles = filesRead.length + filesModified.length; + const normalizedTarget = targetPath.replace(/\\/g, '/'); + const inModified = filesModified.some(f => f.replace(/\\/g, '/') === normalizedTarget); + + let specificityScore = 0; + if (inModified) specificityScore += 2; + if (totalFiles <= 3) specificityScore += 2; + else if (totalFiles <= 8) specificityScore += 1; + // totalFiles > 8: no bonus (survey-like observation) + + return { obs, specificityScore }; + }); + + // Stable sort: higher specificity first, preserve chronological order within same score + scored.sort((a, b) => b.specificityScore - a.specificityScore); + + return scored.slice(0, displayLimit).map(s => s.obs); +} + +function formatFileTimeline(observations: ObservationRow[], filePath: string): string { + // Escape filePath for safe interpolation into recovery hints (quotes, backslashes, newlines) + const safePath = filePath.replace(/\\/g, '\\\\').replace(/"/g, '\\"').replace(/\n/g, '\\n'); + // Group observations by day + const byDay = new Map(); + for (const obs of observations) { + const day = formatDate(obs.created_at_epoch); + if (!byDay.has(day)) { + byDay.set(day, []); + } + byDay.get(day)!.push(obs); + } + + // Sort days chronologically (use earliest observation in each group, not first — which is specificity-sorted) + const sortedDays = Array.from(byDay.entries()).sort((a, b) => { + const aEpoch = Math.min(...a[1].map(o => o.created_at_epoch)); + const bEpoch = Math.min(...b[1].map(o => o.created_at_epoch)); + return aEpoch - bEpoch; + }); + + // Include current date/time so the model can judge recency of observations + const now = new Date(); + const currentDate = now.toLocaleDateString('en-CA'); // YYYY-MM-DD + const currentTime = now.toLocaleTimeString('en-US', { + hour: 'numeric', + minute: '2-digit', + hour12: true + }).toLowerCase().replace(' ', ''); + const currentTimezone = now.toLocaleTimeString('en-US', { timeZoneName: 'short' }).split(' ').pop(); + + const lines: string[] = [ + `Current: ${currentDate} ${currentTime} ${currentTimezone}`, + `This file has prior observations. Only line 1 was read to save tokens.`, + `- **Already know enough?** The timeline below may be all you need (semantic priming).`, + `- **Need details?** get_observations([IDs]) — ~300 tokens each.`, + `- **Need full file?** Read again with offset/limit for the section you need.`, + `- **Need to edit?** Edit works — the file is registered as read. Use smart_outline("${safePath}") for line numbers.`, + ]; + + for (const [day, dayObservations] of sortedDays) { + // Sort within each day chronologically (deduplicateObservations reorders by specificity) + const chronological = [...dayObservations].sort((a, b) => a.created_at_epoch - b.created_at_epoch); + lines.push(`### ${day}`); + for (const obs of chronological) { + const title = (obs.title || 'Untitled').replace(/[\r\n\t]+/g, ' ').replace(/\s+/g, ' ').trim().slice(0, 160); + const icon = TYPE_ICONS[obs.type] || '\u2753'; + const time = compactTime(formatTime(obs.created_at_epoch)); + lines.push(`${obs.id} ${time} ${icon} ${title}`); + } + } + + return lines.join('\n'); +} + +export const fileContextHandler: EventHandler = { + async execute(input: NormalizedHookInput): Promise { + // Extract file_path from toolInput + const toolInput = input.toolInput as Record | undefined; + const filePath = toolInput?.file_path as string | undefined; + + if (!filePath) { + return { continue: true, suppressOutput: true }; + } + + // Skip gate for files below the token-economics threshold — timeline (~370 tokens) + // costs more than reading small files directly. + try { + const statPath = path.isAbsolute(filePath) + ? filePath + : path.resolve(input.cwd || process.cwd(), filePath); + const stat = statSync(statPath); + if (stat.size < FILE_READ_GATE_MIN_BYTES) { + return { continue: true, suppressOutput: true }; + } + } catch (err: any) { + if (err.code === 'ENOENT') return { continue: true, suppressOutput: true }; + // Other errors (symlink, permission denied) — fall through and let gate proceed + } + + // Check if project is excluded from tracking + const settings = SettingsDefaultsManager.loadFromFile(USER_SETTINGS_PATH); + if (input.cwd && isProjectExcluded(input.cwd, settings.CLAUDE_MEM_EXCLUDED_PROJECTS)) { + logger.debug('HOOK', 'Project excluded from tracking, skipping file context', { cwd: input.cwd }); + return { continue: true, suppressOutput: true }; + } + + // Ensure worker is running + const workerReady = await ensureWorkerRunning(); + if (!workerReady) { + return { continue: true, suppressOutput: true }; + } + + // Query worker for observations related to this file + try { + const context = getProjectContext(input.cwd); + // Observations store relative paths — convert absolute to relative using cwd + const cwd = input.cwd || process.cwd(); + const absolutePath = path.isAbsolute(filePath) ? filePath : path.resolve(cwd, filePath); + const relativePath = path.relative(cwd, absolutePath).split(path.sep).join("/"); + const queryParams = new URLSearchParams({ path: relativePath }); + // Pass all project names (parent + worktree) for unified lookup + if (context.allProjects.length > 0) { + queryParams.set('projects', context.allProjects.join(',')); + } + queryParams.set('limit', String(FETCH_LOOKAHEAD_LIMIT)); + + const response = await workerHttpRequest(`/api/observations/by-file?${queryParams.toString()}`, { + method: 'GET', + }); + + if (!response.ok) { + logger.warn('HOOK', 'File context query failed, skipping', { status: response.status, filePath }); + return { continue: true, suppressOutput: true }; + } + + const data = await response.json() as { observations: ObservationRow[]; count: number }; + + if (!data.observations || data.observations.length === 0) { + return { continue: true, suppressOutput: true }; + } + + // Deduplicate: one per session, ranked by specificity to this file + const dedupedObservations = deduplicateObservations(data.observations, relativePath, DISPLAY_LIMIT); + if (dedupedObservations.length === 0) { + return { continue: true, suppressOutput: true }; + } + + // Allow the read with limit: 1 line — just enough for Edit's "file must be read" + // check to pass, while keeping token cost near zero. The observation timeline + // gives Claude full context about prior work on this file. + const timeline = formatFileTimeline(dedupedObservations, filePath); + return { + hookSpecificOutput: { + hookEventName: 'PreToolUse', + additionalContext: timeline, + permissionDecision: 'allow', + updatedInput: { + file_path: filePath, + limit: 1, + }, + }, + }; + } catch (error) { + logger.warn('HOOK', 'File context fetch error, skipping', { + error: error instanceof Error ? error.message : String(error), + }); + return { continue: true, suppressOutput: true }; + } + }, +}; diff --git a/src/cli/handlers/file-edit.ts b/src/cli/handlers/file-edit.ts index 7c5265f2..5a727665 100644 --- a/src/cli/handlers/file-edit.ts +++ b/src/cli/handlers/file-edit.ts @@ -9,6 +9,7 @@ import type { EventHandler, NormalizedHookInput, HookResult } from '../types.js' import { ensureWorkerRunning, workerHttpRequest } from '../../shared/worker-utils.js'; import { logger } from '../../utils/logger.js'; import { HOOK_EXIT_CODES } from '../../shared/hook-constants.js'; +import { normalizePlatformSource } from '../../shared/platform-source.js'; export const fileEditHandler: EventHandler = { async execute(input: NormalizedHookInput): Promise { @@ -20,6 +21,7 @@ export const fileEditHandler: EventHandler = { } const { sessionId, cwd, filePath, edits } = input; + const platformSource = normalizePlatformSource(input.platform); if (!filePath) { throw new Error('fileEditHandler requires filePath'); @@ -42,6 +44,7 @@ export const fileEditHandler: EventHandler = { headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ contentSessionId: sessionId, + platformSource, tool_name: 'write_file', tool_input: { filePath, edits }, tool_response: { success: true }, diff --git a/src/cli/handlers/index.ts b/src/cli/handlers/index.ts index ebbb294d..b9525d77 100644 --- a/src/cli/handlers/index.ts +++ b/src/cli/handlers/index.ts @@ -13,6 +13,7 @@ import { observationHandler } from './observation.js'; import { summarizeHandler } from './summarize.js'; import { userMessageHandler } from './user-message.js'; import { fileEditHandler } from './file-edit.js'; +import { fileContextHandler } from './file-context.js'; import { sessionCompleteHandler } from './session-complete.js'; export type EventType = @@ -22,7 +23,8 @@ export type EventType = | 'summarize' // Stop - generate summary (phase 1) | 'session-complete' // Stop - complete session (phase 2) - fixes #842 | 'user-message' // SessionStart (parallel) - display to user - | 'file-edit'; // Cursor afterFileEdit + | 'file-edit' // Cursor afterFileEdit + | 'file-context'; // PreToolUse - inject file observation history const handlers: Record = { 'context': contextHandler, @@ -31,7 +33,8 @@ const handlers: Record = { 'summarize': summarizeHandler, 'session-complete': sessionCompleteHandler, 'user-message': userMessageHandler, - 'file-edit': fileEditHandler + 'file-edit': fileEditHandler, + 'file-context': fileContextHandler }; /** @@ -64,4 +67,5 @@ export { observationHandler } from './observation.js'; export { summarizeHandler } from './summarize.js'; export { userMessageHandler } from './user-message.js'; export { fileEditHandler } from './file-edit.js'; +export { fileContextHandler } from './file-context.js'; export { sessionCompleteHandler } from './session-complete.js'; diff --git a/src/cli/handlers/observation.ts b/src/cli/handlers/observation.ts index ed2ced12..f01fd3f2 100644 --- a/src/cli/handlers/observation.ts +++ b/src/cli/handlers/observation.ts @@ -11,6 +11,7 @@ import { HOOK_EXIT_CODES } from '../../shared/hook-constants.js'; import { isProjectExcluded } from '../../utils/project-filter.js'; import { SettingsDefaultsManager } from '../../shared/SettingsDefaultsManager.js'; import { USER_SETTINGS_PATH } from '../../shared/paths.js'; +import { normalizePlatformSource } from '../../shared/platform-source.js'; export const observationHandler: EventHandler = { async execute(input: NormalizedHookInput): Promise { @@ -22,6 +23,7 @@ export const observationHandler: EventHandler = { } const { sessionId, cwd, toolName, toolInput, toolResponse } = input; + const platformSource = normalizePlatformSource(input.platform); if (!toolName) { // No tool name provided - skip observation gracefully @@ -51,6 +53,7 @@ export const observationHandler: EventHandler = { headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ contentSessionId: sessionId, + platformSource, tool_name: toolName, tool_input: toolInput, tool_response: toolResponse, diff --git a/src/cli/handlers/session-complete.ts b/src/cli/handlers/session-complete.ts index c6e4ac5c..e2a88096 100644 --- a/src/cli/handlers/session-complete.ts +++ b/src/cli/handlers/session-complete.ts @@ -12,6 +12,7 @@ import type { EventHandler, NormalizedHookInput, HookResult } from '../types.js'; import { ensureWorkerRunning, workerHttpRequest } from '../../shared/worker-utils.js'; import { logger } from '../../utils/logger.js'; +import { normalizePlatformSource } from '../../shared/platform-source.js'; export const sessionCompleteHandler: EventHandler = { async execute(input: NormalizedHookInput): Promise { @@ -23,6 +24,7 @@ export const sessionCompleteHandler: EventHandler = { } const { sessionId } = input; + const platformSource = normalizePlatformSource(input.platform); if (!sessionId) { logger.warn('HOOK', 'session-complete: Missing sessionId, skipping'); @@ -39,7 +41,8 @@ export const sessionCompleteHandler: EventHandler = { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ - contentSessionId: sessionId + contentSessionId: sessionId, + platformSource }) }); diff --git a/src/cli/handlers/session-init.ts b/src/cli/handlers/session-init.ts index 1b704406..16984364 100644 --- a/src/cli/handlers/session-init.ts +++ b/src/cli/handlers/session-init.ts @@ -12,6 +12,7 @@ import { HOOK_EXIT_CODES } from '../../shared/hook-constants.js'; import { isProjectExcluded } from '../../utils/project-filter.js'; import { SettingsDefaultsManager } from '../../shared/SettingsDefaultsManager.js'; import { USER_SETTINGS_PATH } from '../../shared/paths.js'; +import { normalizePlatformSource } from '../../shared/platform-source.js'; export const sessionInitHandler: EventHandler = { async execute(input: NormalizedHookInput): Promise { @@ -42,6 +43,7 @@ export const sessionInitHandler: EventHandler = { const prompt = (!rawPrompt || !rawPrompt.trim()) ? '[media prompt]' : rawPrompt; const project = getProjectName(cwd); + const platformSource = normalizePlatformSource(input.platform); logger.debug('HOOK', 'session-init: Calling /api/sessions/init', { contentSessionId: sessionId, project }); @@ -52,7 +54,8 @@ export const sessionInitHandler: EventHandler = { body: JSON.stringify({ contentSessionId: sessionId, project, - prompt + prompt, + platformSource }) }); diff --git a/src/cli/types.ts b/src/cli/types.ts index 02083ee9..6d027430 100644 --- a/src/cli/types.ts +++ b/src/cli/types.ts @@ -17,7 +17,13 @@ export interface NormalizedHookInput { export interface HookResult { continue?: boolean; suppressOutput?: boolean; - hookSpecificOutput?: { hookEventName: string; additionalContext: string }; + hookSpecificOutput?: { + hookEventName: string; + additionalContext: string; + permissionDecision?: 'allow' | 'deny'; + permissionDecisionReason?: string; + updatedInput?: Record; + }; systemMessage?: string; exitCode?: number; } diff --git a/src/sdk/parser.ts b/src/sdk/parser.ts index 09c466f4..eca04b92 100644 --- a/src/sdk/parser.ts +++ b/src/sdk/parser.ts @@ -138,7 +138,7 @@ export function parseSummary(text: string, sessionId?: number): ParsedSummary | const next_steps = extractField(summaryContent, 'next_steps'); const notes = extractField(summaryContent, 'notes'); // Optional - // NOTE FROM THEDOTMACK: 100% of the time we must SAVE the summary, even if fields are missing. 10/24/2025 + // NOTE FROM THEDOTMACK: 100% of the time we must SAVE the summary, even if fields are missing. 10/24/2025 // NEVER DO THIS NONSENSE AGAIN. // Validate required fields are present (notes is optional) @@ -154,6 +154,15 @@ export function parseSummary(text: string, sessionId?: number): ParsedSummary | // return null; // } + // Guard: if NO sub-tags matched at all, this is a false positive — + // accidentally appeared inside an response with no structured content. + // This is NOT the same as missing some fields (which we intentionally allow above). + // Fix for #1360. + if (!request && !investigated && !learned && !completed && !next_steps) { + logger.warn('PARSER', 'Summary match has no sub-tags — skipping false positive', { sessionId }); + return null; + } + return { request, investigated, diff --git a/src/servers/mcp-server.ts b/src/servers/mcp-server.ts index 70fbf336..afbb0ccc 100644 --- a/src/servers/mcp-server.ts +++ b/src/servers/mcp-server.ts @@ -27,7 +27,8 @@ import { CallToolRequestSchema, ListToolsRequestSchema, } from '@modelcontextprotocol/sdk/types.js'; -import { workerHttpRequest } from '../shared/worker-utils.js'; +import { getWorkerPort, workerHttpRequest } from '../shared/worker-utils.js'; +import { ensureWorkerStarted } from '../services/worker-service.js'; import { searchCodebase, formatSearchResults } from '../services/smart-file-read/search.js'; import { parseFile, formatFoldedView, unfoldSymbol } from '../services/smart-file-read/parser.js'; import { readFile } from 'node:fs/promises'; @@ -144,6 +145,26 @@ async function verifyWorkerConnection(): Promise { } } +/** + * Ensure Worker is available for Codex and other MCP-only clients. + * Claude hooks already start the worker; this path makes Codex turnkey. + */ +async function ensureWorkerConnection(): Promise { + if (await verifyWorkerConnection()) { + return true; + } + + logger.warn('SYSTEM', 'Worker not available, attempting auto-start for MCP client'); + + try { + const port = getWorkerPort(); + return await ensureWorkerStarted(port); + } catch (error) { + logger.error('SYSTEM', 'Worker auto-start failed', undefined, error as Error); + return false; + } +} + /** * Tool definitions with HTTP-based handlers * Minimal descriptions - use help() tool with operation parameter for detailed docs @@ -392,6 +413,30 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => { // Prevents orphaned MCP server processes when Claude Code exits unexpectedly const HEARTBEAT_INTERVAL_MS = 30_000; let heartbeatTimer: ReturnType | null = null; +let isCleaningUp = false; + +function handleStdioClosed() { + cleanup('stdio-closed'); +} + +function handleStdioError(error: Error) { + logger.warn('SYSTEM', 'MCP stdio stream errored, shutting down', { + message: error.message + }); + cleanup('stdio-error'); +} + +function attachStdioLifecycle() { + process.stdin.on('end', handleStdioClosed); + process.stdin.on('close', handleStdioClosed); + process.stdin.on('error', handleStdioError); +} + +function detachStdioLifecycle() { + process.stdin.off('end', handleStdioClosed); + process.stdin.off('close', handleStdioClosed); + process.stdin.off('error', handleStdioError); +} function startParentHeartbeat() { // ppid-based orphan detection only works on Unix @@ -414,9 +459,13 @@ function startParentHeartbeat() { // Cleanup function — synchronous to ensure consistent behavior whether called // from signal handlers, heartbeat interval, or awaited in async context -function cleanup() { +function cleanup(reason: string = 'shutdown') { + if (isCleaningUp) return; + isCleaningUp = true; + if (heartbeatTimer) clearInterval(heartbeatTimer); - logger.info('SYSTEM', 'MCP server shutting down'); + detachStdioLifecycle(); + logger.info('SYSTEM', 'MCP server shutting down', { reason }); process.exit(0); } @@ -428,6 +477,7 @@ process.on('SIGINT', cleanup); async function main() { // Start the MCP server const transport = new StdioServerTransport(); + attachStdioLifecycle(); await server.connect(transport); logger.info('SYSTEM', 'Claude-mem search server started'); @@ -436,7 +486,7 @@ async function main() { // Check Worker availability in background setTimeout(async () => { - const workerAvailable = await verifyWorkerConnection(); + const workerAvailable = await ensureWorkerConnection(); if (!workerAvailable) { logger.error('SYSTEM', 'Worker not available', undefined, {}); logger.error('SYSTEM', 'Tools will fail until Worker is started'); diff --git a/src/services/context/ContextBuilder.ts b/src/services/context/ContextBuilder.ts index 3971bd36..0a5c1988 100644 --- a/src/services/context/ContextBuilder.ts +++ b/src/services/context/ContextBuilder.ts @@ -29,8 +29,8 @@ import { renderHeader } from './sections/HeaderRenderer.js'; import { renderTimeline } from './sections/TimelineRenderer.js'; import { shouldShowSummary, renderSummaryFields } from './sections/SummaryRenderer.js'; import { renderPreviouslySection, renderFooter } from './sections/FooterRenderer.js'; -import { renderMarkdownEmptyState } from './formatters/MarkdownFormatter.js'; -import { renderColorEmptyState } from './formatters/ColorFormatter.js'; +import { renderAgentEmptyState } from './formatters/AgentFormatter.js'; +import { renderHumanEmptyState } from './formatters/HumanFormatter.js'; // Version marker path for native module error handling const VERSION_MARKER_PATH = path.join( @@ -66,8 +66,8 @@ function initializeDatabase(): SessionStore | null { /** * Render empty state when no data exists */ -function renderEmptyState(project: string, useColors: boolean): string { - return useColors ? renderColorEmptyState(project) : renderMarkdownEmptyState(project); +function renderEmptyState(project: string, forHuman: boolean): string { + return forHuman ? renderHumanEmptyState(project) : renderAgentEmptyState(project); } /** @@ -80,7 +80,7 @@ function buildContextOutput( config: ContextConfig, cwd: string, sessionId: string | undefined, - useColors: boolean + forHuman: boolean ): string { const output: string[] = []; @@ -88,7 +88,7 @@ function buildContextOutput( const economics = calculateTokenEconomics(observations); // Render header section - output.push(...renderHeader(project, economics, config, useColors)); + output.push(...renderHeader(project, economics, config, forHuman)); // Prepare timeline data const displaySummaries = summaries.slice(0, config.sessionCount); @@ -97,22 +97,22 @@ function buildContextOutput( const fullObservationIds = getFullObservationIds(observations, config.fullObservationCount); // Render timeline - output.push(...renderTimeline(timeline, fullObservationIds, config, cwd, useColors)); + output.push(...renderTimeline(timeline, fullObservationIds, config, cwd, forHuman)); // Render most recent summary if applicable const mostRecentSummary = summaries[0]; const mostRecentObservation = observations[0]; if (shouldShowSummary(config, mostRecentSummary, mostRecentObservation)) { - output.push(...renderSummaryFields(mostRecentSummary, useColors)); + output.push(...renderSummaryFields(mostRecentSummary, forHuman)); } // Render previously section (prior assistant message) const priorMessages = getPriorSessionMessages(observations, config, sessionId, cwd); - output.push(...renderPreviouslySection(priorMessages, useColors)); + output.push(...renderPreviouslySection(priorMessages, forHuman)); // Render footer - output.push(...renderFooter(economics, config, useColors)); + output.push(...renderFooter(economics, config, forHuman)); return output.join('\n').trimEnd(); } @@ -125,11 +125,12 @@ function buildContextOutput( */ export async function generateContext( input?: ContextInput, - useColors: boolean = false + forHuman: boolean = false ): Promise { const config = loadContextConfig(); const cwd = input?.cwd ?? process.cwd(); const project = getProjectName(cwd); + const platformSource = input?.platform_source; // Use provided projects array (for worktree support) or fall back to single project const projects = input?.projects || [project]; @@ -149,15 +150,15 @@ export async function generateContext( try { // Query data for all projects (supports worktree: parent + worktree combined) const observations = projects.length > 1 - ? queryObservationsMulti(db, projects, config) - : queryObservations(db, project, config); + ? queryObservationsMulti(db, projects, config, platformSource) + : queryObservations(db, project, config, platformSource); const summaries = projects.length > 1 - ? querySummariesMulti(db, projects, config) - : querySummaries(db, project, config); + ? querySummariesMulti(db, projects, config, platformSource) + : querySummaries(db, project, config, platformSource); // Handle empty state if (observations.length === 0 && summaries.length === 0) { - return renderEmptyState(project, useColors); + return renderEmptyState(project, forHuman); } // Build and return context @@ -168,7 +169,7 @@ export async function generateContext( config, cwd, input?.session_id, - useColors + forHuman ); return output; diff --git a/src/services/context/ObservationCompiler.ts b/src/services/context/ObservationCompiler.ts index a55e873c..c18d07eb 100644 --- a/src/services/context/ObservationCompiler.ts +++ b/src/services/context/ObservationCompiler.ts @@ -8,6 +8,7 @@ import path from 'path'; import { existsSync, readFileSync } from 'fs'; import { SessionStore } from '../sqlite/SessionStore.js'; import { logger } from '../../utils/logger.js'; +import { SYSTEM_REMINDER_REGEX } from '../../utils/tag-stripping.js'; import { CLAUDE_CONFIG_DIR } from '../../shared/paths.js'; import type { ContextConfig, @@ -25,7 +26,8 @@ import { SUMMARY_LOOKAHEAD } from './types.js'; export function queryObservations( db: SessionStore, project: string, - config: ContextConfig + config: ContextConfig, + platformSource?: string ): Observation[] { const typeArray = Array.from(config.observationTypes); const typePlaceholders = typeArray.map(() => '?').join(','); @@ -34,19 +36,38 @@ export function queryObservations( return db.db.prepare(` SELECT - id, memory_session_id, type, title, subtitle, narrative, - facts, concepts, files_read, files_modified, discovery_tokens, - created_at, created_at_epoch - FROM observations - WHERE project = ? + o.id, + o.memory_session_id, + COALESCE(s.platform_source, 'claude') as platform_source, + o.type, + o.title, + o.subtitle, + o.narrative, + o.facts, + o.concepts, + o.files_read, + o.files_modified, + o.discovery_tokens, + o.created_at, + o.created_at_epoch + FROM observations o + LEFT JOIN sdk_sessions s ON o.memory_session_id = s.memory_session_id + WHERE o.project = ? AND type IN (${typePlaceholders}) AND EXISTS ( - SELECT 1 FROM json_each(concepts) + SELECT 1 FROM json_each(o.concepts) WHERE value IN (${conceptPlaceholders}) ) - ORDER BY created_at_epoch DESC + ${platformSource ? "AND COALESCE(s.platform_source, 'claude') = ?" : ''} + ORDER BY o.created_at_epoch DESC LIMIT ? - `).all(project, ...typeArray, ...conceptArray, config.totalObservationCount) as Observation[]; + `).all( + project, + ...typeArray, + ...conceptArray, + ...(platformSource ? [platformSource] : []), + config.totalObservationCount + ) as Observation[]; } /** @@ -55,15 +76,30 @@ export function queryObservations( export function querySummaries( db: SessionStore, project: string, - config: ContextConfig + config: ContextConfig, + platformSource?: string ): SessionSummary[] { return db.db.prepare(` - SELECT id, memory_session_id, request, investigated, learned, completed, next_steps, created_at, created_at_epoch - FROM session_summaries - WHERE project = ? - ORDER BY created_at_epoch DESC + SELECT + ss.id, + ss.memory_session_id, + COALESCE(s.platform_source, 'claude') as platform_source, + ss.request, + ss.investigated, + ss.learned, + ss.completed, + ss.next_steps, + ss.created_at, + ss.created_at_epoch + FROM session_summaries ss + LEFT JOIN sdk_sessions s ON ss.memory_session_id = s.memory_session_id + WHERE ss.project = ? + ${platformSource ? "AND COALESCE(s.platform_source, 'claude') = ?" : ''} + ORDER BY ss.created_at_epoch DESC LIMIT ? - `).all(project, config.sessionCount + SUMMARY_LOOKAHEAD) as SessionSummary[]; + `).all( + ...[project, ...(platformSource ? [platformSource] : []), config.sessionCount + SUMMARY_LOOKAHEAD] + ) as SessionSummary[]; } /** @@ -75,7 +111,8 @@ export function querySummaries( export function queryObservationsMulti( db: SessionStore, projects: string[], - config: ContextConfig + config: ContextConfig, + platformSource?: string ): Observation[] { const typeArray = Array.from(config.observationTypes); const typePlaceholders = typeArray.map(() => '?').join(','); @@ -87,19 +124,39 @@ export function queryObservationsMulti( return db.db.prepare(` SELECT - id, memory_session_id, type, title, subtitle, narrative, - facts, concepts, files_read, files_modified, discovery_tokens, - created_at, created_at_epoch, project - FROM observations - WHERE project IN (${projectPlaceholders}) + o.id, + o.memory_session_id, + COALESCE(s.platform_source, 'claude') as platform_source, + o.type, + o.title, + o.subtitle, + o.narrative, + o.facts, + o.concepts, + o.files_read, + o.files_modified, + o.discovery_tokens, + o.created_at, + o.created_at_epoch, + o.project + FROM observations o + LEFT JOIN sdk_sessions s ON o.memory_session_id = s.memory_session_id + WHERE o.project IN (${projectPlaceholders}) AND type IN (${typePlaceholders}) AND EXISTS ( - SELECT 1 FROM json_each(concepts) + SELECT 1 FROM json_each(o.concepts) WHERE value IN (${conceptPlaceholders}) ) - ORDER BY created_at_epoch DESC + ${platformSource ? "AND COALESCE(s.platform_source, 'claude') = ?" : ''} + ORDER BY o.created_at_epoch DESC LIMIT ? - `).all(...projects, ...typeArray, ...conceptArray, config.totalObservationCount) as Observation[]; + `).all( + ...projects, + ...typeArray, + ...conceptArray, + ...(platformSource ? [platformSource] : []), + config.totalObservationCount + ) as Observation[]; } /** @@ -111,18 +168,32 @@ export function queryObservationsMulti( export function querySummariesMulti( db: SessionStore, projects: string[], - config: ContextConfig + config: ContextConfig, + platformSource?: string ): SessionSummary[] { // Build IN clause for projects const projectPlaceholders = projects.map(() => '?').join(','); return db.db.prepare(` - SELECT id, memory_session_id, request, investigated, learned, completed, next_steps, created_at, created_at_epoch, project - FROM session_summaries - WHERE project IN (${projectPlaceholders}) - ORDER BY created_at_epoch DESC + SELECT + ss.id, + ss.memory_session_id, + COALESCE(s.platform_source, 'claude') as platform_source, + ss.request, + ss.investigated, + ss.learned, + ss.completed, + ss.next_steps, + ss.created_at, + ss.created_at_epoch, + ss.project + FROM session_summaries ss + LEFT JOIN sdk_sessions s ON ss.memory_session_id = s.memory_session_id + WHERE ss.project IN (${projectPlaceholders}) + ${platformSource ? "AND COALESCE(s.platform_source, 'claude') = ?" : ''} + ORDER BY ss.created_at_epoch DESC LIMIT ? - `).all(...projects, config.sessionCount + SUMMARY_LOOKAHEAD) as SessionSummary[]; + `).all(...projects, ...(platformSource ? [platformSource] : []), config.sessionCount + SUMMARY_LOOKAHEAD) as SessionSummary[]; } /** @@ -164,7 +235,7 @@ export function extractPriorMessages(transcriptPath: string): PriorMessages { text += block.text; } } - text = text.replace(/[\s\S]*?<\/system-reminder>/g, '').trim(); + text = text.replace(SYSTEM_REMINDER_REGEX, '').trim(); if (text) { lastAssistantMessage = text; break; diff --git a/src/services/context/formatters/MarkdownFormatter.ts b/src/services/context/formatters/AgentFormatter.ts similarity index 72% rename from src/services/context/formatters/MarkdownFormatter.ts rename to src/services/context/formatters/AgentFormatter.ts index 50164e2f..54ff6c76 100644 --- a/src/services/context/formatters/MarkdownFormatter.ts +++ b/src/services/context/formatters/AgentFormatter.ts @@ -1,8 +1,8 @@ /** - * MarkdownFormatter - Formats context output as compact markdown for LLM injection + * AgentFormatter - Formats context output as compact markdown for LLM injection * * Optimized for token efficiency: flat lines instead of tables, no repeated headers. - * The colored terminal formatter (ColorFormatter.ts) handles human-readable display separately. + * The human-readable terminal formatter (HumanFormatter.ts) handles human-readable display separately. */ import type { @@ -31,9 +31,9 @@ function formatHeaderDateTime(): string { } /** - * Render markdown header + * Render agent header */ -export function renderMarkdownHeader(project: string): string[] { +export function renderAgentHeader(project: string): string[] { return [ `# $CMEM ${project} ${formatHeaderDateTime()}`, '' @@ -41,9 +41,9 @@ export function renderMarkdownHeader(project: string): string[] { } /** - * Render markdown legend + * Render agent legend */ -export function renderMarkdownLegend(): string[] { +export function renderAgentLegend(): string[] { const mode = ModeManager.getInstance().getActiveMode(); const typeLegendItems = mode.observation_types.map(t => `${t.emoji}${t.id}`).join(' '); @@ -56,23 +56,23 @@ export function renderMarkdownLegend(): string[] { } /** - * Render markdown column key - no longer needed in compact format + * Render agent column key - no longer needed in compact format */ -export function renderMarkdownColumnKey(): string[] { +export function renderAgentColumnKey(): string[] { return []; } /** - * Render markdown context index instructions - folded into legend + * Render agent context index instructions - folded into legend */ -export function renderMarkdownContextIndex(): string[] { +export function renderAgentContextIndex(): string[] { return []; } /** - * Render markdown context economics + * Render agent context economics */ -export function renderMarkdownContextEconomics( +export function renderAgentContextEconomics( economics: TokenEconomics, config: ContextConfig ): string[] { @@ -98,18 +98,18 @@ export function renderMarkdownContextEconomics( } /** - * Render markdown day header + * Render agent day header */ -export function renderMarkdownDayHeader(day: string): string[] { +export function renderAgentDayHeader(day: string): string[] { return [ `### ${day}`, ]; } /** - * Render markdown file header - no longer renders table headers in compact format + * Render agent file header - no longer renders table headers in compact format */ -export function renderMarkdownFileHeader(_file: string): string[] { +export function renderAgentFileHeader(_file: string): string[] { // File grouping eliminated in compact format - file context is in observation titles return []; } @@ -124,7 +124,7 @@ function compactTime(time: string): string { /** * Render compact flat line for observation (replaces table row) */ -export function renderMarkdownTableRow( +export function renderAgentTableRow( obs: Observation, timeDisplay: string, _config: ContextConfig @@ -137,9 +137,9 @@ export function renderMarkdownTableRow( } /** - * Render markdown full observation + * Render agent full observation */ -export function renderMarkdownFullObservation( +export function renderAgentFullObservation( obs: Observation, timeDisplay: string, detailField: string | null, @@ -172,9 +172,9 @@ export function renderMarkdownFullObservation( } /** - * Render markdown summary item in timeline + * Render agent summary item in timeline */ -export function renderMarkdownSummaryItem( +export function renderAgentSummaryItem( summary: { id: number; request: string | null }, formattedTime: string ): string[] { @@ -184,17 +184,17 @@ export function renderMarkdownSummaryItem( } /** - * Render markdown summary field + * Render agent summary field */ -export function renderMarkdownSummaryField(label: string, value: string | null): string[] { +export function renderAgentSummaryField(label: string, value: string | null): string[] { if (!value) return []; return [`**${label}**: ${value}`, '']; } /** - * Render markdown previously section + * Render agent previously section */ -export function renderMarkdownPreviouslySection(priorMessages: PriorMessages): string[] { +export function renderAgentPreviouslySection(priorMessages: PriorMessages): string[] { if (!priorMessages.assistantMessage) return []; return [ @@ -209,9 +209,9 @@ export function renderMarkdownPreviouslySection(priorMessages: PriorMessages): s } /** - * Render markdown footer + * Render agent footer */ -export function renderMarkdownFooter(totalDiscoveryTokens: number, totalReadTokens: number): string[] { +export function renderAgentFooter(totalDiscoveryTokens: number, totalReadTokens: number): string[] { const workTokensK = Math.round(totalDiscoveryTokens / 1000); return [ '', @@ -220,8 +220,8 @@ export function renderMarkdownFooter(totalDiscoveryTokens: number, totalReadToke } /** - * Render markdown empty state + * Render agent empty state */ -export function renderMarkdownEmptyState(project: string): string { +export function renderAgentEmptyState(project: string): string { return `# $CMEM ${project} ${formatHeaderDateTime()}\n\nNo previous sessions found.`; } diff --git a/src/services/context/formatters/ColorFormatter.ts b/src/services/context/formatters/HumanFormatter.ts similarity index 82% rename from src/services/context/formatters/ColorFormatter.ts rename to src/services/context/formatters/HumanFormatter.ts index 20061813..1abfa740 100644 --- a/src/services/context/formatters/ColorFormatter.ts +++ b/src/services/context/formatters/HumanFormatter.ts @@ -1,5 +1,5 @@ /** - * ColorFormatter - Formats context output with ANSI colors for terminal + * HumanFormatter - Formats context output with ANSI colors for terminal * * Handles all colored formatting for context injection (terminal display). */ @@ -30,9 +30,9 @@ function formatHeaderDateTime(): string { } /** - * Render colored header + * Render human-readable header */ -export function renderColorHeader(project: string): string[] { +export function renderHumanHeader(project: string): string[] { return [ '', `${colors.bright}${colors.cyan}[${project}] recent context, ${formatHeaderDateTime()}${colors.reset}`, @@ -42,9 +42,9 @@ export function renderColorHeader(project: string): string[] { } /** - * Render colored legend + * Render human-readable legend */ -export function renderColorLegend(): string[] { +export function renderHumanLegend(): string[] { const mode = ModeManager.getInstance().getActiveMode(); const typeLegendItems = mode.observation_types.map(t => `${t.emoji} ${t.id}`).join(' | '); @@ -55,9 +55,9 @@ export function renderColorLegend(): string[] { } /** - * Render colored column key + * Render human-readable column key */ -export function renderColorColumnKey(): string[] { +export function renderHumanColumnKey(): string[] { return [ `${colors.bright}Column Key${colors.reset}`, `${colors.dim} Read: Tokens to read this observation (cost to learn it now)${colors.reset}`, @@ -67,9 +67,9 @@ export function renderColorColumnKey(): string[] { } /** - * Render colored context index instructions + * Render human-readable context index instructions */ -export function renderColorContextIndex(): string[] { +export function renderHumanContextIndex(): string[] { return [ `${colors.dim}Context Index: This semantic index (titles, types, files, tokens) is usually sufficient to understand past work.${colors.reset}`, '', @@ -82,9 +82,9 @@ export function renderColorContextIndex(): string[] { } /** - * Render colored context economics + * Render human-readable context economics */ -export function renderColorContextEconomics( +export function renderHumanContextEconomics( economics: TokenEconomics, config: ContextConfig ): string[] { @@ -111,9 +111,9 @@ export function renderColorContextEconomics( } /** - * Render colored day header + * Render human-readable day header */ -export function renderColorDayHeader(day: string): string[] { +export function renderHumanDayHeader(day: string): string[] { return [ `${colors.bright}${colors.cyan}${day}${colors.reset}`, '' @@ -121,18 +121,18 @@ export function renderColorDayHeader(day: string): string[] { } /** - * Render colored file header + * Render human-readable file header */ -export function renderColorFileHeader(file: string): string[] { +export function renderHumanFileHeader(file: string): string[] { return [ `${colors.dim}${file}${colors.reset}` ]; } /** - * Render colored table row for observation + * Render human-readable table row for observation */ -export function renderColorTableRow( +export function renderHumanTableRow( obs: Observation, time: string, showTime: boolean, @@ -150,9 +150,9 @@ export function renderColorTableRow( } /** - * Render colored full observation + * Render human-readable full observation */ -export function renderColorFullObservation( +export function renderHumanFullObservation( obs: Observation, time: string, showTime: boolean, @@ -181,9 +181,9 @@ export function renderColorFullObservation( } /** - * Render colored summary item in timeline + * Render human-readable summary item in timeline */ -export function renderColorSummaryItem( +export function renderHumanSummaryItem( summary: { id: number; request: string | null }, formattedTime: string ): string[] { @@ -195,17 +195,17 @@ export function renderColorSummaryItem( } /** - * Render colored summary field + * Render human-readable summary field */ -export function renderColorSummaryField(label: string, value: string | null, color: string): string[] { +export function renderHumanSummaryField(label: string, value: string | null, color: string): string[] { if (!value) return []; return [`${color}${label}:${colors.reset} ${value}`, '']; } /** - * Render colored previously section + * Render human-readable previously section */ -export function renderColorPreviouslySection(priorMessages: PriorMessages): string[] { +export function renderHumanPreviouslySection(priorMessages: PriorMessages): string[] { if (!priorMessages.assistantMessage) return []; return [ @@ -220,9 +220,9 @@ export function renderColorPreviouslySection(priorMessages: PriorMessages): stri } /** - * Render colored footer + * Render human-readable footer */ -export function renderColorFooter(totalDiscoveryTokens: number, totalReadTokens: number): string[] { +export function renderHumanFooter(totalDiscoveryTokens: number, totalReadTokens: number): string[] { const workTokensK = Math.round(totalDiscoveryTokens / 1000); return [ '', @@ -231,8 +231,8 @@ export function renderColorFooter(totalDiscoveryTokens: number, totalReadTokens: } /** - * Render colored empty state + * Render human-readable empty state */ -export function renderColorEmptyState(project: string): string { +export function renderHumanEmptyState(project: string): string { return `\n${colors.bright}${colors.cyan}[${project}] recent context, ${formatHeaderDateTime()}${colors.reset}\n${colors.gray}${'─'.repeat(60)}${colors.reset}\n\n${colors.dim}No previous sessions found for this project yet.${colors.reset}\n`; } diff --git a/src/services/context/sections/FooterRenderer.ts b/src/services/context/sections/FooterRenderer.ts index a592a1af..af5773e8 100644 --- a/src/services/context/sections/FooterRenderer.ts +++ b/src/services/context/sections/FooterRenderer.ts @@ -6,20 +6,20 @@ import type { ContextConfig, TokenEconomics, PriorMessages } from '../types.js'; import { shouldShowContextEconomics } from '../TokenCalculator.js'; -import * as Markdown from '../formatters/MarkdownFormatter.js'; -import * as Color from '../formatters/ColorFormatter.js'; +import * as Agent from '../formatters/AgentFormatter.js'; +import * as Human from '../formatters/HumanFormatter.js'; /** * Render the previously section (prior assistant message) */ export function renderPreviouslySection( priorMessages: PriorMessages, - useColors: boolean + forHuman: boolean ): string[] { - if (useColors) { - return Color.renderColorPreviouslySection(priorMessages); + if (forHuman) { + return Human.renderHumanPreviouslySection(priorMessages); } - return Markdown.renderMarkdownPreviouslySection(priorMessages); + return Agent.renderAgentPreviouslySection(priorMessages); } /** @@ -28,15 +28,15 @@ export function renderPreviouslySection( export function renderFooter( economics: TokenEconomics, config: ContextConfig, - useColors: boolean + forHuman: boolean ): string[] { // Only show footer if we have savings to display if (!shouldShowContextEconomics(config) || economics.totalDiscoveryTokens <= 0 || economics.savings <= 0) { return []; } - if (useColors) { - return Color.renderColorFooter(economics.totalDiscoveryTokens, economics.totalReadTokens); + if (forHuman) { + return Human.renderHumanFooter(economics.totalDiscoveryTokens, economics.totalReadTokens); } - return Markdown.renderMarkdownFooter(economics.totalDiscoveryTokens, economics.totalReadTokens); + return Agent.renderAgentFooter(economics.totalDiscoveryTokens, economics.totalReadTokens); } diff --git a/src/services/context/sections/HeaderRenderer.ts b/src/services/context/sections/HeaderRenderer.ts index 42ac201e..c94b9623 100644 --- a/src/services/context/sections/HeaderRenderer.ts +++ b/src/services/context/sections/HeaderRenderer.ts @@ -6,8 +6,8 @@ import type { ContextConfig, TokenEconomics } from '../types.js'; import { shouldShowContextEconomics } from '../TokenCalculator.js'; -import * as Markdown from '../formatters/MarkdownFormatter.js'; -import * as Color from '../formatters/ColorFormatter.js'; +import * as Agent from '../formatters/AgentFormatter.js'; +import * as Human from '../formatters/HumanFormatter.js'; /** * Render the complete header section @@ -16,44 +16,44 @@ export function renderHeader( project: string, economics: TokenEconomics, config: ContextConfig, - useColors: boolean + forHuman: boolean ): string[] { const output: string[] = []; // Main header - if (useColors) { - output.push(...Color.renderColorHeader(project)); + if (forHuman) { + output.push(...Human.renderHumanHeader(project)); } else { - output.push(...Markdown.renderMarkdownHeader(project)); + output.push(...Agent.renderAgentHeader(project)); } // Legend - if (useColors) { - output.push(...Color.renderColorLegend()); + if (forHuman) { + output.push(...Human.renderHumanLegend()); } else { - output.push(...Markdown.renderMarkdownLegend()); + output.push(...Agent.renderAgentLegend()); } // Column key - if (useColors) { - output.push(...Color.renderColorColumnKey()); + if (forHuman) { + output.push(...Human.renderHumanColumnKey()); } else { - output.push(...Markdown.renderMarkdownColumnKey()); + output.push(...Agent.renderAgentColumnKey()); } // Context index instructions - if (useColors) { - output.push(...Color.renderColorContextIndex()); + if (forHuman) { + output.push(...Human.renderHumanContextIndex()); } else { - output.push(...Markdown.renderMarkdownContextIndex()); + output.push(...Agent.renderAgentContextIndex()); } // Context economics if (shouldShowContextEconomics(config)) { - if (useColors) { - output.push(...Color.renderColorContextEconomics(economics, config)); + if (forHuman) { + output.push(...Human.renderHumanContextEconomics(economics, config)); } else { - output.push(...Markdown.renderMarkdownContextEconomics(economics, config)); + output.push(...Agent.renderAgentContextEconomics(economics, config)); } } diff --git a/src/services/context/sections/SummaryRenderer.ts b/src/services/context/sections/SummaryRenderer.ts index fcf51a9c..93b13aab 100644 --- a/src/services/context/sections/SummaryRenderer.ts +++ b/src/services/context/sections/SummaryRenderer.ts @@ -6,8 +6,8 @@ import type { ContextConfig, Observation, SessionSummary } from '../types.js'; import { colors } from '../types.js'; -import * as Markdown from '../formatters/MarkdownFormatter.js'; -import * as Color from '../formatters/ColorFormatter.js'; +import * as Agent from '../formatters/AgentFormatter.js'; +import * as Human from '../formatters/HumanFormatter.js'; /** * Check if summary should be displayed @@ -45,20 +45,20 @@ export function shouldShowSummary( */ export function renderSummaryFields( summary: SessionSummary, - useColors: boolean + forHuman: boolean ): string[] { const output: string[] = []; - if (useColors) { - output.push(...Color.renderColorSummaryField('Investigated', summary.investigated, colors.blue)); - output.push(...Color.renderColorSummaryField('Learned', summary.learned, colors.yellow)); - output.push(...Color.renderColorSummaryField('Completed', summary.completed, colors.green)); - output.push(...Color.renderColorSummaryField('Next Steps', summary.next_steps, colors.magenta)); + if (forHuman) { + output.push(...Human.renderHumanSummaryField('Investigated', summary.investigated, colors.blue)); + output.push(...Human.renderHumanSummaryField('Learned', summary.learned, colors.yellow)); + output.push(...Human.renderHumanSummaryField('Completed', summary.completed, colors.green)); + output.push(...Human.renderHumanSummaryField('Next Steps', summary.next_steps, colors.magenta)); } else { - output.push(...Markdown.renderMarkdownSummaryField('Investigated', summary.investigated)); - output.push(...Markdown.renderMarkdownSummaryField('Learned', summary.learned)); - output.push(...Markdown.renderMarkdownSummaryField('Completed', summary.completed)); - output.push(...Markdown.renderMarkdownSummaryField('Next Steps', summary.next_steps)); + output.push(...Agent.renderAgentSummaryField('Investigated', summary.investigated)); + output.push(...Agent.renderAgentSummaryField('Learned', summary.learned)); + output.push(...Agent.renderAgentSummaryField('Completed', summary.completed)); + output.push(...Agent.renderAgentSummaryField('Next Steps', summary.next_steps)); } return output; diff --git a/src/services/context/sections/TimelineRenderer.ts b/src/services/context/sections/TimelineRenderer.ts index 9cf6741e..b1f43724 100644 --- a/src/services/context/sections/TimelineRenderer.ts +++ b/src/services/context/sections/TimelineRenderer.ts @@ -1,8 +1,8 @@ /** * TimelineRenderer - Renders the chronological timeline of observations and summaries * - * Handles day grouping and rendering. In markdown (LLM) mode, uses flat compact lines. - * In color (terminal) mode, uses file grouping with visual formatting. + * Handles day grouping and rendering. In agent (LLM) mode, uses flat compact lines. + * In human (terminal) mode, uses file grouping with visual formatting. */ import type { @@ -12,8 +12,8 @@ import type { SummaryTimelineItem, } from '../types.js'; import { formatTime, formatDate, formatDateTime, extractFirstFile, parseJsonArray } from '../../../shared/timeline-formatting.js'; -import * as Markdown from '../formatters/MarkdownFormatter.js'; -import * as Color from '../formatters/ColorFormatter.js'; +import * as Agent from '../formatters/AgentFormatter.js'; +import * as Human from '../formatters/HumanFormatter.js'; /** * Group timeline items by day @@ -51,9 +51,9 @@ function getDetailField(obs: Observation, config: ContextConfig): string | null } /** - * Render a single day's timeline items (markdown/LLM mode - flat compact lines) + * Render a single day's timeline items (agent/LLM mode - flat compact lines) */ -function renderDayTimelineMarkdown( +function renderDayTimelineAgent( day: string, dayItems: TimelineItem[], fullObservationIds: Set, @@ -61,17 +61,15 @@ function renderDayTimelineMarkdown( ): string[] { const output: string[] = []; - output.push(...Markdown.renderMarkdownDayHeader(day)); + output.push(...Agent.renderAgentDayHeader(day)); let lastTime = ''; for (const item of dayItems) { if (item.type === 'summary') { - lastTime = ''; - const summary = item.data as SummaryTimelineItem; const formattedTime = formatDateTime(summary.displayTime); - output.push(...Markdown.renderMarkdownSummaryItem(summary, formattedTime)); + output.push(...Agent.renderAgentSummaryItem(summary, formattedTime)); } else { const obs = item.data as Observation; const time = formatTime(obs.created_at); @@ -83,9 +81,9 @@ function renderDayTimelineMarkdown( if (shouldShowFull) { const detailField = getDetailField(obs, config); - output.push(...Markdown.renderMarkdownFullObservation(obs, timeDisplay, detailField, config)); + output.push(...Agent.renderAgentFullObservation(obs, timeDisplay, detailField, config)); } else { - output.push(Markdown.renderMarkdownTableRow(obs, timeDisplay, config)); + output.push(Agent.renderAgentTableRow(obs, timeDisplay, config)); } } } @@ -94,9 +92,9 @@ function renderDayTimelineMarkdown( } /** - * Render a single day's timeline items (color/terminal mode - file grouped with tables) + * Render a single day's timeline items (human/terminal mode - file grouped with tables) */ -function renderDayTimelineColor( +function renderDayTimelineHuman( day: string, dayItems: TimelineItem[], fullObservationIds: Set, @@ -105,7 +103,7 @@ function renderDayTimelineColor( ): string[] { const output: string[] = []; - output.push(...Color.renderColorDayHeader(day)); + output.push(...Human.renderHumanDayHeader(day)); let currentFile: string | null = null; let lastTime = ''; @@ -117,7 +115,7 @@ function renderDayTimelineColor( const summary = item.data as SummaryTimelineItem; const formattedTime = formatDateTime(summary.displayTime); - output.push(...Color.renderColorSummaryItem(summary, formattedTime)); + output.push(...Human.renderHumanSummaryItem(summary, formattedTime)); } else { const obs = item.data as Observation; const file = extractFirstFile(obs.files_modified, cwd, obs.files_read); @@ -129,15 +127,15 @@ function renderDayTimelineColor( // Check if we need a new file section if (file !== currentFile) { - output.push(...Color.renderColorFileHeader(file)); + output.push(...Human.renderHumanFileHeader(file)); currentFile = file; } if (shouldShowFull) { const detailField = getDetailField(obs, config); - output.push(...Color.renderColorFullObservation(obs, time, showTime, detailField, config)); + output.push(...Human.renderHumanFullObservation(obs, time, showTime, detailField, config)); } else { - output.push(Color.renderColorTableRow(obs, time, showTime, config)); + output.push(Human.renderHumanTableRow(obs, time, showTime, config)); } } } @@ -156,12 +154,12 @@ export function renderDayTimeline( fullObservationIds: Set, config: ContextConfig, cwd: string, - useColors: boolean + forHuman: boolean ): string[] { - if (useColors) { - return renderDayTimelineColor(day, dayItems, fullObservationIds, config, cwd); + if (forHuman) { + return renderDayTimelineHuman(day, dayItems, fullObservationIds, config, cwd); } - return renderDayTimelineMarkdown(day, dayItems, fullObservationIds, config); + return renderDayTimelineAgent(day, dayItems, fullObservationIds, config); } /** @@ -172,13 +170,13 @@ export function renderTimeline( fullObservationIds: Set, config: ContextConfig, cwd: string, - useColors: boolean + forHuman: boolean ): string[] { const output: string[] = []; const itemsByDay = groupTimelineByDay(timeline); for (const [day, dayItems] of itemsByDay) { - output.push(...renderDayTimeline(day, dayItems, fullObservationIds, config, cwd, useColors)); + output.push(...renderDayTimeline(day, dayItems, fullObservationIds, config, cwd, forHuman)); } return output; diff --git a/src/services/context/types.ts b/src/services/context/types.ts index 32f8a754..44b059ca 100644 --- a/src/services/context/types.ts +++ b/src/services/context/types.ts @@ -15,6 +15,7 @@ export interface ContextInput { projects?: string[]; /** When true, return ALL observations with no limit */ full?: boolean; + platform_source?: string; [key: string]: any; } @@ -49,6 +50,7 @@ export interface ContextConfig { export interface Observation { id: number; memory_session_id: string; + platform_source?: string; type: string; title: string | null; subtitle: string | null; @@ -70,6 +72,7 @@ export interface Observation { export interface SessionSummary { id: number; memory_session_id: string; + platform_source?: string; request: string | null; investigated: string | null; learned: string | null; diff --git a/src/services/infrastructure/ProcessManager.ts b/src/services/infrastructure/ProcessManager.ts index 7df4b65a..db6f8d3a 100644 --- a/src/services/infrastructure/ProcessManager.ts +++ b/src/services/infrastructure/ProcessManager.ts @@ -453,6 +453,19 @@ export async function aggressiveStartupCleanup(): Promise { const pidsToKill: number[] = []; const allPatterns = [...AGGRESSIVE_CLEANUP_PATTERNS, ...AGE_GATED_CLEANUP_PATTERNS]; + // Protect parent process (the hook that spawned us) from being killed. + // Without this, a new daemon kills its own parent hook process (#1426). + // + // Note: readPidFile() is not used here because start() writes the new PID + // before initializeBackground() calls this function, so readPidFile() would + // just return process.pid (already protected). If a pre-existing worker needs + // protection, ensureWorkerStarted() handles that by returning early when a + // healthy worker is detected — we never reach this code in that case. + const protectedPids = new Set([currentPid]); + if (process.ppid && process.ppid > 0) { + protectedPids.add(process.ppid); + } + try { if (isWindows) { // Use WQL -Filter for server-side filtering (no $_ pipeline syntax). @@ -475,7 +488,7 @@ export async function aggressiveStartupCleanup(): Promise { for (const proc of processList) { const pid = proc.ProcessId; - if (!Number.isInteger(pid) || pid <= 0 || pid === currentPid) continue; + if (!Number.isInteger(pid) || pid <= 0 || protectedPids.has(pid)) continue; const commandLine = proc.CommandLine || ''; const isAggressive = AGGRESSIVE_CLEANUP_PATTERNS.some(p => commandLine.includes(p)); @@ -518,7 +531,7 @@ export async function aggressiveStartupCleanup(): Promise { const etime = match[2]; const command = match[3]; - if (!Number.isInteger(pid) || pid <= 0 || pid === currentPid) continue; + if (!Number.isInteger(pid) || pid <= 0 || protectedPids.has(pid)) continue; const isAggressive = AGGRESSIVE_CLEANUP_PATTERNS.some(p => command.includes(p)); diff --git a/src/services/smart-file-read/parser.ts b/src/services/smart-file-read/parser.ts index 43ad4d6a..1adf22aa 100644 --- a/src/services/smart-file-read/parser.ts +++ b/src/services/smart-file-read/parser.ts @@ -3,13 +3,15 @@ * * No native bindings. No WASM. Just the CLI binary + query patterns. * - * Supported: JS, TS, Python, Go, Rust, Ruby, Java, C, C++ + * Supported: JS, TS, Python, Go, Rust, Ruby, Java, C, C++, + * Kotlin, Swift, PHP, Elixir, Lua, Scala, Bash, Haskell, Zig, + * CSS, SCSS, TOML, YAML, SQL, Markdown * * by Copter Labs */ import { execFileSync } from "node:child_process"; -import { writeFileSync, mkdtempSync, rmSync, existsSync } from "node:fs"; +import { writeFileSync, readFileSync, mkdtempSync, rmSync, existsSync } from "node:fs"; import { join, dirname } from "node:path"; import { tmpdir } from "node:os"; import { createRequire } from "node:module"; @@ -25,7 +27,7 @@ const _require = typeof __filename !== 'undefined' export interface CodeSymbol { name: string; - kind: "function" | "class" | "method" | "interface" | "type" | "const" | "variable" | "export" | "struct" | "enum" | "trait" | "impl" | "property" | "getter" | "setter"; + kind: "function" | "class" | "method" | "interface" | "type" | "const" | "variable" | "export" | "struct" | "enum" | "trait" | "impl" | "property" | "getter" | "setter" | "mixin" | "section" | "code" | "metadata" | "reference"; signature: string; jsdoc?: string; lineStart: number; @@ -66,6 +68,28 @@ const LANG_MAP: Record = { ".cxx": "cpp", ".hpp": "cpp", ".hh": "cpp", + ".kt": "kotlin", + ".kts": "kotlin", + ".swift": "swift", + ".php": "php", + ".ex": "elixir", + ".exs": "elixir", + ".lua": "lua", + ".scala": "scala", + ".sc": "scala", + ".sh": "bash", + ".bash": "bash", + ".zsh": "bash", + ".hs": "haskell", + ".zig": "zig", + ".css": "css", + ".scss": "scss", + ".toml": "toml", + ".yml": "yaml", + ".yaml": "yaml", + ".sql": "sql", + ".md": "markdown", + ".mdx": "markdown", }; export function detectLanguage(filePath: string): string { @@ -73,6 +97,135 @@ export function detectLanguage(filePath: string): string { return LANG_MAP[ext] || "unknown"; } +/** + * Detect language with fallback to user-configured grammar extensions. + * Bundled LANG_MAP takes priority. + */ +function detectLanguageWithUserGrammars(filePath: string, userConfig: UserGrammarConfig): string { + const ext = filePath.slice(filePath.lastIndexOf(".")); + if (LANG_MAP[ext]) return LANG_MAP[ext]; + if (userConfig.extensionToLanguage[ext]) return userConfig.extensionToLanguage[ext]; + return "unknown"; +} + +/** + * Get the query key for a language, checking user config for custom queries. + */ +function getUserAwareQueryKey(language: string, userConfig: UserGrammarConfig): string { + // If user config has a specific query key for this language, use it + if (userConfig.languageToQueryKey[language]) { + return userConfig.languageToQueryKey[language]; + } + // Otherwise fall back to the bundled query key mapping + return getQueryKey(language); +} + +// --- User-installable grammars via .claude-mem.json --- + +export interface UserGrammarEntry { + package: string; + extensions: string[]; + query?: string; +} + +export interface UserGrammarConfig { + /** language name → grammar entry */ + grammars: Record; + /** file extension → language name (for user-defined extensions only) */ + extensionToLanguage: Record; + /** language name → query content (custom .scm file content or "generic") */ + languageToQueryKey: Record; +} + +const userGrammarCache = new Map(); + +const EMPTY_USER_GRAMMAR_CONFIG: UserGrammarConfig = { + grammars: {}, + extensionToLanguage: {}, + languageToQueryKey: {}, +}; + +/** + * Load user grammar configuration from .claude-mem.json in a project root. + * Cached per project root. Returns empty config if file doesn't exist or is invalid. + * User entries do NOT override bundled grammars. + */ +export function loadUserGrammars(projectRoot: string): UserGrammarConfig { + if (userGrammarCache.has(projectRoot)) return userGrammarCache.get(projectRoot)!; + + const configPath = join(projectRoot, ".claude-mem.json"); + let rawConfig: Record; + + try { + const content = readFileSync(configPath, "utf-8"); + rawConfig = JSON.parse(content); + } catch { + userGrammarCache.set(projectRoot, EMPTY_USER_GRAMMAR_CONFIG); + return EMPTY_USER_GRAMMAR_CONFIG; + } + + const grammarsRaw = rawConfig.grammars; + if (!grammarsRaw || typeof grammarsRaw !== "object" || Array.isArray(grammarsRaw)) { + userGrammarCache.set(projectRoot, EMPTY_USER_GRAMMAR_CONFIG); + return EMPTY_USER_GRAMMAR_CONFIG; + } + + const config: UserGrammarConfig = { + grammars: {}, + extensionToLanguage: {}, + languageToQueryKey: {}, + }; + + for (const [language, entry] of Object.entries(grammarsRaw as Record)) { + // Skip if this language is already bundled + if (GRAMMAR_PACKAGES[language]) continue; + + if (!entry || typeof entry !== "object" || Array.isArray(entry)) continue; + const typedEntry = entry as Record; + + const pkg = typedEntry.package; + const extensions = typedEntry.extensions; + const queryPath = typedEntry.query; + + // Validate required fields + if (typeof pkg !== "string" || !Array.isArray(extensions)) continue; + if (!extensions.every((e: unknown) => typeof e === "string")) continue; + + config.grammars[language] = { + package: pkg, + extensions: extensions as string[], + query: typeof queryPath === "string" ? queryPath : undefined, + }; + + // Map extensions to language (skip extensions already handled by bundled LANG_MAP) + for (const ext of extensions as string[]) { + if (!LANG_MAP[ext]) { + config.extensionToLanguage[ext] = language; + } + } + + // Resolve query content + if (typeof queryPath === "string") { + const fullQueryPath = join(projectRoot, queryPath); + try { + const queryContent = readFileSync(fullQueryPath, "utf-8"); + // Store with a unique key to avoid collisions with built-in queries + const queryKey = `user_${language}`; + QUERIES[queryKey] = queryContent; + config.languageToQueryKey[language] = queryKey; + } catch { + console.error(`[smart-file-read] Custom query file not found: ${fullQueryPath}, falling back to generic`); + config.languageToQueryKey[language] = "generic"; + } + } else { + config.languageToQueryKey[language] = "generic"; + } + } + + userGrammarCache.set(projectRoot, config); + return config; +} + // --- Grammar path resolution --- const GRAMMAR_PACKAGES: Record = { @@ -86,11 +239,45 @@ const GRAMMAR_PACKAGES: Record = { java: "tree-sitter-java", c: "tree-sitter-c", cpp: "tree-sitter-cpp", + kotlin: "tree-sitter-kotlin", + swift: "tree-sitter-swift", + php: "tree-sitter-php/php", + elixir: "tree-sitter-elixir", + lua: "@tree-sitter-grammars/tree-sitter-lua", + scala: "tree-sitter-scala", + bash: "tree-sitter-bash", + haskell: "tree-sitter-haskell", + zig: "@tree-sitter-grammars/tree-sitter-zig", + css: "tree-sitter-css", + scss: "tree-sitter-scss", + toml: "@tree-sitter-grammars/tree-sitter-toml", + yaml: "@tree-sitter-grammars/tree-sitter-yaml", + sql: "@derekstride/tree-sitter-sql", + markdown: "@tree-sitter-grammars/tree-sitter-markdown", +}; + +// Grammars where the parser source lives in a subdirectory of the npm package root, +// AND that subdirectory lacks its own package.json (so require.resolve won't find it). +// Maps language → subdirectory name under the package root. +const GRAMMAR_SUBDIR: Record = { + markdown: "tree-sitter-markdown", }; function resolveGrammarPath(language: string): string | null { const pkg = GRAMMAR_PACKAGES[language]; if (!pkg) return null; + + const subdir = GRAMMAR_SUBDIR[language]; + if (subdir) { + // Package root has no sub-package.json — resolve root then append subdir + try { + const rootPkgPath = _require.resolve(pkg + "/package.json"); + const resolved = join(dirname(rootPkgPath), subdir); + if (existsSync(join(resolved, "src"))) return resolved; + } catch { /* fall through */ } + return null; + } + try { const packageJsonPath = _require.resolve(pkg + "/package.json"); return dirname(packageJsonPath); @@ -99,6 +286,37 @@ function resolveGrammarPath(language: string): string | null { } } +/** + * Resolve grammar path with fallback to user-installed grammars. + * First tries bundled grammars, then falls back to the project's node_modules. + */ +export function resolveGrammarPathWithFallback(language: string, projectRoot?: string): string | null { + // Try bundled grammar first + const bundled = resolveGrammarPath(language); + if (bundled) return bundled; + + // Fall back to user-installed grammar in project's node_modules + if (!projectRoot) return null; + + const userConfig = loadUserGrammars(projectRoot); + const entry = userConfig.grammars[language]; + if (!entry) return null; + + try { + const packageJsonPath = join(projectRoot, "node_modules", entry.package, "package.json"); + if (existsSync(packageJsonPath)) { + const grammarDir = dirname(packageJsonPath); + // Verify it has a src/ directory (required by tree-sitter CLI) + if (existsSync(join(grammarDir, "src"))) return grammarDir; + } + } catch { + // Grammar package not installed + } + + console.error(`[smart-file-read] Grammar package not found for "${language}": ${entry.package} (install it in your project's node_modules)`); + return null; +} + // --- Query patterns (declarative symbol extraction) --- const QUERIES: Record = { @@ -150,6 +368,104 @@ const QUERIES: Record = { (interface_declaration name: (identifier) @name) @iface (enum_declaration name: (identifier) @name) @enm (import_declaration) @imp +`, + + kotlin: ` +(function_declaration (simple_identifier) @name) @func +(class_declaration (type_identifier) @name) @cls +(object_declaration (type_identifier) @name) @cls +(import_header) @imp +`, + + swift: ` +(function_declaration name: (simple_identifier) @name) @func +(class_declaration name: (type_identifier) @name) @cls +(protocol_declaration name: (type_identifier) @name) @iface +(import_declaration) @imp +`, + + php: ` +(function_definition name: (name) @name) @func +(class_declaration name: (name) @name) @cls +(interface_declaration name: (name) @name) @iface +(trait_declaration name: (name) @name) @trait_def +(method_declaration name: (name) @name) @method +(namespace_use_declaration) @imp +`, + + lua: ` +(function_declaration name: (identifier) @name) @func +(function_declaration name: (dot_index_expression) @name) @func +(function_declaration name: (method_index_expression) @name) @func +`, + + scala: ` +(function_definition name: (identifier) @name) @func +(class_definition name: (identifier) @name) @cls +(object_definition name: (identifier) @name) @cls +(trait_definition name: (identifier) @name) @trait_def +(import_declaration) @imp +`, + + bash: ` +(function_definition name: (word) @name) @func +`, + + haskell: ` +(function name: (variable) @name) @func +(type_synomym name: (name) @name) @tdef +(newtype name: (name) @name) @tdef +(data_type name: (name) @name) @tdef +(class name: (name) @name) @cls +(import) @imp +`, + + zig: ` +(function_declaration name: (identifier) @name) @func +(test_declaration) @func +`, + + css: ` +(rule_set (selectors) @name) @func +(media_statement) @cls +(keyframes_statement (keyframes_name) @name) @cls +(import_statement) @imp +`, + + scss: ` +(rule_set (selectors) @name) @func +(media_statement) @cls +(keyframes_statement (keyframes_name) @name) @cls +(import_statement) @imp +(mixin_statement name: (identifier) @name) @mixin_def +(function_statement name: (identifier) @name) @func +(include_statement) @imp +`, + + toml: ` +(table (bare_key) @name) @cls +(table (dotted_key) @name) @cls +(table_array_element (bare_key) @name) @cls +(table_array_element (dotted_key) @name) @cls +`, + + yaml: ` +(block_mapping_pair key: (flow_node) @name) @func +`, + + sql: ` +(create_table (object_reference) @name) @cls +(create_function (object_reference) @name) @func +(create_view (object_reference) @name) @cls +`, + + markdown: ` +(atx_heading heading_content: (inline) @name) @heading +(setext_heading heading_content: (paragraph) @name) @heading +(fenced_code_block (info_string (language) @name)) @code_block +(fenced_code_block) @code_block +(minus_metadata) @frontmatter +(link_reference_definition (link_label) @name) @ref `, generic: ` @@ -159,6 +475,15 @@ const QUERIES: Record = { (class_definition name: (identifier) @name) @cls (import_statement) @imp (import_declaration) @imp +`, + + php: ` +(function_definition name: (name) @name) @func +(method_declaration name: (name) @name) @method +(class_declaration name: (name) @name) @cls +(interface_declaration name: (name) @name) @iface +(trait_declaration name: (name) @name) @trait_def +(namespace_use_declaration) @imp `, }; @@ -173,6 +498,21 @@ function getQueryKey(language: string): string { case "rust": return "rust"; case "ruby": return "ruby"; case "java": return "java"; + case "kotlin": return "kotlin"; + case "swift": return "swift"; + case "php": return "php"; + case "elixir": return "generic"; + case "lua": return "lua"; + case "scala": return "scala"; + case "bash": return "bash"; + case "haskell": return "haskell"; + case "zig": return "zig"; + case "css": return "css"; + case "scss": return "scss"; + case "toml": return "toml"; + case "yaml": return "yaml"; + case "sql": return "sql"; + case "markdown": return "markdown"; default: return "generic"; } } @@ -308,6 +648,11 @@ const KIND_MAP: Record = { struct_def: "struct", trait_def: "trait", impl_def: "impl", + mixin_def: "mixin", + heading: "section", + code_block: "code", + frontmatter: "metadata", + ref: "reference", }; const CONTAINER_KINDS = new Set(["class", "struct", "impl", "trait"]); @@ -407,18 +752,36 @@ function buildSymbols(matches: RawMatch[], lines: string[], language: string): { const nameCapture = match.captures.find(c => c.tag === "name"); if (!kindCapture) continue; - const name = nameCapture?.text || "anonymous"; const startRow = kindCapture.startRow; const endRow = kindCapture.endRow; const kind = KIND_MAP[kindCapture.tag]; + const name = nameCapture?.text || "anonymous"; - const comment = findCommentAbove(lines, startRow); + // Markdown-specific: extract heading level and build signature + let signature: string; + if (language === "markdown" && kind === "section") { + const headingLine = lines[startRow] || ""; + const hashMatch = headingLine.match(/^(#{1,6})\s/); + const level = hashMatch ? hashMatch[1].length : 1; + signature = `${"#".repeat(level)} ${name}`; + } else if (language === "markdown" && kind === "code") { + const langTag = name !== "anonymous" ? name : ""; + signature = langTag ? "```" + langTag : "```"; + } else if (language === "markdown" && kind === "metadata") { + signature = "---frontmatter---"; + } else if (language === "markdown" && kind === "reference") { + signature = lines[startRow]?.trim() || name; + } else { + signature = extractSignatureFromLines(lines, startRow, endRow); + } + + const comment = language === "markdown" ? undefined : findCommentAbove(lines, startRow); const docstring = language === "python" ? findPythonDocstringFromLines(lines, startRow, endRow) : undefined; const sym: CodeSymbol = { name, kind, - signature: extractSignatureFromLines(lines, startRow, endRow), + signature, jsdoc: comment || docstring, lineStart: startRow, lineEnd: endRow, @@ -433,6 +796,34 @@ function buildSymbols(matches: RawMatch[], lines: string[], language: string): { symbols.push(sym); } + // Markdown: deduplicate code_block matches. The catch-all `(fenced_code_block) @code_block` + // pattern and the language-specific pattern both match the same block. Keep the named one. + if (language === "markdown") { + const codeBlocksByRange = new Map(); + const duplicateCodeBlocks = new Set(); + for (const sym of symbols) { + if (sym.kind !== "code") continue; + const rangeKey = `${sym.lineStart}:${sym.lineEnd}`; + const existing = codeBlocksByRange.get(rangeKey); + if (existing) { + // Prefer the named version (has actual language tag vs "anonymous") + if (sym.name !== "anonymous") { + duplicateCodeBlocks.add(existing); + codeBlocksByRange.set(rangeKey, sym); + } else { + duplicateCodeBlocks.add(sym); + } + } else { + codeBlocksByRange.set(rangeKey, sym); + } + } + if (duplicateCodeBlocks.size > 0) { + const filtered = symbols.filter(s => !duplicateCodeBlocks.has(s)); + symbols.length = 0; + symbols.push(...filtered); + } + } + // Nest methods inside containers const nested = new Set(); for (const container of containers) { @@ -451,11 +842,12 @@ function buildSymbols(matches: RawMatch[], lines: string[], language: string): { // --- Main parse functions --- -export function parseFile(content: string, filePath: string): FoldedFile { - const language = detectLanguage(filePath); +export function parseFile(content: string, filePath: string, projectRoot?: string): FoldedFile { + const userConfig = projectRoot ? loadUserGrammars(projectRoot) : EMPTY_USER_GRAMMAR_CONFIG; + const language = detectLanguageWithUserGrammars(filePath, userConfig); const lines = content.split("\n"); - const grammarPath = resolveGrammarPath(language); + const grammarPath = resolveGrammarPathWithFallback(language, projectRoot); if (!grammarPath) { return { filePath, language, symbols: [], imports: [], @@ -463,7 +855,7 @@ export function parseFile(content: string, filePath: string): FoldedFile { }; } - const queryKey = getQueryKey(language); + const queryKey = getUserAwareQueryKey(language, userConfig); const queryFile = getQueryFile(queryKey); // Write content to temp file with correct extension for language detection @@ -498,20 +890,22 @@ export function parseFile(content: string, filePath: string): FoldedFile { * Much faster than calling parseFile() per file (one process spawn per language vs per file). */ export function parseFilesBatch( - files: Array<{ absolutePath: string; relativePath: string; content: string }> + files: Array<{ absolutePath: string; relativePath: string; content: string }>, + projectRoot?: string ): Map { const results = new Map(); + const userConfig = projectRoot ? loadUserGrammars(projectRoot) : EMPTY_USER_GRAMMAR_CONFIG; // Group files by language (and thus by query + grammar) const languageGroups = new Map(); for (const file of files) { - const language = detectLanguage(file.relativePath); + const language = detectLanguageWithUserGrammars(file.relativePath, userConfig); if (!languageGroups.has(language)) languageGroups.set(language, []); languageGroups.get(language)!.push(file); } for (const [language, groupFiles] of languageGroups) { - const grammarPath = resolveGrammarPath(language); + const grammarPath = resolveGrammarPathWithFallback(language, projectRoot); if (!grammarPath) { // No grammar — return empty results for these files for (const file of groupFiles) { @@ -524,7 +918,7 @@ export function parseFilesBatch( continue; } - const queryKey = getQueryKey(language); + const queryKey = getUserAwareQueryKey(language, userConfig); const queryFile = getQueryFile(queryKey); // Run one batch query for all files of this language @@ -558,6 +952,10 @@ export function parseFilesBatch( // --- Formatting --- export function formatFoldedView(file: FoldedFile): string { + if (file.language === "markdown") { + return formatMarkdownFoldedView(file); + } + const parts: string[] = []; parts.push(`📁 ${file.filePath} (${file.language}, ${file.totalLines} lines)`); @@ -581,6 +979,64 @@ export function formatFoldedView(file: FoldedFile): string { return parts.join("\n"); } +function formatMarkdownFoldedView(file: FoldedFile): string { + const parts: string[] = []; + // Total width for the content column (before the line range) + const COL_WIDTH = 56; + + parts.push(`📄 ${file.filePath} (${file.language}, ${file.totalLines} lines)`); + + for (const sym of file.symbols) { + if (sym.kind === "section") { + // Extract heading level from the signature (count leading # characters) + const hashMatch = sym.signature.match(/^(#{1,6})\s/); + const level = hashMatch ? hashMatch[1].length : 1; + const indent = " ".repeat(level); + const lineRange = `L${sym.lineStart + 1}`; + const content = `${indent}${sym.signature}`; + parts.push(`${content.padEnd(COL_WIDTH)}${lineRange}`); + } else if (sym.kind === "code") { + // Find containing heading level for indentation + const containingLevel = findContainingHeadingLevel(file.symbols, sym.lineStart); + const indent = " ".repeat(containingLevel + 1); + const lineRange = sym.lineStart === sym.lineEnd + ? `L${sym.lineStart + 1}` + : `L${sym.lineStart + 1}-${sym.lineEnd + 1}`; + const content = `${indent}${sym.signature}`; + parts.push(`${content.padEnd(COL_WIDTH)}${lineRange}`); + } else if (sym.kind === "metadata") { + const lineRange = sym.lineStart === sym.lineEnd + ? `L${sym.lineStart + 1}` + : `L${sym.lineStart + 1}-${sym.lineEnd + 1}`; + const content = ` ${sym.signature}`; + parts.push(`${content.padEnd(COL_WIDTH)}${lineRange}`); + } else if (sym.kind === "reference") { + const containingLevel = findContainingHeadingLevel(file.symbols, sym.lineStart); + const indent = " ".repeat(containingLevel + 1); + const lineRange = `L${sym.lineStart + 1}`; + const content = `${indent}↗ ${sym.name}`; + parts.push(`${content.padEnd(COL_WIDTH)}${lineRange}`); + } + } + + return parts.join("\n"); +} + +/** + * Find the heading level of the most recent section heading before the given line. + * Returns 0 if no heading precedes the line. + */ +function findContainingHeadingLevel(symbols: CodeSymbol[], lineStart: number): number { + let bestLevel = 0; + for (const sym of symbols) { + if (sym.kind === "section" && sym.lineStart < lineStart) { + const hashMatch = sym.signature.match(/^(#{1,6})\s/); + bestLevel = hashMatch ? hashMatch[1].length : 1; + } + } + return bestLevel; +} + function formatSymbol(sym: CodeSymbol, indent: string): string { const parts: string[] = []; @@ -621,7 +1077,8 @@ function getSymbolIcon(kind: CodeSymbol["kind"]): string { function: "ƒ", method: "ƒ", class: "◆", interface: "◇", type: "◇", const: "●", variable: "○", export: "→", struct: "◆", enum: "▣", trait: "◇", impl: "◈", - property: "○", getter: "⇢", setter: "⇠", + property: "○", getter: "⇢", setter: "⇠", mixin: "◈", + section: "§", code: "⌘", metadata: "◊", reference: "↗", }; return icons[kind] || "·"; } @@ -647,6 +1104,31 @@ export function unfoldSymbol(content: string, filePath: string, symbolName: stri const lines = content.split("\n"); + // Markdown section unfold: return from heading to next heading of same or higher level + if (file.language === "markdown" && symbol.kind === "section") { + const hashMatch = symbol.signature.match(/^(#{1,6})\s/); + const level = hashMatch ? hashMatch[1].length : 1; + const start = symbol.lineStart; + + // Find the next heading at same or higher (lower number) level + let end = lines.length - 1; + for (const sym of file.symbols) { + if (sym.kind === "section" && sym.lineStart > start) { + const otherHashMatch = sym.signature.match(/^(#{1,6})\s/); + const otherLevel = otherHashMatch ? otherHashMatch[1].length : 1; + if (otherLevel <= level) { + end = sym.lineStart - 1; + // Trim trailing blank lines + while (end > start && lines[end].trim() === "") end--; + break; + } + } + } + + const extracted = lines.slice(start, end + 1).join("\n"); + return `\n${extracted}`; + } + // Include preceding comments/decorators let start = symbol.lineStart; for (let i = symbol.lineStart - 1; i >= 0; i--) { diff --git a/src/services/smart-file-read/search.ts b/src/services/smart-file-read/search.ts index 0c185564..4b31e333 100644 --- a/src/services/smart-file-read/search.ts +++ b/src/services/smart-file-read/search.ts @@ -12,7 +12,7 @@ import { readFile, readdir, stat } from "node:fs/promises"; import { join, relative } from "node:path"; -import { parseFilesBatch, formatFoldedView, type FoldedFile } from "./parser.js"; +import { parseFilesBatch, formatFoldedView, loadUserGrammars, type FoldedFile } from "./parser.js"; const CODE_EXTENSIONS = new Set([ ".js", ".jsx", ".ts", ".tsx", ".mjs", ".cjs", @@ -22,11 +22,22 @@ const CODE_EXTENSIONS = new Set([ ".rb", ".java", ".cs", - ".cpp", ".c", ".h", ".hpp", + ".cpp", ".cc", ".cxx", ".c", ".h", ".hpp", ".hh", ".swift", - ".kt", + ".kt", ".kts", ".php", ".vue", ".svelte", + ".ex", ".exs", + ".lua", + ".scala", ".sc", + ".sh", ".bash", ".zsh", + ".hs", + ".zig", + ".css", ".scss", + ".toml", + ".yml", ".yaml", + ".sql", + ".md", ".mdx", ]); const IGNORE_DIRS = new Set([ @@ -59,8 +70,9 @@ export interface SymbolMatch { /** * Walk a directory recursively, yielding file paths. + * extraExtensions: additional file extensions to include (from user grammar config). */ -async function* walkDir(dir: string, rootDir: string, maxDepth: number = 20): AsyncGenerator { +async function* walkDir(dir: string, rootDir: string, maxDepth: number = 20, extraExtensions?: Set): AsyncGenerator { if (maxDepth <= 0) return; let entries; @@ -77,10 +89,10 @@ async function* walkDir(dir: string, rootDir: string, maxDepth: number = 20): As const fullPath = join(dir, entry.name); if (entry.isDirectory()) { - yield* walkDir(fullPath, rootDir, maxDepth - 1); + yield* walkDir(fullPath, rootDir, maxDepth - 1, extraExtensions); } else if (entry.isFile()) { const ext = entry.name.slice(entry.name.lastIndexOf(".")); - if (CODE_EXTENSIONS.has(ext)) { + if (CODE_EXTENSIONS.has(ext) || (extraExtensions && extraExtensions.has(ext))) { yield fullPath; } } @@ -121,16 +133,29 @@ export async function searchCodebase( maxResults?: number; includeImports?: boolean; filePattern?: string; + projectRoot?: string; } = {} ): Promise { const maxResults = options.maxResults || 20; const queryLower = query.toLowerCase(); const queryParts = queryLower.split(/[\s_\-./]+/).filter(p => p.length > 0); + // Load user grammar config for extra file extensions + const projectRoot = options.projectRoot || rootDir; + const userConfig = loadUserGrammars(projectRoot); + const extraExtensions = new Set(); + for (const entry of Object.values(userConfig.grammars)) { + for (const ext of entry.extensions) { + if (!CODE_EXTENSIONS.has(ext)) { + extraExtensions.add(ext); + } + } + } + // Phase 1: Collect files const filesToParse: Array<{ absolutePath: string; relativePath: string; content: string }> = []; - for await (const filePath of walkDir(rootDir, rootDir)) { + for await (const filePath of walkDir(rootDir, rootDir, 20, extraExtensions.size > 0 ? extraExtensions : undefined)) { if (options.filePattern) { const relPath = relative(rootDir, filePath); if (!relPath.toLowerCase().includes(options.filePattern.toLowerCase())) continue; @@ -147,7 +172,7 @@ export async function searchCodebase( } // Phase 2: Batch parse (one CLI call per language) - const parsedFiles = parseFilesBatch(filesToParse); + const parsedFiles = parseFilesBatch(filesToParse, projectRoot); // Phase 3: Match query against symbols const foldedFiles: FoldedFile[] = []; diff --git a/src/services/sqlite/SessionSearch.ts b/src/services/sqlite/SessionSearch.ts index 6c5bf3c5..08f70471 100644 --- a/src/services/sqlite/SessionSearch.ts +++ b/src/services/sqlite/SessionSearch.ts @@ -3,6 +3,7 @@ import { TableNameRow } from '../../types/database.js'; import { DATA_DIR, DB_PATH, ensureDir } from '../../shared/paths.js'; import { logger } from '../../utils/logger.js'; import { isDirectChild } from '../../shared/path-utils.js'; +import { AppError } from '../server/ErrorHandler.js'; import { ObservationSearchResult, SessionSummarySearchResult, @@ -22,6 +23,8 @@ import { export class SessionSearch { private db: Database; + private static readonly MISSING_SEARCH_INPUT_MESSAGE = 'Either query or filters required for search'; + constructor(dbPath?: string) { if (!dbPath) { ensureDir(DATA_DIR); @@ -280,7 +283,7 @@ export class SessionSearch { if (!query) { const filterClause = this.buildFilterClause(filters, params, 'o'); if (!filterClause) { - throw new Error('Either query or filters required for search'); + throw new AppError(SessionSearch.MISSING_SEARCH_INPUT_MESSAGE, 400, 'INVALID_SEARCH_REQUEST'); } const orderClause = this.buildOrderClause(orderBy, false); @@ -317,7 +320,7 @@ export class SessionSearch { delete filterOptions.type; const filterClause = this.buildFilterClause(filterOptions, params, 's'); if (!filterClause) { - throw new Error('Either query or filters required for search'); + throw new AppError(SessionSearch.MISSING_SEARCH_INPUT_MESSAGE, 400, 'INVALID_SEARCH_REQUEST'); } const orderClause = orderBy === 'date_asc' @@ -551,7 +554,7 @@ export class SessionSearch { // FILTER-ONLY PATH: When no query text, query user_prompts table directly if (!query) { if (baseConditions.length === 0) { - throw new Error('Either query or filters required for search'); + throw new AppError(SessionSearch.MISSING_SEARCH_INPUT_MESSAGE, 400, 'INVALID_SEARCH_REQUEST'); } const whereClause = `WHERE ${baseConditions.join(' AND ')}`; diff --git a/src/services/sqlite/SessionStore.ts b/src/services/sqlite/SessionStore.ts index aaaf8754..c5ece703 100644 --- a/src/services/sqlite/SessionStore.ts +++ b/src/services/sqlite/SessionStore.ts @@ -14,6 +14,18 @@ import { } from '../../types/database.js'; import type { PendingMessageStore } from './PendingMessageStore.js'; import { computeObservationContentHash, findDuplicateObservation } from './observations/store.js'; +import { parseFileList } from './observations/files.js'; +import { DEFAULT_PLATFORM_SOURCE, normalizePlatformSource, sortPlatformSources } from '../../shared/platform-source.js'; + +function resolveCreateSessionArgs( + customTitle?: string, + platformSource?: string +): { customTitle?: string; platformSource?: string } { + return { + customTitle, + platformSource: platformSource ? normalizePlatformSource(platformSource) : undefined + }; +} /** * Session data store for SDK sessions, observations, and summaries @@ -51,6 +63,8 @@ export class SessionStore { this.addOnUpdateCascadeToForeignKeys(); this.addObservationContentHashColumn(); this.addSessionCustomTitleColumn(); + this.addSessionPlatformSourceColumn(); + this.addObservationModelColumns(); } /** @@ -78,6 +92,7 @@ export class SessionStore { content_session_id TEXT UNIQUE NOT NULL, memory_session_id TEXT UNIQUE, project TEXT NOT NULL, + platform_source TEXT NOT NULL DEFAULT 'claude', user_prompt TEXT, started_at TEXT NOT NULL, started_at_epoch INTEGER NOT NULL, @@ -875,6 +890,60 @@ export class SessionStore { this.db.prepare('INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)').run(23, new Date().toISOString()); } + /** + * Add platform_source column to sdk_sessions for Claude/Codex isolation (migration 24) + */ + private addSessionPlatformSourceColumn(): void { + const tableInfo = this.db.query('PRAGMA table_info(sdk_sessions)').all() as TableColumnInfo[]; + const hasColumn = tableInfo.some(col => col.name === 'platform_source'); + const indexInfo = this.db.query('PRAGMA index_list(sdk_sessions)').all() as IndexInfo[]; + const hasIndex = indexInfo.some(index => index.name === 'idx_sdk_sessions_platform_source'); + const applied = this.db.prepare('SELECT version FROM schema_versions WHERE version = ?').get(24) as SchemaVersion | undefined; + + if (applied && hasColumn && hasIndex) return; + + if (!hasColumn) { + this.db.run(`ALTER TABLE sdk_sessions ADD COLUMN platform_source TEXT NOT NULL DEFAULT '${DEFAULT_PLATFORM_SOURCE}'`); + logger.debug('DB', 'Added platform_source column to sdk_sessions table'); + } + + this.db.run(` + UPDATE sdk_sessions + SET platform_source = '${DEFAULT_PLATFORM_SOURCE}' + WHERE platform_source IS NULL OR platform_source = '' + `); + + if (!hasIndex) { + this.db.run('CREATE INDEX IF NOT EXISTS idx_sdk_sessions_platform_source ON sdk_sessions(platform_source)'); + } + + this.db.prepare('INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)').run(24, new Date().toISOString()); + } + + /** + * Add generated_by_model and relevance_count columns to observations (migration 26) + * + * Note: Cannot trust schema_versions alone — the old MigrationRunner may have + * recorded version 26 without the ALTER TABLE actually succeeding. Always + * check column existence directly. + */ + private addObservationModelColumns(): void { + const columns = this.db.query('PRAGMA table_info(observations)').all() as TableColumnInfo[]; + const hasGeneratedByModel = columns.some(col => col.name === 'generated_by_model'); + const hasRelevanceCount = columns.some(col => col.name === 'relevance_count'); + + if (hasGeneratedByModel && hasRelevanceCount) return; + + if (!hasGeneratedByModel) { + this.db.run('ALTER TABLE observations ADD COLUMN generated_by_model TEXT'); + } + if (!hasRelevanceCount) { + this.db.run('ALTER TABLE observations ADD COLUMN relevance_count INTEGER DEFAULT 0'); + } + + this.db.prepare('INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)').run(26, new Date().toISOString()); + } + /** * Update the memory session ID for a session * Called by SDKAgent when it captures the session ID from the first SDK message @@ -888,6 +957,16 @@ export class SessionStore { `).run(memorySessionId, sessionDbId); } + markSessionCompleted(sessionDbId: number): void { + const nowEpoch = Date.now(); + const nowIso = new Date(nowEpoch).toISOString(); + this.db.prepare(` + UPDATE sdk_sessions + SET status = 'completed', completed_at = ?, completed_at_epoch = ? + WHERE id = ? + `).run(nowIso, nowEpoch, sessionDbId); + } + /** * Ensures memory_session_id is registered in sdk_sessions before FK-constrained INSERT. * This fixes Issue #846 where observations fail after worker restart because the @@ -1002,14 +1081,26 @@ export class SessionStore { subtitle: string | null; text: string; project: string; + platform_source: string; prompt_number: number | null; created_at: string; created_at_epoch: number; }> { const stmt = this.db.prepare(` - SELECT id, type, title, subtitle, text, project, prompt_number, created_at, created_at_epoch - FROM observations - ORDER BY created_at_epoch DESC + SELECT + o.id, + o.type, + o.title, + o.subtitle, + o.text, + o.project, + COALESCE(s.platform_source, '${DEFAULT_PLATFORM_SOURCE}') as platform_source, + o.prompt_number, + o.created_at, + o.created_at_epoch + FROM observations o + LEFT JOIN sdk_sessions s ON o.memory_session_id = s.memory_session_id + ORDER BY o.created_at_epoch DESC LIMIT ? `); @@ -1030,16 +1121,30 @@ export class SessionStore { files_edited: string | null; notes: string | null; project: string; + platform_source: string; prompt_number: number | null; created_at: string; created_at_epoch: number; }> { const stmt = this.db.prepare(` - SELECT id, request, investigated, learned, completed, next_steps, - files_read, files_edited, notes, project, prompt_number, - created_at, created_at_epoch - FROM session_summaries - ORDER BY created_at_epoch DESC + SELECT + ss.id, + ss.request, + ss.investigated, + ss.learned, + ss.completed, + ss.next_steps, + ss.files_read, + ss.files_edited, + ss.notes, + ss.project, + COALESCE(s.platform_source, '${DEFAULT_PLATFORM_SOURCE}') as platform_source, + ss.prompt_number, + ss.created_at, + ss.created_at_epoch + FROM session_summaries ss + LEFT JOIN sdk_sessions s ON ss.memory_session_id = s.memory_session_id + ORDER BY ss.created_at_epoch DESC LIMIT ? `); @@ -1053,6 +1158,7 @@ export class SessionStore { id: number; content_session_id: string; project: string; + platform_source: string; prompt_number: number; prompt_text: string; created_at: string; @@ -1063,6 +1169,7 @@ export class SessionStore { up.id, up.content_session_id, s.project, + COALESCE(s.platform_source, '${DEFAULT_PLATFORM_SOURCE}') as platform_source, up.prompt_number, up.prompt_text, up.created_at, @@ -1079,18 +1186,74 @@ export class SessionStore { /** * Get all unique projects from the database (for web UI project filter) */ - getAllProjects(): string[] { - const stmt = this.db.prepare(` + getAllProjects(platformSource?: string): string[] { + const normalizedPlatformSource = platformSource ? normalizePlatformSource(platformSource) : undefined; + let query = ` SELECT DISTINCT project FROM sdk_sessions WHERE project IS NOT NULL AND project != '' - ORDER BY project ASC - `); + `; + const params: unknown[] = []; - const rows = stmt.all() as Array<{ project: string }>; + if (normalizedPlatformSource) { + query += ' AND COALESCE(platform_source, ?) = ?'; + params.push(DEFAULT_PLATFORM_SOURCE, normalizedPlatformSource); + } + + query += ' ORDER BY project ASC'; + + const rows = this.db.prepare(query).all(...params) as Array<{ project: string }>; return rows.map(row => row.project); } + getProjectCatalog(): { + projects: string[]; + sources: string[]; + projectsBySource: Record; + } { + const rows = this.db.prepare(` + SELECT + COALESCE(platform_source, '${DEFAULT_PLATFORM_SOURCE}') as platform_source, + project, + MAX(started_at_epoch) as latest_epoch + FROM sdk_sessions + WHERE project IS NOT NULL AND project != '' + GROUP BY COALESCE(platform_source, '${DEFAULT_PLATFORM_SOURCE}'), project + ORDER BY latest_epoch DESC + `).all() as Array<{ platform_source: string; project: string; latest_epoch: number }>; + + const projects: string[] = []; + const seenProjects = new Set(); + const projectsBySource: Record = {}; + + for (const row of rows) { + const source = normalizePlatformSource(row.platform_source); + + if (!projectsBySource[source]) { + projectsBySource[source] = []; + } + + if (!projectsBySource[source].includes(row.project)) { + projectsBySource[source].push(row.project); + } + + if (!seenProjects.has(row.project)) { + seenProjects.add(row.project); + projects.push(row.project); + } + } + + const sources = sortPlatformSources(Object.keys(projectsBySource)); + + return { + projects, + sources, + projectsBySource: Object.fromEntries( + sources.map(source => [source, projectsBySource[source] || []]) + ) + }; + } + /** * Get latest user prompt with session info for a Claude session * Used for syncing prompts to Chroma during session initialization @@ -1100,6 +1263,7 @@ export class SessionStore { content_session_id: string; memory_session_id: string; project: string; + platform_source: string; prompt_number: number; prompt_text: string; created_at_epoch: number; @@ -1108,7 +1272,8 @@ export class SessionStore { SELECT up.*, s.memory_session_id, - s.project + s.project, + COALESCE(s.platform_source, '${DEFAULT_PLATFORM_SOURCE}') as platform_source FROM user_prompts up JOIN sdk_sessions s ON up.content_session_id = s.content_session_id WHERE up.content_session_id = ? @@ -1309,20 +1474,10 @@ export class SessionStore { for (const row of rows) { // Parse files_read - if (row.files_read) { - const files = JSON.parse(row.files_read); - if (Array.isArray(files)) { - files.forEach(f => filesReadSet.add(f)); - } - } + parseFileList(row.files_read).forEach(f => filesReadSet.add(f)); // Parse files_modified - if (row.files_modified) { - const files = JSON.parse(row.files_modified); - if (Array.isArray(files)) { - files.forEach(f => filesModifiedSet.add(f)); - } - } + parseFileList(row.files_modified).forEach(f => filesModifiedSet.add(f)); } return { @@ -1339,11 +1494,14 @@ export class SessionStore { content_session_id: string; memory_session_id: string | null; project: string; + platform_source: string; user_prompt: string; custom_title: string | null; } | null { const stmt = this.db.prepare(` - SELECT id, content_session_id, memory_session_id, project, user_prompt, custom_title + SELECT id, content_session_id, memory_session_id, project, + COALESCE(platform_source, '${DEFAULT_PLATFORM_SOURCE}') as platform_source, + user_prompt, custom_title FROM sdk_sessions WHERE id = ? LIMIT 1 @@ -1361,6 +1519,7 @@ export class SessionStore { content_session_id: string; memory_session_id: string; project: string; + platform_source: string; user_prompt: string; custom_title: string | null; started_at: string; @@ -1373,7 +1532,9 @@ export class SessionStore { const placeholders = memorySessionIds.map(() => '?').join(','); const stmt = this.db.prepare(` - SELECT id, content_session_id, memory_session_id, project, user_prompt, custom_title, + SELECT id, content_session_id, memory_session_id, project, + COALESCE(platform_source, '${DEFAULT_PLATFORM_SOURCE}') as platform_source, + user_prompt, custom_title, started_at, started_at_epoch, completed_at, completed_at_epoch, status FROM sdk_sessions WHERE memory_session_id IN (${placeholders}) @@ -1418,14 +1579,22 @@ export class SessionStore { * Pure get-or-create: never modifies memory_session_id. * Multi-terminal isolation is handled by ON UPDATE CASCADE at the schema level. */ - createSDKSession(contentSessionId: string, project: string, userPrompt: string, customTitle?: string): number { + createSDKSession( + contentSessionId: string, + project: string, + userPrompt: string, + customTitle?: string, + platformSource?: string + ): number { const now = new Date(); const nowEpoch = now.getTime(); + const resolved = resolveCreateSessionArgs(customTitle, platformSource); + const normalizedPlatformSource = resolved.platformSource ?? DEFAULT_PLATFORM_SOURCE; // Session reuse: Return existing session ID if already created for this contentSessionId. const existing = this.db.prepare(` - SELECT id FROM sdk_sessions WHERE content_session_id = ? - `).get(contentSessionId) as { id: number } | undefined; + SELECT id, platform_source FROM sdk_sessions WHERE content_session_id = ? + `).get(contentSessionId) as { id: number; platform_source: string | null } | undefined; if (existing) { // Backfill project if session was created by another hook with empty project @@ -1436,11 +1605,29 @@ export class SessionStore { `).run(project, contentSessionId); } // Backfill custom_title if provided and not yet set - if (customTitle) { + if (resolved.customTitle) { this.db.prepare(` UPDATE sdk_sessions SET custom_title = ? WHERE content_session_id = ? AND custom_title IS NULL - `).run(customTitle, contentSessionId); + `).run(resolved.customTitle, contentSessionId); + } + + if (resolved.platformSource) { + const storedPlatformSource = existing.platform_source?.trim() + ? normalizePlatformSource(existing.platform_source) + : undefined; + + if (!storedPlatformSource) { + this.db.prepare(` + UPDATE sdk_sessions SET platform_source = ? + WHERE content_session_id = ? + AND COALESCE(platform_source, '') = '' + `).run(resolved.platformSource, contentSessionId); + } else if (storedPlatformSource !== resolved.platformSource) { + throw new Error( + `Platform source conflict for session ${contentSessionId}: existing=${storedPlatformSource}, received=${resolved.platformSource}` + ); + } } return existing.id; } @@ -1451,9 +1638,9 @@ export class SessionStore { // must NEVER equal contentSessionId - that would inject memory messages into the user's transcript! this.db.prepare(` INSERT INTO sdk_sessions - (content_session_id, memory_session_id, project, user_prompt, custom_title, started_at, started_at_epoch, status) - VALUES (?, NULL, ?, ?, ?, ?, ?, 'active') - `).run(contentSessionId, project, userPrompt, customTitle || null, now.toISOString(), nowEpoch); + (content_session_id, memory_session_id, project, platform_source, user_prompt, custom_title, started_at, started_at_epoch, status) + VALUES (?, NULL, ?, ?, ?, ?, ?, ?, 'active') + `).run(contentSessionId, project, normalizedPlatformSource, userPrompt, resolved.customTitle || null, now.toISOString(), nowEpoch); // Return new ID const row = this.db.prepare('SELECT id FROM sdk_sessions WHERE content_session_id = ?') @@ -1517,7 +1704,8 @@ export class SessionStore { }, promptNumber?: number, discoveryTokens: number = 0, - overrideTimestampEpoch?: number + overrideTimestampEpoch?: number, + generatedByModel?: string ): { id: number; createdAtEpoch: number } { // Use override timestamp if provided (for processing backlog messages with original timestamps) const timestampEpoch = overrideTimestampEpoch ?? Date.now(); @@ -1533,8 +1721,9 @@ export class SessionStore { const stmt = this.db.prepare(` INSERT INTO observations (memory_session_id, project, type, title, subtitle, facts, narrative, concepts, - files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch) - VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch, + generated_by_model) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) `); const result = stmt.run( @@ -1552,7 +1741,8 @@ export class SessionStore { discoveryTokens, contentHash, timestampIso, - timestampEpoch + timestampEpoch, + generatedByModel || null ); return { @@ -1651,7 +1841,8 @@ export class SessionStore { } | null, promptNumber?: number, discoveryTokens: number = 0, - overrideTimestampEpoch?: number + overrideTimestampEpoch?: number, + generatedByModel?: string ): { observationIds: number[]; summaryId: number | null; createdAtEpoch: number } { // Use override timestamp if provided const timestampEpoch = overrideTimestampEpoch ?? Date.now(); @@ -1665,8 +1856,9 @@ export class SessionStore { const obsStmt = this.db.prepare(` INSERT INTO observations (memory_session_id, project, type, title, subtitle, facts, narrative, concepts, - files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch) - VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch, + generated_by_model) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) `); for (const observation of observations) { @@ -1693,7 +1885,8 @@ export class SessionStore { discoveryTokens, contentHash, timestampIso, - timestampEpoch + timestampEpoch, + generatedByModel || null ); observationIds.push(Number(result.lastInsertRowid)); } @@ -1780,7 +1973,8 @@ export class SessionStore { _pendingStore: PendingMessageStore, promptNumber?: number, discoveryTokens: number = 0, - overrideTimestampEpoch?: number + overrideTimestampEpoch?: number, + generatedByModel?: string ): { observationIds: number[]; summaryId?: number; createdAtEpoch: number } { // Use override timestamp if provided const timestampEpoch = overrideTimestampEpoch ?? Date.now(); @@ -1794,8 +1988,9 @@ export class SessionStore { const obsStmt = this.db.prepare(` INSERT INTO observations (memory_session_id, project, type, title, subtitle, facts, narrative, concepts, - files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch) - VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + files_read, files_modified, prompt_number, discovery_tokens, content_hash, created_at, created_at_epoch, + generated_by_model) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) `); for (const observation of observations) { @@ -1822,7 +2017,8 @@ export class SessionStore { discoveryTokens, contentHash, timestampIso, - timestampEpoch + timestampEpoch, + generatedByModel || null ); observationIds.push(Number(result.lastInsertRowid)); } @@ -2233,9 +2429,9 @@ export class SessionStore { // Create new manual session const now = new Date(); this.db.prepare(` - INSERT INTO sdk_sessions (memory_session_id, content_session_id, project, started_at, started_at_epoch, status) - VALUES (?, ?, ?, ?, ?, 'active') - `).run(memorySessionId, contentSessionId, project, now.toISOString(), now.getTime()); + INSERT INTO sdk_sessions (memory_session_id, content_session_id, project, platform_source, started_at, started_at_epoch, status) + VALUES (?, ?, ?, ?, ?, ?, 'active') + `).run(memorySessionId, contentSessionId, project, DEFAULT_PLATFORM_SOURCE, now.toISOString(), now.getTime()); logger.info('SESSION', 'Created manual session', { memorySessionId, project }); @@ -2261,6 +2457,7 @@ export class SessionStore { content_session_id: string; memory_session_id: string; project: string; + platform_source?: string; user_prompt: string; started_at: string; started_at_epoch: number; @@ -2279,15 +2476,16 @@ export class SessionStore { const stmt = this.db.prepare(` INSERT INTO sdk_sessions ( - content_session_id, memory_session_id, project, user_prompt, + content_session_id, memory_session_id, project, platform_source, user_prompt, started_at, started_at_epoch, completed_at, completed_at_epoch, status - ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?) + ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) `); const result = stmt.run( session.content_session_id, session.memory_session_id, session.project, + normalizePlatformSource(session.platform_source), session.user_prompt, session.started_at, session.started_at_epoch, diff --git a/src/services/sqlite/migrations.ts b/src/services/sqlite/migrations.ts index 5be21f6a..76d51a9b 100644 --- a/src/services/sqlite/migrations.ts +++ b/src/services/sqlite/migrations.ts @@ -541,6 +541,37 @@ export const migration008: Migration = { } }; +/** + * Migration 009: Add missing columns to observations table + * + * The generated_by_model column tracks which model generated each observation + * (required for model selection optimization via Thompson Sampling). + * The relevance_count column tracks how many times an observation was reused + * (incremented by the feedback recording pipeline). + * + * Both columns may already exist in databases created by the compiled binary + * (v10.6.3) but are missing from the migration source. This migration + * conditionally adds them. + */ +export const migration009: Migration = { + version: 26, + up: (db: Database) => { + const columns = db.prepare('PRAGMA table_info(observations)').all() as any[]; + const hasGeneratedByModel = columns.some((c: any) => c.name === 'generated_by_model'); + const hasRelevanceCount = columns.some((c: any) => c.name === 'relevance_count'); + + if (!hasGeneratedByModel) { + db.run('ALTER TABLE observations ADD COLUMN generated_by_model TEXT'); + } + if (!hasRelevanceCount) { + db.run('ALTER TABLE observations ADD COLUMN relevance_count INTEGER DEFAULT 0'); + } + }, + down: (_db: Database) => { + // SQLite does not support DROP COLUMN in older versions; no-op + } +}; + /** * All migrations in order */ @@ -552,5 +583,6 @@ export const migrations: Migration[] = [ migration005, migration006, migration007, - migration008 + migration008, + migration009 ]; \ No newline at end of file diff --git a/src/services/sqlite/migrations/runner.ts b/src/services/sqlite/migrations/runner.ts index aff03d6e..2e404735 100644 --- a/src/services/sqlite/migrations/runner.ts +++ b/src/services/sqlite/migrations/runner.ts @@ -6,6 +6,7 @@ import { TableNameRow, SchemaVersion } from '../../../types/database.js'; +import { DEFAULT_PLATFORM_SOURCE } from '../../../shared/platform-source.js'; /** * MigrationRunner handles all database schema migrations @@ -35,6 +36,7 @@ export class MigrationRunner { this.addObservationContentHashColumn(); this.addSessionCustomTitleColumn(); this.createObservationFeedbackTable(); + this.addSessionPlatformSourceColumn(); } /** @@ -62,6 +64,7 @@ export class MigrationRunner { content_session_id TEXT UNIQUE NOT NULL, memory_session_id TEXT UNIQUE, project TEXT NOT NULL, + platform_source TEXT NOT NULL DEFAULT 'claude', user_prompt TEXT, started_at TEXT NOT NULL, started_at_epoch INTEGER NOT NULL, @@ -654,10 +657,9 @@ export class MigrationRunner { this.db.run('BEGIN TRANSACTION'); try { - // ========================================== + // =================================== // 1. Recreate observations table - // ========================================== - + // =================================== // Drop FTS triggers first (they reference the observations table) this.db.run('DROP TRIGGER IF EXISTS observations_ai'); this.db.run('DROP TRIGGER IF EXISTS observations_ad'); @@ -730,10 +732,9 @@ export class MigrationRunner { `); } - // ========================================== + // =================================== // 2. Recreate session_summaries table - // ========================================== - + // =================================== // Clean up leftover temp table from a previously-crashed run this.db.run('DROP TABLE IF EXISTS session_summaries_new'); @@ -891,4 +892,34 @@ export class MigrationRunner { this.db.prepare('INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)').run(24, new Date().toISOString()); logger.debug('DB', 'Created observation_feedback table for usage tracking'); } + + /** + * Add platform_source column to sdk_sessions for Claude/Codex isolation (migration 25) + */ + private addSessionPlatformSourceColumn(): void { + const tableInfo = this.db.query('PRAGMA table_info(sdk_sessions)').all() as TableColumnInfo[]; + const hasColumn = tableInfo.some(col => col.name === 'platform_source'); + const indexInfo = this.db.query('PRAGMA index_list(sdk_sessions)').all() as IndexInfo[]; + const hasIndex = indexInfo.some(index => index.name === 'idx_sdk_sessions_platform_source'); + const applied = this.db.prepare('SELECT version FROM schema_versions WHERE version = ?').get(25) as SchemaVersion | undefined; + + if (applied && hasColumn && hasIndex) return; + + if (!hasColumn) { + this.db.run(`ALTER TABLE sdk_sessions ADD COLUMN platform_source TEXT NOT NULL DEFAULT '${DEFAULT_PLATFORM_SOURCE}'`); + logger.debug('DB', 'Added platform_source column to sdk_sessions table'); + } + + this.db.run(` + UPDATE sdk_sessions + SET platform_source = '${DEFAULT_PLATFORM_SOURCE}' + WHERE platform_source IS NULL OR platform_source = '' + `); + + if (!hasIndex) { + this.db.run('CREATE INDEX IF NOT EXISTS idx_sdk_sessions_platform_source ON sdk_sessions(platform_source)'); + } + + this.db.prepare('INSERT OR IGNORE INTO schema_versions (version, applied_at) VALUES (?, ?)').run(25, new Date().toISOString()); + } } diff --git a/src/services/sqlite/observations/files.ts b/src/services/sqlite/observations/files.ts index e9bcba28..ec122fd3 100644 --- a/src/services/sqlite/observations/files.ts +++ b/src/services/sqlite/observations/files.ts @@ -7,6 +7,21 @@ import { Database } from 'bun:sqlite'; import { logger } from '../../../utils/logger.js'; import type { SessionFilesResult } from './types.js'; +/** + * Safely parse a JSON array string from the DB. + * Handles legacy bare-path strings (e.g. "/foo/bar.ts") by wrapping them + * in an array instead of crashing with a SyntaxError (fix for #1359). + */ +export function parseFileList(value: string | null | undefined): string[] { + if (!value) return []; + try { + const parsed = JSON.parse(value); + return Array.isArray(parsed) ? parsed : [String(parsed)]; + } catch { + return [value]; + } +} + /** * Get aggregated files from all observations for a session */ @@ -30,20 +45,10 @@ export function getFilesForSession( for (const row of rows) { // Parse files_read - if (row.files_read) { - const files = JSON.parse(row.files_read); - if (Array.isArray(files)) { - files.forEach(f => filesReadSet.add(f)); - } - } + parseFileList(row.files_read).forEach(f => filesReadSet.add(f)); // Parse files_modified - if (row.files_modified) { - const files = JSON.parse(row.files_modified); - if (Array.isArray(files)) { - files.forEach(f => filesModifiedSet.add(f)); - } - } + parseFileList(row.files_modified).forEach(f => filesModifiedSet.add(f)); } return { diff --git a/src/services/sqlite/observations/get.ts b/src/services/sqlite/observations/get.ts index 798bfe1f..39bff654 100644 --- a/src/services/sqlite/observations/get.ts +++ b/src/services/sqlite/observations/get.ts @@ -111,3 +111,42 @@ export function getObservationsForSession( return stmt.all(memorySessionId) as ObservationSessionRow[]; } + +/** + * Get observations associated with a given file path, scoped to specific projects. + * Matches on the full file path (not just basename) to avoid cross-project collisions. + */ +export function getObservationsByFilePath( + db: Database, + filePath: string, + options?: { projects?: string[]; limit?: number } +): ObservationRecord[] { + const rawLimit = options?.limit; + const limit = Number.isInteger(rawLimit) && (rawLimit as number) > 0 + ? Math.min(rawLimit as number, 100) + : 15; + const params: (string | number)[] = [filePath, filePath]; + + let projectClause = ''; + if (options?.projects?.length) { + const placeholders = options.projects.map(() => '?').join(','); + projectClause = `AND project IN (${placeholders})`; + params.push(...options.projects); + } + + params.push(limit); + + const stmt = db.prepare(` + SELECT * + FROM observations + WHERE ( + (files_read LIKE '[%' AND EXISTS (SELECT 1 FROM json_each(files_read) WHERE value = ?)) + OR (files_modified LIKE '[%' AND EXISTS (SELECT 1 FROM json_each(files_modified) WHERE value = ?)) + ) + ${projectClause} + ORDER BY created_at_epoch DESC + LIMIT ? + `); + + return stmt.all(...params) as ObservationRecord[]; +} diff --git a/src/services/sqlite/observations/store.ts b/src/services/sqlite/observations/store.ts index 20727332..e012ed56 100644 --- a/src/services/sqlite/observations/store.ts +++ b/src/services/sqlite/observations/store.ts @@ -22,7 +22,7 @@ export function computeObservationContentHash( narrative: string | null ): string { return createHash('sha256') - .update((memorySessionId || '') + (title || '') + (narrative || '')) + .update([memorySessionId || '', title || '', narrative || ''].join('\x00')) .digest('hex') .slice(0, 16); } diff --git a/src/services/sqlite/sessions/create.ts b/src/services/sqlite/sessions/create.ts index 215f9f28..bafa8f39 100644 --- a/src/services/sqlite/sessions/create.ts +++ b/src/services/sqlite/sessions/create.ts @@ -5,6 +5,17 @@ import type { Database } from 'bun:sqlite'; import { logger } from '../../../utils/logger.js'; +import { DEFAULT_PLATFORM_SOURCE, normalizePlatformSource } from '../../../shared/platform-source.js'; + +function resolveCreateSessionArgs( + customTitle?: string, + platformSource?: string +): { customTitle?: string; platformSource?: string } { + return { + customTitle, + platformSource: platformSource ? normalizePlatformSource(platformSource) : undefined + }; +} /** * Create a new SDK session (idempotent - returns existing session ID if already exists) @@ -22,15 +33,18 @@ export function createSDKSession( contentSessionId: string, project: string, userPrompt: string, - customTitle?: string + customTitle?: string, + platformSource?: string ): number { const now = new Date(); const nowEpoch = now.getTime(); + const resolved = resolveCreateSessionArgs(customTitle, platformSource); + const normalizedPlatformSource = resolved.platformSource ?? DEFAULT_PLATFORM_SOURCE; // Check for existing session const existing = db.prepare(` - SELECT id FROM sdk_sessions WHERE content_session_id = ? - `).get(contentSessionId) as { id: number } | undefined; + SELECT id, platform_source FROM sdk_sessions WHERE content_session_id = ? + `).get(contentSessionId) as { id: number; platform_source: string | null } | undefined; if (existing) { // Backfill project if session was created by another hook with empty project @@ -41,11 +55,29 @@ export function createSDKSession( `).run(project, contentSessionId); } // Backfill custom_title if provided and not yet set - if (customTitle) { + if (resolved.customTitle) { db.prepare(` UPDATE sdk_sessions SET custom_title = ? WHERE content_session_id = ? AND custom_title IS NULL - `).run(customTitle, contentSessionId); + `).run(resolved.customTitle, contentSessionId); + } + + if (resolved.platformSource) { + const storedPlatformSource = existing.platform_source?.trim() + ? normalizePlatformSource(existing.platform_source) + : undefined; + + if (!storedPlatformSource) { + db.prepare(` + UPDATE sdk_sessions SET platform_source = ? + WHERE content_session_id = ? + AND COALESCE(platform_source, '') = '' + `).run(resolved.platformSource, contentSessionId); + } else if (storedPlatformSource !== resolved.platformSource) { + throw new Error( + `Platform source conflict for session ${contentSessionId}: existing=${storedPlatformSource}, received=${resolved.platformSource}` + ); + } } return existing.id; } @@ -56,9 +88,9 @@ export function createSDKSession( // must NEVER equal contentSessionId - that would inject memory messages into the user's transcript! db.prepare(` INSERT INTO sdk_sessions - (content_session_id, memory_session_id, project, user_prompt, custom_title, started_at, started_at_epoch, status) - VALUES (?, NULL, ?, ?, ?, ?, ?, 'active') - `).run(contentSessionId, project, userPrompt, customTitle || null, now.toISOString(), nowEpoch); + (content_session_id, memory_session_id, project, platform_source, user_prompt, custom_title, started_at, started_at_epoch, status) + VALUES (?, NULL, ?, ?, ?, ?, ?, ?, 'active') + `).run(contentSessionId, project, normalizedPlatformSource, userPrompt, resolved.customTitle || null, now.toISOString(), nowEpoch); // Return new ID const row = db.prepare('SELECT id FROM sdk_sessions WHERE content_session_id = ?') diff --git a/src/services/sqlite/sessions/get.ts b/src/services/sqlite/sessions/get.ts index 6558fa25..51a4ee35 100644 --- a/src/services/sqlite/sessions/get.ts +++ b/src/services/sqlite/sessions/get.ts @@ -17,7 +17,9 @@ import type { */ export function getSessionById(db: Database, id: number): SessionBasic | null { const stmt = db.prepare(` - SELECT id, content_session_id, memory_session_id, project, user_prompt, custom_title + SELECT id, content_session_id, memory_session_id, project, + COALESCE(platform_source, 'claude') as platform_source, + user_prompt, custom_title FROM sdk_sessions WHERE id = ? LIMIT 1 @@ -38,7 +40,9 @@ export function getSdkSessionsBySessionIds( const placeholders = memorySessionIds.map(() => '?').join(','); const stmt = db.prepare(` - SELECT id, content_session_id, memory_session_id, project, user_prompt, custom_title, + SELECT id, content_session_id, memory_session_id, project, + COALESCE(platform_source, 'claude') as platform_source, + user_prompt, custom_title, started_at, started_at_epoch, completed_at, completed_at_epoch, status FROM sdk_sessions WHERE memory_session_id IN (${placeholders}) diff --git a/src/services/sqlite/sessions/types.ts b/src/services/sqlite/sessions/types.ts index 6376944d..662acd81 100644 --- a/src/services/sqlite/sessions/types.ts +++ b/src/services/sqlite/sessions/types.ts @@ -12,6 +12,7 @@ export interface SessionBasic { content_session_id: string; memory_session_id: string | null; project: string; + platform_source: string; user_prompt: string; custom_title: string | null; } @@ -24,6 +25,7 @@ export interface SessionFull { content_session_id: string; memory_session_id: string; project: string; + platform_source: string; user_prompt: string; custom_title: string | null; started_at: string; diff --git a/src/services/sync/ChromaSync.ts b/src/services/sync/ChromaSync.ts index 9f3e01d1..ecf208e1 100644 --- a/src/services/sync/ChromaSync.ts +++ b/src/services/sync/ChromaSync.ts @@ -16,6 +16,7 @@ import { ChromaMcpManager } from './ChromaMcpManager.js'; import { ParsedObservation, ParsedSummary } from '../../sdk/parser.js'; import { SessionStore } from '../sqlite/SessionStore.js'; import { logger } from '../../utils/logger.js'; +import { parseFileList } from '../sqlite/observations/files.js'; interface ChromaDocument { id: string; @@ -125,8 +126,8 @@ export class ChromaSync { // Parse JSON fields const facts = obs.facts ? JSON.parse(obs.facts) : []; const concepts = obs.concepts ? JSON.parse(obs.concepts) : []; - const files_read = obs.files_read ? JSON.parse(obs.files_read) : []; - const files_modified = obs.files_modified ? JSON.parse(obs.files_modified) : []; + const files_read = parseFileList(obs.files_read); + const files_modified = parseFileList(obs.files_modified); const baseMetadata: Record = { sqlite_id: obs.id, diff --git a/src/services/transcripts/processor.ts b/src/services/transcripts/processor.ts index df013bc8..18fa96f0 100644 --- a/src/services/transcripts/processor.ts +++ b/src/services/transcripts/processor.ts @@ -9,9 +9,11 @@ import { writeAgentsMd } from '../../utils/agents-md-utils.js'; import { resolveFieldSpec, resolveFields, matchesRule } from './field-utils.js'; import { expandHomePath } from './config.js'; import type { TranscriptSchema, WatchTarget, SchemaEvent } from './types.js'; +import { normalizePlatformSource } from '../../shared/platform-source.js'; interface SessionState { sessionId: string; + platformSource: string; cwd?: string; project?: string; lastUserMessage?: string; @@ -51,6 +53,7 @@ export class TranscriptEventProcessor { if (!session) { session = { sessionId, + platformSource: normalizePlatformSource(watch.name), pendingTools: new Map() }; this.sessions.set(key, session); @@ -181,7 +184,7 @@ export class TranscriptEventProcessor { sessionId: session.sessionId, cwd, prompt, - platform: 'transcript' + platform: session.platformSource }); } @@ -250,7 +253,7 @@ export class TranscriptEventProcessor { toolName, toolInput: this.maybeParseJson(fields.toolInput), toolResponse: this.maybeParseJson(fields.toolResponse), - platform: 'transcript' + platform: session.platformSource }); } @@ -263,7 +266,7 @@ export class TranscriptEventProcessor { cwd: session.cwd ?? process.cwd(), filePath, edits: Array.isArray(fields.edits) ? fields.edits : undefined, - platform: 'transcript' + platform: session.platformSource }); } @@ -305,7 +308,7 @@ export class TranscriptEventProcessor { await sessionCompleteHandler.execute({ sessionId: session.sessionId, cwd: session.cwd ?? process.cwd(), - platform: 'transcript' + platform: session.platformSource }); await this.updateContext(session, watch); session.pendingTools.clear(); @@ -325,7 +328,8 @@ export class TranscriptEventProcessor { headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ contentSessionId: session.sessionId, - last_assistant_message: lastAssistantMessage + last_assistant_message: lastAssistantMessage, + platformSource: session.platformSource }) }); } catch (error) { @@ -350,7 +354,7 @@ export class TranscriptEventProcessor { try { const response = await workerHttpRequest( - `/api/context/inject?projects=${encodeURIComponent(projectsParam)}` + `/api/context/inject?projects=${encodeURIComponent(projectsParam)}&platformSource=${encodeURIComponent(session.platformSource)}` ); if (!response.ok) return; diff --git a/src/services/transcripts/watcher.ts b/src/services/transcripts/watcher.ts index 753fca42..36d664fe 100644 --- a/src/services/transcripts/watcher.ts +++ b/src/services/transcripts/watcher.ts @@ -117,15 +117,15 @@ export class TranscriptWatcher { const files = this.resolveWatchFiles(resolvedPath); for (const filePath of files) { - await this.addTailer(filePath, watch, schema); + await this.addTailer(filePath, watch, schema, true); } const rescanIntervalMs = watch.rescanIntervalMs ?? 5000; - const timer = setInterval(async () => { + const timer = setInterval(async () => { const newFiles = this.resolveWatchFiles(resolvedPath); for (const filePath of newFiles) { if (!this.tailers.has(filePath)) { - await this.addTailer(filePath, watch, schema); + await this.addTailer(filePath, watch, schema, false); } } }, rescanIntervalMs); @@ -164,13 +164,20 @@ export class TranscriptWatcher { return /[*?[\]{}()]/.test(inputPath); } - private async addTailer(filePath: string, watch: WatchTarget, schema: TranscriptSchema): Promise { + private async addTailer( + filePath: string, + watch: WatchTarget, + schema: TranscriptSchema, + initialDiscovery: boolean + ): Promise { if (this.tailers.has(filePath)) return; const sessionIdOverride = this.extractSessionIdFromPath(filePath); let offset = this.state.offsets[filePath] ?? 0; - if (offset === 0 && watch.startAtEnd) { + // `startAtEnd` is useful on worker startup to avoid replaying the full backlog, + // but new transcript files must be read from byte 0 or we lose session_meta/user_message. + if (offset === 0 && watch.startAtEnd && initialDiscovery) { try { offset = statSync(filePath).size; } catch { diff --git a/src/services/worker-service.ts b/src/services/worker-service.ts index 43077394..6cd08073 100644 --- a/src/services/worker-service.ts +++ b/src/services/worker-service.ts @@ -80,7 +80,6 @@ import { cleanStalePidFile, isProcessAlive, spawnDaemon, - isPidFileRecent, touchPidFile } from './infrastructure/ProcessManager.js'; import { @@ -88,8 +87,7 @@ import { waitForHealth, waitForReadiness, waitForPortFree, - httpShutdown, - checkVersionMatch + httpShutdown } from './infrastructure/HealthMonitor.js'; import { performGracefulShutdown } from './infrastructure/GracefulShutdown.js'; @@ -118,6 +116,8 @@ import { SearchManager } from './worker/SearchManager.js'; import { FormattingService } from './worker/FormattingService.js'; import { TimelineService } from './worker/TimelineService.js'; import { SessionEventBroadcaster } from './worker/events/SessionEventBroadcaster.js'; +import { DEFAULT_CONFIG_PATH, DEFAULT_STATE_PATH, expandHomePath, loadTranscriptWatchConfig, writeSampleConfig } from './transcripts/config.js'; +import { TranscriptWatcher } from './transcripts/watcher.js'; // HTTP route handlers import { ViewerRoutes } from './worker/http/routes/ViewerRoutes.js'; @@ -131,10 +131,6 @@ import { MemoryRoutes } from './worker/http/routes/MemoryRoutes.js'; // Process management for zombie cleanup (Issue #737) import { startOrphanReaper, reapOrphanedProcesses, getProcessBySession, ensureProcessExit } from './worker/ProcessRegistry.js'; -// Transcript watcher for external CLI session monitoring -import { TranscriptWatcher } from './transcripts/watcher.js'; -import { loadTranscriptWatchConfig, expandHomePath, DEFAULT_CONFIG_PATH as TRANSCRIPT_CONFIG_PATH } from './transcripts/config.js'; - /** * Build JSON status output for hook framework communication. * This is a pure function extracted for testability. @@ -186,6 +182,9 @@ export class WorkerService { // Chroma MCP manager (lazy - connects on first use) private chromaMcpManager: ChromaMcpManager | null = null; + // Transcript watcher for Codex and other transcript-based clients + private transcriptWatcher: TranscriptWatcher | null = null; + // Initialization tracking private initializationComplete: Promise; private resolveInitialization!: () => void; @@ -196,9 +195,6 @@ export class WorkerService { // Stale session reaper interval (Issue #1168) private staleSessionReaperInterval: ReturnType | null = null; - // Transcript watcher for external CLI sessions (e.g. Codex, Gemini) - private transcriptWatcher: TranscriptWatcher | null = null; - // AI interaction tracking for health endpoint private lastAiInteraction: { timestamp: number; @@ -431,21 +427,7 @@ export class WorkerService { this.resolveInitialization(); logger.info('SYSTEM', 'Core initialization complete (DB + search ready)'); - // Auto-start transcript watchers if configured - if (existsSync(TRANSCRIPT_CONFIG_PATH)) { - try { - const transcriptConfig = loadTranscriptWatchConfig(TRANSCRIPT_CONFIG_PATH); - if (transcriptConfig.watches.length > 0) { - const transcriptStatePath = expandHomePath(transcriptConfig.stateFile ?? '~/.claude-mem/transcript-watch-state.json'); - this.transcriptWatcher = new TranscriptWatcher(transcriptConfig, transcriptStatePath); - await this.transcriptWatcher.start(); - logger.info('SYSTEM', `Transcript watcher started with ${transcriptConfig.watches.length} watch target(s)`); - } - } catch (transcriptError) { - logger.warn('SYSTEM', 'Failed to start transcript watcher (non-fatal)', {}, transcriptError as Error); - // Non-fatal — worker continues without transcript watching - } - } + await this.startTranscriptWatcher(settings); // Auto-backfill Chroma for all projects if out of sync with SQLite (fire-and-forget) if (this.chromaMcpManager) { @@ -456,8 +438,13 @@ export class WorkerService { }); } - // Connect to MCP server + // Mark MCP as externally ready once the bundled stdio server binary exists. + // Codex/Claude Desktop connect to this binary directly; the loopback client + // below is only a best-effort self-check and should not mark health false. const mcpServerPath = path.join(__dirname, 'mcp-server.cjs'); + this.mcpReady = existsSync(mcpServerPath); + + // Best-effort loopback MCP self-check getSupervisor().assertCanSpawn('mcp server'); const transport = new StdioClientTransport({ command: 'node', @@ -479,7 +466,7 @@ export class WorkerService { await Promise.race([mcpConnectionPromise, timeoutPromise]); } catch (connectionError) { clearTimeout(timeoutId!); - logger.warn('WORKER', 'MCP server connection failed, cleaning up subprocess', { + logger.warn('WORKER', 'MCP loopback self-check failed, cleaning up subprocess', { error: connectionError instanceof Error ? connectionError.message : String(connectionError) }); try { @@ -487,7 +474,10 @@ export class WorkerService { } catch { // Best effort: the supervisor handles later process cleanup for survivors. } - throw connectionError; + logger.info('WORKER', 'Bundled MCP server remains available for external stdio clients', { + path: mcpServerPath + }); + return; } clearTimeout(timeoutId!); @@ -502,8 +492,7 @@ export class WorkerService { getSupervisor().unregisterProcess('mcp-server'); }); } - this.mcpReady = true; - logger.success('WORKER', 'MCP server connected'); + logger.success('WORKER', 'MCP loopback self-check connected'); // Start orphan reaper to clean up zombie processes (Issue #737) this.stopOrphanReaper = startOrphanReaper(() => { @@ -545,6 +534,48 @@ export class WorkerService { } } + /** + * Start transcript watcher for Codex and other transcript-based clients. + * This is intentionally non-fatal so Claude hooks remain usable even if + * transcript ingestion is misconfigured. + */ + private async startTranscriptWatcher(settings: ReturnType): Promise { + const transcriptsEnabled = settings.CLAUDE_MEM_TRANSCRIPTS_ENABLED !== 'false'; + if (!transcriptsEnabled) { + logger.info('TRANSCRIPT', 'Transcript watcher disabled via CLAUDE_MEM_TRANSCRIPTS_ENABLED=false'); + return; + } + + const configPath = settings.CLAUDE_MEM_TRANSCRIPTS_CONFIG_PATH || DEFAULT_CONFIG_PATH; + const resolvedConfigPath = expandHomePath(configPath); + + try { + if (!existsSync(resolvedConfigPath)) { + writeSampleConfig(configPath); + logger.info('TRANSCRIPT', 'Created default transcript watch config', { + configPath: resolvedConfigPath + }); + } + + const transcriptConfig = loadTranscriptWatchConfig(configPath); + const statePath = expandHomePath(transcriptConfig.stateFile ?? DEFAULT_STATE_PATH); + + this.transcriptWatcher = new TranscriptWatcher(transcriptConfig, statePath); + await this.transcriptWatcher.start(); + logger.info('TRANSCRIPT', 'Transcript watcher started', { + configPath: resolvedConfigPath, + statePath, + watches: transcriptConfig.watches.length + }); + } catch (error) { + this.transcriptWatcher?.stop(); + this.transcriptWatcher = null; + logger.error('TRANSCRIPT', 'Failed to start transcript watcher (continuing without Codex ingestion)', { + configPath: resolvedConfigPath + }, error as Error); + } + } + /** * Get the appropriate agent based on provider settings. * Same logic as SessionRoutes.getActiveAgent() for consistency. @@ -936,6 +967,12 @@ export class WorkerService { * Shutdown the worker service */ async shutdown(): Promise { + if (this.transcriptWatcher) { + this.transcriptWatcher.stop(); + this.transcriptWatcher = null; + logger.info('TRANSCRIPT', 'Transcript watcher stopped'); + } + // Stop orphan reaper before shutdown (Issue #737) if (this.stopOrphanReaper) { this.stopOrphanReaper(); @@ -948,13 +985,6 @@ export class WorkerService { this.staleSessionReaperInterval = null; } - // Stop transcript watcher - if (this.transcriptWatcher) { - this.transcriptWatcher.stop(); - this.transcriptWatcher = null; - logger.info('SYSTEM', 'Transcript watcher stopped'); - } - await performGracefulShutdown({ server: this.server.getHttpServer(), sessionManager: this.sessionManager, @@ -997,7 +1027,7 @@ export class WorkerService { * @param port - The TCP port (used for port-in-use checks and daemon spawn) * @returns true if worker is healthy (existing or newly started), false on failure */ -async function ensureWorkerStarted(port: number): Promise { +export async function ensureWorkerStarted(port: number): Promise { // Clean stale PID file first (cheap: 1 fs read + 1 signal-0 check) const pidFileStatus = cleanStalePidFile(); if (pidFileStatus === 'alive') { @@ -1011,43 +1041,25 @@ async function ensureWorkerStarted(port: number): Promise { return false; } - // Check if worker is already running and healthy + // Check if worker is already running and healthy. + // NOTE: Version mismatch auto-restart intentionally removed (#1435). + // The marketplace bundle ships with __DEFAULT_PACKAGE_VERSION__ unbaked, causing + // BUILT_IN_VERSION to fall back to "development". This creates a 100% reproducible + // mismatch on every hook call, killing a healthy worker and often failing to restart + // (cold start exceeds POST_SPAWN_WAIT). A working-but-old worker is strictly better + // than a dead worker. Users must manually restart after genuine plugin updates. + // See also: #566, #665, #667, #669, #689, #1124, #1145 (same pattern across 8+ releases). if (await waitForHealth(port, 1000)) { - const versionCheck = await checkVersionMatch(port); - if (!versionCheck.matches) { - // Guard: If PID file was written recently, another session is likely already - // restarting the worker. Poll health instead of starting a concurrent restart. - // This prevents the "100 sessions all restart simultaneously" storm (#1145). - const RESTART_COORDINATION_THRESHOLD_MS = 15000; - if (isPidFileRecent(RESTART_COORDINATION_THRESHOLD_MS)) { - logger.info('SYSTEM', 'Version mismatch detected but PID file is recent — another restart likely in progress, polling health', { - pluginVersion: versionCheck.pluginVersion, - workerVersion: versionCheck.workerVersion - }); - const healthy = await waitForHealth(port, RESTART_COORDINATION_THRESHOLD_MS); - if (healthy) { - logger.info('SYSTEM', 'Worker became healthy after waiting for concurrent restart'); - return true; - } - logger.warn('SYSTEM', 'Worker did not become healthy after waiting — proceeding with own restart'); - } - - logger.info('SYSTEM', 'Worker version mismatch detected - auto-restarting', { - pluginVersion: versionCheck.pluginVersion, - workerVersion: versionCheck.workerVersion - }); - - await httpShutdown(port); - const freed = await waitForPortFree(port, getPlatformTimeout(HOOK_TIMEOUTS.PORT_IN_USE_WAIT)); - if (!freed) { - logger.error('SYSTEM', 'Port did not free up after shutdown for version mismatch restart', { port }); - return false; - } - removePidFile(); - } else { - logger.info('SYSTEM', 'Worker already running and healthy'); - return true; + // Health passed — worker is listening. Also wait for readiness in case + // another hook just spawned it and background init is still running. + // This mirrors the fresh-spawn path (line ~1025) so concurrent hooks + // don't race past a cold-starting worker's initialization guard. + const ready = await waitForReadiness(port, getPlatformTimeout(HOOK_TIMEOUTS.READINESS_WAIT)); + if (!ready) { + logger.warn('SYSTEM', 'Worker is alive but readiness timed out — proceeding anyway'); } + logger.info('SYSTEM', 'Worker already running and healthy'); + return true; } // Check if port is in use by something else @@ -1096,8 +1108,7 @@ async function ensureWorkerStarted(port: number): Promise { } clearWorkerSpawnAttempted(); - // Touch PID file to signal other sessions that a restart just completed. - // Other sessions checking isPidFileRecent() will see this and skip their own restart. + // Touch PID file to signal other sessions that a spawn just completed. touchPidFile(); logger.info('SYSTEM', 'Worker started successfully'); return true; @@ -1307,8 +1318,10 @@ async function main() { } // Check if running as main module in both ESM and CommonJS +// The CLAUDE_MEM_MANAGED check handles Bun on Windows where require.main !== module +// in CJS mode despite being the entry point (see #1450) const isMainModule = typeof require !== 'undefined' && typeof module !== 'undefined' - ? require.main === module || !module.parent + ? require.main === module || !module.parent || process.env.CLAUDE_MEM_MANAGED === 'true' : import.meta.url === `file://${process.argv[1]}` || process.argv[1]?.endsWith('worker-service') || process.argv[1]?.endsWith('worker-service.cjs') diff --git a/src/services/worker-types.ts b/src/services/worker-types.ts index 5962bfa4..dad3444b 100644 --- a/src/services/worker-types.ts +++ b/src/services/worker-types.ts @@ -22,6 +22,7 @@ export interface ActiveSession { contentSessionId: string; // User's Claude Code session being observed memorySessionId: string | null; // Memory agent's session ID for resume project: string; + platformSource: string; userPrompt: string; pendingMessages: PendingMessage[]; // Deprecated: now using persistent store, kept for compatibility abortController: AbortController; @@ -99,6 +100,7 @@ export interface PaginationParams { offset: number; limit: number; project?: string; + platformSource?: string; } // ============================================================================ @@ -119,6 +121,7 @@ export interface Observation { id: number; memory_session_id: string; // Renamed from sdk_session_id project: string; + platform_source: string; type: string; title: string; subtitle: string | null; @@ -137,6 +140,7 @@ export interface Summary { id: number; session_id: string; // content_session_id (from JOIN) project: string; + platform_source: string; request: string | null; investigated: string | null; learned: string | null; @@ -151,6 +155,7 @@ export interface UserPrompt { id: number; content_session_id: string; // Renamed from claude_session_id project: string; // From JOIN with sdk_sessions + platform_source: string; prompt_number: number; prompt_text: string; created_at: string; @@ -161,6 +166,7 @@ export interface DBSession { id: number; content_session_id: string; // Renamed from claude_session_id project: string; + platform_source: string; user_prompt: string; memory_session_id: string | null; // Renamed from sdk_session_id status: 'active' | 'completed' | 'failed'; diff --git a/src/services/worker/GeminiAgent.ts b/src/services/worker/GeminiAgent.ts index 8bb69dc4..9aa4af73 100644 --- a/src/services/worker/GeminiAgent.ts +++ b/src/services/worker/GeminiAgent.ts @@ -18,6 +18,8 @@ import { logger } from '../../utils/logger.js'; import { buildInitPrompt, buildObservationPrompt, buildSummaryPrompt, buildContinuationPrompt } from '../../sdk/prompts.js'; import { SettingsDefaultsManager } from '../../shared/SettingsDefaultsManager.js'; import { getCredential } from '../../shared/EnvManager.js'; +import { USER_SETTINGS_PATH } from '../../shared/paths.js'; +import { estimateTokens } from '../../shared/timeline-formatting.js'; import type { ActiveSession, ConversationMessage } from '../worker-types.js'; import { ModeManager } from '../domain/ModeManager.js'; import { @@ -56,6 +58,10 @@ const GEMINI_RPM_LIMITS: Record = { // Track last request time for rate limiting let lastRequestTime = 0; +// Context window limits (prevents O(N²) token cost growth) +const DEFAULT_MAX_CONTEXT_MESSAGES = 20; // Maximum messages to keep in conversation history +const DEFAULT_MAX_ESTIMATED_TOKENS = 100000; // ~100k tokens max context (safety limit) + /** * Enforce RPM rate limit for Gemini free tier. * Waits the required time between requests based on model's RPM limit + 100ms safety buffer. @@ -175,7 +181,9 @@ export class GeminiAgent { worker, tokensUsed, null, - 'Gemini' + 'Gemini', + undefined, + model ); } else { logger.error('SDK', 'Empty Gemini init response - session may lack context', { @@ -248,7 +256,8 @@ export class GeminiAgent { tokensUsed, originalTimestamp, 'Gemini', - lastCwd + lastCwd, + model ); } else { logger.warn('SDK', 'Empty Gemini observation response, skipping processing to preserve message', { @@ -298,7 +307,8 @@ export class GeminiAgent { tokensUsed, originalTimestamp, 'Gemini', - lastCwd + lastCwd, + model ); } else { logger.warn('SDK', 'Empty Gemini summary response, skipping processing to preserve message', { @@ -342,6 +352,54 @@ export class GeminiAgent { } } + /** + * Truncate conversation history to prevent runaway context costs. + * Keeps most recent messages within both message count and token budget. + * Returns a new array — never mutates the original history. + */ + private truncateHistory(history: ConversationMessage[]): ConversationMessage[] { + const settings = SettingsDefaultsManager.loadFromFile(USER_SETTINGS_PATH); + + const MAX_CONTEXT_MESSAGES = parseInt(settings.CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES) || DEFAULT_MAX_CONTEXT_MESSAGES; + const MAX_ESTIMATED_TOKENS = parseInt(settings.CLAUDE_MEM_GEMINI_MAX_TOKENS) || DEFAULT_MAX_ESTIMATED_TOKENS; + + if (history.length <= MAX_CONTEXT_MESSAGES) { + // Check token count even if message count is ok + const totalTokens = history.reduce((sum, m) => sum + estimateTokens(m.content), 0); + if (totalTokens <= MAX_ESTIMATED_TOKENS) { + return history; + } + } + + // Sliding window: keep most recent messages within limits + const truncated: ConversationMessage[] = []; + let tokenCount = 0; + + // Process messages in reverse (most recent first) + for (let i = history.length - 1; i >= 0; i--) { + const msg = history[i]; + const msgTokens = estimateTokens(msg.content); + + // Always include at least the newest message — an empty contents array + // would cause a hard Gemini API error, which is worse than an oversized request. + if (truncated.length > 0 && (truncated.length >= MAX_CONTEXT_MESSAGES || tokenCount + msgTokens > MAX_ESTIMATED_TOKENS)) { + logger.warn('SDK', 'Context window truncated to prevent runaway costs', { + originalMessages: history.length, + keptMessages: truncated.length, + droppedMessages: i + 1, + estimatedTokens: tokenCount, + tokenLimit: MAX_ESTIMATED_TOKENS + }); + break; + } + + truncated.unshift(msg); // Add to beginning + tokenCount += msgTokens; + } + + return truncated; + } + /** * Convert shared ConversationMessage array to Gemini's contents format * Maps 'assistant' role to 'model' for Gemini API compatibility @@ -354,8 +412,8 @@ export class GeminiAgent { } /** - * Query Gemini via REST API with full conversation history (multi-turn) - * Sends the entire conversation context for coherent responses + * Query Gemini via REST API with truncated conversation history (multi-turn) + * Truncates history to prevent O(N²) token cost growth, then sends for coherent responses */ private async queryGeminiMultiTurn( history: ConversationMessage[], @@ -363,11 +421,13 @@ export class GeminiAgent { model: GeminiModel, rateLimitingEnabled: boolean ): Promise<{ content: string; tokensUsed?: number }> { - const contents = this.conversationToGeminiContents(history); - const totalChars = history.reduce((sum, m) => sum + m.content.length, 0); + const truncatedHistory = this.truncateHistory(history); + const contents = this.conversationToGeminiContents(truncatedHistory); + const totalChars = truncatedHistory.reduce((sum, m) => sum + m.content.length, 0); logger.debug('SDK', `Querying Gemini multi-turn (${model})`, { - turns: history.length, + turns: truncatedHistory.length, + totalTurns: history.length, totalChars }); diff --git a/src/services/worker/OpenRouterAgent.ts b/src/services/worker/OpenRouterAgent.ts index e1c77c96..f034987f 100644 --- a/src/services/worker/OpenRouterAgent.ts +++ b/src/services/worker/OpenRouterAgent.ts @@ -131,7 +131,8 @@ export class OpenRouterAgent { tokensUsed, null, 'OpenRouter', - undefined // No lastCwd yet - before message processing + undefined, // No lastCwd yet - before message processing + model ); } else { logger.error('SDK', 'Empty OpenRouter init response - session may lack context', { @@ -202,7 +203,8 @@ export class OpenRouterAgent { tokensUsed, originalTimestamp, 'OpenRouter', - lastCwd + lastCwd, + model ); } else if (message.type === 'summarize') { @@ -244,7 +246,8 @@ export class OpenRouterAgent { tokensUsed, originalTimestamp, 'OpenRouter', - lastCwd + lastCwd, + model ); } } diff --git a/src/services/worker/PaginationHelper.ts b/src/services/worker/PaginationHelper.ts index c4caa518..31f70ac0 100644 --- a/src/services/worker/PaginationHelper.ts +++ b/src/services/worker/PaginationHelper.ts @@ -71,14 +71,54 @@ export class PaginationHelper { /** * Get paginated observations */ - getObservations(offset: number, limit: number, project?: string): PaginatedResult { - const result = this.paginate( - 'observations', - 'id, memory_session_id, project, type, title, subtitle, narrative, text, facts, concepts, files_read, files_modified, prompt_number, created_at, created_at_epoch', + getObservations(offset: number, limit: number, project?: string, platformSource?: string): PaginatedResult { + const db = this.dbManager.getSessionStore().db; + let query = ` + SELECT + o.id, + o.memory_session_id, + o.project, + COALESCE(s.platform_source, 'claude') as platform_source, + o.type, + o.title, + o.subtitle, + o.narrative, + o.text, + o.facts, + o.concepts, + o.files_read, + o.files_modified, + o.prompt_number, + o.created_at, + o.created_at_epoch + FROM observations o + LEFT JOIN sdk_sessions s ON o.memory_session_id = s.memory_session_id + `; + const params: unknown[] = []; + const conditions: string[] = []; + + if (project) { + conditions.push('o.project = ?'); + params.push(project); + } + if (platformSource) { + conditions.push(`COALESCE(s.platform_source, 'claude') = ?`); + params.push(platformSource); + } + if (conditions.length > 0) { + query += ` WHERE ${conditions.join(' AND ')}`; + } + + query += ' ORDER BY o.created_at_epoch DESC LIMIT ? OFFSET ?'; + params.push(limit + 1, offset); + + const results = db.prepare(query).all(...params) as Observation[]; + const result: PaginatedResult = { + items: results.slice(0, limit), + hasMore: results.length > limit, offset, - limit, - project - ); + limit + }; // Strip project paths from file paths before returning return { @@ -90,13 +130,14 @@ export class PaginationHelper { /** * Get paginated summaries */ - getSummaries(offset: number, limit: number, project?: string): PaginatedResult { + getSummaries(offset: number, limit: number, project?: string, platformSource?: string): PaginatedResult { const db = this.dbManager.getSessionStore().db; let query = ` SELECT ss.id, s.content_session_id as session_id, + COALESCE(s.platform_source, 'claude') as platform_source, ss.request, ss.investigated, ss.learned, @@ -110,11 +151,22 @@ export class PaginationHelper { `; const params: any[] = []; + const conditions: string[] = []; + if (project) { - query += ' WHERE ss.project = ?'; + conditions.push('ss.project = ?'); params.push(project); } + if (platformSource) { + conditions.push(`COALESCE(s.platform_source, 'claude') = ?`); + params.push(platformSource); + } + + if (conditions.length > 0) { + query += ` WHERE ${conditions.join(' AND ')}`; + } + query += ' ORDER BY ss.created_at_epoch DESC LIMIT ? OFFSET ?'; params.push(limit + 1, offset); @@ -132,21 +184,40 @@ export class PaginationHelper { /** * Get paginated user prompts */ - getPrompts(offset: number, limit: number, project?: string): PaginatedResult { + getPrompts(offset: number, limit: number, project?: string, platformSource?: string): PaginatedResult { const db = this.dbManager.getSessionStore().db; let query = ` - SELECT up.id, up.content_session_id, s.project, up.prompt_number, up.prompt_text, up.created_at, up.created_at_epoch + SELECT + up.id, + up.content_session_id, + s.project, + COALESCE(s.platform_source, 'claude') as platform_source, + up.prompt_number, + up.prompt_text, + up.created_at, + up.created_at_epoch FROM user_prompts up JOIN sdk_sessions s ON up.content_session_id = s.content_session_id `; const params: any[] = []; + const conditions: string[] = []; + if (project) { - query += ' WHERE s.project = ?'; + conditions.push('s.project = ?'); params.push(project); } + if (platformSource) { + conditions.push(`COALESCE(s.platform_source, 'claude') = ?`); + params.push(platformSource); + } + + if (conditions.length > 0) { + query += ` WHERE ${conditions.join(' AND ')}`; + } + query += ' ORDER BY up.created_at_epoch DESC LIMIT ? OFFSET ?'; params.push(limit + 1, offset); diff --git a/src/services/worker/SDKAgent.ts b/src/services/worker/SDKAgent.ts index 5a9b5866..16efc691 100644 --- a/src/services/worker/SDKAgent.ts +++ b/src/services/worker/SDKAgent.ts @@ -270,7 +270,8 @@ export class SDKAgent { discoveryTokens, originalTimestamp, 'SDK', - cwdTracker.lastCwd + cwdTracker.lastCwd, + modelId ); } diff --git a/src/services/worker/SessionManager.ts b/src/services/worker/SessionManager.ts index 632ebf0e..adb63187 100644 --- a/src/services/worker/SessionManager.ts +++ b/src/services/worker/SessionManager.ts @@ -77,6 +77,9 @@ export class SessionManager { }); session.project = dbSession.project; } + if (dbSession.platform_source && dbSession.platform_source !== session.platformSource) { + session.platformSource = dbSession.platform_source; + } // Update userPrompt for continuation prompts if (currentUserPrompt) { @@ -144,6 +147,7 @@ export class SessionManager { contentSessionId: dbSession.content_session_id, memorySessionId: null, // Always start fresh - SDK will capture new ID project: dbSession.project, + platformSource: dbSession.platform_source, userPrompt, pendingMessages: [], abortController: new AbortController(), diff --git a/src/services/worker/agents/ResponseProcessor.ts b/src/services/worker/agents/ResponseProcessor.ts index 9a059ce6..3487764f 100644 --- a/src/services/worker/agents/ResponseProcessor.ts +++ b/src/services/worker/agents/ResponseProcessor.ts @@ -54,7 +54,8 @@ export async function processAgentResponse( discoveryTokens: number, originalTimestamp: number | null, agentName: string, - projectRoot?: string + projectRoot?: string, + modelId?: string ): Promise { // Track generator activity for stale detection (Issue #1099) session.lastGeneratorActivity = Date.now(); @@ -115,7 +116,8 @@ export async function processAgentResponse( summaryForStore, session.lastPromptNumber, discoveryTokens, - originalTimestamp ?? undefined + originalTimestamp ?? undefined, + modelId ); // Log storage result with IDs for end-to-end traceability @@ -236,6 +238,7 @@ async function syncAndBroadcastObservations( id: obsId, memory_session_id: session.memorySessionId, session_id: session.contentSessionId, + platform_source: session.platformSource, type: obs.type, title: obs.title, subtitle: obs.subtitle, @@ -325,6 +328,7 @@ async function syncAndBroadcastSummary( broadcastSummary(worker, { id: result.summaryId, session_id: session.contentSessionId, + platform_source: session.platformSource, request: summary!.request, investigated: summary!.investigated, learned: summary!.learned, diff --git a/src/services/worker/agents/types.ts b/src/services/worker/agents/types.ts index b3334e84..5476fd7f 100644 --- a/src/services/worker/agents/types.ts +++ b/src/services/worker/agents/types.ts @@ -33,6 +33,7 @@ export interface ObservationSSEPayload { id: number; memory_session_id: string | null; session_id: string; + platform_source: string; type: string; title: string | null; subtitle: string | null; @@ -50,6 +51,7 @@ export interface ObservationSSEPayload { export interface SummarySSEPayload { id: number; session_id: string; + platform_source: string; request: string | null; investigated: string | null; learned: string | null; diff --git a/src/services/worker/events/SessionEventBroadcaster.ts b/src/services/worker/events/SessionEventBroadcaster.ts index c9fa48c2..13de34ed 100644 --- a/src/services/worker/events/SessionEventBroadcaster.ts +++ b/src/services/worker/events/SessionEventBroadcaster.ts @@ -23,6 +23,7 @@ export class SessionEventBroadcaster { id: number; content_session_id: string; project: string; + platform_source: string; prompt_number: number; prompt_text: string; created_at_epoch: number; diff --git a/src/services/worker/http/BaseRouteHandler.ts b/src/services/worker/http/BaseRouteHandler.ts index 11d311b3..52eca2af 100644 --- a/src/services/worker/http/BaseRouteHandler.ts +++ b/src/services/worker/http/BaseRouteHandler.ts @@ -11,6 +11,7 @@ import { Request, Response } from 'express'; import { logger } from '../../../utils/logger.js'; +import { AppError } from '../../server/ErrorHandler.js'; export abstract class BaseRouteHandler { /** @@ -78,9 +79,22 @@ export abstract class BaseRouteHandler { * Checks headersSent to avoid "Cannot set headers after they are sent" errors */ protected handleError(res: Response, error: Error, context?: string): void { + // [APPROVED OVERRIDE]: Worker routes need centralized AppError translation so + // status/code/details stay consistent across every HTTP handler. logger.failure('WORKER', context || 'Request failed', {}, error); if (!res.headersSent) { - res.status(500).json({ error: error.message }); + const statusCode = error instanceof AppError ? error.statusCode : 500; + const response: Record = { error: error.message }; + + if (error instanceof AppError && error.code) { + response.code = error.code; + } + + if (error instanceof AppError && error.details !== undefined) { + response.details = error.details; + } + + res.status(statusCode).json(response); } } } diff --git a/src/services/worker/http/routes/DataRoutes.ts b/src/services/worker/http/routes/DataRoutes.ts index ab1a4ec3..01013d5d 100644 --- a/src/services/worker/http/routes/DataRoutes.ts +++ b/src/services/worker/http/routes/DataRoutes.ts @@ -18,6 +18,8 @@ import { SessionManager } from '../../SessionManager.js'; import { SSEBroadcaster } from '../../SSEBroadcaster.js'; import type { WorkerService } from '../../../worker-service.js'; import { BaseRouteHandler } from '../BaseRouteHandler.js'; +import { normalizePlatformSource } from '../../../../shared/platform-source.js'; +import { getObservationsByFilePath } from '../../../sqlite/observations/get.js'; export class DataRoutes extends BaseRouteHandler { constructor( @@ -39,6 +41,7 @@ export class DataRoutes extends BaseRouteHandler { // Fetch by ID endpoints app.get('/api/observation/:id', this.handleGetObservationById.bind(this)); + app.get('/api/observations/by-file', this.handleGetObservationsByFile.bind(this)); app.post('/api/observations/batch', this.handleGetObservationsByIds.bind(this)); app.get('/api/session/:id', this.handleGetSessionById.bind(this)); app.post('/api/sdk-sessions/batch', this.handleGetSdkSessionsByIds.bind(this)); @@ -66,8 +69,8 @@ export class DataRoutes extends BaseRouteHandler { * Get paginated observations */ private handleGetObservations = this.wrapHandler((req: Request, res: Response): void => { - const { offset, limit, project } = this.parsePaginationParams(req); - const result = this.paginationHelper.getObservations(offset, limit, project); + const { offset, limit, project, platformSource } = this.parsePaginationParams(req); + const result = this.paginationHelper.getObservations(offset, limit, project, platformSource); res.json(result); }); @@ -75,8 +78,8 @@ export class DataRoutes extends BaseRouteHandler { * Get paginated summaries */ private handleGetSummaries = this.wrapHandler((req: Request, res: Response): void => { - const { offset, limit, project } = this.parsePaginationParams(req); - const result = this.paginationHelper.getSummaries(offset, limit, project); + const { offset, limit, project, platformSource } = this.parsePaginationParams(req); + const result = this.paginationHelper.getSummaries(offset, limit, project, platformSource); res.json(result); }); @@ -84,8 +87,8 @@ export class DataRoutes extends BaseRouteHandler { * Get paginated user prompts */ private handleGetPrompts = this.wrapHandler((req: Request, res: Response): void => { - const { offset, limit, project } = this.parsePaginationParams(req); - const result = this.paginationHelper.getPrompts(offset, limit, project); + const { offset, limit, project, platformSource } = this.parsePaginationParams(req); + const result = this.paginationHelper.getPrompts(offset, limit, project, platformSource); res.json(result); }); @@ -108,6 +111,28 @@ export class DataRoutes extends BaseRouteHandler { res.json(observation); }); + /** + * Get observations associated with a file path, scoped to projects + * GET /api/observations/by-file?path=&projects=&limit=15 + */ + private handleGetObservationsByFile = this.wrapHandler((req: Request, res: Response): void => { + const filePath = req.query.path as string | undefined; + if (!filePath) { + this.badRequest(res, 'path query parameter is required'); + return; + } + + const projectsParam = req.query.projects as string | undefined; + const projects = projectsParam ? projectsParam.split(',').filter(Boolean) : undefined; + const parsedLimit = req.query.limit ? parseInt(req.query.limit as string, 10) : undefined; + const limit = Number.isFinite(parsedLimit) && parsedLimit! > 0 ? parsedLimit : undefined; + + const db = this.dbManager.getSessionStore().db; + const observations = getObservationsByFilePath(db, filePath, { projects, limit }); + + res.json({ observations, count: observations.length }); + }); + /** * Get observations by array of IDs * POST /api/observations/batch @@ -256,19 +281,21 @@ export class DataRoutes extends BaseRouteHandler { * GET /api/projects */ private handleGetProjects = this.wrapHandler((req: Request, res: Response): void => { - const db = this.dbManager.getSessionStore().db; + const store = this.dbManager.getSessionStore(); + const rawPlatformSource = req.query.platformSource as string | undefined; + const platformSource = rawPlatformSource ? normalizePlatformSource(rawPlatformSource) : undefined; - const rows = db.prepare(` - SELECT DISTINCT project - FROM observations - WHERE project IS NOT NULL - GROUP BY project - ORDER BY MAX(created_at_epoch) DESC - `).all() as Array<{ project: string }>; + if (platformSource) { + const projects = store.getAllProjects(platformSource); + res.json({ + projects, + sources: [platformSource], + projectsBySource: { [platformSource]: projects } + }); + return; + } - const projects = rows.map(row => row.project); - - res.json({ projects }); + res.json(store.getProjectCatalog()); }); /** @@ -299,12 +326,14 @@ export class DataRoutes extends BaseRouteHandler { /** * Parse pagination parameters from request query */ - private parsePaginationParams(req: Request): { offset: number; limit: number; project?: string } { + private parsePaginationParams(req: Request): { offset: number; limit: number; project?: string; platformSource?: string } { const offset = parseInt(req.query.offset as string, 10) || 0; const limit = Math.min(parseInt(req.query.limit as string, 10) || 20, 100); // Max 100 const project = req.query.project as string | undefined; + const rawPlatformSource = req.query.platformSource as string | undefined; + const platformSource = rawPlatformSource ? normalizePlatformSource(rawPlatformSource) : undefined; - return { offset, limit, project }; + return { offset, limit, project, platformSource }; } /** @@ -473,4 +502,5 @@ export class DataRoutes extends BaseRouteHandler { clearedCount }); }); + } diff --git a/src/services/worker/http/routes/SearchRoutes.ts b/src/services/worker/http/routes/SearchRoutes.ts index 2b947ed3..74255c02 100644 --- a/src/services/worker/http/routes/SearchRoutes.ts +++ b/src/services/worker/http/routes/SearchRoutes.ts @@ -168,6 +168,7 @@ export class SearchRoutes extends BaseRouteHandler { */ private handleContextPreview = this.wrapHandler(async (req: Request, res: Response): Promise => { const projectName = req.query.project as string; + const platformSource = req.query.platformSource as string | undefined; if (!projectName) { this.badRequest(res, 'Project parameter is required'); @@ -184,9 +185,11 @@ export class SearchRoutes extends BaseRouteHandler { const contextText = await generateContext( { session_id: 'preview-' + Date.now(), - cwd: cwd + cwd: cwd, + projects: [projectName], + platform_source: platformSource }, - true // useColors=true for ANSI terminal output + true // forHuman=true for ANSI terminal output ); // Return as plain text @@ -208,8 +211,9 @@ export class SearchRoutes extends BaseRouteHandler { private handleContextInject = this.wrapHandler(async (req: Request, res: Response): Promise => { // Support both legacy `project` and new `projects` parameter const projectsParam = (req.query.projects as string) || (req.query.project as string); - const useColors = req.query.colors === 'true'; + const forHuman = req.query.colors === 'true'; const full = req.query.full === 'true'; + const platformSource = req.query.platformSource as string | undefined; if (!projectsParam) { this.badRequest(res, 'Project(s) parameter is required'); @@ -237,9 +241,10 @@ export class SearchRoutes extends BaseRouteHandler { session_id: 'context-inject-' + Date.now(), cwd: cwd, projects: projects, - full + full, + platform_source: platformSource }, - useColors + forHuman ); // Return as plain text diff --git a/src/services/worker/http/routes/SessionRoutes.ts b/src/services/worker/http/routes/SessionRoutes.ts index 9db84dc2..010e5c35 100644 --- a/src/services/worker/http/routes/SessionRoutes.ts +++ b/src/services/worker/http/routes/SessionRoutes.ts @@ -22,6 +22,8 @@ import { PrivacyCheckValidator } from '../../validation/PrivacyCheckValidator.js import { SettingsDefaultsManager } from '../../../../shared/SettingsDefaultsManager.js'; import { USER_SETTINGS_PATH } from '../../../../shared/paths.js'; import { getProcessBySession, ensureProcessExit } from '../../ProcessRegistry.js'; +import { getProjectName } from '../../../../utils/project-name.js'; +import { normalizePlatformSource } from '../../../../shared/platform-source.js'; export class SessionRoutes extends BaseRouteHandler { private completionHandler: SessionCompletionHandler; @@ -40,7 +42,8 @@ export class SessionRoutes extends BaseRouteHandler { super(); this.completionHandler = new SessionCompletionHandler( sessionManager, - eventBroadcaster + eventBroadcaster, + dbManager ); } @@ -353,6 +356,7 @@ export class SessionRoutes extends BaseRouteHandler { id: latestPrompt.id, content_session_id: latestPrompt.content_session_id, project: latestPrompt.project, + platform_source: latestPrompt.platform_source, prompt_number: latestPrompt.prompt_number, prompt_text: latestPrompt.prompt_text, created_at_epoch: latestPrompt.created_at_epoch @@ -502,6 +506,8 @@ export class SessionRoutes extends BaseRouteHandler { */ private handleObservationsByClaudeId = this.wrapHandler((req: Request, res: Response): void => { const { contentSessionId, tool_name, tool_input, tool_response, cwd } = req.body; + const platformSource = normalizePlatformSource(req.body.platformSource); + const project = typeof cwd === 'string' && cwd.trim() ? getProjectName(cwd) : ''; if (!contentSessionId) { return this.badRequest(res, 'Missing contentSessionId'); @@ -536,7 +542,7 @@ export class SessionRoutes extends BaseRouteHandler { const store = this.dbManager.getSessionStore(); // Get or create session - const sessionDbId = store.createSDKSession(contentSessionId, '', ''); + const sessionDbId = store.createSDKSession(contentSessionId, project, '', undefined, platformSource); const promptNumber = store.getPromptNumberFromUserPrompts(contentSessionId); // Privacy check: skip if user prompt was entirely private @@ -600,6 +606,7 @@ export class SessionRoutes extends BaseRouteHandler { */ private handleSummarizeByClaudeId = this.wrapHandler((req: Request, res: Response): void => { const { contentSessionId, last_assistant_message } = req.body; + const platformSource = normalizePlatformSource(req.body.platformSource); if (!contentSessionId) { return this.badRequest(res, 'Missing contentSessionId'); @@ -608,7 +615,7 @@ export class SessionRoutes extends BaseRouteHandler { const store = this.dbManager.getSessionStore(); // Get or create session - const sessionDbId = store.createSDKSession(contentSessionId, '', ''); + const sessionDbId = store.createSDKSession(contentSessionId, '', '', undefined, platformSource); const promptNumber = store.getPromptNumberFromUserPrompts(contentSessionId); // Privacy check: skip if user prompt was entirely private @@ -681,6 +688,7 @@ export class SessionRoutes extends BaseRouteHandler { */ private handleCompleteByClaudeId = this.wrapHandler(async (req: Request, res: Response): Promise => { const { contentSessionId } = req.body; + const platformSource = normalizePlatformSource(req.body.platformSource); logger.info('HTTP', '→ POST /api/sessions/complete', { contentSessionId }); @@ -692,21 +700,20 @@ export class SessionRoutes extends BaseRouteHandler { // Look up sessionDbId from contentSessionId (createSDKSession is idempotent) // Pass empty strings - we only need the ID lookup, not to create a new session - const sessionDbId = store.createSDKSession(contentSessionId, '', ''); + const sessionDbId = store.createSDKSession(contentSessionId, '', '', undefined, platformSource); // Check if session is in the active sessions map const activeSession = this.sessionManager.getSession(sessionDbId); if (!activeSession) { // Session may not be in memory (already completed or never initialized) - logger.debug('SESSION', 'session-complete: Session not in active map', { + // Still proceed with DB-backed completion so the row gets marked completed + logger.debug('SESSION', 'session-complete: Session not in active map; continuing with DB-backed completion', { contentSessionId, sessionDbId }); - res.json({ status: 'skipped', reason: 'not_active' }); - return; } - // Complete the session (removes from active sessions map) + // Complete the session (removes from active sessions map if present) // Note: The Stop hook (summarize handler) waits for pending work before calling // this endpoint. No polling here — that's the hook's responsibility. await this.completionHandler.completeByDbId(sessionDbId); @@ -716,7 +723,7 @@ export class SessionRoutes extends BaseRouteHandler { sessionDbId }); - res.json({ status: 'completed', sessionDbId }); + res.json({ status: activeSession ? 'completed' : 'completed_db_only', sessionDbId }); }); /** @@ -738,11 +745,13 @@ export class SessionRoutes extends BaseRouteHandler { // may omit prompt/project in their payload (#838, #1049) const project = req.body.project || 'unknown'; const prompt = req.body.prompt || '[media prompt]'; + const platformSource = normalizePlatformSource(req.body.platformSource); const customTitle = req.body.customTitle || undefined; logger.info('HTTP', 'SessionRoutes: handleSessionInitByClaudeId called', { contentSessionId, project, + platformSource, prompt_length: prompt?.length, customTitle }); @@ -755,7 +764,7 @@ export class SessionRoutes extends BaseRouteHandler { const store = this.dbManager.getSessionStore(); // Step 1: Create/get SDK session (idempotent INSERT OR IGNORE) - const sessionDbId = store.createSDKSession(contentSessionId, project, prompt, customTitle); + const sessionDbId = store.createSDKSession(contentSessionId, project, prompt, customTitle, platformSource); // Verify session creation with DB lookup const dbSession = store.getSessionById(sessionDbId); diff --git a/src/services/worker/http/routes/SettingsRoutes.ts b/src/services/worker/http/routes/SettingsRoutes.ts index d32a39a3..66a5f2d6 100644 --- a/src/services/worker/http/routes/SettingsRoutes.ts +++ b/src/services/worker/http/routes/SettingsRoutes.ts @@ -94,6 +94,8 @@ export class SettingsRoutes extends BaseRouteHandler { 'CLAUDE_MEM_GEMINI_API_KEY', 'CLAUDE_MEM_GEMINI_MODEL', 'CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED', + 'CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES', + 'CLAUDE_MEM_GEMINI_MAX_TOKENS', // OpenRouter Configuration 'CLAUDE_MEM_OPENROUTER_API_KEY', 'CLAUDE_MEM_OPENROUTER_MODEL', @@ -248,6 +250,22 @@ export class SettingsRoutes extends BaseRouteHandler { } } + // Validate CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES + if (settings.CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES) { + const count = parseInt(settings.CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES, 10); + if (isNaN(count) || count < 1 || count > 100) { + return { valid: false, error: 'CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES must be between 1 and 100' }; + } + } + + // Validate CLAUDE_MEM_GEMINI_MAX_TOKENS + if (settings.CLAUDE_MEM_GEMINI_MAX_TOKENS) { + const tokens = parseInt(settings.CLAUDE_MEM_GEMINI_MAX_TOKENS, 10); + if (isNaN(tokens) || tokens < 1000 || tokens > 1000000) { + return { valid: false, error: 'CLAUDE_MEM_GEMINI_MAX_TOKENS must be between 1000 and 1000000' }; + } + } + // Validate CLAUDE_MEM_CONTEXT_OBSERVATIONS if (settings.CLAUDE_MEM_CONTEXT_OBSERVATIONS) { const obsCount = parseInt(settings.CLAUDE_MEM_CONTEXT_OBSERVATIONS, 10); diff --git a/src/services/worker/http/routes/ViewerRoutes.ts b/src/services/worker/http/routes/ViewerRoutes.ts index 860de6e4..09c08cef 100644 --- a/src/services/worker/http/routes/ViewerRoutes.ts +++ b/src/services/worker/http/routes/ViewerRoutes.ts @@ -68,6 +68,14 @@ export class ViewerRoutes extends BaseRouteHandler { * SSE stream endpoint */ private handleSSEStream = this.wrapHandler((req: Request, res: Response): void => { + // Guard: if DB is not yet initialized, return 503 before registering client + try { + this.dbManager.getSessionStore(); + } catch { + res.status(503).json({ error: 'Service initializing' }); + return; + } + // Setup SSE headers res.setHeader('Content-Type', 'text/event-stream'); res.setHeader('Cache-Control', 'no-cache'); @@ -76,11 +84,13 @@ export class ViewerRoutes extends BaseRouteHandler { // Add client to broadcaster this.sseBroadcaster.addClient(res); - // Send initial_load event with projects list - const allProjects = this.dbManager.getSessionStore().getAllProjects(); + // Send initial_load event with project/source catalog + const projectCatalog = this.dbManager.getSessionStore().getProjectCatalog(); this.sseBroadcaster.broadcast({ type: 'initial_load', - projects: allProjects, + projects: projectCatalog.projects, + sources: projectCatalog.sources, + projectsBySource: projectCatalog.projectsBySource, timestamp: Date.now() }); diff --git a/src/services/worker/session/SessionCompletionHandler.ts b/src/services/worker/session/SessionCompletionHandler.ts index eaba24d1..8d265986 100644 --- a/src/services/worker/session/SessionCompletionHandler.ts +++ b/src/services/worker/session/SessionCompletionHandler.ts @@ -11,12 +11,14 @@ import { SessionManager } from '../SessionManager.js'; import { SessionEventBroadcaster } from '../events/SessionEventBroadcaster.js'; +import { DatabaseManager } from '../DatabaseManager.js'; import { logger } from '../../../utils/logger.js'; export class SessionCompletionHandler { constructor( private sessionManager: SessionManager, - private eventBroadcaster: SessionEventBroadcaster + private eventBroadcaster: SessionEventBroadcaster, + private dbManager: DatabaseManager ) {} /** @@ -24,6 +26,9 @@ export class SessionCompletionHandler { * Used by DELETE /api/sessions/:id and POST /api/sessions/:id/complete */ async completeByDbId(sessionDbId: number): Promise { + // Persist completion to database before in-memory cleanup (fix for #1532) + this.dbManager.getSessionStore().markSessionCompleted(sessionDbId); + // Delete from session manager (aborts SDK agent via SIGTERM) await this.sessionManager.deleteSession(sessionDbId); diff --git a/src/shared/SettingsDefaultsManager.ts b/src/shared/SettingsDefaultsManager.ts index 5acbf1ae..99cf4013 100644 --- a/src/shared/SettingsDefaultsManager.ts +++ b/src/shared/SettingsDefaultsManager.ts @@ -23,6 +23,8 @@ export interface SettingsDefaults { CLAUDE_MEM_GEMINI_API_KEY: string; CLAUDE_MEM_GEMINI_MODEL: string; // 'gemini-2.5-flash-lite' | 'gemini-2.5-flash' | 'gemini-3-flash-preview' CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED: string; // 'true' | 'false' - enable rate limiting for free tier + CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES: string; // Max messages in Gemini context window (prevents O(N²) cost growth) + CLAUDE_MEM_GEMINI_MAX_TOKENS: string; // Max estimated tokens for Gemini context (~100k safety limit) CLAUDE_MEM_OPENROUTER_API_KEY: string; CLAUDE_MEM_OPENROUTER_MODEL: string; CLAUDE_MEM_OPENROUTER_SITE_URL: string; @@ -49,6 +51,9 @@ export interface SettingsDefaults { CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE: string; CLAUDE_MEM_CONTEXT_SHOW_TERMINAL_OUTPUT: string; CLAUDE_MEM_FOLDER_CLAUDEMD_ENABLED: string; + CLAUDE_MEM_FOLDER_USE_LOCAL_MD: string; // 'true' | 'false' - write to CLAUDE.local.md instead of CLAUDE.md + CLAUDE_MEM_TRANSCRIPTS_ENABLED: string; // 'true' | 'false' - enable transcript watcher ingestion for Codex and other transcript-based clients + CLAUDE_MEM_TRANSCRIPTS_CONFIG_PATH: string; // Path to transcript watcher config JSON // Process Management CLAUDE_MEM_MAX_CONCURRENT_AGENTS: string; // Max concurrent Claude SDK agent subprocesses (default: 2) // Exclusion Settings @@ -78,7 +83,7 @@ export class SettingsDefaultsManager { * Default values for all settings */ private static readonly DEFAULTS: SettingsDefaults = { - CLAUDE_MEM_MODEL: 'claude-sonnet-4-5', + CLAUDE_MEM_MODEL: 'claude-sonnet-4-6', CLAUDE_MEM_CONTEXT_OBSERVATIONS: '50', CLAUDE_MEM_WORKER_PORT: '37777', CLAUDE_MEM_WORKER_HOST: '127.0.0.1', @@ -89,6 +94,8 @@ export class SettingsDefaultsManager { CLAUDE_MEM_GEMINI_API_KEY: '', // Empty by default, can be set via UI or env CLAUDE_MEM_GEMINI_MODEL: 'gemini-2.5-flash-lite', // Default Gemini model (highest free tier RPM) CLAUDE_MEM_GEMINI_RATE_LIMITING_ENABLED: 'true', // Rate limiting ON by default for free tier users + CLAUDE_MEM_GEMINI_MAX_CONTEXT_MESSAGES: '20', // Max messages in Gemini context window + CLAUDE_MEM_GEMINI_MAX_TOKENS: '100000', // Max estimated tokens (~100k safety limit) CLAUDE_MEM_OPENROUTER_API_KEY: '', // Empty by default, can be set via UI or env CLAUDE_MEM_OPENROUTER_MODEL: 'xiaomi/mimo-v2-flash:free', // Default OpenRouter model (free tier) CLAUDE_MEM_OPENROUTER_SITE_URL: '', // Optional: for OpenRouter analytics @@ -115,6 +122,9 @@ export class SettingsDefaultsManager { CLAUDE_MEM_CONTEXT_SHOW_LAST_MESSAGE: 'false', CLAUDE_MEM_CONTEXT_SHOW_TERMINAL_OUTPUT: 'true', CLAUDE_MEM_FOLDER_CLAUDEMD_ENABLED: 'false', + CLAUDE_MEM_FOLDER_USE_LOCAL_MD: 'false', // When true, writes to CLAUDE.local.md instead of CLAUDE.md + CLAUDE_MEM_TRANSCRIPTS_ENABLED: 'true', + CLAUDE_MEM_TRANSCRIPTS_CONFIG_PATH: join(homedir(), '.claude-mem', 'transcript-watch.json'), // Process Management CLAUDE_MEM_MAX_CONCURRENT_AGENTS: '2', // Max concurrent Claude SDK agent subprocesses // Exclusion Settings diff --git a/src/shared/hook-constants.ts b/src/shared/hook-constants.ts index c194921a..0e1b34a0 100644 --- a/src/shared/hook-constants.ts +++ b/src/shared/hook-constants.ts @@ -1,7 +1,7 @@ export const HOOK_TIMEOUTS = { DEFAULT: 300000, // Standard HTTP timeout (5 min for slow systems) HEALTH_CHECK: 3000, // Worker health check (3s — healthy worker responds in <100ms) - POST_SPAWN_WAIT: 5000, // Wait for daemon to start after spawn (starts in <1s on Linux) + POST_SPAWN_WAIT: 15000, // Wait for daemon to start after spawn (starts in <1s on Linux, 6-8s on macOS with Chroma) READINESS_WAIT: 30000, // Wait for DB + search init after spawn (typically <5s) PORT_IN_USE_WAIT: 3000, // Wait when port occupied but health failing WORKER_STARTUP_WAIT: 1000, diff --git a/src/shared/path-utils.ts b/src/shared/path-utils.ts index ff04fe5c..334845ca 100644 --- a/src/shared/path-utils.ts +++ b/src/shared/path-utils.ts @@ -58,7 +58,12 @@ export function isDirectChild(filePath: string, folderPath: string): boolean { const folderSegments = normFolder.split('/'); const fileSegments = normFile.split('/'); - if (fileSegments.length < 2) return false; // Need at least folder/file + // Handle bare filenames (no directory component, e.g. stored as "dashboard.html"). + // These are root-level files and are a direct child only of the root folder. + // Fixes #1514: bare filenames stored in DB were never matched by any folder query. + if (fileSegments.length < 2) { + return normFolder === '' || normFolder === '.'; + } const fileDir = fileSegments.slice(0, -1).join('/'); // Directory part of file const fileName = fileSegments[fileSegments.length - 1]; // Actual filename diff --git a/src/shared/platform-source.ts b/src/shared/platform-source.ts new file mode 100644 index 00000000..acd3ab84 --- /dev/null +++ b/src/shared/platform-source.ts @@ -0,0 +1,36 @@ +export const DEFAULT_PLATFORM_SOURCE = 'claude'; + +function sanitizeRawSource(value: string): string { + return value.trim().toLowerCase().replace(/\s+/g, '-'); +} + +export function normalizePlatformSource(value?: string | null): string { + if (!value) return DEFAULT_PLATFORM_SOURCE; + + const source = sanitizeRawSource(value); + if (!source) return DEFAULT_PLATFORM_SOURCE; + + if (source === 'transcript') return 'codex'; + if (source.includes('codex')) return 'codex'; + if (source.includes('cursor')) return 'cursor'; + if (source.includes('claude')) return 'claude'; + + return source; +} + +export function sortPlatformSources(sources: string[]): string[] { + const priority = ['claude', 'codex', 'cursor']; + + return [...sources].sort((a, b) => { + const aPriority = priority.indexOf(a); + const bPriority = priority.indexOf(b); + + if (aPriority !== -1 || bPriority !== -1) { + if (aPriority === -1) return 1; + if (bPriority === -1) return -1; + return aPriority - bPriority; + } + + return a.localeCompare(b); + }); +} diff --git a/src/shared/transcript-parser.ts b/src/shared/transcript-parser.ts index 8a7482ab..d85995de 100644 --- a/src/shared/transcript-parser.ts +++ b/src/shared/transcript-parser.ts @@ -1,5 +1,6 @@ import { readFileSync, existsSync } from 'fs'; import { logger } from '../utils/logger.js'; +import { SYSTEM_REMINDER_REGEX } from '../utils/tag-stripping.js'; /** * Extract last message of specified role from transcript JSONL file @@ -48,7 +49,7 @@ export function extractLastMessage( } if (stripSystemReminders) { - text = text.replace(/[\s\S]*?<\/system-reminder>/g, ''); + text = text.replace(SYSTEM_REMINDER_REGEX, ''); text = text.replace(/\n{3,}/g, '\n\n').trim(); } diff --git a/src/types/database.ts b/src/types/database.ts index f8519abc..4d484956 100644 --- a/src/types/database.ts +++ b/src/types/database.ts @@ -103,6 +103,7 @@ export interface UserPromptRecord { prompt_number: number; prompt_text: string; project?: string; // From JOIN with sdk_sessions + platform_source?: string; created_at: string; created_at_epoch: number; } @@ -115,6 +116,7 @@ export interface LatestPromptResult { content_session_id: string; memory_session_id: string; project: string; + platform_source: string; prompt_number: number; prompt_text: string; created_at_epoch: number; diff --git a/src/ui/viewer-template.html b/src/ui/viewer-template.html index 934a3cd6..c540310c 100644 --- a/src/ui/viewer-template.html +++ b/src/ui/viewer-template.html @@ -355,6 +355,14 @@ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03); } + .header-main { + display: flex; + align-items: center; + gap: 18px; + min-width: 0; + flex-wrap: wrap; + } + .sidebar-header { padding: 14px 18px; border-bottom: 1px solid var(--color-border-primary); @@ -549,6 +557,42 @@ font-size: 13px; } + .source-tabs { + display: inline-flex; + align-items: center; + gap: 6px; + flex-wrap: wrap; + } + + .source-tab { + background: transparent; + border: 1px solid var(--color-border-primary); + color: var(--color-text-secondary); + border-radius: 999px; + padding: 6px 12px; + font-size: 12px; + line-height: 1; + font-weight: 600; + letter-spacing: 0.01em; + cursor: pointer; + transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1); + white-space: nowrap; + } + + .source-tab:hover { + background: var(--color-bg-card-hover); + border-color: var(--color-border-focus); + color: var(--color-text-primary); + transform: translateY(-1px); + } + + .source-tab.active { + background: linear-gradient(135deg, var(--color-bg-button) 0%, var(--color-accent-primary) 100%); + border-color: var(--color-bg-button); + color: var(--color-text-button); + box-shadow: 0 2px 8px rgba(9, 105, 218, 0.18); + } + .settings-btn, .theme-toggle-btn { background: var(--color-bg-card); @@ -887,6 +931,49 @@ letter-spacing: 0.5px; } + .card-source { + padding: 2px 8px; + border-radius: 999px; + font-weight: 600; + font-size: 10px; + letter-spacing: 0.04em; + text-transform: uppercase; + border: 1px solid transparent; + } + + .source-claude { + background: rgba(255, 138, 61, 0.12); + color: #c25a00; + border-color: rgba(255, 138, 61, 0.22); + } + + .source-codex { + background: rgba(33, 150, 243, 0.12); + color: #0f5ba7; + border-color: rgba(33, 150, 243, 0.24); + } + + .source-cursor { + background: rgba(124, 58, 237, 0.12); + color: #6d28d9; + border-color: rgba(124, 58, 237, 0.24); + } + + [data-theme="dark"] .source-claude { + color: #ffb067; + border-color: rgba(255, 176, 103, 0.2); + } + + [data-theme="dark"] .source-codex { + color: #8fc7ff; + border-color: rgba(143, 199, 255, 0.2); + } + + [data-theme="dark"] .source-cursor { + color: #c4b5fd; + border-color: rgba(196, 181, 253, 0.2); + } + .card-title { font-size: 17px; margin-bottom: 14px; @@ -1483,6 +1570,10 @@ padding: 14px 20px; } + .header-main { + gap: 12px; + } + .status { gap: 6px; } @@ -1491,6 +1582,11 @@ max-width: 160px; } + .source-tab { + padding: 6px 10px; + font-size: 11px; + } + /* Hide icon links (docs, github, twitter) on tablet */ .icon-link { display: none; @@ -1544,6 +1640,28 @@ gap: 8px; } + .header-main { + gap: 10px; + } + + .source-tabs { + width: 100%; + flex-wrap: nowrap; + overflow-x: auto; + padding-bottom: 2px; + scrollbar-width: none; + } + + .source-tabs::-webkit-scrollbar { + display: none; + } + + .source-tab { + flex-shrink: 0; + padding: 5px 10px; + font-size: 11px; + } + .logomark { height: 28px; } @@ -1732,6 +1850,11 @@ white-space: nowrap; } + .preview-selector select:disabled { + opacity: 0.6; + cursor: not-allowed; + } + .preview-selector select { background: var(--color-bg-card); border: 1px solid var(--color-border-primary); @@ -2873,4 +2996,4 @@ - \ No newline at end of file + diff --git a/src/ui/viewer/App.tsx b/src/ui/viewer/App.tsx index bd3fde0c..3552b11e 100644 --- a/src/ui/viewer/App.tsx +++ b/src/ui/viewer/App.tsx @@ -13,39 +13,57 @@ import { mergeAndDeduplicateByProject } from './utils/data'; export function App() { const [currentFilter, setCurrentFilter] = useState(''); + const [currentSource, setCurrentSource] = useState('all'); const [contextPreviewOpen, setContextPreviewOpen] = useState(false); const [logsModalOpen, setLogsModalOpen] = useState(false); const [paginatedObservations, setPaginatedObservations] = useState([]); const [paginatedSummaries, setPaginatedSummaries] = useState([]); const [paginatedPrompts, setPaginatedPrompts] = useState([]); - const { observations, summaries, prompts, projects, isProcessing, queueDepth, isConnected } = useSSE(); + const { observations, summaries, prompts, projects, sources, projectsBySource, isProcessing, queueDepth, isConnected } = useSSE(); const { settings, saveSettings, isSaving, saveStatus } = useSettings(); const { stats, refreshStats } = useStats(); const { preference, resolvedTheme, setThemePreference } = useTheme(); - const pagination = usePagination(currentFilter); + const pagination = usePagination(currentFilter, currentSource); + + const availableProjects = useMemo(() => { + if (currentSource === 'all') { + return projects; + } + + return projectsBySource[currentSource] || []; + }, [currentSource, projects, projectsBySource]); + + const matchesSelection = useCallback((item: { project: string; platform_source: string }) => { + const matchesProject = !currentFilter || item.project === currentFilter; + const matchesSource = currentSource === 'all' || (item.platform_source || 'claude') === currentSource; + return matchesProject && matchesSource; + }, [currentFilter, currentSource]); + + useEffect(() => { + if (currentFilter && !availableProjects.includes(currentFilter)) { + setCurrentFilter(''); + } + }, [availableProjects, currentFilter]); // Merge SSE live data with paginated data, filtering by project when active const allObservations = useMemo(() => { - const live = currentFilter - ? observations.filter(o => o.project === currentFilter) - : observations; - return mergeAndDeduplicateByProject(live, paginatedObservations); - }, [observations, paginatedObservations, currentFilter]); + const live = observations.filter(matchesSelection); + const paginated = paginatedObservations.filter(matchesSelection); + return mergeAndDeduplicateByProject(live, paginated); + }, [observations, paginatedObservations, matchesSelection]); const allSummaries = useMemo(() => { - const live = currentFilter - ? summaries.filter(s => s.project === currentFilter) - : summaries; - return mergeAndDeduplicateByProject(live, paginatedSummaries); - }, [summaries, paginatedSummaries, currentFilter]); + const live = summaries.filter(matchesSelection); + const paginated = paginatedSummaries.filter(matchesSelection); + return mergeAndDeduplicateByProject(live, paginated); + }, [summaries, paginatedSummaries, matchesSelection]); const allPrompts = useMemo(() => { - const live = currentFilter - ? prompts.filter(p => p.project === currentFilter) - : prompts; - return mergeAndDeduplicateByProject(live, paginatedPrompts); - }, [prompts, paginatedPrompts, currentFilter]); + const live = prompts.filter(matchesSelection); + const paginated = paginatedPrompts.filter(matchesSelection); + return mergeAndDeduplicateByProject(live, paginated); + }, [prompts, paginatedPrompts, matchesSelection]); // Toggle context preview modal const toggleContextPreview = useCallback(() => { @@ -78,24 +96,27 @@ export function App() { } catch (error) { console.error('Failed to load more data:', error); } - }, [currentFilter, pagination.observations, pagination.summaries, pagination.prompts]); + }, [pagination.observations, pagination.summaries, pagination.prompts]); - // Reset paginated data and load first page when filter changes + // Reset paginated data and load first page when project/source changes useEffect(() => { setPaginatedObservations([]); setPaginatedSummaries([]); setPaginatedPrompts([]); handleLoadMore(); // eslint-disable-next-line react-hooks/exhaustive-deps - }, [currentFilter]); + }, [currentFilter, currentSource]); return ( <>
{ const newState = { ...formState, [key]: value }; @@ -174,10 +184,23 @@ export function ContextSettingsModal({

Settings

+